ciscn_2019_es_3#总结#题目没有提供free,基本能算是house of force+house of orange,但又不完全是。应该说主要还是围绕着top chunk进行利用,详细利用过程如下:利用strlen的漏洞,溢出修改top chunk的size,需要滿足要求通过检查,之后会把top chunk释放到unsorted bin中。比如控制剩下的top chunk的size为0x1520,然后...
Ubuntu 18的 tcache double free没有加入 key 所以会简单很多 主函数: 1 int __cdecl __noreturn main(int argc, const char **argv, const char **envp) 2 { 3 int v3; // [rsp
16 s.recvuntil(b"please input name:\n") 17 s.send(name) 18 s.recvuntil(b"please input compary call:\n") 19 s.send(call) 20 21 def show(index): 22 s.recvuntil(b'choice:') 23 s.sendline(b'2') 24 s.recvuntil(b"Please input the index:\n") 25 s.sendline(str(index)) 26 ...
去掉要转化为负数的-1\x00\x00,只剩12个字节可以操作。如果直接rop,由于read有3个参数,所以至少需要0x14的大小,很显然这里不够。所以只能利用程序中的call read这样的汇编执令来缩小rop...
ciscn_2019_n_1 启动靶机,大致环境依旧没变,但是操作系统……Ubuntu 18 直接IDA 反编译并查看伪代码,主函数略显朴素,值得关注的是其调用了一个 func() 函数,双击查看该函数,发现亮点:system("cat /flag"),因此现在的任务就是让该语句成功执行! 代码语言:javascript ...
buuctf[强网杯 2019]随便注 1(超详细,三种解法) 第一种解法 堆叠注入 网页环境 判断是否是字符型注入1' 判断是否存在关键字过滤select 联合查询被过滤,只能用堆叠注入了 查看有几个字段1' order by 2# 正常回显1' order by 3# 回显报错,可以看出只有两个字段 查看所有数据库1'; show databases;...
ciscn_2019_n_5 简单的栈溢出,可以看到name是在bss段的,这个段可读可写可执行,那么我们就考虑把shellcode写到name中,然后利用v4跳转到name里去执行 但是不知道为啥这个方法没办法解决 那就只有用libc from pwn import * from LibcSearcher import * context(arch='amd64',os='linux',log_level='debug') # ...
ciscn_2019_n_1 例行检查,64bit,NX保护开启 运行一下,没有信息 64位IDA打开,看到了cat flag ,跟进瞧瞧 函数显示 ,当v2等于11.28125时,得到flag,但要求 我们输入的是v1,所以我们只有把v1和v2 之间全部填满之后紧接着写入11.28125即可。 我们可以看到这两个之间的大小为0x2C 再将11.28125转换为内存中的16进制...
1625-5 王子昂 总结《2017年6月23日》 【连续第264天总结】 A.ciscn-maze B.惯例先拖入PEiD,发现是VC++ 看这个题目明显是走迷宫类型的,先运行一下试试吧 用CMD打开,毫无提示直接结束 期待显示迷宫的我似乎搞错了什么OTZ 这种类型OD就不太好分析了,算法太复杂了 直接送入IDA,找到main函数F5,发现先是判断参数...
BUUCTF ciscn_2019_n_8 ❝ 飞书链接:li2h5rwaaaa.feishu.cn/w 密码:WwR]4r|7自动化脚本项目地址:github.com/Cha111Ng1/gh 微信公众号:攻有道 题目地址:buuoj.cn/challenges# 题目名称:ciscn_2019_n_8 ❞ 保护信息 关键函数 /* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection...