marți, 7 aprilie 2009

Documente HTML protejate

Astăzi am mai dat de o chestie pe net: documente HTML protejate, din a căror sursă nu poţi înţelege absolut nimic. Da, se pare că există o aplicaţie comercială (Encrypt HTML Pro) care promite că îţi criptează sursele paginilor tale HTML în aşa fel încât acestea să nu poată fi înţelese de curioşii care se uită în surse. Însă acel program are un punct slab: browserele noastre nu înţeleg acel algoritm de criptare, aşa că e nevoie ca metoda de decriptare a acestuia să fie trimisă către browser. Şi dacă tot ajunge metoda de decriptare în calculatorul nostru, de ce să nu ne folosim de ea?

Să luăm spre exemplu o pagină de pe site-ul producătorului aplicaţiei de mai sus, pagină care demonstrează capabilităţile acestei aplicaţii. Dacă ne vom uita în sursa acelei pagini vom vedea multe linii goale, iar spre sfârşitul fişierului vom vedea câteva tag-uri HTML, câteva funcţii JavaScript şi o grămadă de text indescifrabil.

Modul de decriptare a paginii este definit de o funcţie JavaScript, funcţie denumită RrRrRrRr. Principalul impediment este faptul că funcţia este codată cu unescape, dar descifrarea acesteia se face foarte uşor, accesând site-ul http://scriptasylum.com/tutorials/encdec/encode-decode.html. Funcţia JavaScript arată aşa, în formula descifrată:
Această funcţie conţine algoritmul de descifrare al textului criptat, care urmează după câteva linii după funcţie. După vreo două ore de documentare şi încercare de a decripta sursa unei pagini HTML criptată astfel, mi-a venit o idee: rezultatul formulei de decriptare era afişat cu document.write, aflat la capătul funcţiei. Problema principală, însă, era că pagina pe care încercam să o decriptez făcea imediat redirect către o alta. Ideea care mi-a venit a fost să înlocuiesc document.write(tttmmm); cu alert(tttmmm);. Ok, am salvat pe PC pagina cu pricina, am înlocuit respectiva funcţie, am recodat codul din imagine înapoi folosind site-ul de mai sus, am pus codul generat în locul codului din pagina HTML, am încărcat pagina în browser şi... Sursa paginii mi-a apărut în clar prin intermediul unor căsuţe de alertare. Ca să fiu mai uşor de înţeles, voi posta în câteva imagini paşii ce trebuie făcuţi:












2 comentarii :

Mitza_003 spunea...

Interesanta chestia, dar fara folos. Exista programe a caror scop este sa descarce site-uri intregi, cu tot codul sursa si cu toate fiserele site-ului. Exista multe site-uri furate, insa acest lucru nu se va opri aici, evident. :P

Debian spunea...

Da, dar chestia e ca si atunci cand descarci pagina cu un astfel de program continutul acesteia este criptat. Practic, asa e fisierul pe server, decodarea facandu-se pe PC-ul vizitatorului folosind acel cod scris in javascript