随笔分类 -  PWN

1
摘要:拿到文件先file看一下是什么类型,然后checksec一下查看保护机制。 发现是64位程序,开启了NX(Non-Executable Memory,不可执行内存。了解 Linux 的文件有三种属性,即 rwx,而 NX 即没有 x 属性,意味着栈中数据没有执行权限。 尝试运行一下 没啥用,丢ida 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(62) 评论(0) 推荐(0) 编辑
摘要:test_your_nc idapro反编译一下,发现直接就system("/bin/sh"); 这个直接用nc连一下,然后cat flag rip 老规矩,checksec一下, file 一下,64位, 扔进ida里面 发现shell,应该是个栈溢出 查看栈空间, shell地址 构造paylo 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(42) 评论(0) 推荐(0) 编辑
摘要:1.安装 首先要换源,这步特别特别重要。 然后安装docker sudo apt install docker.io sudo systemctl start docker sudo systemctl enable docker docker -v查看是否安装成功 2.拉取镜像 docker se 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(151) 评论(0) 推荐(0) 编辑
摘要:根据题目提示,这个题需要使用rop 运行一下,再file一下 检查一下保护机制 丢入ida 查看vulnerable_function函数,发现有system,证明plt表有这个数据 可以发现申请0x88的空间,但是却能输入0x100,存在栈溢出 和之前的题目相比,这次没有"/bin/sh"函数 结 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(69) 评论(0) 推荐(0) 编辑
摘要:我们尝试运行一下, 好家伙,直接就getshell nc连一下 ls一下 直接cat flag吧 这样是不是有点简单 丢进ida分析一下 F5反编译一下 发现是在程序里面就直接调用system函数,直接getshell,签到题。 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(90) 评论(0) 推荐(0) 编辑
摘要:下载附件,执行一下,64位程序 checksec一下 NX执行保护开启 丢进ida里面分析一下 F5反编译 发现return到一个函数里面,点击查看一下 发现申请的栈空间是0x80,read的值却是0x200,说明存在栈溢出 然后点击callsystem这个函数, 发现shell,也就是说我们需要利 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(95) 评论(0) 推荐(0) 编辑
摘要:gcc常用命令 gcc -o test test.c //-o是指输出的 保护机制 NX:-z execstack / -z noexecstack (关闭 / 开启) 不让执行栈上的数据,于是JMP ESP就不能用了 Canary:-fno-stack-protector /-fstack-pro 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(124) 评论(0) 推荐(0) 编辑
摘要:先检查运行一下 ida 看一下vulnerable_function函数 payload = ‘b’ * (0x88 + 4) 发现存在溢出,栈空间136,可以输入的长度256 但是没有发现system函数和/bin/sh,可以泄露write的地址,从而 去找到需要的函数地址 利用write@plt 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(164) 评论(0) 推荐(0) 编辑
摘要:先运行一下 查看一下保护机制 开启了NX保护 丢入IDApro里面查看一下 查看一下vulnerable_function()函数 栈空间是144,但是可以读入的大小是0X200,常规的栈溢出题目 查看buf栈空间 shift+F12查看字符串 发现system和/bin/sh,构造payload 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(25) 评论(0) 推荐(0) 编辑
摘要:(这篇博客纯粹是记录我学习pwn的一些感悟,可能有些废话,后续会详细写一下具体的知识点) 学习pwn也有一段时间了,从之前题都看不懂题目,到现在可以做出一部分题,这中间也是有很多体会的,计划把这些记录一下,给以后师傅们学pwn提供一些参考。 我最开始接触的是web、misc和密码学,pwn和逆向实验 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(34) 评论(0) 推荐(0) 编辑
摘要:利用Python交互pwn对程序进行调试 from pwn import * p = process('./a.out') p.read p.read() p.send('helloworld') p.read() p.close() from pwn import * p = process('. 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(59) 评论(0) 推荐(0) 编辑
摘要:先运行一下 老规矩,checksec 和file pie和canary关了 ida 查看一下 hello函数 name在bss段 有没有发现bin/sh 所以我们可以自己写一个shellcode name_bin_sh = 0804A080 看一下s的栈空间 00000027 db ? ; unde 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(80) 评论(0) 推荐(0) 编辑
摘要:运行一下 checksec和file 发现get()危险函数,该函数可以进行任意长度的输入 下面有seed函数,该函数为C语言中产生随机数的种子。 查看一下其栈空间 我们可以去覆盖一下这个seed地址 看了一下其他大佬的博客,知道可以用python的内置函数ctypes,进行C语言代码的调试 计算机 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(149) 评论(0) 推荐(0) 编辑
摘要:看题目就知道是整形溢出 运行一下 检查一下保护机制 丢入32位ida里面 发现一个函数 可以通过覆盖跳转到这个函数就可以拿到flag system_addr = 0x804868B check_passwd处有一个判定,输入的数字要在3和8之间否则就直接退出 在这里需要说明一下,这个unsigned 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(131) 评论(0) 推荐(0) 编辑
摘要:将35795746换成十六进制0x2223322(按H) 根据函数,只需要令key等于0x2223322即可getshell 查看一下 imagemagic()函数 存在格式化字符串漏洞 具体看wiki:https://ctf-wiki.org/pwn/linux/user-mode/fmtstr/ 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(96) 评论(0) 推荐(0) 编辑
摘要:gets函数不限制输入的长度,存在溢出 查看栈空间,payload = 0xf + 8 发现fun()函数, 构造exp from pwn import * p = process('pwn1') #p = remote('redirect.do-not-trust.hacking.run',100 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(49) 评论(0) 推荐(0) 编辑
摘要:srand会生成一个随机数放到804c044中,当password和随机数相等,就getshell 我们看到,有两个输入点,name有回显, 这里有明显的格式化字符串漏洞, 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(241) 评论(0) 推荐(0) 编辑
摘要:执行一下 似乎出现第一个i被替换成you 检查一下保护机制 丢到ida里面 输入的变量s大小为0x3c,但是我们看fgets里面,我们只能输入32个字符,没法进行溢出, 我们在输入的时候,会发现i会被替换成you,所以我们可以利用20个i来填充, 找到shell,地址为0x8048F0D 返回地址再 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(70) 评论(0) 推荐(0) 编辑
摘要:第六章 CTF之PWN章 1.stack 64位,开启了NX保护 shift + F12查看里面的字符串 发现自带system和bin/sh的地址 bin_sh = 0x400537 gets函数对输入的长度没有限制 查看一下v1的栈空间 需要填充0xA + 0x8的空间 payload = “A” 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(341) 评论(0) 推荐(1) 编辑
摘要:ciscn_2019_n_1 直接运行一波 猜数字的 checksec file一下 放入ida 发现func函数里面有 东西 这个是一道溢出题,我们输入的数字给v1,但是在进行判断的时候,用的是v2,我们需要溢出v2,使其等于目标值 查看一下栈空间 我们发现v2在栈上04的位置,也就是(0x30- 阅读全文
posted @ 2022-04-08 21:23 续梦人 阅读(64) 评论(0) 推荐(0) 编辑

1