反彈shell是什麼意思啊?網上看了半天都沒有相關的基礎的解釋?

反彈shell是什麼?


reverse shell,就是控制端監聽在某TCP/UDP埠,被控端發起請求到該埠,並將其命令行的輸入輸出轉到控制端。reverse shell與telnet,ssh等標準shell對應,本質上是網路概念的客戶端與服務端的角色反轉。通常用於被控端因防火牆受限、許可權不足、埠被佔用等情形。


想要搞清楚這個問題,首先要搞清楚什麼是反彈,為什麼要反彈。

假設我們攻擊了一台機器,打開了該機器的一個埠,攻擊者在自己的機器去連接目標機器(目標ip:目標機器埠),這是比較常規的形式,我們叫做正向連接。遠程桌面,web服務,ssh,telnet等等,都是正向連接。

那麼什麼情況下正向連接不太好用了呢?

1.某客戶機中了你的網馬,但是它在區域網內,你直接連接不了。它的ip會動態改變,你不能持續控制。

2.由於防火牆等限制,對方機器只能發送請求,不能接收請求。

3.對於病毒,木馬,受害者什麼時候能中招,對方的網路環境是什麼樣的,什麼時候開關機,都是未知,所以建立一個服務端,讓惡意程序主動連接,才是上策。

那麼反彈就很好理解了, 攻擊者指定服務端,受害者主機主動連接攻擊者的服務端程序,就叫反彈連接。


幾年前的問題了,說不定題主早已經是大神了, 不過還是寫一下答案。

兩張圖就知道什麼是反彈shell了。

左邊是在受害者機器上執行的一個python的交互界面, 運行該代碼可以將一個shell反彈到右邊的攻擊者機器上

回車後

右邊的攻擊者就可以在本機控制遠程受害者的電腦了

當然這個是為了演示,實際情況下一般是在web或者其他地方提交構造好的代碼然後目標機器反彈一個會話到攻擊機

2017年9月4日21:31:50


1、想辦法利用漏洞將自己的腳本如wget默認信任ftp文件漏洞,將自己偽裝過的文件讓伺服器自己下載到到其主機中

2、當用戶再次用wget時就會執行我們偽裝的文件

3、如我們可以在偽裝的文件里放一個tcp連接的bash,則用戶的伺服器會自動的連接我們伺服器的埠。

這樣我們就不擔心對方用戶不接受外界請求了或者對方不斷變換IP啦。他的主機會自動找我們連接,好像間諜哈哈~


shell是操作主機的介面,反彈shell就是把shell送給別人,讓其它人可以操作自己的計算機。


推薦閱讀:

將U盤的識別方式改為鍵盤,然後通過這個U盤來到達某種目的。可行嗎?
有人用簡訊轟炸機騷擾我,報警警察能查到他嗎?
如何看待文章「中國最大的Webshell後門箱子調查,所有公開大馬全軍覆沒」?
如何看待「護苗 2015」行動?
除了永恆之藍,美國 NSA 方程式組織中,還有哪些大殺器是需要警惕的?

TAG:網路安全 | 黑客Hacker | 信息安全 | 木馬 | 遠程控制 |