сишься, что левые трояны, вирусы и всякая про ... - Xakep Online
сишься, что левые трояны, вирусы и всякая про ... - Xakep Online
сишься, что левые трояны, вирусы и всякая про ... - Xakep Online
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Input - âñòàâëÿé ñêîðåå!<br />
Òû êàê, íå çàìó÷èëñÿ âñÿêèé ðàç íàáèðàòü êîìàíäó<br />
/trans ïåðåä ââîäèìûì òåêñòîì? Åñëè òâîè<br />
ïàëüöû óæå óñîõëè îò ýòîãî, äàâàé íåìíîãî ïîäðóãîìó<br />
ïîäîéä¸ì ê âîïðîñó êðóòîé ìîäèôèêàöèè<br />
ââîäèìîãî òåêñòà. ß ïðèâåäó ïðèìåð, ñ ïîìîùüþ<br />
êîòîðîãî âåñü ââîäèìûé òîáîé òåêñò ñòàíåò<br />
ôèîëåòîâûì. ×óòü ïîäïðàâèâ íàïèñàííîå, òû<br />
ñìîæåøü ïèñàòü áîëäîì, òåêñòîì ñ ïîä÷¸ðêèâàíèåì,<br />
÷åðåäîâàòü ñòðî÷íûå è çàãëàâíûå áóêâû...<br />
on *:INPUT:#: if ($left($1,1) != /) { msg $active<br />
$chr(3) $+ 06 $+ $1- | halt }<br />
Ïîÿñíÿþ:<br />
if ($left($1,1) != /) - ýòî ÷òîáû óäîñòîâåðèòüñÿ, íå<br />
êîìàíäó ëè ìû íàáèðàåì;<br />
msg $active $chr(3) $+ 06 $+ $1- - îêðàøèâàåì<br />
òåêñò â öâåò, ñ êîäîì 06 (ôèîëåòîâûé, íî ìîæíî<br />
è äðóãîé ïîñòàâèòü);<br />
halt - áåç ýòîãî â êàíàë áû íàïå÷àòàëîñü äâå ñòðîêè:<br />
îäíà îáû÷íàÿ, äðóãàÿ öâåòíàÿ.<br />
Òåïåðü âñ¸, ÷òî òû íàïèøåøü, áóäåò âûñâå÷èâàòüñÿ<br />
â âûáðàííîì òîáîé öâåòå.<br />
Åù¸ âî ìíîãèõ ñêðèïòàõ åñòü ôèøêà - highlight. Ò.<br />
å. òû ïèøåøü îáðàùåíèå ê êîìó-ëèáî, è íèê, åñëè<br />
òàêîâîé ïðèñóòñòâóåò íà êàíàëå, âûäåëÿåòñÿ<br />
öâåòîì èëè åù¸ êàê-íèáóäü.  ìî¸ì ïðèìåðå ê<br />
íèêó ïðèáàâÿòñÿ öâåòíûå ñêîáêè è ïàëî÷êè ïî áîêàì<br />
:). Âûãëÿäèò âðîäå íåïëîõî:<br />
on *:input:#: {<br />
if (/ != $left($1,1)) && ($1 ison #) { say 4-( $+ $1<br />
$+ 4)- $2- | halt }<br />
Ôèëüòðóé áàçàð!<br />
Íå íà âñåõ êàíàëàõ èìåþòñÿ ÷¸òêèå ïîëèñè è ïðàâèëà.<br />
Íî äàæå áåç îáëàäàíèÿ îíûìè, ìîæíî äîãàäàòüñÿ,<br />
÷òî ìàò íå áóäåò ïðèâåòñòâîâàòüñÿ â<br />
ëþáîì ñëó÷àå. Íî ïîñòîÿííî ñëåäèòü çà ïðîèñõîäÿùèì<br />
â êàíàëå è îáúÿñíÿòü êàæäîìó ïðè÷èíó êèêà<br />
èëè áàíà íå õî÷åòñÿ. Çà òåáÿ âñ¸ áóäåò äåëàòü<br />
àâòîìàò, à òåáå ïðèä¸òñÿ ëèøü ïîïîëíÿòü ñïèñîê<br />
áðàííûõ ñëîâ, çà êîòîðûå íàñòóïàåò íàêàçàíèå.<br />
Ìîæíî ïîëíîñòüþ àâòîìàòèçèðîâàòü ïðîöåññ, òàê<br />
÷òî ïðè ïîÿâëåíèè îïðåäåë¸ííîãî òåêñòà â ÷àíå<br />
áóäåò ïðîèñõîäèòü ðàñïðàâà íàä íàðóøèòåëåì :).<br />
È ïîëó÷èòñÿ ó òåáÿ íå IRC-êëèåíò, à ñòàíîê ×ÏÓ :).<br />
Ìû æå ïîñòóïèì íå ñîâñåì òàê: ïðè ïîÿâëåíèå<br />
ìàòà âûñêî÷èò äèàëîã, òèïà “êèêàòü èëè íå êèêàòü<br />
çà ìàò”, ñ óêàçàíèåì ñëîâà, çà êîòîðîå ïðèõîäèò<br />
íàêàçàíèå.<br />
on @*:TEXT:*:#: {<br />
if (íåõîðîøåå ñëîâî isin $1-) || (íåõîðîøåå<br />
ñëîâî-2 isin $1-) || (åù¸ ìàò isin $1-) || (ëîõ<br />
isin $1-) || (áðàííîå ñëîâî isin $1-) {<br />
if ($window(@Ìàò) == $null) {<br />
window -l @Ìàò<br />
}<br />
aline @Ìàò $nick íà $chan ñêàçàë: $1-<br />
! Íàæìè äâà ðàçà ÷òîá êèêíóòü.<br />
}<br />
}<br />
menu @Ìàò {<br />
dclick: {<br />
set %text $sline(@Ìàò,1)<br />
kick $gettok(%text,3,32)<br />
$gettok(%text,1,32) Íå ðóãàéñÿ ìàòîì â íîâîì òûñÿ÷åëåòèè!<br />
(ÏóïåðÑêðèïò)<br />
}<br />
}<br />
ß äóìàþ òóò âïîëíå âñ¸ ïîíÿòíî. Òåáå ïîòðåáóåòñÿ<br />
òîëüêî äîáàâëÿòü ñëîâå÷êè ïî ôîðìå ||(ãàäêîå<br />
ñëîâî isin $1-||. Ýòîò ïðîöåññ ìîæíî åù¸ áîëåå<br />
óïðîñòèòü, ñêëåïàâ íåáîëüøîé PopUps èëè ñïåöèàëüíóþ<br />
ìåíþõó. Ýòî íåñëîæíî. Ñêðèïò òàêæå<br />
óäîáíî þçàòü äëÿ âûÿâëåíèÿ ëþäåé, áîëòàþùèõ<br />
íà êèðèëëèöå, åñëè îíà çàïðåùåíà ïðàâèëàìè<br />
êàíàëà. Èëè äëÿ âûÿâëåíèÿ îôôòîïèêîâ. Ê ïðèìåðó,<br />
íà êàíàëàõ òèïà #windowsnt ñòîÿò ôèëüòðû<br />
íà ñëîâà Linux, Unix, FreeBSD è äðóãèå :). Òû, ê<br />
ïðèìåðó, ìîæåøü âûãîíÿòü ëþäåé çà ñî÷åòàíèÿ<br />
ñëîâ Êðÿêåð èíåòà, íþêè, cracks, warez è äðóãèå.<br />
Þíûå ãåîãðàôû-îòêðûâàòåëè<br />
 ïðîøëîì Õ óæå ïèñàë ïðî îãðîìíóþ ïîëüçó IRC<br />
äëÿ ñú¸ìà äåâîê. Áûëà òàì òàêæå èíôà î òîì, ÷òî<br />
íå âñÿêèå äåâàõè íàì ìîãóò áûòü ïîëåçíû: íóæíû<br />
òå, ê êîòîðûì òû ìîã áû ïîëó÷èòü “ôèçè÷åñêèé<br />
äîñòóï”, ò. å. æèâóùèå â òâî¸ì ãîðîäå :). Íî ñ<br />
ïåðâîãî âçãëÿäà íà õîñò îáúåêòà ñòðàñòåé íå<br />
âñåãäà ÿñíî, îòêóäà ýòî íåáåñíîå ñîçäàíèå, èáî<br />
âûëåòàåò íåêèé àäðåñ 666.666.666.666, êîòîðûé<br />
íèêàê íå õî÷åò ðåçîëâèòüñÿ ïî DNS â ñàìîì<br />
êëèåíòå. Êàê óçíàòü ãäå ãåîãðàôè÷åñêè íàõîäèòñÿ<br />
èíòåðåñóþùèé ñóáúåêò? Íà ñëóæáàõ whois`a åñòåñòâåííî!<br />
Ïî ÷àñòè åâðîïåéñêèõ IP, íàèáîëåå àêòóàëüíî<br />
äàâàòü çàïðîñ íà www.ripe.net, ÷òî ìû<br />
ñîáñòâåííî è ñäåëàåì ïðè ïîìîùè íàøåãî<br />
ñêðèïòà.<br />
Ñíà÷àëà äåëàåì âûñêàêèâàþùóþ ìåíþøêó â<br />
NickList PopUps:<br />
Óçíàòü, îòêóäà îíî (RIPE database):{ set -u10<br />
%iwhois $+ $$1 1 | dns $$1 }<br />
À ïîòîì íàêèäûâàåøü åù¸ êîå-êàêóþ øíÿãó â<br />
Remotes:<br />
on *:dns:{ if %iwhois [ $+ [ $nick ] ] == 1 { /run<br />
http://www.ripe.net/cgi-bin/whois?query= $+ $iaddress<br />
$+ &.submit=Submit+Query<br />
} }<br />
Òåïåðü òåáå îñòà¸òñÿ êëèêíóòü íà íèê þçâåðà â<br />
îáùåì ñïèñêå è íàäàâèòü íà “Óçíàòü îòêóäà îíî”.<br />
Îòêðîåòñÿ áðàçóåð è âûäàñò òåáå îò÷¸ò ïî íóæíîìó<br />
IP, ò. å. ñîîáùèò-òàêè ãåîãðàôè÷åñêóþ ïðèíàäëåæíîñòü<br />
àáîíåíòà :).<br />
Áîðåìñÿ ñ êëîíèðîâàíèåì<br />
Íåñêîëüêî ëåò íàçàä áûëà ìîäíîé àòàêà íà êàíàëû<br />
IRC: ÷åëîâåê çàõîäèë íà êàíàë, è ïðèâîäèë âìåñòå<br />
ñ ñîáîé åù¸ äåñÿòîê êëîíîâ. È êàêîå áåçîáðàçèå<br />
ó÷èíèò ïðèøåäøàÿ botÂÀ, âåäîìî òîëüêî å¸ õîçÿèíó<br />
:).  îñíîâíîì ñ êëîíîâ ø¸ë ôëóä: ïðèâàòàìè,<br />
íîòèñàìè, DCC è CTCP, òåêñòîì ïðÿìî â êàíàëå. È<br />
÷òî ñàìîå ãàäêîå: õîçÿèí ìîã îñòàâàòüñÿ â ïîêîå, ò.<br />
ê. ÎÏû êèêàëè è áàíèëè òîëüêî åãî êëîíîâ, íî íå<br />
åãî ñàìîãî... Äðóãîå äåëî áîòû, çàùèùàþùèå êàíàë.<br />
Êîãäà òû áàíèøü îïðåäåë¸ííûé õîñò - ó áîòîâ<br />
ñðàáàòûâàåò ôèëüòð, êîòîðûé âûêèäûâàåò âñåõ ñ<br />
õîñòà íîí-ãðàòà. Íî áîòû åñòü íå âñåãäà, äëÿ áîòîâ<br />
íóæíû øåëëû è äðàéâåð “ïðÿìûå ðóêè.sys”. Äâå<br />
òðåòè íåáîëüøèõ/ñðåäíèõ êàíàëîâ â ñåðâèñíûõ ñåòÿõ,<br />
âðîäå ÄÀËíåòà, ñóùåñòâóþò âîîáùå áåç áîòîâ.<br />
Òàê ÷òî ñëåäóåò ïîäãîòîâèòü ñîáñòâåííûå ñóïåð<br />
ñêðèïòû :).<br />
 ïîñëåäíèõ âåðñèÿõ mIRC`à åñòü òàêàÿ õðåíü, êàê<br />
IAL (Internal Address List), ÷òî ïîçâîëÿåò õðàíèòü è<br />
èçâëåêàòü âñþ èíôó ïî íàõîäÿùåìñÿ íà òâî¸ì êàíàëå<br />
ëþäÿì. Íî ê ñîæàëåíèþ, IAL íå âûïîëíÿåò<br />
ôóíêöèþ ðåçèäåíòíîãî ñêàíåðà, êîòîðûé áû èçâëåêàë<br />
è õðàíèë èíôó ïî âñåì íàõîäÿùèìñÿ íà<br />
êàíàëå.  ëèñò ïîïàäóò òîëüêî òå, êòî âîø¸ë ïðè<br />
òåáå, ñêàçàë ÷òî-ëèáî, âûøåë... Íî åñòü æå òó÷à<br />
þçâåðåé, êîòîðûå ìîë÷àò ïî ïîë÷àñà! Òàê ÷òî<br />
IAL`îì â ïîëíîé ìåðå, ê ñîæàëåíèþ, ìû âîñïîëüçîâàòüñÿ<br />
íå ñìîæåì, è ïðèä¸òñÿ îïèðàòüñÿ íà<br />
ñîáñòâåííûé ñêðèïò, ïóñòü è îñíîâàííûé íà<br />
äâèæêå IAL.<br />
Ñàìûé ïðîñòîé ñêàíåð - ïðîâåðÿëüùèê ñèäÿùèõ<br />
íà êàíàëå ïðè òâî¸ì âõîäå. Ò. å. òû âëåòàåøü â<br />
÷àí, à â îêîøêå ñòàòóñà óæå áåæèò whois ïî þçåðàì.<br />
Ïîëó÷èë ñïèñîê? Òåïåðü ðó÷êàìè èçó÷àåì<br />
ñîäåðæèìîå, è âñ¸ òåìè æå ðó÷êàìè âûòðÿõèâàåì<br />
ñ êàíàëà êëîíèðîâàííûõ. Âûãëÿäèò øíÿãà òàê:<br />
on me:*:JOIN:#:{ who $chan }<br />
Ëè÷íî ìíå ðåçóëüòàò íå íðàâèòñÿ: ãèìîðíî ýòî.<br />
Ëó÷øå àâòîìàòèçèðîâàòü ïðîöåññ ïðè ïîìîùè<br />
ðàçâ¸ðíóòîãî ñêðèïòà. Ìû âîñïîëüçóåìñÿ<br />
$ialchans è while loops, êîòîðûå ïîÿâèëèñü â âåðñèè<br />
mIRC 5.7, òàê ÷òî ðåêîìåíäóåì òåáå âûêà÷àòü<br />
ñâåæàê (www.mirc.com).<br />
on !*:JOIN:#:{<br />
if ($ialchan($wildsite,$chan,0) > 1) {<br />
echo $chan *** Ñêàíèðîâàíèå êëîíîâ<br />
çàïóùåíî...<br />
var %i = 2<br />
while (%i