Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
hak5
GitHub Repository: hak5/usbrubberducky-payloads
Path: blob/master/payloads/examples/Example_Payloads/payload_menu.txt
2968 views
1
REM Example Injection/Text Based Payload selection
2
REM COMPATABILITY:
3
REM DuckyScript 3.0
4
5
REM TARGET:
6
REM Any host that will reflect NUMLOCK
7
8
REM USAGE:
9
REM Replace the Hello Payload 1/2/3 stubs below with payloads of your choice.
10
11
REM DEPLOYMENT:
12
REM Open PayloadStudio Console, notepad or text editor, make sure cursor is active there
13
REM Plug in Ducky
14
REM Hit NUMLOCK on the host machine to cycle through modes
15
REM Hit the button on the Ducky to confirm current selection
16
REM Replace Example Modes with desired payloads - marked via comments below
17
18
DELAY 1000
19
VAR $SELECTED = 0
20
DEFINE MODE_MAX 2
21
DEFINE MODE_1 0
22
DEFINE MODE_2 1
23
DEFINE MODE_3 2
24
25
FUNCTION inc_mode()
26
IF ($SELECTED == MODE_MAX) THEN
27
$SELECTED = 0
28
ELSE
29
$SELECTED = ($SELECTED + 1)
30
END_IF
31
END_FUNCTION
32
33
BUTTON_DEF
34
ENTER
35
STRING SELECTION MADE
36
ENTER
37
$MODE_SELECTED = TRUE
38
END_BUTTON
39
40
FUNCTION draw_menu()
41
ENTER
42
STRINGLN Menu
43
STRING [
44
IF ($SELECTED == MODE_1) THEN
45
STRING *
46
END_IF
47
STRINGLN ] PAYLOAD 1
48
STRING [
49
IF ($SELECTED == MODE_2) THEN
50
STRING *
51
END_IF
52
STRINGLN ] PAYLOAD 2
53
STRING [
54
IF ($SELECTED == MODE_3) THEN
55
STRING *
56
END_IF
57
STRINGLN ] PAYLOAD 3
58
END_FUNCTION
59
60
FUNCTION run_menu()
61
VAR $MODE_SELECTED = FALSE
62
VAR $NUMSTATE = $_NUMLOCK_ON
63
draw_menu()
64
WHILE ($MODE_SELECTED == FALSE)
65
IF ($NUMSTATE != $_NUMLOCK_ON) THEN
66
$NUMSTATE = $_NUMLOCK_ON
67
inc_mode()
68
draw_menu()
69
END_IF
70
DELAY 200
71
END_WHILE
72
DELAY 1000
73
$_BUTTON_USER_DEFINED = FALSE
74
IF ($SELECTED == MODE_1) THEN
75
STRINGLN PAYLOAD 1
76
ELSE IF ($SELECTED == MODE_2) THEN
77
STRINGLN PAYLOAD 2
78
ELSE IF ($SELECTED == MODE_3) THEN
79
STRINGLN PAYLOAD 3
80
END_IF
81
END_FUNCTION
82
83
STRING PRESS NUMLOCK to change selection
84
ENTER
85
STRING PRESS BUTTON to confirm selection
86
ENTER
87
run_menu()
88
89
90
REM PAYLOADS/MODES
91
IF ($SELECTED == MODE_1) THEN
92
REM PLACE PAYLOAD 1 HERE
93
STRING Hello Payload 1!
94
ELSE IF ($SELECTED == MODE_2) THEN
95
REM PLACE PAYLOAD 2 HERE
96
STRING Hello Payload 2!
97
ELSE IF ($SELECTED == MODE_3) THEN
98
REM PLACE PAYLOAD 3 HERE
99
STRING Hello Payload 3!
100
END_IF
101
102
103