реклама на сайте
подробности

 
 
> Декомпиляция прошивки для контроллера 80c186, Необходимо декомпилировать прошивку.
raynocom
сообщение Mar 9 2018, 11:31
Сообщение #1





Группа: Участник
Сообщений: 14
Регистрация: 29-12-17
Пользователь №: 100 878



Нужна декомпиляция прошивки размером 600КБ для контроллера 80с186,кто занимается реверсом пишите в пм.

Оплата достойная.
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 21)
a123-flex
сообщение Mar 9 2018, 15:11
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884



Цитата(raynocom @ Mar 9 2018, 15:31) *
Нужна декомпиляция прошивки размером 600КБ для контроллера 80с186,кто занимается реверсом пишите в пм.
Оплата достойная.

Достойная чего ?


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
smart_pic
сообщение Mar 10 2018, 06:47
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 178
Регистрация: 18-12-10
Из: Ставрополь
Пользователь №: 61 708



прошивки размером 600КБ для контроллера 80с186 - если все верно , то ценник скорее всего будет адекватный размеру прошивки.
Go to the top of the page
 
+Quote Post
=L.A.=
сообщение Mar 10 2018, 07:14
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 794
Регистрация: 4-09-06
Из: Москва(ЗелАО), РФ
Пользователь №: 20 055



Цитата(smart_pic @ Mar 10 2018, 09:47) *
прошивки размером 600КБ для контроллера 80с186 - если все верно , то ценник скорее всего будет адекватный размеру прошивки.

*
Автор программы запросит меньше sm.gif Ну а если автор "пропал" по причине неуплаты, то можно и не напрягаться.


--------------------
-Кто-то работает на совесть, а кто-то на других заказчиков.-
Go to the top of the page
 
+Quote Post
x893
сообщение Mar 10 2018, 07:57
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



Декомпилировать то не проблема,
IDA + http://datasheets.chipdb.org/Intel/x86/801...ts/27243002.PDF

Схема есть ?
Устройство есть ?
Дальше что с мегатоннами букв делать ?
Вот тут то и понадобится сумма оплаты.
Go to the top of the page
 
+Quote Post
baumanets
сообщение Mar 10 2018, 10:50
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 398
Регистрация: 30-12-09
Из: Москва, Зеленоград
Пользователь №: 54 579



Я бы на месте автора, если изделие ходовое, в прошивку встроил бы упаковщик,
который изменяет код, хранимый в ней, например инверсией всех битов.
В итоге, кроме кода упаковщика в лоб ничего декомпилировать не получится.


--------------------
Go to the top of the page
 
+Quote Post
Plain
сообщение Mar 10 2018, 12:28
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



В предыдущих темах автор хотел всего лишь что-то там "отладить" — вполне возможно, что речь о замене пары байт, а теперь выясняется, что на руках у него только объектник.

И кстати, насчёт "декомпилировать" — пока не доказано обратное, бешеной собаке сто вёрст не крюк, 600 КБ в те годы можно было и на ассемблере накатать.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 10 2018, 12:50
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(smart_pic @ Mar 10 2018, 08:47) *
прошивки размером 600КБ для контроллера 80с186 - если все верно , то ценник скорее всего будет адекватный размеру прошивки.

Ну да, только осталось узнать коэффициент адекватности: KB*K=цена. rolleyes.gif
А если прошивка на 90% состоит из картинок и таблиц?

Цитата(Plain @ Mar 10 2018, 14:28) *
И кстати, насчёт "декомпилировать" — пока не доказано обратное, бешеной собаке сто вёрст не крюк, 600 КБ в те годы можно было и на ассемблере накатать.

Глянул один свой исходник тех лет: отношение исходник/exe-шник == ~9 раз. И это с минимумом комментариев и без каких-либо таблиц констант - почти чисто мнемоники.
Думаете ~5.5 МБ реально на асме накатать? laughing.gif
Go to the top of the page
 
+Quote Post
Baser
сообщение Mar 10 2018, 17:03
Сообщение #9


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(jcxz @ Mar 10 2018, 14:50) *
Глянул один свой исходник тех лет: отношение исходник/exe-шник == ~9 раз. И это с минимумом комментариев и без каких-либо таблиц констант - почти чисто мнемоники.
Думаете ~5.5 МБ реально на асме накатать? laughing.gif

Как раз таки, если программа написана на ассме, то восстановить исходный текст гораздо проще. Был опыт дизассемблирования небольшого бутлодера - вполне себе процесс понятно идет. А вот дизассемблировать программу после современного оптимизирующего компилятора Си (если Си++, то еще круче) размером 600К, я бы не стал ни за какие деньги. Ну, разве что только если оплата почасовая, а не сдельная sm.gif
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 10 2018, 17:26
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Baser @ Mar 10 2018, 19:03) *
Как раз таки, если программа написана на ассме, то восстановить исходный текст гораздо проще. Был опыт дизассемблирования небольшого бутлодера - вполне себе процесс понятно идет. А вот дизассемблировать программу после современного оптимизирующего компилятора Си (если Си++, то еще круче) размером 600К, я бы не стал ни за какие деньги. Ну, разве что только если оплата почасовая, а не сдельная sm.gif

Хмм... видимо Вы сами не сильно много писали на асме и не видели, как на нём может быть написано. laughing.gif Опытный человек пишет (и оптимизирует) гораздо лучше любого самого оптимизирующего компилятора. И разобраться в таком высокооптимальном коде будет, имхо, гораздо сложнее, чем в результатах работы любого компилятора. Когда ты хорошо знаешь процессор, то можешь такие финты в алгоритме программы сделать, которые компилятору даже и не снились. И разобраться стороннему человеку будет в них очень сложно.
А компилятор поступает стандартно - одинаковые соглашения вызова, стандартные способы оптимизации и т.п. - более менее всё повторяется во всех функциях - имхо гораздо проще разобраться. Так как компилятор не может по своему усмотрению оптимизировать алгоритм работы программы, только код. А человек - может, и может такое завернуть в целях оптимизации, что мало не покажется. rolleyes.gif
Конечно я не говорю про декомпиляцию до уровня исходного кода на языке, на котором писался исходник, а только до асм-исходника. Но вроде ТС и не говорил ничего до получения исходного кода на языке, на котором была написана программа. Так как он даже не указал какой язык его интересует.
Как можно предположить из исходного сообщения (опять как всегда включаем экстрасенсорные способности), его интересует только исходный код на любом языке, который после компиляции его в прошивку даст результат аналогичный (по функционированию) оригиналу.

PS: А может там исходник вообще был написан на бейсике и не оптимизирован никак. Помню когда в стародавние времена компилил исходник написанный на каком-то бейсике, то результат компиляции был просто - последовательностью вызова ограниченного набора фиксированных готовых функций с передачей им аргументов. Т.е. - каждый оператор бейсика - это готовая функция в библиотеке, принимающая набор аргументов по указателям. Называлось такое насколько помню: "шитый код". И декомпилировать такое - плёвое дело.

Да и размер выходного образа после любого высокоуровневого компилятора как правило больше, чем после ассемблера (менее плотный код). Так что 600КБ после ассемблера - это совсем не то, что 600КБ после си.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Mar 10 2018, 18:04
Сообщение #11


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Baser @ Mar 10 2018, 19:03) *
Как раз таки, если программа написана на ассме, то восстановить исходный текст гораздо проще. Был опыт дизассемблирования небольшого бутлодера - вполне себе процесс понятно идет. А вот дизассемблировать программу после современного оптимизирующего компилятора Си (если Си++, то еще круче) размером 600К, я бы не стал ни за какие деньги. Ну, разве что только если оплата почасовая, а не сдельная sm.gif

600k - это детский лепет. В одной пиратской конторе с которой мне приходилось иметь дела такую работу поручали одному хакеру на месяц. И получал тот хакер в месяц чуть больше 500 евро.

Программы на C и С++ ломать легче поскольку они оперируют строго одними и теми же шаблонами и жестко придерживаются соглашений о вызовах. IDA такие тексты чуть ли не обратно в C с легкостью преобразует.
А человек на асме пишет архаично, не соблюдает соглашений о вызовах, меняет стиль, особенно если коллективная работа, делает нерациональный код, т.е.создает больше низкоуровнего мусора.
Поэтому такой код дизассемблировать гораздо труднее.
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Mar 10 2018, 18:10
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Я писал для С186 на Паскале, размер 256К (2 EEPROM на 128К), было два логических устройства на плате.
Никогда бы не взялся за реверс sm.gif


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
a123-flex
сообщение Mar 10 2018, 18:47
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884



Цитата(AlexandrY @ Mar 10 2018, 22:04) *
600k - это детский лепет. В одной пиратской конторе с которой мне приходилось иметь дела такую работу поручали одному хакеру на месяц. И получал тот хакер в месяц чуть больше 500 евро.

Я общался с ТС первый раз несколько недель назад, еще когда он искал отладчик.
Товарищ абсолютно неадекватен - я ему тогда в 5 постах объяснял, что нужно вытаскивать из ПЗУ бинарий, и дисасемблировать - дошло до него это через 3 недели.

"По поводу отладки c188.
Тут разбирались по поводу выполнения нашей задачи.
Возможно все решить и без отладки вообще.У нас есть прошивка и она не зашифрована.
Необходимо в ней найти обработчик команд,добавить в нее код для выполнения нашей команды по сценарию.
По сути проблема решается без отладки,одной прошивкой.
Протокол известен он работает в ASCII и не зашифрован."

Я предложил сделать эту работу за 200к. Парень исчез. Лично по моим ощущениям - ТС - абсолютно безграмотный неадекват, такое ощущение, что очень молодой, и совершенно не понимающий ни задачи, ни ее стоимости.

По моим ощущениям это школяр, который где-то надыбал работу, за которую ему обещали каких-то денег, и теперь он пытается ее хитро сделать забесплатно чужими руками, и уже даже немного преуспел - раз у него теперь на руках прошивка. Судя по разговору сам он на такое неспособен.

bb-offtopic.gif
По моим ощущениям, в электрониксе таких заказчиков примерно 50%. Поэтому мой рецепт - всякая работа должна начинаться с аванса. Отлично отсеивает.

Лет 10 назад я дисасемблировал прошивку 8-битного микроконтроллера размером то ли 12, толи 20 кб.
Правда я полностью восстанавливал алгоритм. Но помню, потратил ОЧЕНЬ много времени, вчистую, наверно больше 2 месяцев.

Цитата(AlexandrY @ Mar 10 2018, 22:04) *
600k - это детский лепет. В одной пиратской конторе с которой мне приходилось иметь дела такую работу поручали одному хакеру на месяц. И получал тот хакер в месяц чуть больше 500 евро.
А у вас не осталось контактов кого-нибудь из ваших товарищей по той конторе ?
Я так понимаю ваш пост, что вы, как и те ваши товарищи, готовы восстановить 600к бинариев 16-битного процессора за 500$ Или хотя бы за 1000$, или за 2000$ ? И за 1 месяц ?

Если это так, думаю у вас с этим парнем будет любовь, как и с 50% заказчиков этого форума - тк вы абсолютно вне конкуренции.

Цитата(jcxz @ Mar 10 2018, 16:50) *
Думаете ~5.5 МБ реально на асме накатать? laughing.gif
Все реально.
Я видел ПЛИС, прошивка которой была нарисована вручную в графических примитивах (в логике, еще в foundation), текстовый файл исходника весил 5 МБ.
Она почти всегда работала biggrin.gif

Когда размер файла увидел, глазам не поверил.


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Mar 10 2018, 18:56
Сообщение #14


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(a123-flex @ Mar 10 2018, 20:47) *
А у вас не осталось контактов кого-нибудь из ваших товарищей по той конторе ?
Я так понимаю ваш пост, что вы, как и те ваши товарищи, готовы восстановить 600к бинариев 16-битного процессора за 500$ Или хотя бы за 1000$, или за 2000$ ? И за 1 месяц ?

Нет, я просто хотел напомнить, что хакеры - это низшая ступень разработчиков.
Браться за такое означает полностью потерять веру в свои силы или еще ее не иметь.

Go to the top of the page
 
+Quote Post
x893
сообщение Mar 10 2018, 19:16
Сообщение #15


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



А ТС сидит на берегу моря и посмеивается, смотря на упражнения в телепатии.
Go to the top of the page
 
+Quote Post
a123-flex
сообщение Mar 10 2018, 19:35
Сообщение #16


Профессионал
*****

Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884



Цитата(AlexandrY @ Mar 10 2018, 22:56) *
Нет, я просто хотел напомнить, что хакеры - это низшая ступень разработчиков.
Интересно было бы услышать такое высказывание на black hat. И еще интереснее было бы посмотреть, как вас там будут разделывать как цыпленка. Среди хакеров есть как полные дегенераты, так и высочайшие профессионалы программирования. У них просто другая специализация, и то что вы хороший разработчик, вовсе не значит что вы будете гениальным хакером. Или хоть каким-то)

Цитата(AlexandrY @ Mar 10 2018, 22:56) *
Браться за такое означает полностью потерять веру в свои силы или еще ее не иметь.
нюню

Цитата(x893 @ Mar 10 2018, 23:16) *
А ТС сидит на берегу моря и посмеивается, смотря на упражнения в телепатии.
возможно. но острее от этого он не станет wink.gif

Кроме того, если вы собираетесь брать заказы, вы должны быть телепатом хотя бы настолько, чтобы уметь отличить заказчика настроенного на работу, от бесштанного пустозвона. Свое резюме в данном случае я надеюсь понятно озвучил.


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
baumanets
сообщение Mar 10 2018, 20:27
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 398
Регистрация: 30-12-09
Из: Москва, Зеленоград
Пользователь №: 54 579



Цитата(AlexandrY @ Mar 10 2018, 21:56) *
Нет, я просто хотел напомнить, что хакеры - это низшая ступень разработчиков.
Браться за такое означает полностью потерять веру в свои силы или еще ее не иметь.


Цитата(a123-flex)
А у вас не осталось контактов кого-нибудь из ваших товарищей по той конторе ?
Я так понимаю ваш пост, что вы, как и те ваши товарищи, готовы восстановить 600к бинариев 16-битного процессора за 500$ Или хотя бы за 1000$, или за 2000$ ? И за 1 месяц ?
Нет, я просто хотел напомнить, что хакеры - это низшая ступень разработчиков.
Браться за такое означает полностью потерять веру в свои силы или еще ее не иметь.


Давным давно, в студенческие годы, когда солнце было ярче, трава зеленее, а девушки краше, дали мне преподаватели задачу.
Сказали, как хочешь, так и решай, нам нужен результат.
Я её решил через восстановление исходного кода программы другого студента, написанной на BCB 6.0.
После этого дописал, нужные по т.з. функции вычисленя хэшей и задача была решена.
С тех пор много воды утекло, программированием своего заниматься куда интересней чем исследованием чужого.
Здесь я соглашусь с AlexandrY .

Но преподаватели до окончания ВУЗа меня одного с компьютерами кафедры больше не оставляли :-)

Кстати, если следовать терминологии, хакеры - специализируются на сетях.
На взломе ПО специализируются крэкеры.
А восстанавливают код реверсеры, или реверс-инженеры.
Так, что написание кода - это стезя программиста, а восстановление - это инженерия !


--------------------
Go to the top of the page
 
+Quote Post
a123-flex
сообщение Mar 10 2018, 20:50
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884



Цитата(baumanets @ Mar 11 2018, 00:27) *
Я её решил через восстановление исходного кода программы другого студента, написанной на BCB 6.0.
После этого дописал, нужные по т.з. функции вычисленя хэшей и задача была решена.

Если честно, сам я с IDA имел дело единственный раз в жизни, тогда с 8 битником, больше нужды не было.
И чуть не умер от нее от счастья - такая она крутая и удобная для работы...
А вот любопытно, у вас IDA случаем С++ функции из ВСВ не восстанавливала ?

Я видел рекламу, в которой написано что она такое умеет, но сам такую версию не нашел blush.gif.


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
x893
сообщение Mar 10 2018, 21:48
Сообщение #19


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



Простенький пример полезности IDA
http://akb77.com/g/stm32/fix-jlink-ob-09262016/
Go to the top of the page
 
+Quote Post
baumanets
сообщение Mar 10 2018, 22:06
Сообщение #20


Местный
***

Группа: Свой
Сообщений: 398
Регистрация: 30-12-09
Из: Москва, Зеленоград
Пользователь №: 54 579



Цитата(a123-flex @ Mar 10 2018, 23:50) *
Если честно, сам я с IDA имел дело единственный раз в жизни, тогда с 8 битником, больше нужды не было.
И чуть не умер от нее от счастья - такая она крутая и удобная для работы...
А вот любопытно, у вас IDA случаем С++ функции из ВСВ не восстанавливала ?

Нет. Лет 10 назад не восстанавливала. То, что вы ждёте и сейчас в ней, скорее всего нет.
Потому, что:

Серебряной пули нет (с) Фредерик Брукс

У виндовых исполняемых файлов код с данными это половина беды.
Другая половина ресурсы: менюшки всякие, кнопки и т.д.
Для ресурсов есть свои программы. Для определения связей ресурсов и кода - свои.
С Борландом как-то попроще. Находишь точки входа обработчиков,
определяешь математические функции обычные fadd, fsub, fsin, fcos, fxch, fld , fstp
сопроцессор - по сути обычный инженерный калькулятор внутри процессора.
С интеловским компилятором и его оптимизациями код был бы не настолько читаемым.

Цитата(a123-flex @ Mar 10 2018, 23:50) *
Я видел рекламу, в которой написано что она такое умеет, но сам такую версию не нашел blush.gif .

Это версия с плагином Hex Rays, анализ облегчает, но без кропотливой ручной работы не соберётся и не заработает.
Начали выпускать, по-моему в 2008-м.


--------------------
Go to the top of the page
 
+Quote Post
a123-flex
сообщение Mar 10 2018, 22:52
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884



Цитата(x893 @ Mar 11 2018, 01:48) *
Простенький пример полезности IDA
http://akb77.com/g/stm32/fix-jlink-ob-09262016/

она прекрасная rolleyes.gif

Цитата(baumanets @ Mar 11 2018, 02:06) *
Начали выпускать, по-моему в 2008-м.
Цитата(baumanets @ Mar 11 2018, 02:06) *
Нет. Лет 10 назад не восстанавливала.

здесь нет противоречия ?)

Цитата(baumanets @ Mar 11 2018, 02:06) *
Это версия с плагином Hex Rays, анализ облегчает, но без кропотливой ручной работы не соберётся и не заработает.
Точно HexRays.
Кто спорит. Но анализ - то проще раз в 1000, не так ли - не шариться в системных вызовах, а сразу разглядывать user function ?)


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
baumanets
сообщение Mar 10 2018, 23:10
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 398
Регистрация: 30-12-09
Из: Москва, Зеленоград
Пользователь №: 54 579



Цитата(a123-flex @ Mar 11 2018, 01:52) *
она прекрасная



Никак на женский образ запал? biggrin.gif

Анализ стандартного неоптимизированного кода проще.
Оптимизированного - уже нет.
Ассемблерного - тем более.
Я скармливал иде программу, написанную на масме и уже hex rays затыкался.
Всё, что описано на диалектах microsoft, borland, gnu и др. общеизвестных авторы поддерживают.
Всё остальное - нет.
Но это только для x86-х.
А простые проги PIC16F84 дизассемблировал руками, IDA косячила.
Потом написал движок дизасма, чисто ради интереса.

Вывод таков, если софт написан на чём-то магистральном на котором пишут миллионы - анализировать проще.
Если какой-то редкий компилятор, то скорее всего плагинов к иде под него не будет или будет косячный,
как с первыми версиями PIC-ов.


--------------------
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 03:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.02082 секунд с 7
ELECTRONIX ©2004-2016