Оставлять даже заблокированный компьютер без присмотра – это, как известно, не слишком хорошая идея. Теперь взломать такую машину и сделать с ней самые разные вещи, стало еще проще, благодаря устройству PoisonTap, которое сегодня, 16 ноября 2016 года, представил известный инженер, хакер и ИБ-эксперт Сэми Камкар.
Девайс построен на базе Raspberry Pi Zero, чья стоимость составляет всего $5. Также понадобятся кабель micro-USB и microSD-карточка. Созданный Камкаром софт бесплатен, и исходные коды уже опубликованы на GitHub. Исследователь пишет, что вместо Raspberry можно воспользоваться устройствами, которые могут эмулировать другие USB-гаджеты, к примеру, USB Armory или LAN Turtle. В итоге атакующему будет достаточно подключить вредоносное устройство к USB-порту ПК или Mac (на Linux-машинах исследователь свою разработку не проверял), и атака будет осуществлена в автоматическом режиме за считанные секунды.
«Моей главной целью была демонстрация того, что даже защищенный паролем компьютер, работающий с WPA2 Wi-Fi, все равно может быть взломан легко и быстро. Учетные данные для не- HTTPS сайтов могут быть похищены, а куки с HTTPS -сайтов с неправильно расставленными флагами тоже могут быть скомпрометированы», — объясняет Камкар. «Все полностью автоматизировано. Вы просто подключаете устройство, оставляете его на минуту, а затем достаете и уходите. Вам даже не нужно знать, как все это работает».
По сути, PoisonTap выдает себя за USB Ethernet-адаптер, который становится приоритетным устройством. Windows и macOS распознают и установят девайс автоматически, даже если компьютер заблокирован. В итоге весь трафик будет перенаправлен на PoisonTap, и дальше перед атакующим откроются очень широкие возможности.
Как уже было сказано выше, PoisonTap может похищать браузерные куки. PoisonTap дождется, когда хотя бы одна из вкладок осуществит HTTP-запрос, а затем подделает ответ. После получения такого ответа браузер жертвы будет открывать скрытые iframe’ы на миллионе сайтов из топа Alexa. В результате куки этих сайтов будут перехвачены атакующей стороной. Также PoisonTap способен подменять кеш браузера, создав вредоносные версии Gmail, Facebook, банковских сайтов и других важных ресурсов.
Камкар объясняет, что упомянутые выше iframe’ы также загружают на машину жертвы вредоносный HTML- и JavaScript-код, который попадает в кеш и затем выполняет функции бэкдора. Атакующий может использовать эту «закладку», чтобы впоследствии заставить браузер жертвы обратиться к вредоносному серверу и развивать свою атаку дальше, спустя время после подключения PoisonTap к машине.
Кроме того PoisonTap атакует роутер, к которому подключен компьютер жертвы. PoisonTap устанавливает на него бэкдор и делает устройство доступным из интернета, используя DNS rebinding и WebSocket. Впоследствии атакующий сможет набрать определенный URL и получить доступ к панели управления роутером, что позволит изменить настройки устройства, а также перехватывать или изменять незашифрованный трафик.
Исследователь заявляет, что его устройство легко обходит такие механизмы защиты, как блокировка устройства при помощи пароля, Same-Origin Policy (SOP), Cross-Origin Resource Sharing (CORS), X-Frame-Options, куки-атрибут SameSite, HttpOnly куки, DNS пининг. Девайс способен обмануть сайты, использующие двухфакторную аутентификацию, а в отдельных случаях даже HTTPS-сайты использующие куки без Secure флага и HSTS (HTTP Strict Transport Security). Демонстрацию PoisonTap в работе можно увидеть ниже.