最近東京舉辦的2015年PacSec會議中,騰訊玄武實驗室的研究員通過條形碼掃描儀掃描中毒的條形碼打開了機器上的shell。這個攻擊被稱為BadBarcode,操作起來極其方便,但是目前很難確定到底是掃描儀還是主機系統需要修補。
BadBarcode:用一張紙入侵企業號星艦
這個項目是於暘(江湖人稱TK教主)和他的同事馬Hyperchem共同研討的。去年,於暘發現「緩解旁路衍生」後成為了第二個將微軟的十萬美元獎金收入囊中的人。
這次,他們在PacSec大會上演示的話題是「BadBarcode:用一張紙入侵企業號星艦」。
我們不知道壞人會做什麼。BadBarcode可以在主機系統上執行任何命令或植入木馬。所以基本上你可以用BadBarcode做任何事。」
團隊之所以能夠發現該漏洞是因為大多數條形碼不僅包含數字和字母—數字字符還包含了取決於條碼碼制的ASCII字符。而且,條形碼掃描儀基本上是鍵盤模擬器,如果他們支持類似於code128的條碼碼制,那攻擊者就可以創建一個可以讀取或打開shell的條形碼。
在展示過程中他們解釋道,Ctrl前綴的命令映射到ASCII碼後可以觸發之前設置好的熱鍵,以打開文件、保存文件或列印的對話框。攻擊者就可以使用這些熱鍵瀏覽電腦上的文件系統、啟動一個瀏覽器或執行程序。
教主於暘說:
我們設計了幾種不同的攻擊,關鍵是將特殊的控制字符的放在條形碼裡,這樣,條形碼掃描儀將就會打開主機系統的熱鍵並激活一個特定的功能。BadBarcode開發很容易。你只需要做一些惡意的條形碼然後列印在紙上就可以了。」
解決這個問題很棘手,因為它並不局限於特定的掃描儀,不同製造商製造的掃描儀都會造成這樣的結果。
BadBarcode不是一種特定產品的漏洞。它會影響到整個條碼掃描儀的相關行業。而且目前BadBarcode是掃描儀還是主機系統的問題很難說。所以當我們發現這個漏洞時,都不知道應該向哪個製造商報告。」
安全建議
於暘建議,當前情況下條碼掃描器製造商在掃描儀的默認設置中不要啟用超出標準協議的附加功能,也不要將ASCII控制字符發送到主機設備。同時,也需要考慮物聯網的主機是否需要使用條形碼掃描儀。
視頻分享
FreeBuf小編搜集到此前TK教主在極棒相同題目的演說,不想看英文PPT的看這個視頻也能近距離感受BadBarcode。
*參考來源:threatpost,FB小編江湖小嚇編譯,轉載請註明來自FreeBuf黑客與極客(FreeBuf.COM)