eXeL@B —› Вопросы новичков —› Зачем нужны релоки в EXE |
Посл.ответ | Сообщение |
|
Создано: 02 ноября 2016 20:03 · Личное сообщение · #1 Сабж. Для DLL понятно -- их может несколько в одно и то же адресное пространство загрузиться, следовательно, можем получить конфликт адресов. А вот в чём суть релоков для *.exe-файлов? Когда они могут примениться? На ум приходит только "невалидный" Preferred Image Base Address. И то, не совсем понятно, что считается "валидным" адресом. |
|
Создано: 02 ноября 2016 20:10 · Личное сообщение · #2 |
|
Создано: 02 ноября 2016 20:15 · Личное сообщение · #3 Защита от атак, ASLR. Вы могли бы в своём сплойте захадкодить адрес и на него передать управление. Из за рандомизации это становится невозможным. Но вы так же можите каким то образом обойти этот механизм и использовать шаблоны(не изменность данных при релокации). Пока в нт этот механизм не реализован(по двум основным причинам - необходимо использовать викс технологии для защиты(морф/обфускация) и это противоречит понятию целостности кода. Так же такое даст ряд проблем, как не возможность отладки и работы обычных механизмов, тоесть фактически нужно переписать ось. ----- vx |
|
Создано: 02 ноября 2016 23:15 · Личное сообщение · #4 |
|
Создано: 03 ноября 2016 01:53 · Поправил: difexacaw · Личное сообщение · #5 |
|
Создано: 03 ноября 2016 11:41 · Личное сообщение · #6 |
eXeL@B —› Вопросы новичков —› Зачем нужны релоки в EXE |