Is it possible to reverse engineer obfuscated bytecode back to source code?

Detta är en Kandidat-uppsats från KTH/Hälsoinformatik och logistik; KTH/Hälsoinformatik och logistik

Författare: Gustav Smedberg; Jenny Malmgren; [2020]

Nyckelord: ;

Sammanfattning: AbstractThere are a lot of old software in the world that has not been supported or kept up todate and would need to be updated to seal security vulnerabilities, as well as to updatefunctions in the program. In those cases where the source code has been lost ordeliberately deleted, would it be possible to use reverse engineering to retrieve thesource code?This study aims to show what java bytecode is and how it is used, as well as how oneis able to go from java bytecode back to source code in a process called Reverse Engineering.Furthermore, the study will show previous work in reverse engineering,in obfuscation and to explain further details about what Java Virtual machine,bytecode and obfuscation is and how they work. Three programs of various complexityare made into bytecode and then obfuscated. The difference between the originalcode and the obfuscated code are then analyzed.The results show that it is possible to reverse engineer obfuscated code but someparts. Obfuscation does protect the code, as all the variable names are changed andevery unused method are removed, as well as some methods changed to non-conventionalways to program.KeywordsReverse engineering, Java, JVM, bytecode, obfuscation, safety.

  HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)