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

УЗНАЙ ДЕМОНА!

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

Спецвыпуск Xakep, номер #032, стр. 032-016-2


Цепляемся к 22-му порту произвольного сервера. При удачном выборе жертвы мы увидим баннер SSH-1.99-OpenSSH_3.6.1p1.

Разберем, что к чему. В шапке SSHD указаны две независимых версии. Первая - версия протокола SSH (в нашем случае 1.99), вторая - пакета OpenSSH: 3.6.1p1 (самый свежий релиз на сегодняшний день).

После определения типа демона хакер ищет эксплойт для своих грязных целей, а именно для взлома секурного демона (на этот день существует единственный рабочий эксплойт x2 для переполнения буфера в SSHD).

Нередко по баннеру SSHD можно определить и операционку. Это характерно для FreeBSD при наличии дефолтового сервиса. Такое приглашение имеет вид: SSH-1.99-OpenSSH_2.3.0 FreeBSD localisations 20010713.

СТАРЫЙ ДОБРЫЙ TELNETD

Идем дальше. Если ты учился в школе и закончил все три класса, то, наверное, догадался - следующим сервисом будет Telnetd, который висит на 23-м порту. Если админ поставил незафаерволенный телнет-демон на свою машину, то, скорей всего, о замене его баннера он даже не думал, так как передача данных через этот сервис не подлежит криптованию и может быть заснифана ушастым ламером из сегмента. По шапке телнет-демона его версию определить довольно проблематично, а вот тип операционки можно задетектить без особого труда. На самом деле, определение операционки для хакера равносильно определению версии демона, ибо эксплойты универсальны практически для всех семейств Telnetd ;). После определения OS хакер ищет подходящий плойт и успешно применяет его (таких много: 7350telnet для SunOS, telnetd.c для FreeBSD, пару-тройку сплойтов для RedHat и т.д. и т.п.).

NAMED

Если в текстовых протоколах определение сервиса сводится к паре команд, то в случае бинарного протокола все несколько сложнее. Тот же named, который висит на 53-м порту, не скажет тебе ни слова при попытке подцепиться к нему. Немудрено, бинарный обмен данными не подразумевает обмен текстовой информацией.

На самом деле существуют тулзы, которые помогут тебе задетектить релиз named'а. Это даже не хацкерские проги, которые ты можешь найти лишь на соответствующих сайтах, а вполне мирные тулзенки. Одна из них - известный dig (тулза для работы с ns-серваками). Она имеет кучу параметров, копаться в которых тебе, конечно же, некогда.

Нас интересует всего одна опция version.bind, которая поможет тебе удаленно определить версию ns-сервера. Таким образом, строчка:

dig @ns.server.ru chaos txt version.bind | grep VERSION.BIND

покажет тебе версию named'а, установленную на серваке ns.server.ru. Поставленная задача выполнена, дальнейшие действия взломщика нас не интересуют.

РАДОСТИ WEB'А

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

Назад на стр. 032-016-1  Содержание  Вперед на стр. 032-016-3