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

 eXeL@B —› Вопросы новичков —› метод syd'a (импорт)
Посл.ответ Сообщение

Ранг: 19.7 (новичок), 14thx
Активность: 0.030
Статус: Участник

Создано: 25 февраля 2014 23:45
· Личное сообщение · #1

где то читал про восстановление импорта по методу syd'a (в QU он вроде). можете рассказать подробнее про этот метод? или мб можно где то почитать про него?



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 26 февраля 2014 01:06
· Личное сообщение · #2

Похучить весь экспорт всех используемых библиотек, сразу после LoadLibrary. Дальнейший вызов этих функций, даже после обфускации, меняет маркеры, которые однозначно идентифицируют функцию.

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


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

Создано: 26 февраля 2014 08:56
· Личное сообщение · #3

Импорт динамическим может быть..



Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 26 февраля 2014 12:32
· Личное сообщение · #4

А еще никто не мешает реализовать свою GetProcAddress, грузить библиотеку через CreateFile и сравнивать импорт с прототипом. Метод основывается на том, что для большинства защит работает.




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

Создано: 26 февраля 2014 13:33
· Личное сообщение · #5

int

Забавные защиты, которые даже не восстанавливают модуля

Я имел ввиду не статический импорт, а динамический(тот, что через GPA()). Хучить весь экспорт имхо какой то изврат, можно отслеживать стандартные загрузочные апи(LdrGPA, LdrpWalkImpDesk etc). Более того, есть обширная готовая группа системных механизмов для этих целей.




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 26 февраля 2014 14:27
· Личное сообщение · #6

Dr0p Если ты не шаришь в восстановлении импорта, что ты делаешь в этой теме и зачем пишешь свои глупые посты?



Ранг: 262.5 (наставник), 337thx
Активность: 0.340.25
Статус: Участник

Создано: 26 февраля 2014 16:58 · Поправил: TryAga1n
· Личное сообщение · #7

Да в принципе все правильно. Если функции звать VX'eрскими методами, таким как получение kernel base, получение адреса GetProcAddress и подгрузка всех апишек через него, то QU обламывался.




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 26 февраля 2014 18:06 · Поправил: Nightshade
· Личное сообщение · #8

Syd придумал достаточно универсальный метод, который работает на куче ОС и обламывает кучу протов.
А вы тут разводите демагогию на тему "если бы да кабы"...
Кто-нибудь может предложить что-то лучше?

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

Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 26 февраля 2014 18:19 · Поправил: VodoleY
· Личное сообщение · #9

кроме мозга, предложений больше нету

З.Ы единственное что я делал.. видимо тоже самое писал трейс скрипт.. пока адрес не уходил за диапазон.. ну вобщем собственный велик в туже тему

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....





Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 26 февраля 2014 19:55 · Поправил: Nightshade
· Личное сообщение · #10

Кстати, если грамотно похучить таблицу экспорта при загрузке длл, ваши vx методы тоже пойдут лесом. GetProcAddress и виндовый и самопальный вернет адрес хука. А в хуке можно как угодно записывать в лог название или номер вызванной апи.




Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 26 февраля 2014 21:35
· Личное сообщение · #11

Nightshade
не-а! не согласен! не бывает такого грамотного хука экспорта, чтобы не пришлось патчить всю систему, особенно если не свою

-----
IZ.RU




Ранг: 20.8 (новичок), 7thx
Активность: 0.010.02
Статус: Участник

Создано: 26 февраля 2014 23:03 · Поправил: int_256
· Личное сообщение · #12

Dr0p пишет:
Хучить весь экспорт имхо какой то изврат, можно отслеживать стандартные загрузочные апи

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

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




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

Создано: 26 февраля 2014 23:26 · Поправил: Dr0p
· Личное сообщение · #13

int_256

Всякая модификация E страниц памяти есть зло, это нарушение целостности системных модулей. Оминь.




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

Создано: 26 февраля 2014 23:29
· Личное сообщение · #14

Nightshade

> Кто-нибудь может предложить что-то лучше?

Да. Но вы способны это осознать ?



Ранг: 20.8 (новичок), 7thx
Активность: 0.010.02
Статус: Участник

Создано: 27 февраля 2014 01:52
· Личное сообщение · #15

Dr0p пишет:
Всякая модификация E страниц памяти есть зло, это нарушение целостности системных модулей. Оминь.


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




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

Создано: 27 февраля 2014 02:11
· Личное сообщение · #16

int_256

Хуки удел .... И у меня такого говна в системе нет, оно удаляется сразу после порчи системных модулей в памяти.




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 27 февраля 2014 03:33
· Личное сообщение · #17

int пишет:
А еще никто не мешает реализовать свою GetProcAddress, грузить библиотеку через CreateFile и сравнивать импорт с прототипом

Вы это скажите фимке и другим протам которые морфят апишки,
int пишет:
Похучить весь экспорт всех используемых библиотек, сразу после LoadLibrary

всё это обломится если прот начнёт проверять РЕ хидер и поймёт что экспорт уходит за пределы модуля
Dr0p пишет:
И у меня такого говна в системе нет, оно удаляется сразу после порчи системных модулей в памяти.

И олю с плагинами да вы однако изверг

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 101.0 (ветеран), 344thx
Активность: 1.150
Статус: Участник

Создано: 27 февраля 2014 04:20
· Личное сообщение · #18

ClockMan пишет:
всё это обломится если прот начнёт проверять РЕ хидер и поймёт что экспорт уходит за пределы модуля

Зачем вы мне это пишите? Вопрос был конкретный, про метод syd'а, я его описал. Дальнейшее уже выходит за рамки этой темы.

Dr0p пишет:
Забавные защиты, которые даже не восстанавливают модуля

А никто сильно не парится, от новичков такие защиты спасают, а большее и не требуется. А так ведь любую защиты можно поломать, если есть валидный ключ и достаточное количество свободного времени.




Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 27 февраля 2014 07:10
· Личное сообщение · #19

Dr0p пишет:
Хучить весь экспорт имхо какой то изврат


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




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 27 февраля 2014 08:57
· Личное сообщение · #20

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

еще раз увижу мат в постах, накажу. на этом закрыто.

-----
[nice coder and reverser]



 eXeL@B —› Вопросы новичков —› метод syd'a (импорт)
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати