|

Банк в позе Рака
Xakep, номер #021, стр. 021-052-2
Теперь я перевел мутный взгляд с пустой бутылки из-под "Балтики №3" на месторасположение банка в Сети.
За 15 минут с помощью http://www.ripn.net путем перебора всевозможных названий, комбинаций и аббревиатур был получен диапазон IP-адресов, выделенных РОСНИИРОС'ом для рассматриваемого банка. Вскоре узнал IP-адрес сервера, на котором были установлены сервисы почты, ftp, news и т.д., в общем, был найден сервак, подключенный к Сети. Я немного удивился тому факту, что из 15 выделенных адресов использовался только один. Было понятно, что работа предстоит тяжелая.
Загрузился во FreeBSD, откомпилил scan.c (#gcc -o scan scan.c, более подробно про работу с юникс-эксплойтами и компиляцию из WIN ты можешь прочитать прямо в этом номере), запустил с консоли. Сканирование из-под unix`a было выбрано из соображений безопасности и моих личных предпочтений. Хотя можно было бы обойтись обычным виндозным сканером вроде Iptools или
более маленьким и быстрым девайсом NetGhost PortScan.
Неплохой выбор портсканов на http://www.datatone.com/mirrors/xiaomu/WWW/winsock/win95/iputil.htm, а IP tools ты можешь слить с их официального сайта http://ks-soft.mastak.com/users/kssoft/ip-tools.eng/index.htm.
Короче, просканил я сервер банка на открытые порты, читай установленные сервисы.
От результата немножко офигел! Открыто все, что можно открыть: 10, 21, 23 (зачем на NT'е телнет-сервер я так и не понял), 25, 53, 110, 137, 138, 139, 143, 443. По открытым 137, 138, 139 стало понятно, с какой ОС мы имеем дело. Сие было, конечно же, NT. Netcraft (www.netcraft.com со скриптом What's that site running?) это подтвердил.
Также для определения типа ОС я мог бы просто посмотреть какие демоны/сервисы висят на серваке, прителнетившись к ним. Если это win-сервис, то ясен перец - это win-система, если *nix-сервис, то сие *nix (железная логика =).
И это банковский сервер с выходом в Internet!
Взлом
Перво-наперво надо было найти логин админа, т.к. обычно, руководствуясь рекомендациями Микрософта, стандартное "Administrator" заменяют чем-то другим.
Но в Win32 API существует пара функций, позволяющих узнать этот логин. МелкоМягкие ребята и здесь о нас позаботились. :) Это LookupAccountName и LookupAccountSid (SID - security identifier - идентификатор безопасности). Две небольшие программки отечественного автора (user2sid и sid2user) ты найдешь в Сети по адресу http://www.chem.msu.su/~rudnyi/NT/. Там же есть исходники.
В командной строке набираю:
>user2sid \\[ip-адрес сервера] "Power users"
Выдало примерное следующее: S-1-2-34-(набор цифр)-(набор цифр)-(набор
цифр)-512
Так как у администратора RID (relative identifeir - относительный идентификатор) постоянный и равен 500 (как у root'a "0"), то
>sid2user \\[ip-адрес сервера] 2 34 (набор цифр) (набор цифр) (набор
цифр) 500
// (набор цифр) - это выдавались номера ведомства и подразделений,
//тогда я их, естественно, не записал, а сейчас не вспомню :).
Name is GOD (ну когда они на землю спустятся???)
Domain is ****bank
Type of SID is SidTypeUser
Часть дела была сделана. Теперь надо было заставить тупую NT'ю отдать
Назад на стр. 021-052-1 Содержание Вперед на стр. 021-052-3
|