![]() |
https://forum.antichat.xyz/attachments/4837382/00.png
Привет, античат ! Эта статья посвящена теме, которая давно не дает мне покоя, — фейковым обновлениям ПО. Меня в целом захватывает мир атак типа Man-in-the-Middle (MITM), особенно их реализация внутри локальной сети. И подмена обновлений — один из самых коварных векторов. Года полтора назад я наткнулся на фреймворк Evilgrade и загорелся идеей понять его механику. Первая попытка разобраться с наскока провалилась, и я, честно говоря, забил. Но сегодня я вернулся к этой теме, и на этот раз добился результата. Сразу оговорюсь: это не пошаговая инструкция для взлома. Моя цель — разобрать методологию атаки, показать ее внутреннюю кухню на простом и наглядном примере. Суть материала — продемонстрировать, как это работает на фундаментальном уровне. Давайте выйдем за рамки скрипт-кидди и прокачаем понимание процессов. Бездумно запускать готовый софт могут все, а вот понять принципы его работы — немногие. Теоретические основы атаки Прежде чем погружаться в практику, давайте разберем, как вообще устроен механизм обновления большинства программ. Этапы обновления ПО:
Этапы проведения атаки:
Практическая реализация Для воспроизведения атаки в лабораторных условиях нам понадобится следующий инструментарий:
Код:
?Вы увидите окно с предложением скачать новую версию. Это именно то, что нам нужно. Пока что нажимаем «Отмена» и открываем Wireshark. Выберите ваш активный сетевой интерфейс (тот, через который идет трафик в интернет). В поле фильтра введите Код:
httpКод:
InfoКод:
GETКод:
updateИзучив этот запрос более детально, мы видим Код:
Full request URIКод:
notepad-plus-plus.orgВ ответ мы получим XML-документ, который сообщает программе о наличии новой версии и где ее скачать: XML: Код:
<Поскольку мы работаем в лабораторных условиях, я упрощу некоторые шаги, а именно DNS Spoofing и поднятие сервера. Для чистоты эксперимента это не критично. Устанавливаем XAMPP и запускаем модуль Apache. Переходим в корневую директорию нашего локального сайта: Код:
C:\xampp\htdocsКод:
updateКод:
repository
Теперь в папке Код:
updateКод:
getDownloadUrl.phpPHP: Код:
&Код:
<Location>Код:
payload.exeСам Код:
payload.exeКод:
msfvenomКод:
C:\xampp\htdocs\repositoryВажное замечание: стандартные пейлоады, сгенерированные Metasploit, сегодня легко обнаруживаются практически любым антивирусом. В реальных условиях атакующие используют продвинутые техники обфускации, шифрования и загрузчики, написанные на заказ. Давайте убедимся, что все настроено правильно. Перейдите в браузере по адресу Код:
http://localhost/repository/Код:
payload.exeЗатем откройте Код:
http://localhost/update/getDownloadUrl.phpЕсли у вас все выглядит так же, как на скриншотах, — вы на верном пути! Остался последний шаг: заставить систему жертвы отправлять запросы на наш локальный сервер вместо настоящего. В реальной атаке для этого используются техники ARP-spoofing + DNS-spoofing (например, с помощью Код:
arpspoofКод:
dnsspoofКод:
hostsОткройте с правами администратора файл Код:
C:\Windows\System32\drivers\etc\hostsBash: Код:
127.0Код:
notepad-plus-plus.orgКод:
127.0.0.1Подготовка завершена. Время для проверки. Возвращаемся в Notepad++ и снова запускаем проверку обновления. Программа обратится к Код:
notepad-plus-plus.orgКод:
hostsПосле скачивания появится окно установщика. Соглашаемся на запуск. Notepad++ закроется, а наш Код:
payload.exeПочему сегодня эта атака (в чистом виде) почти не работает? Важно понимать, что описанный метод является классическим и сегодня сработает только против очень старого или плохо написанного софта. Современные приложения защищены от таких атак несколькими уровнями безопасности:
Надеюсь, эта статья оказалась полезной и вы узнали что-то новое. Несмотря на то, что описанный вектор атаки устарел, он прекрасно иллюстрирует фундаментальные принципы атак класса Man-in-the-Middle. Понимание того, как программы общаются по сети, как анализировать их трафик и как можно манипулировать этим общением, — это основа основ для любого специалиста по кибербезопасности. Знания, которые вы получили, — это инструмент. А как его использовать, зависит только от вас. Удачи на просторах античат ! |
добавлю....
p/s Hijacking evilgrade |
Гениально. А главное, что антивирус не сработает, файрволл будет молчать, а все потому, что обновление будет осуществлять программой из системы. Но есть одно НО! разве ПО, допустим тот же самый Chrome просто тупо скачивает обновление без проверки сертификата, подписи и хэша, установки соединений только по https и т.д. ? никакой верификации???
|
Цитата:
|
Цитата:
|
добрый вечер, а как быть с подписанными программами?
|
Цитата:
Цитата:
p.s В ближайшем будущем хочу исследовать более сложные варианты. Если добьюсь положительного результат, тогда смогу поделиться опытом. Так как данный вектор атаки никто не раскрывает приходиться изучать все самому. У меня больше вопрос на текущий момент чем ответов) |
Цитата:
|
О, даже и не думал о таких обновлениях. Я думаю, что можно использовать arp spoofing для перехвата пакетов. Предварительно нужно написать софт, который при перехвате на определенный адрес, например на сервер notepad++, будет обрывать передачу и отправлять ответ с новым обновлением, ну и дать загрузиться. Такое возможно думаю. Только чтобы оборвать пакет, вроде нужно использовать bpf или firewall настроенный на определенные адреса исходящие.
|
Интересно, можно ли написать драйвер или с помощью bpf сделать так, чтобы нужный запрос переадресовать к себе, чтобы всего подключения к другому хосту приравнивались как к твоему. тогда бы можно было упростить некоторые вещи в плане генерации пакетов tcp и так далее.
|
| Время: 06:46 |