C++ dekompilátor ?

HackForum

C++ dekompilátor ?#
Ahoj, chtěl sem se zeptat jestli existuje nějaký způsob jak získat z aplikace napsaný v C++ zpátky zdrojový kód ? Díky za odpovědi.
(odpovědět)
Letadlo | E-mail7.3.2010 13:34
re: C++ dekompilátor ?#
zdrojovy kod neziskas... jedine mozes pouzit disassembler
(odpovědět)
n | 147.175.106.*8.3.2010 13:47
re: C++ dekompilátor ?#
Jestli je možné sestrojit ke strojáku (přibližně, úplně přesně to nejde.) ekvivalentní C++ zdroják, je spíš pěkná filozofická otázka.

S nějakými obtížemi ze strojového kódu jde vytvořit ekvivalentní C zdroják. C++ možná taky, ale už by to asi bylo hodně ošklivé...

Pěkně vypadá tento projekt: [link]
(odpovědět)
mr.Crow. | 213.211.34.*8.3.2010 13:54
re: C++ dekompilátor ?#
Plugin HexRays do IDY nevypada taky spatne, viz obrazky: [link] (ano, zaroven je to i mensi reklama, jiste odpustite :-))
(odpovědět)
DjH_ | 193.165.154.*10.3.2010 0:04
re: C++ dekompilátor ?#
Jestli existuje rozumny zpusob nebo ne zalezi na mnozstvi provedenych optimalizaci. U starsich hloupych prekladacu to slo bez vetsich problemu.

Kdyz nevis, co ten ptrogram dela, tak ti mohou pomoci zapomenute ladici informace. Napovi i seznam pouzitych knihoven, systemovych volani nebo ulozene retezce.

Kdyz vsechno selze musi nastoupit clovek a rucne to debugovat. Neni od veci si pred tim nastudovat nebo vyzkouset, jak se prekladaji nektere objektove konstrukce.

S pomoci strace, kterym si urcis zajimave casti kodu, a disassembleru se da zvladnout takovy neuplny preklad za jeden vecer.

(odpovědět)
tft | 85.160.37.17/127.0.0.*10.3.2010 0:38
re: C++ dekompilátor ?#
Ahoj, chtěl sem se zeptat jestli existuje nějaký způsob jak získat z aplikace napsaný v C++ zpátky zdrojový kód ? Díky za odpovědi.

Zrejme Ti jde o ziskani zdrojoveho kodu, z ktereho byl program sestaveny - to mozne neni (ani teoreticky).

Existuji nejake decompilery, ktere binarku prelozi do C, ale vysledek logicky bude uzitecny mozna tak pro lepsi pochopeni toho, jak program funguje.

V binarce se neuchovavaji nazvy promennych, funcki, komentare a ani nemuze jit jednoznacne urcit, jak byla ktera konstrukce vyjadrena v puvodnim zdrojovem kodu, takze nejspis to, co hledas, neexistuje.
(odpovědět)
independent_ | 89.24.65.*10.3.2010 11:56
re: C++ dekompilátor ?#
V binarce se neuchovavaji nazvy promennych, funcki, komentare a ani nemuze jit jednoznacne urcit, jak byla ktera konstrukce vyjadrena v puvodnim zdrojovem kodu, takze nejspis to, co hledas, neexistuje.

To nemas tak docela pravdu, treba v linuxu jsou bezne ulozeny v binarce treba jmena a pozice funkci.
(odpovědět)
tft | 85.160.0.223/127.0.0.*11.3.2010 19:00
re: C++ dekompilátor ?#
Nejsou to jen jmena tech funkci, co se v programu volaji z nejake sdilene knihovny?

Neumim si vysvetlit, jak by se do binarky ty udaje dostaly a k cemu by byly dobre.
(odpovědět)
independent_ | 89.24.34.*11.3.2010 19:14
re: C++ dekompilátor ?#
Dostanú sa tam kompilátorom a dobré sú na debugovanie.

Väčšinou sú však binárky stripnuté, takže nič.
(odpovědět)
myself | 78.128.195.*19.3.2010 13:28
re: C++ dekompilátor ?#
Uz jsem byl upozornen, ze pri kompilovani binarky urcene pro debuggovani, jsou do ni tyto udaje pridavany.

Nevedel jsem, ze existuje presna norma rikajici, jak maji byt nazvy ulozeny, aby debugger vedel, kde je hledat. Kdyby neexistovala, opravdu by takove informace byly zbytecne..
(odpovědět)
independent_ | 89.24.246.*19.3.2010 18:07
re: C++ dekompilátor ?#
Kdyz kompilujes binarku pro debugovani, tak se tam tech informaci ulozi daleko vic. Pri beznem kompilovani jich tam neni tolik. A po stripnuti je jich tam jeste mene.

(odpovědět)
tft | 85.160.44.14/127.0.0.*19.3.2010 20:31
re: C++ dekompilátor ?#
Zrejme Ti jde o ziskani zdrojoveho kodu, z ktereho byl program sestaveny - to mozne neni (ani teoreticky).

Existuji nejake decompilery, ktere binarku prelozi do C, ale vysledek logicky bude uzitecny mozna tak pro lepsi pochopeni toho, jak program funguje.


To by mi možná stačilo :)
Ale opravdu nemůžu žádný takový program nikde najít :(
(odpovědět)
Letadlo | E-mail19.3.2010 21:59
re: C++ dekompilátor ?#
co Boomerang?
[link]

Nikdy jsem ho nezkoušel, ale je to jediná snaha vytvořit fungující dekompilátor, o jaké jsem kdy slyšel.
(odpovědět)
mr.Crow. | 213.211.34.*20.3.2010 16:50
re: C++ dekompilátor ?#
Vypadá to dobře, ale je tam jaksi problém s kompatibilitou pro Windows XP.

(odpovědět)
Letadlo | E-mail17.4.2010 21:35

Zpět
 
 
 

 
BBCode