[Ответить в тред] Ответить в тред

26/03/16 - Конкурс: Помоги гомункулу обрести семью!
15/10/15 - Набор в модераторы 15.10 по 17.10
27/09/15 - Двач API — Инструкция к применению



[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 23 | 3 | 8
Назад Вниз Каталог Обновить

Подсчет контрольной суммы блока образа в памяти Аноним 05/03/16 Суб 16:46:35  677370  
14571855950190.png (10Кб, 416x481)
Есть программа (MSVC), нужно рассчитать контрольную сумму блока кода в рантайме.
Все бы ничего, но при каждой загрузке меняются виртуальные адреса, соответственно каждый раз КС разная.
Как это решить? Есть ли способ заставить виндовый загрузчик оставить PIC, или писать костыли вроде пропуска адресов при расчета КС?
Аноним 05/03/16 Суб 18:17:01  677527
>>677370 (OP)
В рантайме ты можешь узнать адрес функции и метки. Дальше сам думай.
Аноним 05/03/16 Суб 18:19:09  677531
>>677527
Так узнал же, что мне это дает?
Аноним 05/03/16 Суб 21:20:46  677678
>>677370 (OP)
Конпелируй со включенными релоками и сделай небольшой костыль, который при подсчете чексуммы делает из виртуальных адресов относительные (RVA). Ну или просто выключи ASLR для образа.
Аноним 05/03/16 Суб 21:34:21  677691
>>677678
>и сделай небольшой костыль, который при подсчете чексуммы делает из виртуальных адресов относительные
была такая мыль, но это нужно создавать базу опкодов, закоторыми следует виртуальный адрес, или нет? Про ASLR почитаю.
Аноним 05/03/16 Суб 21:46:44  677700
>>677691
> базу опкодов
Нет, не нужно. Тебе нужно пройтись по таблице релоков, там указаны виртуальные адреса, которые зависят от базы модуля. Тебе нужно взять каждый адрес и вычесть из него базу, вот и все. Какая там инструкция, и как она с этим адресом работает, тебя волновать не должно.
Аноним 05/03/16 Суб 23:18:22  677782
виртуальный адрес сгментов один и тотже, не?
Аноним 06/03/16 Вск 00:20:31  677828
>>677782
при каждом запуске меняется
Аноним 06/03/16 Вск 05:06:14  677923
>>677828
Нахуя оно тебе надо? Ты кого-то наебать пытаешься? Ты же не в зуб ногой, анивей профи хакнет твой защищённый код как два пальца обоссать.
Аноним 06/03/16 Вск 12:00:26  678014
>>677923
Да какая разница то зачем оно мне, я же тебе не мешаю.
Аноним 06/03/16 Вск 12:44:13  678037
>>677828
как он ментся, если вирт адреса сегментов назначаются системой и оди одни и теже для любого процесса?
Аноним 06/03/16 Вск 12:56:45  678050
>>678037
попробуй код, что на оп-пике (или ему подобный) набрать и запустить, а потом после перезагрузки (или изменения PE, той части что не отностится к коду) запустить еще раз
Аноним 06/03/16 Вск 13:16:13  678068
>>678050
ОП сраный нубище, сегментная адресация не канает в защищенном режиме, твое говноподелее будет работать только в чистом ДОС, иди нахуй и не морочь голову вирт. адресацией смысл которой тебе не понятен.
Аноним 06/03/16 Вск 14:42:26  678174
>>678068
я же не говорю что оно работает, я спрашиваю как сделать иначе.
Аноним 06/03/16 Вск 14:53:57  678184
>>678050
Давай-ка скрины из ольки, а то мне это какой-то хуйнёй кажется.
Аноним 06/03/16 Вск 14:57:05  678189
14572654251000.png (69Кб, 1280x757)
>>678184

Аноним 06/03/16 Вск 15:39:35  678220
>>678174
используя WinApi типа ReadProcessMemory()
Аноним 06/03/16 Вск 16:07:39  678243
>>678220
Что мне это даст, если я из своего же процесса читаю?
Аноним 06/03/16 Вск 17:15:35  678325
>>678189
Второй скрин где?
Аноним 06/03/16 Вск 17:20:21  678327
14572740219020.png (77Кб, 1280x850)
14572740219041.png (71Кб, 1280x802)
>>678325
сори, вот
Аноним 06/03/16 Вск 17:59:16  678396
>>678327
В настройках линкера найди что-то вроде "рандомизировать адрес загрузки", выключи и попробуй снова. Должно помочь.
Аноним 06/03/16 Вск 18:05:55  678399
>>678396
Фак, это работает, огромное тебе спасибо.
Скажи, это я так хуево вопрос поставил или это не слишком популярная фича?
Аноним 06/03/16 Вск 21:57:09  678743
>>678399
> это я так хуево вопрос поставил
Ты просто читать не умеешь. Про ASLR тебе написали в четвертом посте.
Аноним 07/03/16 Пнд 15:29:27  679317
>>677370 (OP)
Вот лол, никогда не кодил, но прочитал код. Ёбаные марки.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 23 | 3 | 8
Назад Вверх Каталог Обновить

Топ тредов