Çevrimiçi | ProxyKiller 3
Evet daha onceki network sürümünün etkisi ve kullanimdaki zorlukları aşmak için
entegre edilebilir bir versiyon yazdim.. aslinda bir havuz da kullananların taradıgı iplerin bilgisini
toplamak niyetim vardı..
fakat bir "arkadasımız"ın projemizdeki fikrimizi bilerek tam olarak olmasada benzer birsey yapması sebebiyle..
bu fikirden vaz gectim.. umarım fikirlere saygılı dostlar kazanırız.. bu eglenmek için yaptıgım hobi
neyse..
bu proxy-sock[4-5] tarayıp, bulan, kayıt eden ve banlamaya yarayan bir kod..
açıklaması içinde 2-3 ayarla direk scriptinizde yada botunuzda kullanabilirsiniz..
kod icindeki şu bölümleri ayarlayarak kullanabilirsiniz..
aklınıza takılan ne varsa konu içinde sorabilirsiniz.. iyi eglenceler..
TestServer=irc.chatfox.net
TestServerIP=107.161.19.71
KontrolPort=80 8080 1080 3124 3127 3128 8000 9050 443
bazi cok kullanilan portlar
Ban=1
0 Echo | 1 Gzline
0 yalnizca ekrana yansitacaktir eger asagidaki log aciksa kayit alacaktir.
Log=1
bu deger 1 olursa gunluk bulunan proxyler kayit olacaktir
kayit islemi gun-ay-yil.txt olarak kayit edilir.
Komut=GZline
;socker botlar için orn: "sockwrite -tn bot_adi kline" Kod: Kodu kopyalamak için üzerine çift tıklayın! [ProxyKiller]
TestServer=irc.chatfox.net
;proxy olarak giris denemesi yapilacak server (aktif olmali)
TestServerIP=107.161.19.71
;giris denemesi yapilacak server'in ip daresi (bilmiyorsaniz /dns irc.serveradi.com)
KontrolPort=80 8080 1080 3124 3127 3128 8000 9050 443
;favori portlar yukaridadir
;ve bazi cok kullanilan portlar
;1046 1080 1182 1183 1184 1188 1214 1278 1279 1745 1795 2124 2172 2173 2174 2175 2301 3128 3124 3127 3743 4095 4480 4747 5463 6588 8080 8000 8001 8118 8888 8922 9090
Ban=1
;0 Echo | 1 Gzline
;0 yalnizca ekrana yansitacaktir eger asagidaki log aciksa kayit alacaktir.
Log=1
;bu deger 1 olursa gunluk bulunan proxyler kayit olacaktir
;kayit islemi gun-ay-yil.txt olarak kayit edilir.
Komut=GZline
;socker botlar için orn: "sockwrite -tn bot_adi kline"
Version=3.0SE
;surum numarasi
Ahuthor=CoCoRiCo/Umit*GUNDUZ
;yapimci hicbir yerde ban yada mesajda yer almaz.
;emege saygi gosterip silmeyiniz.
[/ProxyKiller]
/*
####################################################
sisteminize entegrasyon için öneriler:
serverinize giriste gorunen ip adreslerini (1.1.1.1) formatinda
olacak bicimde $sok(1.1.1.1) kodunu snotice event'iniza ekleyin
Elle tarama icin /sok 1.1.1.1 8080
dokumandan yani txt dosyasindan taramak icin
/prx dosyaadi.txt
dosya icindeki proxyler asagidaki bicimlere uygun olmalidir
101.255.17.244:1080
103.16.112.137[bosluk]1080
103.16.112.137[tap]1080
eger genel olarak bir arama baslatmak isterseniz
ki bu normal giren kullanicilari tarama esnasinda calisabilir
/pbul 95.0.0.0
bu komut ile 95.255.255.255 araligindaki tüm iplerde proxy arayacaktir.
arama islemi port sayisina gore bir zaman belirlenmistir, boylelikle
her IP icin 25 format ve 5 formasyon(proxy,sock4,sock5 vb) deneyecektir
bu islem cok uzun surebilir, ancak kesin calisan ve anlik aktif proxyleri bulmanizi saglar.
####################################################
*/
;ban ayari ve log islevi
alias banz {
$iif($conf(Ban) = 1,$conf(commandline),echo 3) $+(*@,$sock($1).ip) $+($tip($1),$regsubex($sock($1).ip,/(\d+$)/i,$+($str(*,$len(\t)),:,$+(*@,$sock($1).port))))
if $conf(log) { write $+($replace($date,/,-),.txt) $+($sock($1).ip,:,$sock($1).port) }
sockclose $1
}
;ip araligi
alias pbul {
if $regex(ip,$1,/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g) {
if $gettok($1,1,46) < 1 { echo ** Hatali ip.. Class A "1" den dusuk olamaz. orn: 1.0.0.0 | return }
set %d¨ $gettok($1,4,46) | set %c¨ $gettok($1,3,46) | set %b¨ $gettok($1,2,46) | set %a¨ $gettok($1,2,46)
}
$iif(!%d¨,set %d¨ 0)
;class D
$iif(!%c¨,set %c¨ 0)
;class C
$iif(!%b¨,set %b¨ 0)
;class B
$iif(!%a¨,set %a¨ 1)
;class A
if %d¨ < 256 { inc %d¨ }
if %d¨ == 256 && %c¨ < 256 { inc %c¨ | unset %d¨ }
if %c¨ == 256 && %b¨ < 256 { inc %b¨ | unset %d¨,%c¨ }
if %b¨ == 256 && %a¨ < 256 { inc %a¨ | unset %b¨,%c¨,%d¨ }
if %a¨ == 256 && %a¨ < 256 { inc %a¨ | unset %b¨,%c¨,%d¨ }
if %a¨ == 255 && %b¨ == 255 && %c¨ == 255 && %d¨ == 255 { echo : IP Tamamlandi | unset %*¨* }
$iif(!%d¨,set %d¨ 0)
$iif(!%c¨,set %c¨ 0)
$iif(!%b¨,set %b¨ 0)
$iif(!%a¨,set %a¨ 1)
sok $+(%a¨,.,%b¨,.,%c¨,.,%d¨)
titlebar :Sock&Proxy Araniyor: $+(%a¨,.,%b¨,.,%c¨,.,%d¨)
.timer_ipc 0 4 pbul
}
alias prx {
;/prx dosya.txt
;> 1.1.1.1 3128
if $1 { var %dos $1 }
var %i 0
while %i < $lines(%dos) {
inc %i | sok $replace($read(%dos,%i),:,$chr(32),$chr(9),$chr(32))
}
}
;baglanti baslatici
alias sok {
if $regex($2,/(\d+)/) {
var %typ $iif( $gettok(%port,%i`,32) == 443,sockopen -e,sockopen)
if $gettok(%port,%i`,32) == 9050 {
%typ $+(Tor~,$1,:,$2) $1 $2
}
%typ $+(sock4~,$1,:,$2) $1 $2
%typ $+(sock5~,$1,:,$2) $1 $2
%typ $+(proxy~,$1,:,$2) $1 $2
%typ $+(proxyGet~,$1,:,$2) $1 $2
%typ $+(proxyPOST~,$1,:,$2) $1 $2
}
if !$2 {
var %port $conf(conport)
var %i` 1,%$1 $1
while %i` < $gettok(%port,0,32) {
var %typ $iif( $gettok(%port,%i`,32) == 443,sockopen -e,sockopen)
var %s_ $+(%$1,:,$gettok(%port,%i`,32)) %$1 $gettok(%port,%i`,32)
if $gettok(%port,%i`,32) == 9050 { %typ Tor~ $+ %s_ }
else {
%typ sock4~ $+ %s_
%typ sock5~ $+ %s_
%typ proxy~ $+ %s_
%typ proxyGet~ $+ %s_
%typ proxyPOST~ $+ %s_
}
inc %i`
}
}
}
;ini & mrc fix
alias readini_ {
if $regex($script,/(\.ini$)/) { return $gettok($read($script, w, $+(*,$3,=*)),-1,61) }
else { return $readini($1,$2,$3) }
}
;konfigurasyon yonlendirici
alias conf {
goto $1
:serverip { return $readini_($script,proxykiller,TestServerIP) }
:server { return $readini_($script,ProxyKiller,TestServer) }
:port { return $gettok($+(666,$r(5,9)) 7000,$r(1,2),32) }
:conport { return $readini_($script,proxykiller,KontrolPort) }
:ban { return $readini_($script,proxykiller,ban) }
:commandline { return $readini_($script,proxykiller,komut) }
}
;random nick!ident@*:user
;$ren(3,15)
alias ren {
var %l' $r($1,$2),%s' a e i o u,%a' . b c d f g h j k l m n p r s t v x w y z .
:r
var %k' $addtok(%k', $gettok(%a',$r(1,$numtok(%a',32)),32),32)
if $len(%k') < %l' goto r
if $len(%k') >= %l' return $regsubex($regsubex(%k',/(\W)/ig,$gettok(%s',$r(1,$numtok(%s',32)),32)),/([a-f]|[c-g]|[x-z])/g,$iif($r(1,10) > 5,$upper(\t),\t))
}
;$ran(nick,user,host,ident)
alias ran {
if $1 == nick { return $ren(1,13) }
if $1 == user { return $gettok($regsubex($left($md5($ticks),$r(3,20)),/(.)/g,$iif(5 \\ \n,\t $left($+($r(a,z),$md5($ticks)),$r(3,11)))),2-,32) }
if $1 == ident { return $ren(1,13) }
if $1 == host { return $ren(1,10) }
}
;Soket olaylari
on *:sockopen:*:{
echo 4 OPEN Soket: $replace($sockname,~,$+($chr(32),Method:,$chr(32)))
var %s sockwrite -nt $sockname
if ($sockerr > 0) { sockclose $sockname | return }
if *sock5~* iswm $sockname {
bset &bb5 1 5 1 0
sockwrite -n $sockname &bb5
bunset &bb5
}
if *sock4~* iswm $sockname {
bset &b4 1 4 1 $gettok($longip($conf(port)),3,46) $gettok($longip($conf(port)),4,46) $replace($conf(serverip),.,32) 0
sockwrite $sockname &b4
bunset &b4
}
if *Proxy~* iswm $sockname {
%s CONNECT $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,proxy~,proxy_)
}
if *ProxyGet~* iswm $sockname {
%s GET $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,proxyGet~,Gproxy_)
}
if *ProxyPOST~* iswm $sockname {
%s POST $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,proxyPOST~,PostProxy_)
}
if *Tor~* iswm $sockname {
%s CONNECT $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,ProxyTor~,ProxyTor_)
}
}
;veri okuma
on *:sockread:*:{
if $sockbr { sockclose $sockname | return }
if *sock*~* iswm $sockname {
if *sock5~* iswm $sockname {
sockread &sock5
if ($bvar(&sock5,1,2) == 5 0) {
bset &sock5 1 5 1 0 1 $replace($conf(serverip),.,$chr(32)) $gettok($longip(6667),3,46) $gettok($longip(6667),4,46)
sockwrite -n $sockname &sock5 | bunset &sock5
sockrename $sockname $replace($sockname,sock5~,sock5:)
}
}
if *sock4~* iswm $sockname {
sockread &s4
if $regex($bvar(&s4,2),/(9[1|2|3])/g) { echo ** Sock4 Error : $bvar(&s4,2) @ $sockname | sockclose $sockname | return }
if $bvar(&s4,2) == 90 {
echo 3 [ $sockname ] *** Bilgiler gonderildi!
sockwrite -tn $sockname CAP LS
var %nk $ran(nick)
sockwrite -tn $sockname NICK %nk
sockwrite -tn $sockname USER $ran(nick) 0 * : $ran(user)
sockrename $sockname $replace($sockname,sock4~,$+(sock4_,%nk,_))
}
}
}
if *sock5:* iswm $sockname {
echo 3 [ $sockname ] *** Bilgiler Gonderildi!
sockwrite -tn $sockname CAP LS
var %nk $ran(nick)
sockwrite -tn $sockname NICK %nk
sockwrite -tn $sockname USER $ran(nick) 0 * : $ran(user)
if *sock5:* iswm $sockname { .sockrename $sockname $replace($sockname,sock5:,$+(sock5_,%nk,_)) }
}
;sock testi
:data
if *sock*_* iswm $sockname {
:-
sockread -f &d
if ($sockbr == 0) return
var %f $bvar(&d,1-).text
tokenize 32 %f
echo :SOCK: %f
if *PING* iswm %f {
sockwrite -nt $sockname PONG $gettok(%f,2,$asc(:))
}
if *NOTICE*AUTH* iswm %f {
echo 4,8 Sock OK! $sockname
banz $sockname
}
if *proxy* iswm %f {
echo 4,8 Bilinmeyen ! $sockname
banz $sockname
}
goto -
}
; proxy testi
if *proxy* iswm $sockname || *Tor_* iswm $sockname {
:.
if ($sockbr == 0) return
sockread -f %p
tokenize 32 $1-
echo :PROXY: $sockname %p
if *HTTP*Connection*established* iswm %p {
var %nk $ran(nick)
sockwrite -tn $sockname NICK %nk
sockwrite -tn $sockname USER $ran(nick) 0 * : $ran(user)
}
if *PING* iswm %p {
echo 4,8 Proxy OK! $sockname
linesep
}
if *proxy* iswm %p {
echo 4,8 Bilinmeyen ! $sockname
banz $sockname
}
if *TOR* iswm %p {
echo 4,8 TOR OK! $sockname
banz $sockname
linesep
}
if *NOTICE*AUTH* iswm %p {
echo 4,8 Proxy OK! $sockname
banz $sockname
linesep
}
goto .
}
}
;proxy tipi ayirici
alias -l tip {
if *sock4_* iswm $1 { return Sock4 }
if *sock5_* iswm $1 { return Sock5 }
if *ProxyGet* iswm $1 { return Proxy GET }
if *ProxyPost* iswm $1 { return Proxy Post }
if *Tor* iswm $1 { return Proxy TOR }
}
;ban islemi
bazı arkadaslarımızın kodları kopyalarken mIRC'nin geçerli dosya tipi olan ".ini"
şeklinde kaydetmesi sebebiyle kofigurasyon bilgilerini okuyamaması nedeniyle
bir güncelleme ve düzeltme ile yeni bir fonksiyon eklendi.
Böylece script file tipi ne olursa olsun konfigurasyon bilgileri okunabilecektir. söz konusu düzeltme: Kod: Kodu kopyalamak için üzerine çift tıklayın! ;ini & mrc fix
alias readini_ {
if $regex($script,/(\.ini$)/) { return $gettok($read($script, w, $+(*,$3,=*)),-1,61) }
else { return $readini($1,$2,$3) }
}
;konfigurasyon yonlendirici
alias conf {
goto $1
:serverip { return $readini_($script,proxykiller,TestServerIP) }
:server { return $readini_($script,ProxyKiller,TestServer) }
:port { return $gettok($+(666,$r(5,9)) 7000,$r(1,2),32) }
:conport { return $readini_($script,proxykiller,KontrolPort) }
:ban { return $readini_($script,proxykiller,ban) }
:commandline { return $readini_($script,proxykiller,komut) }
}
Anlatım : CoCoRiCo
Coder : CoCoRiCo
CoCoRiCo'ya emeklerinden dolayı Tesekkur ederiz.
Evet daha onceki network sürümünün etkisi ve kullanimdaki zorlukları aşmak için
entegre edilebilir bir versiyon yazdim.. aslinda bir havuz da kullananların taradıgı iplerin bilgisini
toplamak niyetim vardı..
fakat bir "arkadasımız"ın projemizdeki fikrimizi bilerek tam olarak olmasada benzer birsey yapması sebebiyle..
bu fikirden vaz gectim.. umarım fikirlere saygılı dostlar kazanırız.. bu eglenmek için yaptıgım hobi
neyse..
bu proxy-sock[4-5] tarayıp, bulan, kayıt eden ve banlamaya yarayan bir kod..
açıklaması içinde 2-3 ayarla direk scriptinizde yada botunuzda kullanabilirsiniz..
kod icindeki şu bölümleri ayarlayarak kullanabilirsiniz..
aklınıza takılan ne varsa konu içinde sorabilirsiniz.. iyi eglenceler..
TestServer=irc.chatfox.net
TestServerIP=107.161.19.71
KontrolPort=80 8080 1080 3124 3127 3128 8000 9050 443
bazi cok kullanilan portlar
Ban=1
0 Echo | 1 Gzline
0 yalnizca ekrana yansitacaktir eger asagidaki log aciksa kayit alacaktir.
Log=1
bu deger 1 olursa gunluk bulunan proxyler kayit olacaktir
kayit islemi gun-ay-yil.txt olarak kayit edilir.
Komut=GZline
;socker botlar için orn: "sockwrite -tn bot_adi kline" Kod: Kodu kopyalamak için üzerine çift tıklayın! [ProxyKiller]
TestServer=irc.chatfox.net
;proxy olarak giris denemesi yapilacak server (aktif olmali)
TestServerIP=107.161.19.71
;giris denemesi yapilacak server'in ip daresi (bilmiyorsaniz /dns irc.serveradi.com)
KontrolPort=80 8080 1080 3124 3127 3128 8000 9050 443
;favori portlar yukaridadir
;ve bazi cok kullanilan portlar
;1046 1080 1182 1183 1184 1188 1214 1278 1279 1745 1795 2124 2172 2173 2174 2175 2301 3128 3124 3127 3743 4095 4480 4747 5463 6588 8080 8000 8001 8118 8888 8922 9090
Ban=1
;0 Echo | 1 Gzline
;0 yalnizca ekrana yansitacaktir eger asagidaki log aciksa kayit alacaktir.
Log=1
;bu deger 1 olursa gunluk bulunan proxyler kayit olacaktir
;kayit islemi gun-ay-yil.txt olarak kayit edilir.
Komut=GZline
;socker botlar için orn: "sockwrite -tn bot_adi kline"
Version=3.0SE
;surum numarasi
Ahuthor=CoCoRiCo/Umit*GUNDUZ
;yapimci hicbir yerde ban yada mesajda yer almaz.
;emege saygi gosterip silmeyiniz.
[/ProxyKiller]
/*
####################################################
sisteminize entegrasyon için öneriler:
serverinize giriste gorunen ip adreslerini (1.1.1.1) formatinda
olacak bicimde $sok(1.1.1.1) kodunu snotice event'iniza ekleyin
Elle tarama icin /sok 1.1.1.1 8080
dokumandan yani txt dosyasindan taramak icin
/prx dosyaadi.txt
dosya icindeki proxyler asagidaki bicimlere uygun olmalidir
101.255.17.244:1080
103.16.112.137[bosluk]1080
103.16.112.137[tap]1080
eger genel olarak bir arama baslatmak isterseniz
ki bu normal giren kullanicilari tarama esnasinda calisabilir
/pbul 95.0.0.0
bu komut ile 95.255.255.255 araligindaki tüm iplerde proxy arayacaktir.
arama islemi port sayisina gore bir zaman belirlenmistir, boylelikle
her IP icin 25 format ve 5 formasyon(proxy,sock4,sock5 vb) deneyecektir
bu islem cok uzun surebilir, ancak kesin calisan ve anlik aktif proxyleri bulmanizi saglar.
####################################################
*/
;ban ayari ve log islevi
alias banz {
$iif($conf(Ban) = 1,$conf(commandline),echo 3) $+(*@,$sock($1).ip) $+($tip($1),$regsubex($sock($1).ip,/(\d+$)/i,$+($str(*,$len(\t)),:,$+(*@,$sock($1).port))))
if $conf(log) { write $+($replace($date,/,-),.txt) $+($sock($1).ip,:,$sock($1).port) }
sockclose $1
}
;ip araligi
alias pbul {
if $regex(ip,$1,/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g) {
if $gettok($1,1,46) < 1 { echo ** Hatali ip.. Class A "1" den dusuk olamaz. orn: 1.0.0.0 | return }
set %d¨ $gettok($1,4,46) | set %c¨ $gettok($1,3,46) | set %b¨ $gettok($1,2,46) | set %a¨ $gettok($1,2,46)
}
$iif(!%d¨,set %d¨ 0)
;class D
$iif(!%c¨,set %c¨ 0)
;class C
$iif(!%b¨,set %b¨ 0)
;class B
$iif(!%a¨,set %a¨ 1)
;class A
if %d¨ < 256 { inc %d¨ }
if %d¨ == 256 && %c¨ < 256 { inc %c¨ | unset %d¨ }
if %c¨ == 256 && %b¨ < 256 { inc %b¨ | unset %d¨,%c¨ }
if %b¨ == 256 && %a¨ < 256 { inc %a¨ | unset %b¨,%c¨,%d¨ }
if %a¨ == 256 && %a¨ < 256 { inc %a¨ | unset %b¨,%c¨,%d¨ }
if %a¨ == 255 && %b¨ == 255 && %c¨ == 255 && %d¨ == 255 { echo : IP Tamamlandi | unset %*¨* }
$iif(!%d¨,set %d¨ 0)
$iif(!%c¨,set %c¨ 0)
$iif(!%b¨,set %b¨ 0)
$iif(!%a¨,set %a¨ 1)
sok $+(%a¨,.,%b¨,.,%c¨,.,%d¨)
titlebar :Sock&Proxy Araniyor: $+(%a¨,.,%b¨,.,%c¨,.,%d¨)
.timer_ipc 0 4 pbul
}
alias prx {
;/prx dosya.txt
;> 1.1.1.1 3128
if $1 { var %dos $1 }
var %i 0
while %i < $lines(%dos) {
inc %i | sok $replace($read(%dos,%i),:,$chr(32),$chr(9),$chr(32))
}
}
;baglanti baslatici
alias sok {
if $regex($2,/(\d+)/) {
var %typ $iif( $gettok(%port,%i`,32) == 443,sockopen -e,sockopen)
if $gettok(%port,%i`,32) == 9050 {
%typ $+(Tor~,$1,:,$2) $1 $2
}
%typ $+(sock4~,$1,:,$2) $1 $2
%typ $+(sock5~,$1,:,$2) $1 $2
%typ $+(proxy~,$1,:,$2) $1 $2
%typ $+(proxyGet~,$1,:,$2) $1 $2
%typ $+(proxyPOST~,$1,:,$2) $1 $2
}
if !$2 {
var %port $conf(conport)
var %i` 1,%$1 $1
while %i` < $gettok(%port,0,32) {
var %typ $iif( $gettok(%port,%i`,32) == 443,sockopen -e,sockopen)
var %s_ $+(%$1,:,$gettok(%port,%i`,32)) %$1 $gettok(%port,%i`,32)
if $gettok(%port,%i`,32) == 9050 { %typ Tor~ $+ %s_ }
else {
%typ sock4~ $+ %s_
%typ sock5~ $+ %s_
%typ proxy~ $+ %s_
%typ proxyGet~ $+ %s_
%typ proxyPOST~ $+ %s_
}
inc %i`
}
}
}
;ini & mrc fix
alias readini_ {
if $regex($script,/(\.ini$)/) { return $gettok($read($script, w, $+(*,$3,=*)),-1,61) }
else { return $readini($1,$2,$3) }
}
;konfigurasyon yonlendirici
alias conf {
goto $1
:serverip { return $readini_($script,proxykiller,TestServerIP) }
:server { return $readini_($script,ProxyKiller,TestServer) }
:port { return $gettok($+(666,$r(5,9)) 7000,$r(1,2),32) }
:conport { return $readini_($script,proxykiller,KontrolPort) }
:ban { return $readini_($script,proxykiller,ban) }
:commandline { return $readini_($script,proxykiller,komut) }
}
;random nick!ident@*:user
;$ren(3,15)
alias ren {
var %l' $r($1,$2),%s' a e i o u,%a' . b c d f g h j k l m n p r s t v x w y z .
:r
var %k' $addtok(%k', $gettok(%a',$r(1,$numtok(%a',32)),32),32)
if $len(%k') < %l' goto r
if $len(%k') >= %l' return $regsubex($regsubex(%k',/(\W)/ig,$gettok(%s',$r(1,$numtok(%s',32)),32)),/([a-f]|[c-g]|[x-z])/g,$iif($r(1,10) > 5,$upper(\t),\t))
}
;$ran(nick,user,host,ident)
alias ran {
if $1 == nick { return $ren(1,13) }
if $1 == user { return $gettok($regsubex($left($md5($ticks),$r(3,20)),/(.)/g,$iif(5 \\ \n,\t $left($+($r(a,z),$md5($ticks)),$r(3,11)))),2-,32) }
if $1 == ident { return $ren(1,13) }
if $1 == host { return $ren(1,10) }
}
;Soket olaylari
on *:sockopen:*:{
echo 4 OPEN Soket: $replace($sockname,~,$+($chr(32),Method:,$chr(32)))
var %s sockwrite -nt $sockname
if ($sockerr > 0) { sockclose $sockname | return }
if *sock5~* iswm $sockname {
bset &bb5 1 5 1 0
sockwrite -n $sockname &bb5
bunset &bb5
}
if *sock4~* iswm $sockname {
bset &b4 1 4 1 $gettok($longip($conf(port)),3,46) $gettok($longip($conf(port)),4,46) $replace($conf(serverip),.,32) 0
sockwrite $sockname &b4
bunset &b4
}
if *Proxy~* iswm $sockname {
%s CONNECT $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,proxy~,proxy_)
}
if *ProxyGet~* iswm $sockname {
%s GET $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,proxyGet~,Gproxy_)
}
if *ProxyPOST~* iswm $sockname {
%s POST $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,proxyPOST~,PostProxy_)
}
if *Tor~* iswm $sockname {
%s CONNECT $+($conf(server),:,$conf(port)) HTTP/1.0 $str($crlf,2)
%s $crlf
sockrename $sockname $replace($sockname,ProxyTor~,ProxyTor_)
}
}
;veri okuma
on *:sockread:*:{
if $sockbr { sockclose $sockname | return }
if *sock*~* iswm $sockname {
if *sock5~* iswm $sockname {
sockread &sock5
if ($bvar(&sock5,1,2) == 5 0) {
bset &sock5 1 5 1 0 1 $replace($conf(serverip),.,$chr(32)) $gettok($longip(6667),3,46) $gettok($longip(6667),4,46)
sockwrite -n $sockname &sock5 | bunset &sock5
sockrename $sockname $replace($sockname,sock5~,sock5:)
}
}
if *sock4~* iswm $sockname {
sockread &s4
if $regex($bvar(&s4,2),/(9[1|2|3])/g) { echo ** Sock4 Error : $bvar(&s4,2) @ $sockname | sockclose $sockname | return }
if $bvar(&s4,2) == 90 {
echo 3 [ $sockname ] *** Bilgiler gonderildi!
sockwrite -tn $sockname CAP LS
var %nk $ran(nick)
sockwrite -tn $sockname NICK %nk
sockwrite -tn $sockname USER $ran(nick) 0 * : $ran(user)
sockrename $sockname $replace($sockname,sock4~,$+(sock4_,%nk,_))
}
}
}
if *sock5:* iswm $sockname {
echo 3 [ $sockname ] *** Bilgiler Gonderildi!
sockwrite -tn $sockname CAP LS
var %nk $ran(nick)
sockwrite -tn $sockname NICK %nk
sockwrite -tn $sockname USER $ran(nick) 0 * : $ran(user)
if *sock5:* iswm $sockname { .sockrename $sockname $replace($sockname,sock5:,$+(sock5_,%nk,_)) }
}
;sock testi
:data
if *sock*_* iswm $sockname {
:-
sockread -f &d
if ($sockbr == 0) return
var %f $bvar(&d,1-).text
tokenize 32 %f
echo :SOCK: %f
if *PING* iswm %f {
sockwrite -nt $sockname PONG $gettok(%f,2,$asc(:))
}
if *NOTICE*AUTH* iswm %f {
echo 4,8 Sock OK! $sockname
banz $sockname
}
if *proxy* iswm %f {
echo 4,8 Bilinmeyen ! $sockname
banz $sockname
}
goto -
}
; proxy testi
if *proxy* iswm $sockname || *Tor_* iswm $sockname {
:.
if ($sockbr == 0) return
sockread -f %p
tokenize 32 $1-
echo :PROXY: $sockname %p
if *HTTP*Connection*established* iswm %p {
var %nk $ran(nick)
sockwrite -tn $sockname NICK %nk
sockwrite -tn $sockname USER $ran(nick) 0 * : $ran(user)
}
if *PING* iswm %p {
echo 4,8 Proxy OK! $sockname
linesep
}
if *proxy* iswm %p {
echo 4,8 Bilinmeyen ! $sockname
banz $sockname
}
if *TOR* iswm %p {
echo 4,8 TOR OK! $sockname
banz $sockname
linesep
}
if *NOTICE*AUTH* iswm %p {
echo 4,8 Proxy OK! $sockname
banz $sockname
linesep
}
goto .
}
}
;proxy tipi ayirici
alias -l tip {
if *sock4_* iswm $1 { return Sock4 }
if *sock5_* iswm $1 { return Sock5 }
if *ProxyGet* iswm $1 { return Proxy GET }
if *ProxyPost* iswm $1 { return Proxy Post }
if *Tor* iswm $1 { return Proxy TOR }
}
;ban islemi
bazı arkadaslarımızın kodları kopyalarken mIRC'nin geçerli dosya tipi olan ".ini"
şeklinde kaydetmesi sebebiyle kofigurasyon bilgilerini okuyamaması nedeniyle
bir güncelleme ve düzeltme ile yeni bir fonksiyon eklendi.
Böylece script file tipi ne olursa olsun konfigurasyon bilgileri okunabilecektir. söz konusu düzeltme: Kod: Kodu kopyalamak için üzerine çift tıklayın! ;ini & mrc fix
alias readini_ {
if $regex($script,/(\.ini$)/) { return $gettok($read($script, w, $+(*,$3,=*)),-1,61) }
else { return $readini($1,$2,$3) }
}
;konfigurasyon yonlendirici
alias conf {
goto $1
:serverip { return $readini_($script,proxykiller,TestServerIP) }
:server { return $readini_($script,ProxyKiller,TestServer) }
:port { return $gettok($+(666,$r(5,9)) 7000,$r(1,2),32) }
:conport { return $readini_($script,proxykiller,KontrolPort) }
:ban { return $readini_($script,proxykiller,ban) }
:commandline { return $readini_($script,proxykiller,komut) }
}
Anlatım : CoCoRiCo
Coder : CoCoRiCo
CoCoRiCo'ya emeklerinden dolayı Tesekkur ederiz.
|