Страница: 1 |
Вопрос: Куча (Heap). | Добавлено: 03.02.05 12:11 |
Автор вопроса: ![]() ![]() |
Опытным путём установил что данные в куче начинаются со смещения &H74 относительно её начала.
Так ли это? И если да, то почему? Во всяком случае я знаю что первый DWORD - это Максимальный размер кучи + начальный (либо + страница памяти, т.к. её длина &H1000). Например &H101000. |
Ответы | Всего ответов: 10 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Лидер форума ICQ: 216865379 Вопросов: 106 Ответов: 9979 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 03.02.05 13:33 |
Надеюсь, что это http://www.securitylab.ru/52238.html тебе поможет |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 204447456 Вопросов: 180 Ответов: 4229 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 03.02.05 14:39 |
Угу, вроде то что нужно. Но потестить всё равно не помешало бы. |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #3 | Добавлено: 03.02.05 17:16 |
0012FFC4 7C816D4F RETURN to kernel32.7C816D4F
0012FFC8 7C910738 ntdll.7C910738 0012FFCC FFFFFFFF 0012FFD0 7FFD6000 0012FFD4 8054B038 0012FFD8 0012FFC8 0012FFDC 82213788 0012FFE0 FFFFFFFF End of SEH chain 0012FFE4 7C8399F3 SE handler 0012FFE8 7C816D58 kernel32.7C816D58 0012FFEC 00000000 0012FFF0 00000000 0012FFF4 00000000 0012FFF8 00403FDA WinAmp_N.<ModuleEntryPoint> 0012FFFC 00000000 |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 03.02.05 17:18 |
Как видим, загрузчик что-то да использует в своих интересах ![]() |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 204447456 Вопросов: 180 Ответов: 4229 |
Web-сайт: Профиль | Цитата | #5 | Добавлено: 03.02.05 17:22 |
Хм, что то описания заголовка кучи я там не нашёл. Может ты найдёшь? |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 204447456 Вопросов: 180 Ответов: 4229 |
Web-сайт: Профиль | Цитата | #6 | Добавлено: 03.02.05 17:25 |
sne,
Да вроде в кучу загрузчик ничего не пишет. Разве что сама прога. |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 204447456 Вопросов: 180 Ответов: 4229 |
Web-сайт: Профиль | Цитата | #7 | Добавлено: 03.02.05 17:31 |
Мне просто интересно. Я посмотрел несколько программ (OllyDbg может показывать дамп как всей памяти, так и частей (кучи в том числе)) и везде данные начинаются с GetProcessHeap+&H74.
Дальше идут маркеры блоков (хотя и в заголовке они присутствуют, но почему то с левой длиной). Может кто нибудь запустит пару прог и посмотрит дампы кучи для проверки? И где же взять описание этих &H74 байт заголовка (если конечно это правильная длина)? |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #8 | Добавлено: 03.02.05 20:14 |
Гы, кстати о куче, компания http://www.maxpatrol.com/ нашла в XP SP2 дырку ![]() Name: defeating-xpsp2-heap-protection.pdf
URL: http://www.maxpatrol.com/defeating-xpsp2-heap-protection.pdf Size: 91734 Create time: 03.02.2005 12:26:48 Complete time: 03.02.2005 12:27:50 Referer: Description: |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Лидер форума ICQ: 216865379 Вопросов: 106 Ответов: 9979 |
Web-сайт: Профиль | Цитата | #9 | Добавлено: 03.02.05 23:27 |
Этому посвящена та статья, которую я залинковал CyRax'у ![]() |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #10 | Добавлено: 03.02.05 23:50 |
гы ![]() ![]() |
Страница: 1 |
|