Сейчас на форуме: (+5 невидимых)

 eXeL@B —› Дневники и блоги —› Detect It Easy
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 13 . 14 . >>
Посл.ответ Сообщение


Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 18 января 2013 18:08 · Поправил: hors
· Личное сообщение · #1

Detect It Easy утилита для определения версии протекторов/ упаковщиков

Текущая версия 1.00





Здесь будут выкладываться последние наработки.

Скачать

Changelog
GITHUB

Приветствуются замечания. Сообщения о ложных срабатываниях. Новые идеи.

Если я долго отсутствую на форуме или не отвечаю в ЛС, пишите мне на horsicq[at]gmail.com

-----
http://ntinfo.biz


| Сообщение посчитали полезным: Hellspawn, _ruzmaz_, 4kusNick, ==DJ==[ZLO], mushr00m, Diabolic, daFix, Dazz, void, BAHEK, -Sanchez-, SergeyIvan, vnekrilov, dimka_new, stas_02, crc1, Grim Fandango, GPcH, DimitarSerg, ylproduction, DenCoder, Jim DiGriz, ClockMan, VAD87, DICI BF, Chris, Black_, HandMill, MasterSoft


Ранг: 748.2 (! !), 390thx
Активность: 0.370
Статус: Участник
bytecode!

Создано: 30 сентября 2013 23:15
· Личное сообщение · #2

Ещё немного фидбэка ушло в личку

-----
Флэш, ява, дотнет - на завтрак, обед и ужин. Unity3D на закуску.


| Сообщение посчитали полезным: hors


Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 30 сентября 2013 23:42
· Личное сообщение · #3

4kusNick пишет:
Ещё немного фидбэка ушло в личку


Ничего себе "немного". Почти 2 гигабайта разных файлов! Не знаю даже как выразить свою благодарность!

-----
http://ntinfo.biz





Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 01 октября 2013 00:01
· Личное сообщение · #4

Буду понемногу добавлять в TODO из архива 4kusNick. Если написать сразу все, боюсь тут не хватит места.

-----
http://ntinfo.biz




Ранг: 51.5 (постоянный), 16thx
Активность: 0.040.01
Статус: Участник

Создано: 01 октября 2013 22:34
· Личное сообщение · #5

[+] Улучшить определение DotFix Nice Protect v3.4 (4kusNick)
а более новые версии не планируются? 4.6 например.

| Сообщение посчитали полезным: hors


Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 01 октября 2013 23:17
· Личное сообщение · #6

mushr00m пишет:
[+] Улучшить определение DotFix Nice Protect v3.4 (4kusNick)
а более новые версии не планируются? 4.6 например.


Появится файл, закриптованный 4.6, добавим.

-----
http://ntinfo.biz





Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 15:27
· Личное сообщение · #7

Раздумываю, нужно ли добавить в HEX viewer поддержку скриптов и если да, то в каком виде.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 16:09 · Поправил: F_a_u_s_t
· Личное сообщение · #8

hors пишет: Раздумываю, нужно ли добавить в HEX viewer
Если сможешь сделать не хуже 010 Editor в плане описания формата, то нужен, хотя скриптовый движок не але для этого, тут больше подходит Angel script, можно тупо скопировать структуру из сишного хидера, и наложить на hex дамп, там же ресерчить формат, сишний движок для этого больше подходит из за совместимости, биндится он довольно просто, на геймдеве куча манов.
Еще у тебя баг в дизасме, прокрути колесико мышки буквально на одно деление, ползунок не сдвинется, а код изменится.

| Сообщение посчитали полезным: hors


Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 17:16 · Поправил: hors
· Личное сообщение · #9

F_a_u_s_t пишет:
Еще у тебя баг в дизасме, прокрути колесико мышки буквально на одно деление, ползунок не сдвинется, а код изменится.


Спасибо за тестирование. Но мне к сожалению не удалось это повторить на своем компьютере. Но в любом случае движок дизасма перепроверен и отловлены многие ошибки.

F_a_u_s_t пишет:можно тупо скопировать структуру из сишного хидера, и наложить на hex дамп, там же ресерчить формат, сишний движок для этого больше подходит из за совместимости, биндится он довольно просто,

Идея интересная, но просто наложить сишный хидер на данные никак не получится. Нужно использовать свой формат данных.

F_a_u_s_t пишет:
на геймдеве куча манов.


А вот это уже интересно. Пару ссылок на маны не подкинешь?

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 17:44 · Поправил: F_a_u_s_t
· Личное сообщение · #10

hors пишет: Пару ссылок на маны не подкинешь?
1
2
3
4
5
Либ для биндинга куча и тут гуглить на свой вкус, хотя без них не сложно запилить скриптинг, а так, держит даже классы, не говоря уже о простых вещах.
Сишный хидер интересен в плане описания формата, а что за ним после, это уже дело второе, в том же 010 Editor примерно так и работает.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 17:53 · Поправил: hors
· Личное сообщение · #11

F_a_u_s_t пишет:
Сишный хидер интересен в плане описания формата


Ну вот у нас есть такой сишный хидер

Code:
  1. struct dummy
  2. {
  3.     char cValue;
  4.     char *pValue;
  5.     word wValue;
  6.     int nValue;
  7. };


какое смешение nValue мне из него брать для накладывания на данные?

-----
http://ntinfo.biz





Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 17:59
· Личное сообщение · #12

F_a_u_s_t пишет:
1
2
3
4
5
Либ для биндинга куча и тут гуглить на свой вкус, хотя без них не сложно запилить скриптинг, а так, держит даже классы, не говоря уже о простых вещах.


Спасибо. Почитаю. Но на первый взгляд все возможности "Angel script" уже есть в скриптах Detect It Easy.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 18:08
· Личное сообщение · #13

hors пишет: какие смешения nValue мне из него брать для накладывания на данные?
Зачем вам что то из него брать?
Ваша задача, это вывести интерфейс, лучше через классы, класс gui, для раскраски окон и всего что связанно с окнами, класс какой нибудь data, для работы с данными, итд.
В этом и есть суть скриптинга, что бы убрать лишние затраты, и переложить их на пользователя, но когда пользователю нужны лишние затраты, то он забивает куй.
Например в играх, это либо ну очень простой скриптинг, для описание логики и текстур, или очень сложный, на котором можно запилить эту самую логику.
Нет в QTScript таких возможностей.
Если же ну очень надо что то брать из скрипта, то есть парсер, хотя это лишнее, в 010 Editor одни интерфейсы.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 18:19 · Поправил: hors
· Личное сообщение · #14

F_a_u_s_t пишет:
Зачем вам что то из него брать?
Ваша задача, это вывести интерфейс, лучше через классы, класс gui, для раскраски окон и всего что связанно с окнами, класс какой нибудь data, для работы с данными, итд.
В этом и есть суть скриптинга, что бы убрать лишние затраты, и переложить их на пользователя, но когда пользователю нужны лишние затраты, то он забивает куй.


Я совсем запутался. Ты же сам писал:

F_a_u_s_t пишет:
можно тупо скопировать структуру из сишного хидера, и наложить на hex дамп,


Итак у нас есть описанная выше структура и я хочу наложить её на дамп. Для этого надо очевидно знать смещения всех элементов структуры. Как мне найти смещение nValue?

F_a_u_s_t пишет:
Нет в QTScript таких возможностей.


Может и нет. Я с "Angel script" ещё хорошо не ознакомился.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 18:28 · Поправил: F_a_u_s_t
· Личное сообщение · #15

hors пишет: Как мне найти смещение nValue?
Вам не нужно искать смещение N, вам нужно подцепить к скрипту интерфейс, что бы я мог перейти по смещению указанному мной и сказать делай то то.
Например пишу:
Code:
  1. struct dummy
  2.     {
  3.         char cValue;
  4.         char *pValue;
  5.         word wValue;
  6.         int nValue;
  7.     };
  8.  
  9. read_data( &dummy );
  10. dummy.cValue = 'X';
  11. data_color( n_position , clRed, data_len );

Ну и в таком же духе, просто вывести классы, а остальное будут пилить юзеры.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 18:35
· Личное сообщение · #16

F_a_u_s_t пишет:
Ну и в таком же духе, просто вывести классы, а остальное будут пилить юзеры.


Похоже мы просто говорим о разных вещах. За пример спасибо.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 18:50
· Личное сообщение · #17

hors пишет: Похоже мы просто говорим о разных вещах.
О тех же, просто разный подход, вы думаете, как делать самому, но речь о том, что вам это не надо, а все переложить на пользователей.
Еще пример, загрузился hex дамп, например PDF, в нем поксореный бинарь, ваши действия с вашим подходом?
С моим же, я могу сделать с PDF что угодно, считать, декриптить, впилить назад в окно hex dump'a, если конечно сделаете интерфейс, к тому же, можно вызывать external dll, с вашим подходом миссия невыполнима.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 19:04
· Личное сообщение · #18

F_a_u_s_t пишет:
к тому же, можно вызывать external dll, с вашим подходом миссия невыполнима.


Это совсем не нужно.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 19:27
· Личное сообщение · #19

hors пишет: Это совсем не нужно.
Это нужно и довольно часто, тем более очень легко запилить Libffi.
Вообще, самый простой ответ, это опыт, попробуйте разобрать хотя бы BMP и описать формат, многие вопросы отпадут сами.
Рекомендую 010 Editor, на данный момент лучший в плане скриптинга и возможностей, но как же там не хватает вызова внешних dll.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 20:39 · Поправил: hors
· Личное сообщение · #20

F_a_u_s_t пишет:
Вообще, самый простой ответ, это опыт, попробуйте разобрать хотя бы BMP и описать формат, многие вопросы отпадут сами.


Улыбнуло. Спасибо.

F_a_u_s_t пишет:
Рекомендую 010 Editor, на данный момент лучший в плане скриптинга и возможностей, но как же там не хватает вызова внешних dll.


Проблема в том, что DIE мультиплатформенное приложение. Поэтому никаких Dll. Только скрипты, которые могут одинаково хорошо работать под всеми ОС(OS X, Linux, Windows). Всю жизнь пользовался WinHEX, но 010 Editor наверное придется изучить.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 21 октября 2013 20:55
· Личное сообщение · #21

hors пишет: Поэтому никаких Dll
Та библиотека кросплатформенная, она и юзается в скриптах, например перле, питоне, жабе.

hors пишет: Улыбнуло. Спасибо.
Так вот и я улыбаюсь, окошко с цифрами, это не hex редактор, формат BMP очень прост, это для примера, попробуйте описать его в скрипте и посмотрите на "удобство", не говоря о том, что бы с ним что то делать.
В том же 010 Editor мне не хватаетdll из за gui, еще окошки нужны, а в скрипте не запилино создание.
Одно дело смотреть на цифры, да поправить парочку и совсем другое разбирать формат файла или бинарь с того же PDF, в малвари очень часто юзается.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 21 октября 2013 21:24 · Поправил: hors
· Личное сообщение · #22

F_a_u_s_t пишет:
формат BMP очень прост, это для примера, попробуйте описать его в скрипте и посмотрите на "удобство", не говоря о том, что бы с ним что то делать.


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

F_a_u_s_t пишет:
Одно дело смотреть на цифры, да поправить парочку и совсем другое разбирать формат файла или бинарь с того же PDF, в малвари очень часто юзается.


Разобрать не трудно, было бы желание.

-----
http://ntinfo.biz





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 22 октября 2013 00:34
· Личное сообщение · #23

ну вы так еще к питону для биндинга перейдите)) и весь DIE перетечет в красивый блокнот и наборы питоновских скриптов

| Сообщение посчитали полезным: hors

Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 22 октября 2013 00:42
· Личное сообщение · #24

reversecode пишет: ну вы так еще к питону для биндинга перейдите))
Это вообще в идеале.
Но его геморно прикручивать даже через SWIG, зачем же так напрягать человека, а так да, стал уже негласным стандартом в RE тулзах.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 22 октября 2013 01:07 · Поправил: hors
· Личное сообщение · #25

F_a_u_s_t пишет:
Но его геморно прикручивать даже через SWIG

Ересь.
Питон прикручивается как:
Code:
  1. #include "Python.h"


Но он действительно не нужен, так как уже есть встроенные скрипты.


F_a_u_s_t пишет:
зачем же так напрягать человека, а так да, стал уже негласным стандартом в RE тулзах.


Преувеличение. Мне вот один филиппинец рассказывал, что самый первый вирус появился в Индии и был написан на Visual Basic, а Филиппины самая киберкриминальная страна, так как там очень много безработных компьютерщиков. Я даже подумал, что он так шутит. А ты говоришь негласные стандарты...

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 22 октября 2013 01:39
· Личное сообщение · #26

hors пишет:
Ересь.
Питон прикручивается как:

Code:
  1. #include "Python.h"

И потом идет фарш в C style с адовым говнокодом.
Геморрой не в подключение инклуда, а в выведении классов\функций и так, что бы потом код не был похож на говно, для примера посмотрите OllyScript, чел явно собирал с миру по нитке, разный стиль кода, не осилил, для чего Страуструп так ратовал о модульности и классах, годный пример фарша.
hors пишет:
Преувеличение. Мне вот один филиппинец рассказывал, что самый первый вирус появился в Индии и был написан на Visual Basic

Посмотрите современные forensic tools, песочницы, разбор форматов, отладка, дизасм, везде питон, вот метасплоит, как раз пример Индуса, взяли и на руби запилили.




Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 22 октября 2013 01:51 · Поправил: hors
· Личное сообщение · #27

F_a_u_s_t пишет:
И потом идет фарш в C style с адовым говнокодом.


Говнокод не зависит от языка на котором пишется.

F_a_u_s_t пишет:
Геморрой не в подключение инклуда, а в выведении классов\функций и так, что бы потом код не был похож на говно,


Ну так это можно про любую ситуацию сказать. Зачем акцентировать внимание на SWIG?

F_a_u_s_t пишет:
Посмотрите современные forensic tools, песочницы, разбор форматов, отладка, дизасм, везде питон, вот метасплоит, как раз пример Индуса, взяли и на руби запилили.


Давайте посмотрим. Есть Python для IDA. Есть immunity debugger(кто-то им пользуется?) негусто
Остальное даже не стоит и рассматривать. На "негласный стандарт" в реверсинге явно не тянет.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 22 октября 2013 02:17
· Личное сообщение · #28

hors пишет: Говнокод не зависит от языка на котором пишется.
С python.h только говнокод получается, хоть на C хоть на С++, собственно на форуме этого не отрицают и говорят юзайте SWIG или boost.

hors пишет: Ну так это можно про любую ситуацию сказать. Зачем акцентировать внимание на SWIG?
Потому что проектирование, в чем проще разобраться, в толстом исходнике, который похож хз на что, или же в маленьком хидере в котором список функций для вывода?
Тут давича постил ссылку на плагин для второй ольки, посмотрите исходник и вопросы отпадут сами собой, так он выглядит всегда, независимо от прямоты рук.

hors пишет:
Давайте посмотрим. Есть Python для IDA. Есть immunity debugger(кто-то им пользуется?) негусто
Остальное даже не стоит и рассматривать. На "негласный стандарт" в реверсинге явно не тянет.

Все дело в том, кто пользуется, если для школоло допустимо ресерчит крекми фантома руками, то в ав конторе это ахтунг, там поставлено на поток, cuckoo sandbox, volatility, swift, pin и десятки тулов о которых вы даже не слышали, только ума им не многие дадут, например тот же pin.
Запилите на ollyscript сервер, что бы отсылаемые данные шли на него, да к тому же и парсились, ну или хук системных библиотек, тогда скажу, что таки да, годный двиг.
Задачи у людей просто разные, кому то макросы ( ollyscript ), а кому то нужен язык ( python ).
Просто у нас разные взгляды на инструменты для анализа файлов.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 22 октября 2013 10:33
· Личное сообщение · #29

ждем появление IDIE ? - интеллектуального детектора пакеров))

| Сообщение посчитали полезным: hors


Ранг: 136.0 (ветеран), 360thx
Активность: 0.270.14
Статус: Участник
Qt Developer

Создано: 22 октября 2013 12:33 · Поправил: hors
· Личное сообщение · #30

F_a_u_s_t пишет:
С python.h только говнокод получается, хоть на C хоть на С++


Это не так.

F_a_u_s_t пишет:
собственно на форуме этого не отрицают и говорят юзайте SWIG или boost.


Мало ли кто где что пишет.

F_a_u_s_t пишет:
Потому что проектирование, в чем проще разобраться, в толстом исходнике, который похож хз на что, или же в маленьком хидере в котором список функций для вывода?


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


F_a_u_s_t пишет:
Все дело в том, кто пользуется, если для школоло допустимо ресерчит крекми фантома руками, то в ав конторе это ахтунг, там поставлено на поток, cuckoo sandbox, volatility, swift, pin и десятки тулов о которых вы даже не слышали, только ума им не многие дадут, например тот же pin.


Здесь ключевое слово "поток". Почему у этих ребят получается "говнокод" не нужно обьяснять? Это действительно "Ахтунг". Здесъ я с Вами не могу не согласиться.

-----
http://ntinfo.biz




Ранг: 0.0 (гость)
Активность: 0.250
Статус: Участник

Создано: 22 октября 2013 13:27
· Личное сообщение · #31

hors пишет: Это не так.
Это так, но можете конечно запелить адекватный биндинг и придете к boost или SWIG, только свой.
Максимализм со временем пройдет.

hors пишет: Мало ли кто где что пишет.
Какбэ это пишут разработчики питона.

hors пишет: Проще всего разобраться в исходнике
В этом и суть, маленький исходник в котором только объявление функций, а не описание взаимоотношений типов, не рассчитывали разрабы питона юзать его в качестве движка, одно дело подрубить QTScript или ChaiScript и другое perl и python.

hors пишет: Почему у этих ребят получается "говнокод" не нужно обьяснять?
Они не пишут, они используют, перечисленные тулзы вполне годно написаны и через питон очень даже годно объединяется.


<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 13 . 14 . >>
 eXeL@B —› Дневники и блоги —› Detect It Easy
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати