摘要: ida不能f5,很烦,都不想做了 其实这个结构还行,虽然不能栈溢出,但是直接执行输入的命令 所以直接传一个asm(shellcraft.sh())就行了 然而这只是理论上可以 疯狂报错 后来发现是没有设置环境,shellcraft可能传了一个32位的shellcode上去 设置环境 成功 exp: 阅读全文
posted @ 2021-04-12 09:30 Haokunnnnnnnna 阅读(527) 评论(0) 推荐(0) 编辑
摘要: 明显的格式化字符串漏洞,没什么好说的 通过%x找到偏移为8 还是改got表,但是这题没有后门函数,将got表泄露后得到libc基址 然后找到system和bin/sh的地址即可 但我就不明白了他们咋就搞到onegadget的 然后利用格式化字符串漏洞时原来pwntools自带工具的,震惊我一年 使用 阅读全文
posted @ 2021-04-12 08:53 Haokunnnnnnnna 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 看到是静态连接所以没法用libc 网上说用ropgadget直接出答案 直接给我写好了shell好家伙 exp就不写了加个偏移就行 网上还有一个方法将shellcraft.(shell)写在bss段在运行也行 https://blog.csdn.net/weixin_43833642/article 阅读全文
posted @ 2021-04-11 10:55 Haokunnnnnnnna 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 又是经典增删查 chunk结构:两个函数指针,一个free一个print,后4个字节若选择int型则是一个数字,若选择text型则是申请的chunk的地址 从这个函数看出delete并没有删除record中的指针,存在uaf漏洞 所以思路就是申请两个chunk,然后free掉,申请一个text型的c 阅读全文
posted @ 2021-04-10 21:22 Haokunnnnnnnna 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 经典增删查改 漏洞 明显的off by one 创建两个chunk,通过覆盖第二个chunk的size再free再申请来得到两个重叠的chunk 伪造chunk之后修改fd任意地址写 唯一不同是不能用one gadget 网上查一下是one gadget需要条件 https://bbs.pediy. 阅读全文
posted @ 2021-04-10 09:25 Haokunnnnnnnna 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 默认操作 没啥用,进入ida看一下 明显的栈溢出,但这道题坑就坑在所有的函数都是静态链接的,没有libc地址可以泄露 所以使用int 80中断程序来调用系统函数 只要找到execute(‘bin/sh’)就算成功了 各种地址就不写了,用RoPgadget就找的到 bin/sh通过向bss段写入即可 阅读全文
posted @ 2021-03-24 19:56 Haokunnnnnnnna 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 这道题不需要看保护,实际上是linux的一种特性 前面的都没什么东西,就一下函数有用 看到了system函数,nice 但是这个system函数首先执行的是ping命令,并不能执行system(‘/bin/sh’)命令 但是linux可以通过;来分割命令 例如:命令1;命令2 执行完命令1后会直接执 阅读全文
posted @ 2021-03-23 14:52 Haokunnnnnnnna 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 基本操作 开启了canary保护 gift函数明显的格式化字符串漏洞 vlun函数明显的栈溢出 这里想要栈溢出首先要获得canary的值 然而这个漏洞有输入限制,只能输入6个字节,不能改got表 通过格式化漏洞一个个试canary的值 可以看到偏移为7的地方就是canary的值 剩下的就是以前的ro 阅读全文
posted @ 2021-03-23 14:13 Haokunnnnnnnna 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 堆体经典结构 创建的堆的结构 1个数组用来存放创建的堆的地址,一次创建两个堆,第一个存放函数指针和第二个堆的地址,第二个堆存放内容 删除操作发现只删除了两个堆,并没有删除数组中的地址,存在uaf漏洞 发现一个后门函数 这个打印功能使用了函数指针,所以只要控制数组中的地址修改为shell就行了 大致思 阅读全文
posted @ 2021-03-18 11:44 Haokunnnnnnnna 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 经典的增删写的堆题 一个数组储存堆的位置,但是free的时候会将数组中的指针清空,所以没有uaf漏洞 edit函数竟然让我们自己输入size,还没有限制,那就可以通过修改got表了 这里看起来有一个后门函数,但是后来发现其实没什么用,这里假装有用 思路就是修改数组中堆的地址,将地址改为put的got 阅读全文
posted @ 2021-03-17 23:01 Haokunnnnnnnna 阅读(83) 评论(0) 推荐(0) 编辑