假設我發現一個USB記憶棒隨處可見,並且想要檢查其內容以找到其合法所有者。考慮到USB記憶棒實際上可能比大容量存儲設備更加惡意,我有什麼辦法可以安全地這樣做嗎?有電氣隔離的“避孕套”嗎?有沒有辦法手動在Linux / Windows / OS X中加載USB驅動程序,以確保它不會將設備視為USB大容量存儲以外的其他設備?
畢竟,儘管有種種擔心-販賣,似乎似乎是放錯位置的記憶棒實際上只是記憶棒。
後續問題:照相亭要採取什麼措施來防止這些情況發生?什麼樣的攻擊?
假設我發現一個USB記憶棒隨處可見,並且想要檢查其內容以找到其合法所有者。考慮到USB記憶棒實際上可能比大容量存儲設備更加惡意,我有什麼辦法可以安全地這樣做嗎?有電氣隔離的“避孕套”嗎?有沒有辦法手動在Linux / Windows / OS X中加載USB驅動程序,以確保它不會將設備視為USB大容量存儲以外的其他設備?
畢竟,儘管有種種擔心-販賣,似乎似乎是放錯位置的記憶棒實際上只是記憶棒。
後續問題:照相亭要採取什麼措施來防止這些情況發生?什麼樣的攻擊?
我將使用不具有網絡連接的Raspberry Pi(型號A / A +),因為:
這仍然留下您要處理在其上找到的任何文件的問題-將它們複製到任何其他計算機上顯然會使該計算機處於危險之中。
什麼都沒有100%安全,請注意。我不能說比詹姆斯·米肯斯更好:“如果你的對手是摩薩德,那你就是槍手了,那麼你就無能為力了。”
如果通過光隔離的集線器連接PC,USB殺手將無法殺死您的PC。它們確實存在((搜索:“光隔離USB集線器”),但是由於我自己從未使用過,因此我不會推薦特定的型號。它們雖然不便宜。這是一個示例:
一旦您處理了硬件方面的內容,便會遇到一個更常見的問題。您可能已經在其他答案中獲得了更多的專家建議,但是我的想法是拔出PC的硬盤驅動器(以及所有其他可寫存儲),然後從實時CD或實時USB閃存盤(不會自動運行的USB閃存盤)啟動-當然可以運行USB記憶棒的內容)。那是因為這是我從頭開始付出的最大回報。如果您要養成這種習慣,將Live CD設置為不自動掛載和不自動安裝硬件,並從網絡上拔出計算機,這將是明智的。如果它是可啟動的,則將可疑棒固定在適當的位置進行引導也是一個壞主意,而且還因為插入後可能希望訪問事件日誌。
如果我們假設該棒可能已經過物理改動以實現最大的舒適性,則必須考慮到所謂的“記憶棒”插入計算機後會噴出一些炭疽芽孢或氧化oxide雲的可能性。 ,因此您的問題的答案將是:沒有安全的方法來檢查記憶棒的內容(除非您可以將任務委託給將在另一座建築物中執行的底層任務)。
相反,如果我們假設攻擊者不是那麼徹底,那麼我們暗中使用的是本質上任意的“骯髒閾值”。如果我們排除原始的物理破壞性影響(包括嘗試油炸主機電子設備),那麼邪惡的記憶棒可能會通過五種方式損壞插入它的機器:
記憶棒可能會嘗試濫用USB控制器硬件中的漏洞。該控制器是一個具有自己的固件的芯片,該固件也連接到計算機中的主要數據通道,因此在理論上存在可利用漏洞的可能性。這將是特定於控制器及其固件的版本,我不知道在野外有任何此類漏洞。
記憶棒可能會嘗試濫用處理USB對話的操作系統代碼中的漏洞。這基本上就是 PlayStation Jailbreak所做的:在USB級別上,該設備是幾個設備,其中一個發送的規格略有超限的消息觸發了
內存棒實際上不是內存棒,而是另一種設備,可能是其中的幾種設備。他們同時。例如,從操作系統的角度來看,操縱桿可以是鍵盤,並且在插入時可以開始打字。 這是在野外發生的。
記憶棒可以是真正的記憶棒,其文件系統利用文件系統的OS代碼中的漏洞。除了直接的緩衝區溢出外,還可能存在自動運行功能等問題(值得注意的是,許多現有的,非惡意的記憶棒還精確地模擬了虛擬CD-ROM驅動器,以便嘗試執行這樣的自動運行)。一種變體是包含有圖片的棒,其中的圖片會利用圖片渲染庫中的漏洞(在嘗試通過圖形方式瀏覽目錄和文件時顯示“縮略圖”時,主機會調用這些漏洞)。
最後但並非最不重要的是,涉及人員操作員,這帶來了許多攻擊可能性。許多攻擊只是簡單地利用了人類的無能為力。棍子內容可能會導致操作員不小心啟動看起來像無害的可執行文件。或者,更糟糕的是,棍子可能會包含性質令人不安的文件(有些東西不能看不見),仍然算作“損壞”。
您的進行“安全探索”的最佳選擇是使用基本PC,其操作系統在代碼質量方面享有盛譽,並使用最新的安全補丁,並且至關重要的是,使用最少的即插即用功能-盡可能發揮支持。理想情況下,將不會的操作系統嘗試使用新插入的USB設備自動執行任何操作(即,與Windows,OS X或Linux等現代操作系統完全不同的操作系統)。我建議從 OpenBSD或 NetBSD開始,它們被定制為停用任何形式的USB相關魔術。使用不常見的軟件和不常見的硬件還提供了一些小的額外保護,原因是低級,廣泛傳播的攻擊者往往不會費心編寫運行在基於PowerPC的舊Mac上的NetBSD系統的漏洞利用程序。
在所有情況下,請記住,沒有完美的沙盒系統(硬件/電氣,軟件)可以100%阻止此類可能的感染。
另一方面,您的情況可能取決於您是誰,以及在哪裡找到它。
如果您是一名合格的工人,那麼對於一家汽車公司,您發現棍子在您的工作場所附近或居住地點附近(您是針對性的),那麼最好的辦法就是銷毀該USB記憶棒,因為問題是您無法提前知道找到的USB記憶棒是否包含固件嵌入的惡意軟件,在這種情況下,似乎沒有用處(“ BadUSB”惡意軟件存在於USB固件中,無法檢測,無法修復)。此類惡意軟件可能導致您的BIOS被感染,這可能很難清除(即使並非不可能)。
如果您是X或Y先生,並且發現USB盤插入其中一個隨機的公共場所,那麼即使USK棒被感染(無論是否出於故意),該惡意軟件也不會那麼嚴重,在這種情況下,可能是使用Linux Live-CD引導到您的計算機以進行引導和檢查。 USB的內容可能是合理的操作。
儘管涵蓋了電氣方面,但許多惡意軟件仍在感染BIOS。好吧,然後將其插入沒有BIOS且不會運行任何操作的計算機:使用SPARC計算機。我看到在不確定的條件下eBay上的Sunfire V100機器價格為50-60美元,所謂的“賣方翻新”價格不到200美元。可能有較舊的產品,因此價格更便宜的USB產品我都不記得了。 V100肯定具有USB端口。我敢肯定,如果一個三字母的代理商知道您使用SPARC,他們將能夠使用USB記憶棒來做一些令人討厭的事情,但這將是非常昂貴的攻擊,因為他們將需要就如何做做原始的研究。這是在Solaris上安裝USB記憶棒的Oracle官方頁面。
該論壇主題討論了將USB添加到Ultra 5/10,如果您想打擾的話。這樣,但我認為它們並不比Sunfire V100便宜得多。
解決這個問題的一種有趣方法是 CIRClean,也在 LWN文章中進行了描述。
它使用了Raspberry Pi(在面對過壓和其他電氣攻擊),應將不受信任的USB大容量存儲和受信任的空白USB大容量存儲插入其中。並且不插入其他設備-它未連接到任何網絡或鍵盤/鼠標/監控。而且沒有可寫的永久性存儲或BIOS被感染(我想,如果他們願意,真正的偏執狂可以在每次使用前重新刷新啟動SD卡)。
加電,它將將文件從一個文件傳輸到另一個文件,對已知的惡意軟件載體進行一些自動清理(例如,將PDF或MSOffice文件轉換為更安全的HTML)。視覺和聽覺指示器顯示該過程何時完成,並且可以關閉系統電源,使用戶可以在受信任的存儲上使用原始文件系統的某種版本進行清理,以準備轉移到用戶的工作站中。
如果您打算使用CIRClean,我建議檢查其問題跟踪器是否存在當前缺陷-LWN文章指出(2014年12月),沒有針對BadUSB鍵盤攻擊的保護措施;請參閱第133頁。我還不確定這是否仍然正確。查看Git存儲庫中的內核配置文件,看起來它肯定會被鎖定得更多(Magic Sysrq,有人嗎?)。也許是一個參與而不是完成產品的項目。
由於 USB殺手設備帶來的風險,OP指的是電氣隔離:
據報導,該設備通過從USB端口汲取電力來工作並使用轉換器直到獲得負電壓。然後將電源重新引導回計算機,過程循環進行,直到機器的電路炸斷為止。
不幸的是,您無法防禦這種攻擊,因為它涉及電路(除非您構建您自己的自定義USB端口!),但非常的可能性很小。
當今最常見的攻擊媒介是插入USB驅動器時Windows病毒自動運行。因此,我想說,相對而言,在Linux計算機上檢查USB驅動器的內容是安全的。從理論上講這是不安全的,但實際上,除非有人將您或您的公司作為目標,否則您這樣做的風險不會很高(在隨機街道上找到的USB驅動器與公司的停車場中找到的USB驅動器之間存在差異)。
從技術上講,在Linux上,停止 udev
並卸載除 usb-storage
之外的所有與USB相關的內核模塊非常容易。但是,將有兩個實際問題:
您的庫存內核可能內置了 hid
模塊,因此您必須重新編譯內核以使其可以加載。
一旦卸載了 hid
模塊,合法的USB鍵盤和鼠標也將停止工作。找到舊的PS / 2鍵盤,或將虛擬鍵盤與觸摸板/觸摸屏配合使用(僅在非USB鍵盤上可用)。
tl; dr:做一些大膽的事情,例如使用“刻錄機” PC或設備來讀取USB記憶棒然後丟棄,這是一種(幾乎)完全防彈的方式堅持到底。但是在調查時實際上走到這樣的極端是過分的,有點傻。除了沒有的地方。
信不信由你, 是一種幾乎簡單的方法來檢查這種USB記憶棒。分步操作:
在Internet上找到一些超級舊,超便宜但仍能正常運行的筆記本電腦/上網本併購買。 (任何足夠大的平板電腦都具有完整的USB端口,並且具有可以在該USB端口上使用外部存儲的操作系統也可以使用。)
替代項1:但是,如果,您還真的很在意不會通過將USB棒插入某些先前擁有未知安全歷史記錄的設備來感染USB棒,例如,價格為$ 60- $ 70的最低價格帶有完整USB端口的新型Windows平板電腦。 (在Newegg,Amazon,eBay等上以及通過Dealnews等網站都很難找到它們。)最便宜的商品硬件佔有一席之地。
替代方法2:如果您想節省一點現金,並且已經有了舊的,cr腳的或舊的& cr腳裝置,那麼您會很樂意為此犧牲找出USB記憶棒上的內容後,您當然可以走那條路線。但是,很顯然,您想要確保在這樣做之前絕對絕對不會留下任何形式的個人(或專業數據)。使用具有經典硬盤驅動器的PC,您很可能可以通過使用引導程序擦除該引導程序來完成此操作,該引導程序會用隨機數據多次重寫磁盤上的每個空間,然後重新安裝所需的任何操作系統。大概。另一方面,如果要使用具有固態存儲的設備....
當包含您的設備的包裝到達時,抓住它,用一根您願意犧牲的適當的充電電纜(您將在幾分鐘內看到原因),然後前往有電源插頭但又沒有電線的地方旅行。 (a)沒有可用的無線網絡,或者(b)至少沒有以前連接過的無線網絡,並且很可能將來再也不會連接。 (遠離城鎮的另一邊的Panera或星巴克效果很好)。只是為了掩蓋這種假設情況,即USB記憶棒上存在一些超複雜的NSA級惡意軟件會感染您的設備,然後自動開始使用其無線電嘗試破壞其周圍的任何Wi-Fi,藍牙等網絡。偏執狂獎金:還可以將所有具有任何無線連接能力的其他電子設備留在家中。 (是的,包括您的智能手機。我知道很難分開,只需要一次。)
當您到達自己的位置時,請拆箱並插入新設備。等待它充電。
打開設備,等待其啟動,然後插入可疑的USB驅動器。看一下其中的所有內容,文件結構以及所需的任何特徵。如果您在有公共wifi的地方,則可以連接並從Internet上獲取一些工具(如果您的舊垃圾桶將安裝&,請運行它們)並仔細觀察。 實際上對設備什麼也沒做。
當您滿足好奇心後,拿起設備和充電器,到附近的某個地方去,並通過在Officespace中重新創建該場景來給他們一個很好的最終發送方式。 (警告:可能以NSFW語言自動播放YouTube vid。.)。
使用USB記憶棒&進行任何您決定要做的事情。
(好的,如果您以自己沒有造成極大浪費和/或對環境不負責任而自豪,那麼與其以有趣的方式破壞“燃燒的”設備/ PC,您可以對其進行回收,捐贈給慈善機構或將其出售給如果您走後兩種路線中的任何一條,是否應該告訴接收方您為什麼要刪除該設備呢?好吧,也許我們再把這一天稱為網絡道德問題。)
結束。
好吧,好吧,我有點滑稽。但是只有一點。事實仍然是,如果我們要討論的是(幾乎)零安全風險的USB設備,唯一的選擇就是將其插入以下系統中:(a)絕對不包含您的敏感信息;(b)您願意如果USB變成某種電子惡意物品,則必須做出犧牲。(c)您絕不會再將其用於任何需要對其安全性給予任何信任的目的,並且(d)物理上將無法連接至任何目的。網絡或其他設備來傳播可能來自有問題的USB驅動器的惡意軟件感染。 (或者查找可能存在於那些設備和/或網絡上的任何敏感信息。)
換句話說,最好是“刻錄機”計算機。如果您確實真的要檢查具有幾乎完美的安全性的硬盤,那就是。
現在,如果我們只是在談論USB記憶棒的“安全性/安全性,考慮到實際考慮”,那麼上述@Chris H的建議就是一個不錯的選擇:購買台式機或台式機。便攜式計算機(您實際上可以在不使用專業工具的情況下就可以打開/維修),取出存儲驅動器,從您喜歡的實時CD / USB OS操作系統啟動,並插入可疑/有趣的USB記憶棒。 USB仍有可能包含複雜的惡意軟件,這些惡意軟件可能會在您插入USB記憶棒然後刷新計算機的BIOS / UEFI或刷新視頻卡,網卡, USB控制器等?是。 (儘管目前,除了BIOS / UEFI攻擊外,所有其他東西在野外仍然很少見。甚至BIOS或UEFI惡意軟件也需要專門針對目標機器上使用的製造商/版本實施編寫。)實際上,一個USB記憶棒會成為一個USB殺手,會把您的主板炸掉嗎?好吧...從理論上講,是的。但是,反對上述任何一種情況(尤其是USB殺手級)的可能性都是非常有利的。為了說明您在問題中提出的一個好觀點,大多數情況下,一個普通的舊USB記憶棒只是一個普通的舊USB記憶棒。
除非您(您的雇主)在另一個實體上,您可以參與其中也就是一些成熟的攻擊者將其視為非常高價值的目標。然後所有賭注都關閉了。在這種情況下,上面提到的一種“其他所有方法都無法解決的安全問題”實際上可能是唯一合適的方法。但是“幾乎完美的”安全性足以滿足我們在此的目的。
其他答案涵蓋了惡意的閃存驅動器,我將討論您鏈接的答案中提到的USB殺手。 (編輯-當我開始鍵入此命令時,他們確實這樣做了)。
虛擬機無法解決這些問題,它仍然可以獲取電源並嘗試油炸與其連接的任何設備。據我所知,您有三個選擇:
您選擇做什麼實際上取決於您在哪裡找到驅動器以及您有多好奇。就個人而言,如果我發現一個外部工作並且絕對必須對其進行檢查,則可以將其插入到rPi中。如果我在街上找到一個,那就留在那裡。
您可以使虛擬機充當所謂的“避孕套”。幾個流行的虛擬機管理程序包括 VMware Player和 Virtual Box。如果您使VM崩潰,則可以製作一個新的VM,然後重試。您可以在網上找到要使用的ISO文件。如果需要逐步瀏覽,可以在Google上查找一些教程,具體取決於所使用的管理程序。
如果您使用的是Linux計算機,則可以將磁盤設置為只讀磁盤,並且可能會更容易,具體取決於你有什麼。您可以通過Terminal中的 diskutil
來完成此操作。
根據您選擇的路線,只需發表評論,我就可以通過編輯此答案進行更深入的了解。希望這能給您一些想法,並使您更接近目標。