Создание ханипота для захвата эксплойтов нулевого дня, часть 1

  • Автор темы Автор темы LeSh1y777
  • Дата начала Дата начала

LeSh1y777

Пользователь
Регистрация
25/9/25
Сообщения
5,682
Репутация
49
Лайки
153
Депозит
-8.95$
Священный Грааль любого хакера — разработать эксплойт нулевого дня, который ещё не встречался разработчикам антивирусов (AV) или систем обнаружения вторжений (IDS). Таким образом, хакер может эксплуатировать системы с недавно обнаруженной уязвимостью, оставаясь незамеченным!

Чтобы получить уязвимость нулевого дня, у вас есть как минимум два варианта: (1) разработать свою собственную или (2) захватить чужую.

Разработка собственной уязвимости может быть долгим и утомительным процессом, требующим значительных знаний ассемблера, фаззинга, шелл-кода и т. д. Этот процесс может занять тысячи человеко-дней. Киберпреступные группировки и правительственные спецслужбы вкладывают миллионы долларов в разработку уязвимостей нулевого дня, но в редких случаях отдельным лицам удаётся создать их без особых усилий, особенно для устаревших систем. (Уязвимость нулевого дня, взломавшая Target несколько лет назад, была разработана 17-летним хакером из России, но она была нацелена на Windows XP, которую Target всё ещё использовала в своих POS-терминалах.

Другой подход — перехватить уязвимость нулевого дня, разработанную другими, и использовать её повторно. Помните эксплойты Hacking Team, выпущенные после взлома Hacking Team? Этот подход давно используется разработчиками антивирусов, криминалистами и, в некоторых случаях, хакерами. Более того, недавняя публикация Vault 7 показала , что ЦРУ перехватывало вредоносное ПО нулевого дня и проводило его обратную разработку в своих целях.

В этой серии мы хотим установить и настроить ханипот, который выглядит одновременно уязвимым и реалистичным. Затем мы дождёмся, пока он заманит злоумышленников, а затем перехватим их вредоносное ПО, когда им удастся скомпрометировать нашу систему.

Если мы эксперт-криминалист, мы можем проанализировать вредоносное ПО и, возможно, разработать защиту или сигнатуру. Если мы хакер, мы можем повторно использовать вредоносное ПО на других системах. В некоторых случаях нам может потребоваться переработать вредоносное ПО для других целей, но это всё равно гораздо быстрее и эффективнее, чем начинать с нуля. Главное — сначала захватить вредоносное ПО.

Дионея

Dionaea была разработана Маркусом Кёттером как ловушка с низким уровнем взаимодействия. Она эмулирует уязвимые системы Windows, используя службы, часто используемые злоумышленниками, такие как HTTP, FTP, SSH, SMB и т. д. Программа написана на языке C, но использует Python для эмуляции различных протоколов, чтобы заманить злоумышленников.

Dionaea названа в честь рода растений, к которому относится и хищная венерина мухоловка. Думаю, символизм очевиден. Пожалуй, самое важное заключается в том, что Dionaea использует Libemu для обнаружения шелл-кода и может сообщать нам о нём, а затем перехватывать его. Dionaea отправляет уведомления об атаках в режиме реального времени через XMPP, а затем сохраняет информацию в базе данных SQLite.

Либему

Libemu — это библиотека, используемая для эмуляции x86 и обнаружения шелл-кода, которая идеально подходит для нашей ловушки. Она может извлекать вредоносное ПО из сети или из документов (PDF, RTF и т. д.), которые затем можно использовать для анализа вредоносного поведения с помощью эвристики.

Это относительно продвинутый ханипот, и новичкам его использовать не стоит. Кроме того, я настоятельно рекомендую НЕ использовать его в системе, которая будет использоваться для других целей, так как мы установим библиотеки и другой код, которые могут вывести из строя другие компоненты вашей системы.

Кроме того, Dionaea изначально уязвима. Это означает, что её взлом может повлечь за собой взлом всей вашей системы. Рекомендуется использовать чистую установку, предпочтительно Debian или Ubuntu. Я буду использовать чистую установку Ubuntu 14.04.

Шаг 1: Установка зависимостей

Dionaea — сложная программа, требующая множества зависимостей, которые обычно не устанавливаются в Ubuntu или других дистрибутивах Debian. Поэтому перед установкой и настройкой Dionaea необходимо установить зависимости. Это может быть долгой и утомительной задачей.

Например, для начала нам необходимо загрузить следующие пакеты.

ubuntu > apt-get install libudns-dev libglib2.0-dev libssl-dev libcurl4-openssl-dev libreadline-dev libsqlite3-dev python-dev libtool automake autoconf build-essential subversion git-core flex bison pkg-config libnl-3-dev libnl-genl-3-dev libnl-nf-3-dev libnl-route-3-dev sqlite3

К счастью, Эндрю Майкл Смит разработал скрипт, который берёт на себя всю тяжелую работу. Его можно скачать с GitHub с помощью wget .

ubuntu > wget -q https://raw.github.com/andrewmichaelsmith/honeypot-setup-script/master/setup.bash -O /tmp/setup.bash && bash /tmp/setup.bash


6a4a49_52671dab911746fdbcaa1f3ae68095a8~mv2.webp


Этот скрипт загрузит и установит все зависимости (их много) и приложения ( p0f , SQLite и другие), затем загрузит, установит и настроит Dionaea.

6a4a49_7fb0914fecfc4ee3be5c38178044298a~mv2.webp


Будьте терпеливы, это может занять довольно много времени.

Шаг 2 : Выберите интерфейс

После загрузки всех приложений и зависимостей Dionaea начнёт настройку и предложит вам выбрать сетевой интерфейс, который будет прослушивать Honeypot. Я выбрал eth0, но у вас может быть другой.

6a4a49_969162115015403f95f357c76f798b98~mv2.webp


В конце концов загрузка и установка будут завершены, и вы увидите экран, сообщающий, что p0f и Dionaea запущены.

Шаг 3 : Проверка установки

После завершения вышеуказанного процесса мы можем проверить, была ли Dionaea правильно и полностью установлена, введя:

ubuntu > dionaea -help

6a4a49_addedecfa1db4052a16d9be2d8b47345~mv2.webp


Если появился экран справки, показанный выше, вы успешно установили Dionaea. Поздравляем!

Настройка Дионеи

Теперь наш ханипот готов и работает. В следующих уроках этой серии я покажу вам, как настроить Dionaea для оповещения об атаках в режиме реального времени, как определить данные злоумышленников (ОС, IP-адрес, браузер, интерфейс), а также как перехватить и проанализировать шелл-код атаки.
 
Священный Грааль любого хакера — разработать эксплойт нулевого дня, который ещё не встречался разработчикам антивирусов (AV) или систем обнаружения вторжений (IDS). Таким образом, хакер может эксплуатировать системы с недавно обнаруженной уязвимостью, оставаясь незамеченным!

Чтобы получить уязвимость нулевого дня, у вас есть как минимум два варианта: (1) разработать свою собственную или (2) захватить чужую.

Разработка собственной уязвимости может быть долгим и утомительным процессом, требующим значительных знаний ассемблера, фаззинга, шелл-кода и т. д. Этот процесс может занять тысячи человеко-дней. Киберпреступные группировки и правительственные спецслужбы вкладывают миллионы долларов в разработку уязвимостей нулевого дня, но в редких случаях отдельным лицам удаётся создать их без особых усилий, особенно для устаревших систем. (Уязвимость нулевого дня, взломавшая Target несколько лет назад, была разработана 17-летним хакером из России, но она была нацелена на Windows XP, которую Target всё ещё использовала в своих POS-терминалах.

Другой подход — перехватить уязвимость нулевого дня, разработанную другими, и использовать её повторно. Помните эксплойты Hacking Team, выпущенные после взлома Hacking Team? Этот подход давно используется разработчиками антивирусов, криминалистами и, в некоторых случаях, хакерами. Более того, недавняя публикация Vault 7 показала , что ЦРУ перехватывало вредоносное ПО нулевого дня и проводило его обратную разработку в своих целях.

В этой серии мы хотим установить и настроить ханипот, который выглядит одновременно уязвимым и реалистичным. Затем мы дождёмся, пока он заманит злоумышленников, а затем перехватим их вредоносное ПО, когда им удастся скомпрометировать нашу систему.

Если мы эксперт-криминалист, мы можем проанализировать вредоносное ПО и, возможно, разработать защиту или сигнатуру. Если мы хакер, мы можем повторно использовать вредоносное ПО на других системах. В некоторых случаях нам может потребоваться переработать вредоносное ПО для других целей, но это всё равно гораздо быстрее и эффективнее, чем начинать с нуля. Главное — сначала захватить вредоносное ПО.

Дионея

Dionaea была разработана Маркусом Кёттером как ловушка с низким уровнем взаимодействия. Она эмулирует уязвимые системы Windows, используя службы, часто используемые злоумышленниками, такие как HTTP, FTP, SSH, SMB и т. д. Программа написана на языке C, но использует Python для эмуляции различных протоколов, чтобы заманить злоумышленников.

Dionaea названа в честь рода растений, к которому относится и хищная венерина мухоловка. Думаю, символизм очевиден. Пожалуй, самое важное заключается в том, что Dionaea использует Libemu для обнаружения шелл-кода и может сообщать нам о нём, а затем перехватывать его. Dionaea отправляет уведомления об атаках в режиме реального времени через XMPP, а затем сохраняет информацию в базе данных SQLite.

Либему

Libemu — это библиотека, используемая для эмуляции x86 и обнаружения шелл-кода, которая идеально подходит для нашей ловушки. Она может извлекать вредоносное ПО из сети или из документов (PDF, RTF и т. д.), которые затем можно использовать для анализа вредоносного поведения с помощью эвристики.

Это относительно продвинутый ханипот, и новичкам его использовать не стоит. Кроме того, я настоятельно рекомендую НЕ использовать его в системе, которая будет использоваться для других целей, так как мы установим библиотеки и другой код, которые могут вывести из строя другие компоненты вашей системы.

Кроме того, Dionaea изначально уязвима. Это означает, что её взлом может повлечь за собой взлом всей вашей системы. Рекомендуется использовать чистую установку, предпочтительно Debian или Ubuntu. Я буду использовать чистую установку Ubuntu 14.04.

Шаг 1: Установка зависимостей

Dionaea — сложная программа, требующая множества зависимостей, которые обычно не устанавливаются в Ubuntu или других дистрибутивах Debian. Поэтому перед установкой и настройкой Dionaea необходимо установить зависимости. Это может быть долгой и утомительной задачей.

Например, для начала нам необходимо загрузить следующие пакеты.

ubuntu > apt-get install libudns-dev libglib2.0-dev libssl-dev libcurl4-openssl-dev libreadline-dev libsqlite3-dev python-dev libtool automake autoconf build-essential subversion git-core flex bison pkg-config libnl-3-dev libnl-genl-3-dev libnl-nf-3-dev libnl-route-3-dev sqlite3

К счастью, Эндрю Майкл Смит разработал скрипт, который берёт на себя всю тяжелую работу. Его можно скачать с GitHub с помощью wget .

ubuntu > wget -q https://raw.github.com/andrewmichaelsmith/honeypot-setup-script/master/setup.bash -O /tmp/setup.bash && bash /tmp/setup.bash


6a4a49_52671dab911746fdbcaa1f3ae68095a8~mv2.webp


Этот скрипт загрузит и установит все зависимости (их много) и приложения ( p0f , SQLite и другие), затем загрузит, установит и настроит Dionaea.

6a4a49_7fb0914fecfc4ee3be5c38178044298a~mv2.webp


Будьте терпеливы, это может занять довольно много времени.

Шаг 2 : Выберите интерфейс

После загрузки всех приложений и зависимостей Dionaea начнёт настройку и предложит вам выбрать сетевой интерфейс, который будет прослушивать Honeypot. Я выбрал eth0, но у вас может быть другой.

6a4a49_969162115015403f95f357c76f798b98~mv2.webp


В конце концов загрузка и установка будут завершены, и вы увидите экран, сообщающий, что p0f и Dionaea запущены.

Шаг 3 : Проверка установки

После завершения вышеуказанного процесса мы можем проверить, была ли Dionaea правильно и полностью установлена, введя:

ubuntu > dionaea -help

6a4a49_addedecfa1db4052a16d9be2d8b47345~mv2.webp


Если появился экран справки, показанный выше, вы успешно установили Dionaea. Поздравляем!

Настройка Дионеи

Теперь наш ханипот готов и работает. В следующих уроках этой серии я покажу вам, как настроить Dionaea для оповещения об атаках в режиме реального времени, как определить данные злоумышленников (ОС, IP-адрес, браузер, интерфейс), а также как перехватить и проанализировать шелл-код атаки.
интересно было почитать
 
Назад
Сверху Снизу