R0 CREW

Анализ пациента Little Rat =))

Анализ пациента Little Rat =))

author: 4k4 S4NJ
mailme: d34dm4st3rs[at]yandex[dot]ru

Привед мой друх!! Итак сегодня мы рассмотрим хак тулзу под названием Little Rat=))
Многие из вас наверное слышали про эту тулзу. Ну а для тех кто не в танке, поясню=)
Краткое описание с ][akep’a:
“Little Rat - это программа предназначеная для взлома сайтов и серверов.Программа проста в
управлении, даже не опытный пользователь может взломать сайт или сервер, не имея никакого опыта.
Не давно создателей программы Little Rat арестовали за создание этой программы…(Кстати зря,
посадили почти не зафиг, а почему пояню далее…)”

Вот я и заинтересовался этой прошкой, действительно ли она так хороша как её хвалят.
И в поисках истины я отправился добывать эту прогу. Искал долго-недолго и нашел её в привате
Злого (zloy.org) попросил одного товарисча, который мне отдал бесплатно под предлогом что я его отблагодарю в
своей статье.
Миха спасиб тебе!!! Эту статью я посвящаю тебе и всем пацанам Zloy Team… и всем всем Кодокопателям нашей планеты=))

Ой,сссс. , sorry немного отвлекся, да х. с ним . Начнем же операцию над нашим пациентом.
Пропускаем через Peid , и что мы видим:
UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo

Прога запакована UPX’ом, так что мы должны снять защиту. Кто считает себя настоящим крякером может повозиться с
ним в OllyDbg, но я распакаю его быстро и без шума тем же самым UPX’ом=))

upx -d littlerat.exe

Опять опускаем в PEID и видим :

Not a valid PE file

Это значит кодили на АСМЕ =)) Зря радовался, Почему ?! Узнаете дальше…
Так едем дальше. Go ! go! go !!! теперь опускаем в дизассемблер QVIEW (Хотя можно и использовать другой дизасм напривер: IDA или WinDASM)
Так, так, немного пролистав в листинге видим:

EB 10 jmp short crackme/ 0040102A
66 DB 66 ; CHAR 'f'
62 DB 62 ; CHAR 'b'
3A DB 3A ; CHAR ':'
43 DB 43 ; CHAR 'C'
2B DB 2B ; CHAR '+'
2B DB 2B ; CHAR '+'
48 DB 48 ; CHAR 'H'
4F DB 4F ; CHAR 'O'
4F DB 4F ; CHAR 'O'
4B DB 4B ; CHAR 'K'
90 NOP ; Конец операции

И если вы не догнали, это простая иммитация не PE’шного файла
Смотрите коменты которые я для вас сделал сверху: {fb:C++HOOK}
Это сигнатуры стандартного C++компилера. Нас попытались сбить с толка, но нас этим не
возьмешь.
PS:сли копаться дальше вы можете найти строки типа той что сверху:

42 6F 72 6C 61 6E 64 20 ; это слово Borland [20 - это байт код пробела]
43 2B 2B 20 2D 20 43 6F; С++ - Сo
70 79 72 69 67 68 74 20;pyright 
32 30 30 32 20 42 6F 72;2002 Bor
6C 61 6E 64 20 43 6F 72;land Corporation
70 6F 72 61 74 69 6F 6E;poration
; Дальнейшие помойму уже не нуждается в коментариях

Короче ещё дальше копаясь в коде вы надете строки :

42 6F 72 6V 61 6E 64 20
44 65 6C 70 68 69 20 76
36 2E 30 20 2D 20 76 37
2E 30 20 5B 52 41 52 20
53 46 58 5D 20 2A 
; в этом не понятном для вас коде написано Borland Delphi v6.0 - v7.0 [RAR SFX] *

Вот так то, это получается запакованный PE - валидный exe с SFX архивом от дяди Рошаля.
Да, да правильно, это тот дядя который и кодил WinRar, а из этого следует что перед нами
самораспаковывающийся RAR архив.
Далее чтобы его распаковать нам потребуется Скопировать весь код следующий за сигнатурой
Borland Delphi v6.0 - v7.0 [RAR SFX] * до этого места

90
90
90; Конец операции

Далее переводим его в ASCII код и вставляем в блокнот. Переименовываем в *.exe. Вуаля перед
вами полноценный sfx(rar) архив, который надо просто распаковать.
Распаковали в папку и видим следующие файлы:
Файлы с кодированным названием (название в квадратиках - юникод), что и требовалось доказать, ух уж эти китайцы:
Фиг с ним переименуем все файлы в 1.mem - это который 12,8 байт;
2.mem -10,1 Мбайт;
3.mem - 5,2 байт
4.mem - 2,10 МБ
далее опустим 1.mem в QVIEW и смотрим в листинг: Там байт коды , которые я не буду приводить т.к страница
не ризиновая а приведу уже готовый откоментированный листинг.:

[HTTP & HTTPS]
^' or 1=1--
^' or 1=1--SELECT * FROM ^ WHERE PCategory='^' or 1=1--‘
' or 1=1--
" or 1=1--
or 1=1--
' or 'a'='a
" or "a"="a
') or ('a'='a
id=^ UNION SELECT TOP ^ COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='admin_login'— 
^id=^ UNION SELECT TOP ^ login_name FROM admin_login-- 
...

Помойму вам стало ясно это нечто иное как *.ini файл в котором приводятся примеры стандартных SQL иньекций.
А загадочный символ ^ - ничто иное как динамическая переменная значение которого, будет заменено в последствии атаки.
Далее полистав вы можете найти такие строки:

[INJECT]
^UPDATE ‘^’ SET ‘password’ = ‘^’ WHERE login_name=’^–
^INSERT INTO ‘^’ (’^’, ‘^’, ‘^’, ‘^’) VALUES (^,’^’,’^’,‘NA’)–

Выше описанный код демонстрирует Inject’ирование кода при SQL Injection
Дальше вы можете просмотреть еще много чего, так что смотрите сами.

Файл 2.mem: Тоже байт коды, так что смотрим уже откоментированный листинг:
И что вы думаете это такое:

PEID -> Scan 2.mem -> Borland Delphi v6.0 - v7.0 [RAR SFX]

Далее переименовываем в *.exe и распаковываем в папку:
Видим образованные файлы: Короч, тоже всё в юникоде так что просто дизассемблируем любое попавшиеся файло…

0040140C arg_0 = dword ptr 8 
0040140C push ebp
0040140D mov ebp, esp
0040140F push ebx
00401410 mov ebx, [ebp+arg_0]
00401418 add eax, 1Ch
0040141E mov dword_40261C, eax
00401423 mov dword ptr [ebx], 82727349h
00401429 mov dword ptr [ebx+4], offset unk_402608
00401430 pop ebx
00401431 pop ebp
00401432 retn
; ну и что это такое?! - а это стандартный код для переполнения буфера.
; Если вы дебажите эти файлы через Олю (OllyDBG), то после последовательного выполнения (клавиша F7)
; этих команд (до retn- команда возврата из подпрограммы в основную пропграмму), в окне регистров можно
; увидить флаг O (флаг переполнения) со значение 1. Это значит что было произведенно действие которое привело
; переполнению, в данном случае переполнился регистр ebx (Короче : FFFFFFF + 1)
; анализ еще 2-х файлов дал почти такое же результат, посмею предположить что все эти файлы
; эксплойты.

Да! да ! Я был прав анализ файлов Касперычем 2010 показал что все файлы кроме одного являются эксплойтами.
А как же один файл ?! Это оказался тоже ini файл с базой данных эксплойтов.

Теперь 3.mem - да они все оказываются бинарные. Буду краток и скажу что это есть файло настроек(inf).
Тут производится выборка, определение, исключение ну и конечно данные для исполнения.

И последний файл 4.mem - это самый большой файл. Посмотрим уже на готовый листинг.

61206161206162206162632071776572747920616C697368612073657A7820616B697368
2061646D696E2061646D696E697374617261746F72206578656C656E74206675636B2066
75636B696E206C6F766520736578206861636B2063616C6C
; короче это просто набор слов. Или просто словарь для брутфорса. Вот перевод верхнего куска кода:
; a aa ab abc qwerty alisha sezx admin administarator exelent fuck fuckin love sex hack call

Это самые часто встечаемые пассы которые нужны для тупого пербора паролей… и логинов… наверное=))

Если вы дочитали до этого конца вы наверное уже поняли что заслуга создателей этой программы невелика.
Простая компиляция sfx архивов с файлами настроек помойму не должна была наделать столько шуму.
Так что, теперь с открытыми глазами вы можете свободно утверждать что это не такая и крутая программа,
как её пропиарили многие тупые журналисты… Всегда переборащат со всем…
Вот благодаря таким людям, Хакеров считаю преступниками, а ведь истинное значение слова хакер подразумевает собой
профессиальных компьютерщиков которые могут иначе мыслить чем другие люди. Вот так всегда, вместо спасибо
получаешь пенок под зад!!!
Но несмотря ни на что мы всегда работаем… Так что кодокопатели неунывайте, Знайте : вместе мы сила !!

Вывод: Программу анологичную Little RAT вы можете написать собственноручно, т. к я уже объяснил все что можно
было объяснить, а кодить можете на любом удобном для вас системном языке=))
Большинство сплойтов использованных в этой проге были взяты с M1lW0RM’a (http://www.milw0rm.com)
Про SQL INJECTION вы можете свободно искать на GOOGLE, там дофига материала про это.
Тоже самое со словарем для тупого брутфорса.

Ладно… спасибо за внимание!!! С вами был тот же 4k4 S4NJ. Вся инфа предоставленна только в познавательных целях.
За незаконное использованное этой статьи я за ваш зад не отвечаю. Так что перед тем что то сделать 100 раз подумайте
о том, что к вам в дом могут вломатся Куча здоровых дяденек в коженках со здоровыми дубинками, которые вам покажут где раки зимуют.
Пример этой проги - тому потверждение.