U盤怎么可能隨便接入電腦就盜取數據?
有時候上網會看到有人說用一個U盤接入電腦自動盜取信息的,當時想想U盤怎么可能盜取數據?第一反應就是不可能。
因為電腦作為USB Host,在USB Mass storage類型的設備中,USB指令的工作流大體是HOST->SLAVE->HOST,所以如果電腦不給相應的指令操作,數據不可能流向U盤。
當然有些會想到以前的U盤autorun病毒,在當今社會,在系統到防病毒安全軟件的各種保護下,autorun病毒幾乎毫無用武之地,所以也不難得出前面“不可能”的反應。
但是黑客往往就是在不可能中創造可能的,因此怎么才能讓U盤主動發指令給PC,命令PC把數據傳向U盤呢?其實這個問題如果深入其中會發現毫無解決方案,因此我們的思維需要跳出這個問題,把問題轉換為:
“如何讓PC自動處理一個USB設備主動發的指令?”
新的問題可以很容易得到答案,USB設備非常多,如USB網卡,USB鼠標鍵盤,USB麥克風,USB攝像頭等等,這些設備都會主動發送數據給PC,而其中有部分需要打開某一個“開關”才能主動發送數據,如USB攝像頭,打開后就可以不停發送視頻流給PC。如USB網卡,驅動適配后一旦連接上網絡可不停在整個網絡中廣播數據,但這些都或多或少有一些操作上的限制,因為需要手動參與,並且上層的PC軟件負責接收數據后並沒有很好的做出“入侵”相關的動作(當然USB網卡可以模擬自動發送網絡命令,只需在網絡中存在相應的漏洞,網絡漏洞說到底也是因為“正常的指令”被PC處理並用於非正常的行為)。
綜上,既然已經有了這么多USB設備能夠被PC自動處理,那么就可以實現一個更易於攻擊的工具,更自動化的USB設備。
最常見的就是USB鼠標鍵盤設備,因為這一類設備一旦接入PC,隨時隨地都可以觸發操作,不需要手動參與,且操作系統自動接收並直接反饋操作(除非PC系統不支持鼠標鍵盤,那是真的需要被維修),很容易迷惑用戶,比如我們假設一下:
1)一接入USB設備,自動發送WIN+R按鍵,
2)在短時間內,自動發送字符按鍵模擬輸入cmd.exe,
3)再模擬輸入net user add 指令,即可創建用戶,進而遠程連接
4)利用mshta 執行js腳本,可下載維(MU)護(MA)工具包,再對PC進行遠程維(KONG)護(ZHI).等等。。
如何讓一個U盤一接入就能夠盜取數據?
問題回到原點,現在我們有了前面USB鼠標鍵盤的方案,事情好辦多了,USB設備通過主控的固件開發可以實現同時具備Mass storage類型和HID類型,只要兩者合二為一,如果沒有U盤的主控,可使用“HUB+U盤+普通USB主控芯片”實現,再把U盤低價賣出去,那么....
那么問題來了,如何防止此類USB設備的攻擊?
從整體上講,並沒有太好的解決辦法,因為USB鼠標鍵盤幾乎可隨意接入一台PC並直接操作,除非哪天PC系統和USB硬件雙向支持可信計算認證,當然還要保證廠商對此支持並且是講信用的廠商,總之來說,目前10年甚至20年是不可能的。
現階段我們假設設備的VID和PID是可信且可識別的(當然殘酷的現實是VID和PID可被MPTOOL隨意設置),針對不同類型的用戶,有以下的建議:
1)個人用戶:
在日常中,很多人對電腦突然彈出一個一閃而過的小窗口並不會在意,一旦有Win+R的運行窗口,幾乎想做什么都可以做到,同樣PC中一些常用軟件都會開啟很多快捷鍵,可鑽的空子非常多(如QQ: 直接模擬鼠標鍵盤操作自動添加QQ好友,哪天看到QQ處於離開狀態,就自動開啟QQ遠程...)。
所以,當我們在拿到一個陌生的USB設備時,盡量不要隨意接入PC,如確實有必要,就接入虛擬機,把需要的數據拷出或拷入,再拔掉即可。當然一旦確認有異常現象,立即停止使用。
這種攻擊防不勝防,當然我相信最重要的是
先確認自己是否能夠承受被攻擊的代價(裝甲值最高的莫過於銀行沒存款,電腦沒有女友照片的人啦),
如果不能承受,那把自己的安全意識培養起來吧。。。
網上也有很多免費的(可能帶廣告或病毒)USB設備管理軟件。
2)企業用戶:
安裝內網安全系統(國內只要有錢沒有什么解決不了的),對USB端口和USB硬件進行策略管控。
3)開發者:
21世紀人類需要掌握的必備技能就是程序開發,因為這類人可以動手做自己想做的事(未來世界萬物都會IT化),對於這個問題,簡單的是利用系統的設備管理API進行管理控制,實現對USB節點的信息過濾篩選,以及設備的禁用啟用。
4)保密涉密用戶
將USB端口使用環氧樹脂水泥膠或其他安全固體膠封死,甚至直接定制沒有USB HOST的主板,拆除USB端口等等。
補充1:
國外已有黑客開發了(BadUSB),不過是利用了群聯主控泄漏的固件源碼(C51)進行修改。
https://www.freebuf.com/articles/terminal/82238.html
開源代碼
https://github.com/brandonlw/Psychson
題外話:群聯這顆主控估計快停產了吧,國內找一個可開發的USB主控資源越來越少了,沒一定出貨量芯片廠商還不配合,所以簡單需求建議使用stm32,順便把單片機也溫故起來也許還是不錯的,就是價格太高沒法做低價產品。