Pull to refresh

Comments 32

UFO just landed and posted this here
UFO just landed and posted this here
Вот только на скринах шестая версия
Скрытый текст
image
UFO just landed and posted this here
Ага, там, видимо, и декомпилятор есть, которым вы воспользовались.
Верно, верно, подловили.
Что поделать: откуда у простого студента-выпускника N сотен долларов для оплаты Ильфаку? Первый дистрибутив, который я нашел, был именно этот; тогда я не знал еще ни о бесплатной пятой версии, ни об утечке шестой. «Расширенный инструментарий, предназначенный для закрытого коммерческого использования и лицензированный для антивирусной компании ESET» (Википедия)
я, скорее всего, не использовал. Так что особого финансового ущерба я г-ну Ильфаку не нанес ;) А со временем, буде продолжу пользоваться его продуктом, скорее всего, все же куплю последнюю версию: так, как это произошло с продуктом Лаборатории Касперского.
Года два я пользовался их пробной месячной версией KIS, каждый месяц имея заботы «почистить реестр от ее ключей и переустановить заново» — на третий мне это надоело, и я купил годовую лицензию последней версии. Скоро истекает — куплю еще. :)
Ну для той задачи что в этой статье вполне хватило бы OllyDbg, а он бесплатен.

Более-того reverse-engineering(RE) не заключен только из одной задачи executables -> source. Есть также и другие задачи RE, к примеру:
* Есть некий файл, толи база данных, толи еще что, программы нет. Это тоже RE;
* Есть трафик в сети, программы нет и это тоже RE.
и др.
UFO just landed and posted this here
Ну вы просто Шерлок Холмс, сударь. :)
Мы уже все выяснили. Ida у меня пиратская, так уж вышло. Возможно, я даже снесу ее, поскольку для решения простых задач хватит и Hiew\Olly, а на сложные у меня сейчас времени нет. А карму себе чего портить.

Ну, так… в качестве заключительного слова…
J3QQ4H7H2V2HCH4M3HK86M8VW!
А еще другие реверсеры не любят, когда реверсят их «продукт» и рипают их код. А вообще реверс готового кейгена для последующего переписывания его на другой язык это еще не так интересно как написания с нуля к какому-то крякми (раз речь о легальности).
Не стану спорить, однако в разобранном кейгене собственно кода реверсеров было почти ничего: меня интересовал алгоритм, скопированный ими самими прежде из игры, и в основном я рассматривал его. :)
Да тут материальчик, в общем-то, я целил на самых начинающих, кому интересно, как это все работает. Не так давно я сам таким был. В этом был мой интерес в данном конкретном случае.
Будет время — сделаю что-нибудь более интересное. Вот, к примеру, в разобранном чуть раньше Prehistorik 2 в конце дата сегмента прятался крохотный экзешник, со своим заголовком, таблицей настройки и сегментом кода. Я тогда не стал разбираться, что он делает и как, но без него игра в некоторых местах висла. Возможно, остатки хитрой защиты г-на Змиро из 92-го.
Ну да, только не в случаях когда рипанье заключается в дерганьи правильного кода уже идущего в основном продукте :) Хотя это не случай этой статьи. Хотя согласен с REU — поиск с нуля — самое затратное.
меня интересовал алгоритм, скопированный ими самими прежде из игры

Они не копируют алгоритм, они восстанавливает алгоритм проверки и обращают его так, что бы он генерировал корректные данные.
При первом беглом пролистывании «споткнулся» о последлий листинг. Несколько-секундный шок, в течение которого собирался написать коммент в стиле — «это КАКОЙ плагин в Иде вам такой листинг на псевдокоде выдал?!»

Потом присмотрелся, дошло что написано, удивление прошло :)
Ну да, тут уж без ложной скромности отвечу, что этот простенький плагинчик сидел на стуле за монитором. :D
Да ничем не плох, но разве не лучше читать что-то вроде
wsprintfA(&buffer, "%s-%s-%s-%s", &first_given_string, &second_given_string, first_result_string, second_result_string);

нежели же
wsprintfA(&v13, "%s-%s-%s-%s", &lParam, &v15, v21, v19);

Просто глазу легче читать. Во всех примерах реверсинга с использованием Иды люди переименовывали важные переменные, это естественно — ваш вопрос мне не совсем понятен. :)
Я слишком толст для того, чтобы понимать такие тонкие сарказмы. :(
Может все таки стоит поучить (хотя бы) php?
Ах, это? Да ну, вы бы хоть спросили меня сначала, знаю ли я PHP. Успокойтесь: знаю, у меня на нем диплом написан. РНР, HTML5, jQuery.
А об чем, собственно, речь? Чем вам не нравится ассемблер и bash? :)
Чтобы быть убедительным.
Диплом: трансляция видеопотоков с сетевых камер. VLC, PHP, HTML5. Плюс бесплатный flowplayer.
Скрытый текст
image
image


Просто досуг. Начинал делать веб-конструктор и плеер текстовых адвенчур. Поэтому картинка там не в тему — закончить пока недосуг было. :)
Скрытый текст
image


А это мне как-то захотелось, чтобы меню мультизагрузки GRUB2 было не только графическим, но и горизонтальным. BURG у меня что-то не шел, ну я и…
Скрытый текст
image

Там было довольно смешное, но эффективное решение. Может, я даже о нем расскажу как-нибудь.

Да вы высказывайтесь, высказывайтесь! Времена сейчас у многих тяжелые…
PS но несмотря на блеск и ошеломительную славу, могучую эффективность и поразительный успех применения великого PHP во всех областях, в том числе на заводских станках по обточке дрынов, в детстве моей любимой книгой все равно был не учебник РНР… а вот эта:

Скрытый текст
image
Зачем человеку, который не знает что такое XOR и NOT, изучать реверс-инжиниринг? Пусть сначала основы информатики подтянет.
Столкнулся с проблемой реверса приложения, которое определятся как «автоматически распаковымое» и затруднен процесс отладки в нем (100% вылет или фриз).
Будет ли что-то на предмет такого вопроса материал :)?
Пожалуй, нет в ближайшем времени. Работа и госы все-таки надо сдать. А дампить процесс из памяти уже пробовали?
Нет =), не мастер я в этих вопросах пока
Листинг на баше выкладывать картинкой?
Ах ты маленький бунтарь, мне это нравится
Поясняю. :)
Очень трудно было бы выложить этот листинг в изначально отформатированном виде.
Мне нравится именно этот вид скрипта; здесь же он бы сбился на полукилометровый листинг, где обрезка строк была бы сгруппирована не аккуратно справа, а размешалась бы между строками самого скрипта.
Во-вторых, масштабируемость. Мне почему-то не нравятся листинги, которые нужно листать. Мне кажется, это вызовет отторжение у тех, кому случится их увидеть. Я выбрал оптимальный размер — и все видно, и на весь экран не растягивается.
Как вы думайте? Насколько было бы сложно данную задачу решить с помощью модели нейронных сетей (например, многослойного персептрона)? Сколько образов для обучения понадобилось бы? Насколько сложная конфигурация нейронной сети при этом должна быть?
Sign up to leave a comment.

Articles