首頁
社區(qū)
課程
招聘
<如何利用printf漏洞突破canary保護(hù)>中 canary的大小端轉(zhuǎn)換

問題描述

<如何利用printf漏洞突破canary保護(hù)>中,因?yàn)槲沂褂玫氖莗ython3,不支持canary.decode("hex")[::-1]

問題出現(xiàn)的環(huán)境背景及自己嘗試過哪些方法

在網(wǎng)上查找大小端轉(zhuǎn)換函數(shù),是這樣替換的
import binascii

 

canary=binascii.hexlify(binascii.unhexlify(canary)[::-1])

相關(guān)代碼

canary = p.recv()[:8]
print(canary)
print(type(canary))
canary=binascii.hexlify(binascii.unhexlify(canary)[::-1])
print(canary)
print(type(canary))

相關(guān)調(diào)試信息

附圖或描述
第一個(gè)是原始地址的canary,第二個(gè)是轉(zhuǎn)換后的canary值,最后是打印生成的payload
圖片描述

你期待的結(jié)果是什么?實(shí)際看到的錯(cuò)誤信息又是什么?

最后運(yùn)行時(shí)會(huì)出現(xiàn)報(bào)錯(cuò),想知道我哪個(gè)位置有問題?謝謝
[] Switching to interactive mode
**
stack smashing detected **: terminated
[
] Got EOF while reading in interactive
$ ls
[*] Process './printf2' stopped with exit code -6 (SIGABRT) (pid 3152)

收藏
1條回答
Roger 2023-12-5

已在微信回復(fù)

回復(fù)
零基礎(chǔ)入門pwn
  參與學(xué)習(xí)     1798 人
  提問次數(shù)     36 個(gè)
《零基礎(chǔ)入門pwn》,短時(shí)間內(nèi)踏入漏洞利用的大門,快速成為一名合格的pwn題選手
0
我的提問
0
我的回答
0
學(xué)習(xí)收益