Что сложнее реверс-инжиниринг: приложение или баночка с апплетом? - PullRequest
1 голос
/ 29 сентября 2011

Что сложнее реверс-инжиниринг: приложение или баночка с апплетом?

Я знаю, что легко получить исходный код Java-приложения, но возможно ли это для

банка с таким апплетом, как этот в этом html?

<HTML>
<HEAD>
</HEAD>
<BODY>
<H3><HR WIDTH="100%">Applet HTML Page<HR WIDTH="100%"></H3>
<P>
<applet code = 'poster' 
archive = 'poster.jar', 
width = 100%, 
height = 700/>
</P>
<HR WIDTH="100%">
</BODY>
</HTML>

Ответы [ 4 ]

4 голосов
/ 29 сентября 2011

Нет никакой разницы, вы можете скачать poster.jar, указав в браузере URL-адрес веб-страницы без указания окончательного имени файла и добавив к нему poster.jar.

Кроме того, вы можете использовать firebug, перейти в представление Net, найти poster.jar, щелкнуть по нему правой кнопкой мыши и выбрать «Копировать местоположение», а затем вставить его в новую вкладку.

После загрузки вы можете просмотреть его.

1 голос
/ 29 сентября 2011

В конце концов, апплет, ссылающийся на файл jar, загрузит этот jar, кроме того, jar в апплете будет общедоступным, поэтому его можно будет загрузить, указав на его URL.

Если вы хотите усложнить реверс-инжиниринг ваших java-пакетов, вы всегда можете использовать обфускацию байт-кода .Существует несколько инструментов (т. Е. ProGuard ).

0 голосов
/ 30 сентября 2011

Я знаю, что легко получить исходный код Java-приложения

Нет, если вы не разместите его в Интернете.

Если вы имеете в виду JAR-файлы, все JAR-файлы можно декомпилировать, хотя вы можете усложнить их через запутывание. Приложение или апплет не имеет к этому никакого значения.

0 голосов
/ 29 сентября 2011

Относительная «сложность» не зависит от того, что является базовым приложением (в случае с Java, конечно), но от того, была ли применена какая-то техника обфускации кода.

...