Blog literacki, portal erotyczny - seks i humor nie z tej ziemi
Expandable Menu Applet - cracking in Java
(c) noname/CrackPL'98 Nov 1998
Cel: Expandable Menu Applet [ ENTERCD#1 7/98 ]
Narzędzia: JAD - dekompilator klas JAVY [ http://web.unicom.com.cy/~kpd/jad.html ]
JDK - kompilator JAVY [ http://java.sun.com/ ]
Wstęp:
Dzisiaj przedstawię zupełnie nowe podejście do crackowania, a mianowicie
crackowanie programów napisanych w JAVIE. JAVA zdobywa coraz większą
popularność i możemy się spodziewać coraz większej ilości produkcji napisanych
w tym języku. Po naszej (crackerów) stronie stoi "skłonność" klas JAVY do łatwej
dekompilacji.
A więc zaczynamy:
Program składa się z pliku .exe generującego parametry appletu. Plików
z przykładami i dwóch plików .class (pliki appletu). Kiedy uruchomimy
plik przykładu pierwsze co rzuca się nam w oczy to czarny prostokąt
z napiem "UNREGISTERED" - trzeba coś z tym zrobić.
Dekompilujemy plik ExpandMenu.class (piszemy "jad ExpandMenu.class").
W wyniku uzyskaliśmy plik ExpandMenu.jad. Przeglądarka wyświetla applet
przez wywołanie jego funkcji 'paint()'. Szukamy jej w otrzymanym listingu:
public void paint(Graphics g)
{
offscreenGraphics.setColor(backcolor);
offscreenGraphics.fillRect(0, 0, size().width, size().height);
if(backimgactive)
{
Image image = getImage(backimgURL);
offscreenGraphics.drawImage(image, 0, 50, size().width, size().height - 50, this);
}
offscreenGraphics.setColor(Color.black);
offscreenGraphics.fillRect(0, 0, size().width, 50);
offscreenGraphics.setColor(Color.orange);
offscreenGraphics.setFont(new Font(nodefont.toString(), 3, 10));
offscreenGraphics.drawString("Expandable Menu Applet (unregistered)", 5, 20);
offscreenGraphics.drawString("Copyright ApplePie Software 1998", 5, 40);
Teraz najlepiej usuńmy linie :
[...].setColor(Color.black); <-- ustawienie czarnego koloru
[...].fillRect(0, 0, size().width, 50); <-- narysowanie prostokąta
[...].setColor(Color.orange); <-- ustawienie pomarańczowego koloru
[...].setFont(new Font(nodefont.toString(), 3, 10)); <-- ustawienie czcionki
[...].drawString("Expandable Menu Applet (unregistered)", 5, 20); <-- wiadomo co
[...].drawString("Copyright ApplePie Software 1998", 5, 40); <-- tez wiadomo
Linię:
tree[0].top = 50 + TOPMARGIN;
Zmieńmy na:
tree[0].top = TOPMARGIN;
(Margines 50 pikseli potrzebny był na tekst "unregistered:)
A:
offscreenGraphics.drawImage(image, 0, 50, size().width, size().height , this);
Na:
offscreenGraphics.drawImage(image, 0, 0, size().width, size().height , this);
(Aby tlo zaczynalo sie od samej gory)
Teraz wystarczy skompilować plik ExpandMenu.java ("javac ExpandMenu.java").
Zakończenie:
Autor chce od nas 10 bucksów, a nawet nie zadał sobie trudu, żeby zmienić nazwy
zmiennych na jakieś trudniejsze do zinterpretowania...
Jeśli checsz dalej używać ten program - zapłać za niego (napisz autorowi, ze juz
masz zarejestrowany plik .class i nie musi się fatygować, aby Ci go wysłać... :)