시중에 돌아다니는 HTML 프로텍터는 보통 자바스크립트로 암호화 합니다.
대충 이런식으로 됩니다.
<html><head><Meta Name=Encoder Content=HTMLSHIP>
<!--The page is protected by HtmlProtector(Unregistered Version)--><META HTTP-EQUIV="imagetoolbar" CONTENT="no"><noscript><iframe></IFRAME>< language=javascript noscript><script ><!--
kX85="238J\-oi",bQ98="23\@o\/\-\@Jc";0.4216826,lZ2="0.9778532",kX85='\-0MSkHEVBJ7\.\%\n\=\|98qeR\\Ub\&tzh\*5\,6\[\_ZAW\'\"\ \^\@am\;fy\#p\)nFG\<o3\+NTP\{\/2\(iY\$QDI\>uCrgLvwX\?Ol\~s\]\r\}\!K\`4\:1jdcx',bQ98='2\#\{9Ry0\~s\@3d\'u\*\/\!lZ\\I\$\^ea5pL8\)\-F\+\?\%\:\|\r\>EDxT6rj\nGABXQ\"YcN\;tO\ Pim4\(\_\=\<Hz7\&WbqvMUk\]w\}VCng\`S\[o\.JK1fh\,';function xC48(cT51){"238\!\@\/\/\/J",l=cT51.length;'V\:z\;Vii\;u',w='';while(l--)"c3\@\!J\!cJy\,2i",o=kX85.indexOf(cT51.charAt(l)),'V\:\;VkV\;V\.',w=(o==-1?cT51.charAt(l):bQ98.charAt(o))+w;"23cii\@\-co",kX85=kX85.substring(1)+kX85.charAt(0),document.write(w);'V\:z5\;5\;\;\;'};xC48("QBo\;\/zNP8\&\]\r\n\&\rb\$f\&L\&Bo\;\/zN\"\/Djt\$\*S\>\>\+\/di\.\`o\n2b\]N4\&885Md\n\]oN\/\`\]PY\.2i5M\;bN\n\;\]Pd\&8Bbl\+d\n\]oN\/\`\]PY2\.2i5M\.\`o\n2b\]N4\`\]o\`\]Nb\@N2b\]\n\$Y\.2\+BbNa\/2b\`\nNiGY2\.2i5Gx\*EE5l\+Y2\.2i5\+l\.\`o\n2b\]N4\`\]o\`\]Nb\@N2b\]\n\$\]bOP6\n\]oN\/\`\]iG\;bN\n\;\]Pd\&8BbG...~~~
(그냥 아무사이트에서나 퍼온겁니다)
HTML 프로텍터의 원리는 알아볼수없게 암호화해서 저장한뒤 document.write 함수를 이용해서 출력하는것입니다.
그러면 저 함수에 살짝 뻘짓을 해주면 코드를 볼수 있게됩니다.
html의 태그중에 xmp 라는게 있는데 코드를 그대로 보여주는 태그 입니다.
이걸 이용해서
document.write("<xmp>"+w+"</xmp>");
이런식으로하면 코드가 주루룩 나오게 됩니다.
No comments:
Post a Comment