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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

20145335郝昊《网络攻防》Bof逆向基础——ShellCode注入与执行

發布時間:2023/12/1 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20145335郝昊《网络攻防》Bof逆向基础——ShellCode注入与执行 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

20145335郝昊《網絡攻防》Bof逆向基礎——ShellCode注入與執行

實驗原理

  • 關于ShellCode:ShellCode是一段代碼,作為數據發送給受攻擊服務器,是溢出程序和蠕蟲病毒的核心,一般可以獲取權限。我們將代碼存儲到對方的堆棧中,并將堆棧的返回地址利用緩沖區溢出漏洞,覆蓋成為指向ShellCode的地址。

  • Linux中兩種基本構造攻擊buf:retaddr+nop+shellcode,nop+shellcode+retaddr,緩沖區小就把shellcode放后面,若緩沖區較大把緩沖區放置前邊。

實驗目的與要求

  • 本次實踐對象是一個名為pwn1的可執行文件。

  • 對可執行文件pwn1進行操作,注入并運行任意代碼。

實驗過程及結果

  • 寫一段shellcode代碼(本次實驗采用老師的代碼)
  • 設置環境,手動安裝execstack
  • 拷貝并運行pwn1文件確保可以使用

  • 設置堆棧可執行
  • 關閉地址隨機化,more/proc/sys/kernel/randomizevaspace用來查詢地址隨機化是否開啟或者關閉的狀態,2表示開啟,0表示關閉。

  • 構造payload,采用nop+shellcode+retaddr方式(\x4\x3\x2\x1將覆蓋到堆棧上的返回地址的位置,需要將它改為shellcode的地址)

  • 打開一個新的terminal,注入攻擊注入攻擊buf(注意回車要在設置斷點后進行,否則無法確認進程號,并且要在gdb執行c前回車

-用GDB調試20145335hh1進程,找到進程3400,用attach追蹤

  • 啟動gdb調試進程,設置斷點,查看注入 buf的內存地址

  • 此時發現0x080484ae ret 就跳到我們覆蓋的retaddr那個地方了

  • 設置斷點后,在另一個終端按下回車,并尋找返回地址,看到01020304表示返回地址的位置是0xffffd31c,shellcode就緊挨著這個地址,加四字節為0xffffd320

  • 退出gdb,按照anything+retaddr+nops+shellcode修改input_shellcode如下打印字母'H',完成實驗。

心得體會

本次實驗老師在課堂上也有講到過,但是在自己實驗過程中還是遇到問題,比如在最后一步輸入命令的時候遇到了問題,在命令perl -e 'print "H" x 32;print "\x20\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\xd3\xff\xff\x00"' > input_shellcode和命令(cat input_shellcode;cat) | ./20145335hh1時候兩個shellcode輸入錯誤,導致修改的是一段代碼,注入又是另一段代碼導致最后結果出現了問題,及時更正了過來完成了實驗

轉載于:https://www.cnblogs.com/20145335hh/p/6539368.html

總結

以上是生活随笔為你收集整理的20145335郝昊《网络攻防》Bof逆向基础——ShellCode注入与执行的全部內容,希望文章能夠幫你解決所遇到的問題。

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