Реверсинг для своих нужд

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
настало время, что реально хочется для ЛИЧНЫХ ЦЕЛЕЙ узнать что делает та - ся самописная программа.
Т.е. бывает момент, когда мне надо понять что делает программа? на самом деле троян или "честная" программа.

Можете подсказать чем можно это без особых знаний кодинга "читать" ?
я раньше баловался ассемблером и IDA, но щас почти ничего не помню, но и чувствую реальную нехватку навыка "понять" программ :baby:
 

karabas-barabas

(L1) cache
Пользователь
Регистрация
18.07.2006
Сообщения
650
Оценка реакций
4
Баллы
18
Anubis , vmware + ollydbg , api monitor , ida
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
karabas-barabas

кнм ! спасибо конечно. но об этих инструментах я знаю. Мне надо понять как с ними работать и на какие сигнатуры обратить внимание. ?
 

Chococream

Старожил форума
Легенда
Регистрация
31.10.2009
Сообщения
347
Оценка реакций
7
Баллы
18
http://anubis.iseclab.org/ - это онлайн сервис, по типу песочницы - он показывает тебе всё, что делала программа на компьютере.
VmWare - виртуальная машина, инсталлиш требуемый тебе дистрибутив Win и запускаешь на ней нужный тебе софт(про патчи не забывай).
Оля - отладчик.
Ида - дизасм.
Api monitor - тоже неплохая вещь, я бы к ней ещё прибавил рег. и file мониторы.
Все эти утилиты довольны известны и манов по ним в сетке немерено.
Дерзай.
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
спасибо. из всего этого только про Anubis не знал.

А он достаточно для понимания программа вирус или нормальная прога?
просто с дизасемблером не умею работать
 

karabas-barabas

(L1) cache
Пользователь
Регистрация
18.07.2006
Сообщения
650
Оценка реакций
4
Баллы
18
ну я думаю если трой заточен под антианубис - то недостаточно :)
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
ну и я о том же. все же робот(Anubis) понять что к чему. как я понял - он смотрит по своим базам и делает сигнаторный и поведенческий анализ. а это можно скрыть об банального сопоставления (как и скрывают от антивирусов).
По этому хочу на серьезном уровне разобратся. с инструментами уже понятно чем. остался только узнать КАК :P :))
что надо учить, только чтоб как можно меньше читать ))) а то лень читать много книг по ассемблеру и т.п. дел.
 

r00f

CD-диск
Пользователь
Регистрация
11.03.2009
Сообщения
16
Оценка реакций
1
Баллы
8
а читать много придётся :) хотя бы справочник по асм, чтобы понимать то, что происходит в отладчике. также необиходим будет снифер снифер (н-р: SmartSniff) и детектилка хуков (н-р: RkUnhooker, GMER). берёшь каждый инструмент по очереди и смотришь что к чему. а статьи можно почитать на клабе и васме.
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
r00f

ну читать понимаю, что много надо, но хочется по теме именно. допустим чтоб знать операторы читать определенную книгу, а не вся библиотека по асм_у :)

Вот допустим есть программы типа троян-билдеры или безобидные сканеры. И мне хочется узнать они кроме заявленного операции что еще делают? случайно не отправляют дубликаты автору или что то еще ? Просто в наше время сложно и даже невозможно верить программистам и разный девелоперах. По этому хочется понять на сколько честко выполнена работа.
 

Ragnar

RAID-массив
Пользователь
Регистрация
25.01.2008
Сообщения
88
Оценка реакций
4
Баллы
13
Пользоватся сниффером, Wireshark/Commview
Ну а в идеале надо рихтера прочесть хотябы вкратце + знать основные асм комманды, их не так и много
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
Ragnar
опять таки ! снифером сложно понять что за данные отправляет прога и кому! такие вещи шифрованы бывает в основном и можно только узнать скрывая прогу.
Вот кто то если помог бы подбору или литературу или статьями. чтоб без особых знаний программирования смог разобратся в дизасемблере в поведениях программ.
 

Ragnar

RAID-массив
Пользователь
Регистрация
25.01.2008
Сообщения
88
Оценка реакций
4
Баллы
13
Чтото из серии "хочу научится решать задачи, математику не знаю"
И что делать?
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
Ragnar

а слабо нормально отвечать? или все мастера троллинга ?
 

salamandra

(L3) cache
Пользователь
Регистрация
26.06.2006
Сообщения
264
Оценка реакций
4
Баллы
18
А чего вы и вправду хотите услышать универсальную,подробную инструкцию по анатомии малвари и за один час нучиться потрошить троянов?Tык вы заблуждаетесь,наивный,чукотцкий парень!Люди этому учаться не в один день,или вы
вундеркинг?Почитайте для начала справочник по оллу,справочник по базовым командам ассемблера.Не помешает вам cracklab и wasm.ru,почитайте Рикардо Нарваха.Если хотите картинок и мувиков,то можно сюда tuts4you.com.Это всё
реверсинг и не важно какие программы исследуются,важен подход.Побывайте ещё тут z0mbie.host.sk и тут vx.netlux.org,классика не повредит.И гугл ещё есть....а лучше возьмите какой нить семпл и по f7 его,по f7,а что непонятно
то в гугл,МСДН,или справочник по ассемблеру.
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
salamandra

Спасибо. более менее адекватный ответ.

НО а вариант без особых навыков программирования разбиратся с коде? т.е. понять что он делает в дизассемблере.
 

Mirrow

CD-диск
Пользователь
Регистрация
13.07.2011
Сообщения
10
Оценка реакций
0
Баллы
8
"вариант без особых навыков программирования разбиратся с коде" так же как "вариант без особых знаний физики разбираться в тонкостях работы термоядерных реакторов" - конечно же существует.
1 вариант - потратить кучу времени и научиться самому
2 вариант - задушить жабу, и выбрать стороннего эксперта, которому доверяешь.
3 вариант - забить и реагировать лишь тогда когда ктото из твоих контракников конкретно пропалится, в принципе самый распространенный вариант нашей страны. Пока гром не грянет - мужик не перекрестится...

Выбирай...
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
Вот и читаю книгу, сама книга не про реверсинга, но есть часть про это.. и там написано: (перевод с англ, коротко)

Программы анализируют двумя методами:
статический и динамический.
Мне как бе инетресует статический метод


Процесс статического анализа
1. Сканирование антивирусными системами
2. поиск String_ов (Search for strings)
3. Анализ PE загаловка (Analize PE heder)
4. Анализ импорт таблиц
5. Анализ экспорт таблиц

В этом же книге о каждом пункте написано всего лишь по 2-3 строк :( И то очень нудно.. (книга не профильная по отладку)

И вот хотел узнать пункты 2 до 5..
т.е. что дает тот или иной пункт (ну скажем что даст анализ PE или что за strings ? )
 

DASM32

(L2) cache
Пользователь
Регистрация
14.05.2008
Сообщения
451
Оценка реакций
3
Баллы
18
b1t
Strings (с англ.) - "строки". Т.е. поиск и вывод всех последовательностей байт, похожих на текстовые строки.
 

ph0enix.re

RAID-массив
Пользователь
Регистрация
04.08.2010
Сообщения
60
Оценка реакций
0
Баллы
13
2b1t

Книга плохая. Статика - это на 90% дизасм (имеется конечно ввиду ручная статика). То, что ты перечислил используется для поверхностного осмотра и/или необходимо дизасму для более качественного анализа. Никаких адекватных выводов из этой информации не получить, только можно сформулировать некоторые зыбкие гипотезы.

Вообще реверс это ответ на поставленные вопросы. Эта инфа недает никаких ответов. Точнее вам может показатся, что дает (к примеру вы увидите url), но на самом деле эти догадки ничем не потверждены, только верифицировав их в дизасме вы можете о чем то говорить.
 

b1t

(L2) cache
Пользователь
Регистрация
17.06.2006
Сообщения
316
Оценка реакций
1
Баллы
20
ph0enix.re

я в ПМ написал для каких целей мне оно надо ))
 
Верх