Такая мысль крутилась постоянно пока читал «кто все эти люди», т.е. о чём, про что и зачем. Напряг то, что осталось, «о чём и про что» — понял, но вот «зачем» — так и осталось загадкой…
Когда-то, в прошлой жизни, приходилось и инлайн-вставки писать на асме и софтайсом пользоваться. В нынешней, на 2/3 головоломки из TIS-100 прошел, потом надоело. Вроде бы тема должна была меня интересной, но не пошло что-то…
Идея для продолжения: объясните мне про «зачем» ))) Пжлста, заинтересуйте!
Чтобы лучше понимать, как все работает на самом деле, во что компилируется switch и почему именно в это. Эти знания помогут потом в отладке сложных проблем, за решением которых понадобиться опуститься до уровня машинного кода и прямого взаимодействия с железом. Если вы думате, что никогда не столкнетесь с такими проблемами — это только потому, что с вашими системами до вас работала куча людей, столкнулась с ними, и сделала все, чтобы вам это было не нужно. Ну и прочтите вот эту статью, станет немного понятнее.
Зачем? Мне, например, для этого: habrahabr.ru/post/249991, что бы потом обычная разработка стала комфортной. И да, до меня, наконец, дошло, как, примерно, работает вытесняющая многозадачность :)
Кстати, не хватало простых обзорных статей по radare2, приходилось xref стрелочки самому рисовать.
Про какой именно функционал Вы бы хотели прочитать в первую очередь? Нам казалось, что простых обзорных хватает :), хотя они и в основной массе на английском языке.
Для тех, кто не «любит» IRC и телеграмм чаты, еще есть форум для общения как русско-, так и англоговорящих пользователей radare2, который в скором времени планируем официально представить после решения организационных моментов, но там уже можно задавать вопросы.
Не, не брошу иду ;)
Уже и ids'ов куча написано, и пара плагинов.
Правда поглядел что процессорные модули можно достаточно просто писать для r2, но в принципе и для IDA это не такая уж и проблема.
А есть что-то почитать на тему анализа «сырых» бинарников? Конкретно такой пример: есть файл, в нем надо взять адрес из *((unsigned int*)0x4), дизассемблировать как функцию, найти XREF'ы, вывести листинг и умереть.
Еще одно средство для реверса — это здорово!
Но!
Как насчет Олечки с бесчисленным моремплагинов для реверса, сокрытия от обнаружения, анализа дампов, стека, построения графов потока управления и др.?
И также бесплатной x64dbg?
В чем существенное отличие от них? Они не менее популярны, чем IDA.
Для отладки часто используется Оля, а IDA незаменима в связке с HexRays декомпилятором.
Что olly, что x64dbg работают только под win32. Мне, к примеру, не очень удобно постоянно поднимать ради этого виртуалку. К тому же одна из главных прелестей радара — все есть из коробки, соответственно ничего искать и ставить не нужно.
Я бы еще добавил, что x64dbg не поддерживает удаленную отладку, как это делает WinDbg, radare2 это поддерживает. Ну и x64dbg парсит PDB символы с использованием интерфейса DIA, так что .EXE файл не открыть на Linux/OS X с подтягиванием символов. У нас — свой парсер символов.
Еще такой баг, в cmd.exe не вставляет текст из буфера, вернее только один символ. Такое чувство что windows версию вообще не тестировали, т.к. это баг очевидный, или авторы предлагают адреса вручную вписывать? :)
destroy, Вы в какой-то степени правы :) Windows версия находится в стадии тестирования, так как основные ОС это различные представители семейства *NIX, поэтому будем рады любому конструктивному фидбэку (можно в ПМ, можно сразу на github-ссылку проекта в виде багов). Пока что одно из решений не использовать cmd, а к примеру conemu (ответ представителя команды разработчиков twitter.com/Maijin212/status/685879093024440320)
По правде говоря нет. Да и переводом это, увы, сложно назвать, просто копи-паст в машинный переводчик. Смысла переводить все это дело самому на английский я не вижу, т.к. там и так подобных гайдов хватает
Обезвреживаем бомбу с Radare2