View Full Version : [Generale] Ingegneria inversa
~FullSyst3m~
05-11-2008, 14:51
Sempre più spesso leggo dell'ingegneria inversa, proprio 30 secondi fa ad esempio ho letto questo (http://www.psp-ita.com/index.php?module=news&id=22457). Quello che mi chiedo è: come si svolge un lavoro di ingegneria inversa su software chiusi, senza codice sorgente disponibile?
cdimauro
05-11-2008, 21:48
Si chiama reverse engineering (ingegneria inversa è assolutamente cacofonico), e serve mooooooooolta esperienza e capacità di analisi.
~FullSyst3m~
05-11-2008, 22:56
Si chiama reverse engineering (ingegneria inversa è assolutamente cacofonico), e serve mooooooooolta esperienza e capacità di analisi.
In italiano si dice cosi, l'ho scritto per "semplicità". Mi affascina comunque questo ramo dell'informatica
Oceans11
05-11-2008, 23:36
In italiano si dice cosi, l'ho scritto per "semplicità". Mi affascina comunque questo ramo dell'informatica
A chi non piace rompere la scatola per vedere come è fatta??? :D
cdimauro
05-11-2008, 23:41
x ~FullSyst3m~. Posso assicurarti che si scrive reverse engineering. Ingegneria inversa è una traduzione orribile che non si usa in ambito professionale.
x Oceans11. Io preferisco costruirmi una scatola che faccia le stesse cose. ;)
~FullSyst3m~
06-11-2008, 00:03
x ~FullSyst3m~. Posso assicurarti che si scrive reverse engineering. Ingegneria inversa è una traduzione orribile che non si usa in ambito professionale.
x Oceans11. Io preferisco costruirmi una scatola che faccia le stesse cose. ;)
E' anche bello studiare le cose altrui però, si può imparare molto. Comunque so che si chiama reverse engineering, l'ho scritto in italiano solo perchè gli articoli che ho letto erano scritti cosi, tutto qua. So che fa schifo come traduzione :D
Sempre più spesso leggo dell'ingegneria inversa, proprio 30 secondi fa ad esempio ho letto questo (http://www.psp-ita.com/index.php?module=news&id=22457). Quello che mi chiedo è: come si svolge un lavoro di ingegneria inversa su software chiusi, senza codice sorgente disponibile?
come si fa? Beh prendi il programma, e lo fai girare su una piattaforma host: il programma passera delle istruzioni al processore e l'host si occuperà di collezionare le istruzioni e cercherà di ricreare il programma originale in formato assembler.
Il problema è che per un determinato bytecode (insieme di bit che vengono eseguiti dal processore) esistono diversi modi di farlo in assembler, e infiniti modi per farlo con un linguaggio di alto livello.
Inoltre il problema non potrà essere mai risolto per davvero: è infatti equivalente a chiedersi se il programma terminerà sempre per ogni input di dati finito, che un teorema ci dice che è una domanda a cui non si può rispondere per un generico programma.
Sempre più spesso leggo dell'ingegneria inversa, proprio 30 secondi fa ad esempio ho letto questo (http://www.psp-ita.com/index.php?module=news&id=22457). Quello che mi chiedo è: come si svolge un lavoro di ingegneria inversa su software chiusi, senza codice sorgente disponibile?
Ottima conoscenza della piattaforma sulla quale gira il software
Più che buona conoscenza di asm
Più che buona conoscenza di strutture varie dei linguaggi di programmazione
Tanta, tanta pazienza e tanto tempo da "buttare via"
~FullSyst3m~
06-11-2008, 09:13
Ottima conoscenza della piattaforma sulla quale gira il software
Più che buona conoscenza di asm
Più che buona conoscenza di strutture varie dei linguaggi di programmazione
Tanta, tanta pazienza e tanto tempo da "buttare via"
Servono studi per poter fare questo o si può fare anche da autodidatta?
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.