Если дать алгоритм действий: запусти то, поменяй тот байт, сохрани и запусти, то эффекта обучения от такого совета не будет, кроме результата достигнутого сомнительной ценой. Переходы можно править в любом 16-ричном редакторе. Например, hiew. Переходы представляют из себя команды ассемблера меняющие текущее значение EIP в зависимости от флагов eflags или без учета таковых p.s. как я уже говорил - учи матчать
Вопрос по null-byte. Если я в файле выделю некоторое количество null байтов, и вставлю туда код, он будет считываться?
Есть ли учебные программы в которых заведомо есть ошибка переполнения, дабы попрактиковаться в написание шелл-кода? Вроде обычных крэкми, но только в которых надо найти ошибку и эксплуатировать ее. Сам гуглил-ничего не нашел.
Нет же, это программы, заведомо содержащие какую либо уязвимость, проэксплуатировав которую надо выполнить шеллкод- запустить калькулятор, например
Почитал статьи Рикардо Нарвахи, что можно и нужно изучать дальше ? там применяется один только олли, а хотелось бы побольше узнать про ida pro - что это вообще такое как и для чего его юзать и тд, про то, какие бывают защиты программ и как их обходить
Если у вас есть такая возможность, то советую пройти официальные курсы IDA Pro ну и конечно же http://nostarch.com/idapro2.htm Забыл добавить, советую внимательно просмотреть Lena's Reversing for Newbies
хорошо, спасибо. а вообще, с чего начинается исследование программы ? из чего состоит вся цепочка ? и еще материала бы побольше про антиотладку, vmprot, всякие разные шифрования программ.
IDA.Pro.Book.2nd.Edition.Jun.2011.rar Воровство, грабеж и обмен награбленым незабываем про это No.Starch.The.IDA.Pro.Book.2nd.Edition.Jun.2011.rar (6 МБ) А первая версия и так в интернете есть
Гугл выдает что-то вроде: Code: crashme is a very simple program that tests the operating environment's robustness by invoking random data as if it were a procedure. The standard signals are caught and handled with a setjmp back to a loop which will try again to produce a fault by executing random data. Some people call this stress testing. Скинь ссылку на одну из тех программ, о которых ты говоришь. Буду очень благодарен.
жестоко извиняюсь, за один архив, но есть вот, выбирай и смотри: Reverse_Engineering_Video_Tutorial <----- link
http://forum.artofhack.kz/index.php?s=&showtopic=1154&view=findpost&p=3878 Прямые ссылки, докачка, все дела. з.ы.: не пеар
Вот я например делаю так: Attach к процессу, меняю там чтонить(nop, добавлять свои команды) как теперь сделать такой патчинг из под C++ ? подскажите куда копать, что почитать?
При чем тут С++? Если есть исходник - правь да компилируй. В олли выделяешь измененный код и выбираешь пункт - copy to executable. Затем сохраняешь патченый вариант. Кстати говоря, надо поглядывать на relocs, судя по скринам.