Hack-Faq Скляров Иван Хакер, номер #093, стр. 093-062-1 (sklyaroff@mail.ru, www.sklyaroff.ru) Q: Часто на security-сайтах встречаю такие сокращения, как PoC и BoF. Что они обозначают и как расшифровываются? A: Сокращение PoC (от англ. Proof of Concept — доказательство концепции, решения или демонстрационный пример) используется чаще всего в среде специалистов по безопасности вместо термина «эксплоит». Сообщения о найденных уязвимостях распространяются в двух видах: «Proof of Concept Theory» (доказательство уязвимости в теории) и «Proof of Concept Code» (доказательство уязвимости в виде реализующего ее использование программного кода). Под эксплоитом, как правило, понимают последнее. Сокращением BoF (от англ. buffer overflow) принято обозначать переполнения буфера. Q: Что такое wakeup-бекдор и как он работает? A: Wakeup-бекдор, как следует из самого названия, - это бекдор, который нужно будить, чтобы он начал работать. Используется эта технология исключительно для того, чтобы скрыть присутствие бекдора в системе (от утилиты netstat и сканера портов). Основана данная технология на особенности протокола ICMP, который, как известно, совсем не использует сетевые порты, а любые icmp-сообщения отправляются и принимаются IP-подсистемой. После своего запуска wakeup-бекдор создает RAW-сокет для работы по протоколу ICMP и, не открывая порта, ждет специального icmp-пакета. После получения wakeup-пакета бекдор берет указанный в нем номер порта и создает уже обычный TCP- или UDP-сокет и начинает прослушивать порт на входящие соединения. После принятия и закрытия сессии порт закрывается, и бекдор снова становиться невидимым для сканера портов и утилиты netstat. Так как wakeup-бекдор создает RAW-сокет, то для его запуска нужны права root. Разумеется, кроме прямого соединения (direct), которое я описал, wakeup-бекдор может быть выполнен с использованием обратного соединения (connect back), то есть после получения wakeup-пакета бекдор не открывает TCP- или UDP-порт, а самостоятельно соединяется по указанному, в присланном пакете адресу. Для посылки wakeup-пакета, как правило, используется отдельная утилита (icmpsend), но некоторые wakeup-бекдоры для пробуждения задействуют утилиту ping с опцией –p, которая позволяет посылать данные. Множество исходников wakeup-бекдоров с утилитой icmpsend можно найти в архиве от известной русской команды блэк-хэтов m00 по адресу: http://m00.blackhat.ru/m00-archive.tar.bz2 (в нем смотри bdpack.tar.gz). Q: Многие хакерские софтины требуют установки библиотек libpcap или libnet. Для чего нужны эти библиотеки? A: Многие известные утилиты, такие как nmap, tcpdump, Snort и пр. задействуют одну или сразу обе названные библиотеки. Библиотека libnet (www.packetfactory.net/libnet/) обеспечивает программиста всем необходимым для генерации и отправки сетевых пакетов произвольного формата и содержания. Библиотека libpcap (www.tcpdump.org) предназначена для обратного действия — извлечения пакетов из сети и их анализа. Программист может в одной программе задействовать сразу обе эти библиотеки. Q: Я использую для перебора паролей программу Brutus. Программа простая в использовании, только я до сих пор не знаю, что в ней означает опция KeepAlive? |