26.11.2014 Views

Январь - Xakep Online

Январь - Xakep Online

Январь - Xakep Online

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ÂÇËÎÌ ///// ISSUE<br />

Î ÏÐÀÂÎÉ ÊÍÎÏÊÅ<br />

ß íå ìîãó óñòîÿòü ïåðåä ñàìûì ðàñïðîñòðàíåííûì<br />

ïðèåìîì çàùèòû HTML-ñòðàíèöû. Ýòî áëîêèðîâàíèå<br />

ïðàâîé êíîïêîé ìûøè. Íå çíàþ, ïî÷åìó åãî ñîçäàòåëè<br />

âåðÿò â åãî ýôôåêòèâíîñòü, ïîñêîëüêó, íà ìîé<br />

âçãëÿä, çàùèòèòü îí ìîæåò ðàçâå ÷òî îò ñàìûõ çåëåíûõ<br />

íîâè÷êîâ. À âîò ñîáñòâåííî è ñêðèïò, ïðåïÿòñòâóþùèé<br />

íàæàòèþ êíîïêè ãðûçóíà.<br />

<br />

function click(e) {if (document.all)<br />

{if (event.button == 2)<br />

{alert(message);return false;}}<br />

if (document.layers) {if (e.which == 3)<br />

{return false;}}}<br />

if (document.layers)<br />

{document.captureEvents(Event.MouseDown);}<br />

document.onmousedown=click;<br />

<br />

Äóìàþ ïîíÿòíî, ÷òî îáîéòè òàêóþ çàùèòó ìîæíî<br />

âûáîðîì îïöèè «Ïðîñìîòð â âèäå HTML» â ðàçäåëå<br />

«Âèä» èëè íàæàòèåì ñîîòâåòñòâóþùåé êíîïêè íà<br />

îáû÷íîé êëàâèàòóðå. Ñóùåñòâóåò åùå îäèí ñïîñîá<br />

ïðîòèâ âîðîâ HTML-äèçàéíà. Çíàòîêè ñîâåòóþò èñïîëüçîâàòü<br />

Java-âûçîâ window.open(URL) âêóïå ñî<br />

ñêðèïòîì, áëîêèðóþùèì ïðàâóþ êíîïêó. Ïðè ýòîì<br />

åäèíñòâåííàÿ âîçìîæíîñòü äîáðàòüñÿ äî èñõîäíèêà<br />

— íàæàòèå ãîðÿ÷åé êëàâèøè ëèáî ñïåö-êíîïêè íà<br />

êëàâèàòóðå. Ýòî, ïî ìíåíèþ àíàëèòèêîâ, ìîæåò ââåñòè<br />

ëþäåé â ñòóïîð. Íî ÿ ñ÷èòàþ, ÷òî ïîäîáíûå ïðèåìû<br />

ïîäåéñòâóþò ðàçâå ÷òî ïðîòèâ íîâè÷êîâ.<br />

Íà êîìïàêòå òû íàéäåøü âñå ïðîäóêòû, îïèñàííûå â ýòîé ñòàòüå, à òàêæå<br />

áîíóñ â âèäå òðåõ ïðîãðàìì, çàùèùàþùèõ HTML è ASP-êîíòåíò.<br />

Ðåêîìåíäóþ ïî÷èòàòü íåñêîëüêî ìåòîäîâ çàùèòû êîäà íà<br />

ñòðàíèöå: www.kavkazchat.com/archive/index.php/t-16344.html.<br />

Çäåñü îñíîâíîå âíèìàíèå àêöåíòèðóåòñÿ íà çàùèòå èçîáðàæåíèé,<br />

ïîýòîìó áóäåò íåâðåäíî îçíàêîìèòüñÿ ñî ñòàòüåé.<br />

øèôðîâàíèÿ (ñåêöèÿ , âñÿ ñòðàíèöà, ëèíêè, e-mail’û è ò.ï.).<br />

Ïîñëå ýòîãî ñòîèò óäåëèòü âíèìàíèå JavaScript-âêëàäêàì, êîòîðûå<br />

ïîçâîëÿþò çàïðåòèòü íàæàòèå ïðàâîé êíîïêè, çàïðåò ïå÷àòè<br />

ñòðàíèöû è ò.ï. È íà ôèíàëüíîì øàãå òû ïîëó÷èøü çàøèôðîâàííóþ<br />

HTML-ñòðàíè÷êó. Âñå, êîíå÷íî, çäîðîâî, íî ó ïðîãðàììû åñòü<br />

äâà ìèíóñà. Âî-ïåðâûõ, çà íåå ïðîñÿò àæ 30 çåëåíûõ ïðåçèäåíòîâ,<br />

à âî-âòîðûõ, ðàçìåð HTML-ñòðàíèöû óâåëè÷èâàåòñÿ â 5 ðàç. Çàòî,<br />

êàê îáåùàþò ïðîèçâîäèòåëè øèôðîâùèêà, ëþáîé áðàóçåð ñìîæåò<br />

êîððåêòíî îòîáðàçèòü çàêðèïòîâàííûé HTML.<br />

2 HTML Power (www.pullsoft.com/HTMLPower_SETUP.exe). Ñîçäàòåëè<br />

ýòîãî ïðîäóêòà íàçâàëè HTML Power ñðåäñòâîì êîìïëåêñíîé<br />

çàùèòû ñàéòà. Íà ñàìîì äåëå âîçìîæíîñòè ïðîãðàììû<br />

ìàëî îòëè÷àþòñÿ îò ñîôòèíû Encrypt HTML. Ðàçâå ÷òî<br />

âêëàäêàìè, êîòîðûå ðàñïîëîæåíû íå âåðòèêàëüíî, à ãîðèçîíòàëüíî<br />

:). Âïðî÷åì, òðè îòëè÷èÿ ìíå âñå æå óäàëîñü íàéòè. Ðàçìåð<br />

çàøèôðîâàííîé ïàãè ìåíüøå òîãî, êîòîðûé âûäàâàë êîíêóðåíò<br />

HTML Power — âñåãî â 3 ðàçà áîëüøå èñõîäíîãî. Òàê<br />

æå ìîæíî çàìåòèòü âêëàäêó Meta Tags, â êîòîðîé óêàçûâàþòñÿ<br />

òýãè, íå òðåáóþùèå øèôðîâàíèÿ. Ñêàæåì, çàïèñàë òû â HTML<br />

êîíñòðóêöèþ ß êðóòîé õàêåð è çàõîòåë, ÷òîáû â èñõîäíèêàõ<br />

ñòðàíèöû ýòà íàäïèñü ðèñîâàëàñü ÷èñòûì òåêñòîì.<br />

Ñëåäîâàòåëüíî, âî âêëàäêó ñëåäóåò äîáàâèòü äâà òýãà<br />

è ýôôåêò, êàê ãîâîðèòñÿ, áóäåò äîñòèãíóò :). Êñòàòè,<br />

ïîëåçíî ïðîïóñêàòü òýãè , ÷òîáû ïîèñêîâûå<br />

ðîáîòû óñïåøíî èíäåêñèðîâàëè ñòðàíèöó.<br />

È åùå îäèí ïðèÿòíûé ìîìåíò. Â ïðîãðàììå åñòü âîçìîæíîñòü<br />

óñòàíîâèòü ïàðîëü íà çàøèôðîâàííûé ôàéë. Âïîñëåäñòâèè<br />

ìîæíî âîññòàíîâèòü èñõîäíûé òåêñò ïî ýòîìó ïàðîëþ, âûáðàâ<br />

ñîîòâåòñòâóþùóþ îïöèþ âî âêëàäêå Encrypt Tags.<br />

Ïðîãðàììà, åñòåñòâåííî, ïðîñèò äåíåã, îäíàêî ñïàñèòåëüíûå<br />

êðýêè ëåæàò íà ñîîòâåòñòâóþùèõ ñàéòàõ è æäóò ìîìåíòà àêòèâàöèè.<br />

Íî ÿ òåáå ïðî ýòî íè÷åãî íå ãîâîðèë :)<br />

3 HTML Protector (http://antssoft.fileburst.com/htmlprotector.zip).<br />

Êàçàëîñü áû, ïðîãðàììà ïîõîæà íà óæå îïèñàííûå ïðîäóêòû,<br />

îäíàêî ÿ ñ÷åë íóæíûì îïèñàòü âîçìîæíîñòè HTML Protector’à.<br />

Ïîìèìî âñåãî ïðî÷åãî, ñîôòèíà óìååò çàùèùàòü èçîáðàæåíèÿ.<br />

Çäåñü ïðåäëàãàåòñÿ íåñêîëüêî ìåòîäîâ. Ïðîãðàììà ìîæåò ðàçðåçàòü<br />

ðèñóíîê íà íåñêîëüêî ÷àñòåé, òåì ñàìûì ïðåäîòâðàùàÿ<br />

åãî ñêà÷èâàíèå. Òàê æå ìîæíî ñêîíâåðòèðîâàòü êàðòèíêó â òèï<br />

swf, ÷òî âûçîâåò íåêîòîðûé ñòóïîð ó ïîñåòèòåëÿ (íî íàâåðíÿêà<br />

òîëüêî ó íîâè÷êîâ). È ñàìûé èçëþáëåííûé ìåòîä çàùèòû — äîáàâëåíèå<br />

âîäÿíîãî çíàêà è òðåéäìàðêà íà èçîáðàæåíèå ñ çàäàííîé<br />

ïðîçðà÷íîñòüþ. Ïîìèìî âñåãî ïðî÷åãî, Protector ìîæåò íàëîæèòü<br />

ïîñòîðîííèé ðèñóíîê íà âñå èçîáðàæåíèÿ. Ïîäîáíûé<br />

øåäåâð âðÿä ëè áóäóò èñïîëüçîâàòü íà äðóãèõ èñòî÷íèêàõ. Åñòåñòâåííî,<br />

âî âêëàäêå Input òðåáóåòñÿ çàãðóçèòü âåñü WWW-ñàéò,<br />

âêëþ÷àÿ ðèñóíêè.<br />

ÑËÎÂÎ Î ÑÊÐÈÏÒÀÕ<br />

Âîò òû è íàó÷èëñÿ çàùèùàòü ñâîè web-ïðîåêòû, e-mail àäðåñà è<br />

èçîáðàæåíèÿ. Îäíàêî ñóùåñòâóåò åùå îäíà îïàñíîñòü — êðàæà<br />

ñêðèïòîâ. Ïðåäñòàâü, ÷òî ó òåáÿ åñòü âèðòóàëüíûé ñåðâàê, ãäå òû ïîêàçûâàåøü<br />

ìèðó ñâîé íîâûé PHP-äâèæîê, êîòîðûé äâà ãîäà ïèñàë ñ<br />

íàïàðíèêîì è â êîòîðîì ðåàëèçîâàë êó÷ó íàâîðîòîâ è ñëîæíûõ ôèøåê.<br />

Ñàìî ñîáîé, òû âñåðüåç îïàñàåøüñÿ, ÷òî êàêîé-íèáóäü õàêåðîáäîëáûø<br />

ïðîñòî ïîëîìàåò òâîé ñåðâàíò è óïðåò äîðîãèå ñîðöû.<br />

Ñïåöèàëüíî äëÿ òåáÿ ïðîãðàììèñòû Zend, êîòîðûå, êðîìå âñåãî<br />

ïðî÷åãî, çàíèìàþòñÿ ðàçðàáîòêîé ÿäðà PHP, ñîçäàëè ñèñòåìó<br />

Zend Encoder, êîòîðàÿ ìîæåò èçãîòîâèòü èç ëþáîãî php-ñêðèïòà<br />

áèíàðíûé ôàéë, âûïîëíåííûé ïðè ïîìîùè Zend Optimizer. Ýòà<br />

ñâÿçêà óæå äàâíûì-äàâíî ñòàëà ñòàíäàðòîì äëÿ êîììåð÷åñêèõ<br />

ïðèëîæåíèé è àêòèâíî èñïîëüçóåòñÿ. Ïðè ýòîì ñèñòåìà äîñòàòî÷íî<br />

íàäåæíà, ñòàáèëüíà, è åé äîâåðÿþò ñàìûå äîðîãèå ñêðèïòû<br />

è ïðîãðàììû. Åäèíñòâåííûé ìèíóñ — èñïîëüçîâàíèå ñèñòåìû<br />

ñòîèò äåíåã. Ïîýòîìó äëÿ íàñ ñ òîáîé îíà íå ñëèøêîì ïîäõîäèò.<br />

Ìû âîñïîëüçóåìñÿ äðóãèì çäîðîâûì ðåøåíèåì — ñîôòèíîé<br />

php_screw. Php_screw áåç ïðîáëåì ñêðó÷èâàåòñÿ php_mod’îì è<br />

ïðåêðàñíî øèôðóåò ëþáûå ñöåíàðèè. Apache áåç òðóäà ðàñïîçíàåò<br />

íåïîíÿòíûå èñõîäíèêè, è äàæå åñëè âçëîìùèê ñòàùèò ó òåáÿ<br />

ñòðóêòóðó äâèæêà, òî âîññòàíîâèòü åìó èñõîäíûé êîä áóäåò<br />

î÷åíü ñëîæíî.<br />

Äàâàé ïîòðåíèðóåìñÿ è ïîñòàâèì ñîôòèíêó íà ñåðâåð. Â ïåðâóþ<br />

î÷åðåäü ñêà÷èâàåì php_screw (http://prdownloads.sourceforge.net/<br />

php-screw/php_screw-1.3.tgz) è êîíôèãóðèì ïðîãðàììó. Çàòåì ñëåãêà<br />

èçìåíèì äëèíû êëþ÷åé êîäèðîâàíèÿ â ôàéëå php_screw.h. Ïðîñòî<br />

ïîìåíÿé 5 ÷èñåë íà ëþáûå çíà÷åíèÿ, ÷òîáû òâîè êëþ÷è íå áûëè<br />

äåôîëòíûìè. Ïîñëå ýòîãî ìîæíî ñîáèðàòü ïðîãó êîìàíäîé make.<br />

Òåïåðü íà÷èíàåòñÿ ñàìîå èíòåðåñíîå. Ñêîïèðóé ãîòîâûé ìîäóëü<br />

php_screw.so â êàòàëîã, ãäå íàõîäèòñÿ php (ó ìåíÿ ýòî /usr/lib/php4).<br />

Ïîñëå ýòîãî äîáàâü ñòðî÷êó «extension=php_screw.so» â ôàéë<br />

php.ini (îí íàõîäèòñÿ òàì æå). È íàïîñëåäîê ïåðåçàïóñòè Apache.<br />

Ñ ýòîé ìèíóòû web-ñåðâåð ìîæåò ïîíèìàòü çàøèôðîâàííûé<br />

ïðîãðàììîé php-êîä. Îñòàëîñü òîëüêî ñãåíåðèðîâàòü ïàðî÷êó<br />

ñëîæíûõ ñöåíàðèåâ :). Ýòî äåëàåòñÿ êîìàíäîé «screw /ïóòü/ê/êàòàëîãó/ñêðèïòîâ».<br />

Íî ïîìíè, ÷òî áèíàðíèê screw íóæíî ïðåäâàðèòåëüíî<br />

ñîáðàòü çàïðîñîì make â äèðåêòîðèè tools. Âñå çàêîäèðîâàííûå<br />

ñêðèïòû áóäóò ñîçäàíû â ýòîì æå êàòàëîãå, à îðèãèíàëû<br />

çàïèøóòñÿ ïîä èìåíåì script.php.screw.<br />

ß ïðîâåðèë ýòó øòóêó íà ñâîåì ñåðâåðå, è îíà ìíå î÷åíü ïîíðàâèëàñü.<br />

Ïðàâäà, ó ìåíÿ ïîêà íåò íåîáõîäèìîñòè øèôðîâàòüñÿ, òàê<br />

êàê íà ìîåì ñàéòå ÿ íå äåðæó íè÷åãî êðîìå ïóáëè÷íîãî ôîðóìà<br />

vBuletin. Íî ÿ óâåðåí, ÷òî ó òåáÿ åñòü ïðîåêòû ïîêðó÷å áîðäû :).<br />

ÇÀÙÈÒÈ ÑÅÁß ÑÀÌ!<br />

Âîò è âñÿ ïèùà ê ðàçìûøëåíèþ. Òû ìîæåøü ïðÿìî ñåé÷àñ ñêà÷àòü ñîôò<br />

è ïîëíîñòüþ çàùèòèòü ñâîé ñàéò, à òàêæå âñå php-ñöåíàðèè. Îäíàêî ëó÷øå<br />

íå òîðîïèòüñÿ è ïîäóìàòü î ïðîäóêòèâíîñòè çàùèòû. Ñ îäíîé ñòîðîíû,<br />

íèêòî íå ñïèîíåðèò ó òåáÿ òâîþ «ñîáñòâåííîñòü», à ñ äðóãîé — ñîâñåì<br />

íåîáÿçàòåëüíî øèôðîâàòü âåñü êîä, âåäü ýòî ïðèâåäåò ê óâåëè÷åíèþ<br />

ðàçìåðà ñòðàíèö â 7—10 ðàç. Ðàçóìíåå áóäåò çàùèòèòü îòäåëüíûå ó÷àñòêè<br />

êîäà è âàæíûå èçîáðàæåíèÿ, êîòîðûå ìîãóò áûòü èíòåðåñíû äðóãèì,<br />

ìåíåå óäà÷ëèâûì web-äèçàéíåðàì.<br />

BINARY YOUR’S z<br />

058 XÀÊÅÐ 01 /85/ 06

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!