PWN-PRACTICE-BUUCTF-1
生活随笔
收集整理的這篇文章主要介紹了
PWN-PRACTICE-BUUCTF-1
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
PWN-PRACTICE-BUUCTF-1
- test_your_nc
- rip
- warmup_csaw_2016
- ciscn_2019_n_1
test_your_nc
附件的main函數直接system("/bin/sh"),nc直接連即可cat flag
rip
main函數中,gets函數讀取一行會造成棧溢出
構造payload覆蓋rip,使得return時跳轉到后門函數fun
腳本如下,特別注意的是附件為64位的elf,調用system時必須保證地址是16字節對齊的
參考:在一些64位的glibc的payload調用system函數失敗問題
一般在調用system前用一個ret指令來實現內存對齊
ret指令可以用ROPgadget來找,如下
warmup_csaw_2016
main函數中,程序打印后門地址,gets造成棧溢出,和上面那道rip一樣的思路
幾乎和rip一樣的腳本
用一條ret去對齊內存,本地和遠程都能打通
不用ret去對齊,本地打不通,遠程能打通
ciscn_2019_n_1
main函數進行一些初始化,然后來到func函數
可以看到,v2被賦初值為0.0,而gets可以造成溢出,超過44個字節的部分會覆蓋到v2
于是考慮將v2覆蓋為11.28125,但是不能直接在填充v1的44個字節后面加“11.28125”
需要用二進制(字節)的形式去表示
根據if處的匯編代碼能找到11.28125的二進制表示
腳本如下
總結
以上是生活随笔為你收集整理的PWN-PRACTICE-BUUCTF-1的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 招行信用卡汽车分期划算吗 招行汽车分期0
- 下一篇: 周星驰迎来60岁生日:新片《功夫2》《太