会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
fdddddd
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
下一页
2025年1月18日
ciscn_2019_es_2(栈迁移)
摘要: 看一下ida 两个read函数都是读取0x30(48),然后s距离ebp有0x28(40),所以虽然有溢出但只溢出了两个4字节,也就是只能覆盖到ebp和ret。 这时候就需要运用栈迁移 栈迁移就是当溢出不够多的时候,这时候可以考虑把栈给迁移去其它地方,利用leave_ret指令控制ebp,使其指向我
阅读全文
posted @ 2025-01-18 15:29 fdddddd
阅读(112)
评论(0)
推荐(0)
2025年1月16日
jarvisoj_tell_me_something
摘要: 分析一下这串代码,每次读取flag.txt的一个字符存入buf[0]里面,然后用write输出(buf代表的是buf[0]),读到文件末尾退出返回0xFF。其实就输出flag啦,我们只要将栈溢出返回地址填到这个函数就行 这里注意没有把rbp压入栈,结尾也没有leave,不用加8 exp from p
阅读全文
posted @ 2025-01-16 17:06 fdddddd
阅读(33)
评论(0)
推荐(0)
jarvisoj_fm
摘要: 格式字符串漏洞的篡改内容 看到x值为3,将x的值改为4就好 首先传入x参数的地址,这个地址存放在栈上偏移为11的位置,利用%11$n,定位到了偏移为11的位置,往这个位置写入数据,写入的数据由%11$n前面的参数的长度决定,而我们的x参数的地址,正好是4位,不需要添a来补齐位数就可以直接利用,将x参
阅读全文
posted @ 2025-01-16 16:34 fdddddd
阅读(30)
评论(0)
推荐(0)
bjdctf_2020_babystack2
摘要: 整数溢出 要使栈溢出,则应该输入nbytes,使其转换为int类型小于10,但转换为unsigned int类型大于0x10+ int类型:在C语言中,int类型是有符号整数,通常占用4个字节(32位)。它的取值范围是-2147483648到2147483647。 unsigned int类型:un
阅读全文
posted @ 2025-01-16 13:36 fdddddd
阅读(48)
评论(0)
推荐(0)
ciscn_2019_ne_5
摘要: 先让我们输入s1,如果不是'administrator'程序将退出。 然后输入1会让我们输入src(限制读入128个字符) 输入2会展示我们输入的src,输入3有个system 输入4会将src拷贝到dest里面,注意到strcpy没有限制,而dest离ebp为0x48,而src最多可以输入128.
阅读全文
posted @ 2025-01-16 01:37 fdddddd
阅读(65)
评论(0)
推荐(0)
ciscn_2019_en_2 1
摘要: 打开ida 记得绕过加密,因为它会改变s里面的值 exp from pwn import * from LibcSearcher import * context(os='linux', arch='amd64') context.log_level='debug' io=remote('node5
阅读全文
posted @ 2025-01-16 00:10 fdddddd
阅读(38)
评论(0)
推荐(0)
2025年1月14日
not_the_same_3dsctf_2016 1
摘要: 打开ida能看到 栈溢出,返回地址填到get_secret函数里面,可以看到get_secret函数是直接读取了flag的,现在就需要把它输出即可。 输出我们可以利用代码里面的printf,因为printf从缓冲区打印出东西需要满足条件,比如有换行符或缓冲区已满或程序正常退出。 这里我们用exit让
阅读全文
posted @ 2025-01-14 21:16 fdddddd
阅读(65)
评论(0)
推荐(0)
ciscn_2019_n_5 1(puts,64,libc)
摘要: 非常normal的ret2libc 点击查看代码 from pwn import * from LibcSearcher import * io = remote('node5.buuoj.cn',27414) #io = process('./ciscn_2019_n_5') elf = ELF(
阅读全文
posted @ 2025-01-14 18:03 fdddddd
阅读(54)
评论(0)
推荐(0)
[OGeek2019]babyrop 1
摘要: 打开ida看 点击查看代码 sub_80486BB();#一些基本的输入输出 fd = open("/dev/urandom", 0);#Linux系统中的一个特殊文件,用于生成随机数。 if ( fd > 0 )#文件打开成功返回非负 read(fd, &buf, 4u);#读取4字节到buf里面
阅读全文
posted @ 2025-01-14 14:54 fdddddd
阅读(239)
评论(0)
推荐(0)
2025年1月13日
others_shellcode 1(syscall)
摘要: 其实这题直接nc连一下就可以了。 其实考的是系统调用来着 32位程序系统调用号用 eax 储存, 第一 、 二 、 三参数分别在 ebx 、ecx 、edx中储存。 可以用 int 80 汇编指令调用。 64位程序系统调用号用 rax 储存, 第一 、 二 、 三参数分别在 rdi 、rsi 、rd
阅读全文
posted @ 2025-01-13 21:39 fdddddd
阅读(55)
评论(0)
推荐(0)
上一页
1
2
3
下一页
公告