REC Studio 4 – обрнутог инжењеринга компајлер

Source: http://www.backerstreet.com/rec/rec.htm

Rec Studio 4 је интерактивни Децомпилер.

Он чита Виндовс, Линук, Мац ОС Кс или сирову извршну датотеку, и покушава да произведе заступљеност Ц-као кода и података који се користи за изградњу извршну датотеку.
Она је дизајниран за читање датотеке производе за много различитих циљева, а то је састављена од неколико система домаћина.

Rec Studio 4 је комплетан препис оригиналног Rec децомпилер. Он користи јаче технике анализе, као што су делимичне Сингле Статиц Ассигнмент (ССА), омогућава утовар Мац ОС Кс датотеке и подржава 32 и 64-битне бинарне датотеке.
Иако је још увек у фази развоја , она је достигла фазу, што га чини много корисније од старог Rec Studio 2.

Rec Studio 2 страници се овде .

Карактеристике

 

Као што је поменуто, Rec ​​студио 4 је још увек у фази развоја. Већина циљне независних карактеристике су завршени, као што су:

  • МултиХОСТ: Rec Studio ради на Windows XP/Vista/7, Ubuntu Linux, Mac OS X .
  • Симболична информације подршка помоћу Dwarf 2 и делимичну признавање Microsoft’s PDB формату.
  • С ++ је делимично признаје: Манглед имена генерисао гцц се деманглед као наслеђивања описано у Дварф2 је почаствована. Међутим, Ц ++ је веома широк и тежак језик, тако да неке функције као што су шаблони неће вероватно бити никада подржати.
  • Врсте и функције прототип дефиниције могу бити наведен у текстуалне датотеке. Неке стандардне ПОСИКС и Виндовс АПИ су већ дати у пакету Rec Studio.
  • Интерактивност је подржан, ограничена на дефинисање секција, етикета и улазних функција поена. Ће морати да се побољша за подршку у-програму дефиницију врсте и параметара функције.

Ова табела показује карактеристике циљне специфични који су до сада реализовани:

 

карактеристика к86 (ИА32) к86-64 мипс ПоверПЦ мц68к АРМ
растављања Готово Готово Готово Готово Готово планиран
ЈП ЦОФФ утоваривач Готово Готово н / а н / а н / а н / а
ЕЛФ утоваривач Готово Готово Готово Готово Готово планиран
ЦОФФ утоваривач Готово н / а н / а н / а Готово н / а
МАЦ ОС Кс платформа Готово Готово н / а планиран н / а планиран
Дварф2 симболична информације Готово Готово Готово Готово н / а планиран
ЦОФФ симболична информације планиран н / а н / а н / а планиран н / а
Позивање конвенције У току У току У току планиран планиран планиран
32 и 64 бита У току У току н / а н / а н / а н / а
Флоатинг-поинт планиран планиран н / а н / а н / а н / а
виндовс за отклањање грешака У току планиран н / а н / а н / а н / а
гдб за отклањање грешака У току У току н / а н / а н / а н / а

Rec извори су не у јавном домену.

Rec извори су не у јавном домену.

Иако РИК може прочитати Вин32 извршни (ака ПЕ) датотеке које производи Висуал Ц ++ или Висуал Басиц 5, постоје ограничења на аутпута. Rec ће покушати да искористе све информације присутан у ЕКСЕ табели симбола. Ако .еке фајл је направљен без отклањања грешака информације, ако је користи база података програм фајл (.ПДБ) или Цодевиев (Ц7) а формата, или ако је омогућена оптимизација опција компајлер, излаз производи неће бити јако добар. Осим тога, Висуал Басиц 5 извршне датотеке су мјешавина потпрограмкода и Форм података. То је готово немогуће да РИК утврдити који је који. Једина опција је да се користи .цмд фајл и ручно одредити која област је број и које подручје података.

У пракси, само C извршне датотеке произвести смислени децомпилед излаз .

Неколико других децомпилерс су доступни из различитих извора. Погледајте моју Реверсе Енгинееринг страници за листу.

Уместо изненађујуће, унутрашња архитектура једног Децомпилер је веома сличан оном компајлера. Висококвалитетни књижевност постоји за обоје. Десигн Напомене страна има информације о проблемима да Децомпилер писац суочава у покушају да декомпајлира мало сложеније програме него једноставним јединица тестова. Декомпилација страна има везе и документацију у вези са децомпилерс уопште.

Докторска дисертација Мике ван Еммерик је значајно напредовала у поље децомпилатион истицањем решења за основне проблеме у децомпилатион бинарних програма.

Цристина Цифуентес ‘Обрнуто Компилација Технике докторска дисертација описује у детаље теорије и спровођење ДЦЦ децомпилер за 8086 ДОС програма.

Вотсит страна има везе са спецификацијама објекат форматима као што су цофф и ЕЛФ.

Неки концепти који се односе на анализу код су покривени на референтном Дебуггер страницама.

Други основне књиге које сам користио приликом развоја су:

  • “Компајлери – принципи, технике и алати”, Ахо, Сетхи, Уллман, 1986: Аддисон-Веслеи Публисхинг ИСБН, 0-201-10088-6.
  • “Напредна компајлер дизајн и имплементација”, Стивен Муцхницк, 1997 Морган Кауфманн Публисхерс ИСБН 1-55860-320-4.
  • “Како дебагери рад – алгоритми, структуре података и архитектура”, Џонатан Росемберг, 1996 Јохн Вилеи анд Сонс, ИСБН 0-471-14966-7.

У дисассемблерс се користе у РИК-а узети су из разних извора. Фајл цопирите у дистрибуцији има списак кредита за сваки од дисассемблерс се користе у РИК-у. Остатак кода је написао сам током последњих 25 година. Ја ћу наставити да се побољша Rec у слободно време, али не могу да гарантујем да ја могу поправити грешке или додати нове функције, процесора или домаћинима.

Одрицање

 

Постоји много расправе о легалности декомпилацију. Децомпилер алати су доступни за различите платформе за дуго времена. Децомпилерс, заједно са другим алатима као што су дебуггерс, бинарних уредника, дисассемблерс итд треба користити само када је власник програма има законско право да поништи инжењер програма.

Утврђено је од стране САД и других земаља судова да је легално користити децомпилерс под фер употреба клаузули ауторским правима.

Да бисте сазнали када је легално користити децомпилер, требало би да прочитате текст на следећим случајевима:

Такође, прочитајте дискусију о легалности коришћења емулатор за покретање бинарни програм на другом домаћину.

Бекер Улица Софтвер не подржава коришћење Реверсе Енгинееринг алата за незаконите сврхе.


Цопиригхт © 1997 – 2015 Бекер улица Софтвер – Сва права задржана.

Историja:

9 март 2011  Верзија 4.0 бета: Комплетна препис на децомпилер за подршку модерније архитектуре (Мацхо фајлове, к86_64).
2. јул 2007  Верзија 2.2: Фиксни Декомпилација сирових двојних звезда преко .цмд фајлова. Делимично спроведено регистер константно ширење. Фиксни многи 68К грешке.
6 мај 2007  Верзија 2.1: додали + серије опцију RecСтудио; користите Ндисасм фор и386; боље изолација увоза података за Виндовс бинариес
20 Нов. 2005  Верзија 2.0д: Више исправке грешака за 68К
6 ауг. 2005  Верзија 2.0ц: Подршка за Линук .о датотеке и побољшана подршка за 68К
15 август 2005  Верзија 2.0б: Одржавање издање. Подршка за Ватцом-саставио двојних звезда и широким гудаче
1 август 2005  Верзија 2.0а: Одржавање издање. Фиксни судара, побољшан квалитет са Виндовс извршних
30 Мај 2005  Верзија 2.0 Виндовс ГУИ и интерактивни Декомпилација
19 ауг. 2000  Верзија 1.6: Додата подршка за СПАРЦ.
16 Март 1999  Верзија 1.5д: Ресторед откривање прекидача (). Додата подршка за биг-ендиан МИПС.
6 Март 1999  Верзија 1.5: Подршка за увоз / извоз информација у Вин95 датотекама; замењени ГНУ дисассемблерс са бесплатним извора; фиксне многе несреће
22 новембар 1998  Верзија 1.4а: Фиксни Уласком када растављање Вин95 фајлова; додати Виндовс прототипе фајлова
15 новембар 1998  Верзија 1.4: Додато претраживач способност у интерактивном режиму, и ХТМЛ страница генерација
30 Јун. 1998 
Верзија 1.3б: Одржавање: фиксни судара и разни проблеми у 68К.
15 фебруар 1998  Верзија 1.3: Додато Моторола 68000 и ПоверПЦ циљеве.
7 децембар 1997  Верзија 1.2: фикед рачунара кориснички интерфејс. Сада можемо учитати 16 бита ДОС извршна. Више исправке грешака.
26 октобар 1997  Верзија 1.1: више мета подршка (386 + Р3000), утовар ЕЛФ и ПЕ фајлова, неколико грешака.
6 октобар 1997  Прилагођено за Виндовс у конзоли моду (Recр4кпц.зип) и да СунОС (Recр4кс4.тар.гз)
20 Нов. 1997  Направљена да Recр4кл.зип доступан.