Segmentation Fault

Тема в разделе "WASM.UNIX", создана пользователем fault, 12 ноя 2009.

  1. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Clerk

    Ай-я-яй! Мнемоники были у топикстартера, а человек действительно только пришел. Не надо горячку пороть.
     
  2. _ir4_Y_

    _ir4_Y_ New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2007
    Сообщения:
    76
    Clerk
    а лично меня бесит когда всякие непонятные люди называют других нубьем
    Если вы Clerk думаете что в сплойты лезут только ради наживы вы глубого заблуждаетесь
    За наживой идите работать куда-нибудь в Microsoft...

    Одно дело когда человек не понимает элементарные вещи которые описаны во многих источникахhttp://wasm.ru/forum/viewtopic.php?id=34685)

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

    Когда то я тоже разбирался с эксплойтами...
    Я научился кодить на асме, что серьезно изменило мой стиль программирования на С, и вообще понимание того как функционирует ОС ...
     
  3. _ir4_Y_

    _ir4_Y_ New Member

    Публикаций:
    0
    Регистрация:
    8 мар 2007
    Сообщения:
    76
    bsnake
    ASLR - фича ядра ОС а не камушка ....
     
  4. InFlame

    InFlame New Member

    Публикаций:
    0
    Регистрация:
    24 сен 2009
    Сообщения:
    12
    Существуют ли статические области памяти при активной ASLR в Linux? Или ситуация практически безнадёжна?
     
  5. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    _ir4_Y_
    Это вы такое сказали?

    fault, чтобы не было проблем из-за стека, используйте при jmp относительную адресацию. Может быть, в call тоже есть относительная адресация. Если нет вместо call <адрес> определите текущий адрес и положив жесткопрошитый адрес функции code вычислите его новое местоположение. Уверен, с этим проблем у вас не будет :).
    Или вместо call писать:
    Код (Text):
    1. mov eax, eip
    2. 1: add eax,Const
    3. push eax
    4. jmp code
    5. eip+Const: ...
    Const - расстояние от метки "1" до метки "eip+Const".

    Все что "невозможно" будет невозможным, пока остается для нас неизвестным. Если какой-то адрес случайный, все равно он где-то хранится. Если надо узнать адрес блока динамической памяти, находим переменную, в которой этот адрес сохраняется. До всего можно дотянуться если идти "неправильной" дорогой :).