DISKO

hiNt

Хакер, номер #071, стр. 071-140-1

Видео: Фатальная проверка

Однажды меня попросили проверить сервер знакомого на дыры. Он страдал оттого, что какой-то взломщик дефейсил его сайт и оставлял на память папку /lameroot. Задачу осложняло то, что запросы к WWW не логировались. Лишь единственный фаервол закрывал основные порты.

Мне пришлось покопаться на Вебе, и я обнаружил бажный скрипт sms.php, уязвимость в котором позволяла выполнять любые команды с правами nobody. Как оказалось, ядро на сервере давно никто не обновлял, поэтому ломался кернел простым munremap'ом. Осуществив хитрую махинацию по пересылке скрипта /tmp/cmd (он создавал каталог /owned и суидил файл /tmp/exec). Затем я наколбасил /tmp/exec.c - в этом файле происходило считывание команды из /tmp/c и ее выполнение. Причем все действие выполняются под рутом. Оставалось лишь выполнить мой план, в результате которого /tmp/exec будет суидным.

Я залил все добро на сервер, включая кернеловый эксплойт. Перед этим мне пришлось скомпилировать сплойт на другой машине (на сервере компиляция не удалась). Модифицированный исходник эксплойта запускал вместо /bin/bash файл /tmp/cmd. После эксплуатирования у меня появилась возможность запуска рутовых команд с помощью самопального бинарника.

Но и этого мне показалось мало. Я захотел консольного управления. Для этого мне пришлось создать пользователя с нулевым уидом путем добавления информации в /etc/passwd и /etc/shadow. Пароль для хакерского аккаунта я генерировал простой функцией crypt(). Напоследок я приказал отрубить активный фаервол (команда /etc/init.d/iptables stop), что дало возможность зайти по SSH. Залогинившись в системе, я залез в /etc/ssh/sshd_config и закрыл доступ учетным записям с нулевым уидом, а затем включил логгинг http-запросов. В общем-то, я свою задачу выполнил :). Моему приятелю оставалось ждать новых вторжений взломщика, а затем парсить апачевый лог.

Все виртуозные методы этого увлекательного взлома ты можешь увидеть в ролике, который выложен на нашем компакт-диске. Но прежде чем смотреть видео, обязательно прочитай статью «Фатальная проверка».

Видео: Работа с cетевым сканером nmap

Сканер портов – самый старый инструмент хакера. С его помощью можно определить, какие порты открыты на сервере. Располагая этой инфой, можно узнать, какие сервисы запущены на тачке. Если хакер пронюхает, что на сервере стоит, скажем, ProFTPD 1.2.7, то он сможет натравить на жертву соответствующий удаленный эксплойт и получить рута в системе. Общеизвестно, что самым лучшим сетевым сканером является всемирно известная отечественная тулза nmap. В этом VisualHack’e хакер наглядно показывает, как работать с утилитой. Вот что конкретно он делает.

Для начала он устанавливает программу, выполнив последовательно стандартные команды

./configure

make

make install

Теперь софтина готова к работе. Программа умеет сканить порты не только с помощью заезженной функции connect(), но и производить Stealth SYN, FIN, Xmas, Null и ACK-сканирование. Нужно все это вот для чего. Компетентные сисадмины устанавливают на свои сервера специальный софт, который распознает и пресекает попытки сканирования. Но если использовать функцию скрытого сканирования, скажем, SYN-пакетами, то фаерволлы и другой специализированный админский софт останется в обломе.

Содержание  Вперед на стр. 071-140-2
ttfb: 3492.3009872437 ms