mIRC Scripting

mIRC Scripting (https://www.mircscripting.net/)
-   Snippets - Parça kodlar (https://www.mircscripting.net/snippets-parca-kodlar/)
-   -   Proxy Killer 2.0b (https://www.mircscripting.net/snippets-parca-kodlar/239-proxy-killer-2-0b.html)

CoCoRiCo 21 Temmuz 2009 20:37

Proxy Killer 2.0b
 
Daha önceki Etkili sürümün geliştirilmiş hali, modem ve gercek kullanıcıları
ayırt edebilme yetisine sahip, önceki sürümlerin aksine IP ye baglı ilk tespittte banlamakta,
IP'nin diger portlarının tarama işlemini sonlandırarak
hem zamandan kazanıp hemde porsormansını artırmaktadır..

Manuel tarama özelligi bu sürümdede mevcut, diger sürümler gibi bunda da
IRCOP şartı bulunuyor IP adresleri tam acık sunucular nadiren var oldugundan
IRCOP ve üzeri yetkili modunda calışmaktadır.

Proxy yakalama oranı hala %100 olmakla birlikte akıllı tarama
özelligi sürekli geliştirilmektedir, soru , görüş ve önerilerinizi bu başlık altında yazabilirsiniz.


Bot en kısa zamanda kararlı bir sürüme ve arayüzle 3cü tip
kullanıcılar içinde bir sürümü olacaktır.


Kod:

/*
****************************************
ProxyKiller v2.0 MN                    *
              Author by CoCoRiCo      *
---------------------------------------*
This protection is using on big network*
(M)ulti  (N)etwork  Proxy  scanner  and*
Sockbot  structure  on  mIRC 09/01/09  *
****************************************

## fonksiyonlar "/"Lı komutlar: ##
a    = Sunucu yüklemesi
b    = Tümüne baglan.
c    = Tümünü sıfırla
d    = Debug dışa aktarım
e    = Debug yansıtılacak pencere
f    = Dil ayarları (beta da yok)
g [ + @ -] | [ < > ]
      = Konfigurasyon işlemci fonsiyonu
l g - k]
      = X:line ceza fonsiyonu.
s    = Soket servis fonsiyonu
conf  = Ana ayar fonsiyonu


########## Konfigusaryon ###############
*/

;#konfig aliaslası:
;# RETURN den sonraki Bölümleri Sunucunuza göre düzenleyin.
;# örnek düzenlemeyi baz alarak ayarlarınızı yapın.


alias conf {
  GOTO $1
  :server {
   
    /*
    sunucu IP Adresleri..
    eger sunucunuz bir network ise linklerin ip adreslerini
    burada yan yana giriniz, örnekte 1+1 sunucu olarak ayarlanmıstır.
    */
    return 192.165.1.2:6667 192.168.1.3:7000
    ;return $a eger bir sunucu liste dosyası varsa bu kısmı kullanın ve digerini silin.
  }
  :nick {
  ; botun sunucuya girerken alacagı rastgele nicktir. Degişiklik yapmayınız.
    return $+($r(a,z),$r(a,z),$left($md5($ticks),$r(3,8)))
  }
  :me {
  /*
  Sunucunuzda işlemi yapacak olan robot adı,
  network'lerde bu link sayısına göre bot adının sonuna link
  sayısı kadar rakam alacaktır.
  */
    return  ProxyKiller
  }
  :ident {
  /*
  Botun server'a girerken alacagı identi belirler.
  Rastgeledir, Degişiklik yapmayınız(onerilen)
  */
    return $+($r(a,z),$r(a,z),$left($md5($ticks),$r(3,8)),@,syrix.net)
  }
  :usern {
    return $+(:,$read($script,3))
  }
  :nicpass {
  /*
  Eger kayıtlı bir bot rumuzu kullanacaksanız bu bölüme şifresini yazın
  */
    return nickpss
  }
  :operpass {
  /*
  Botun GZLINE - ZLINE yetkisine sahip OPER sifresi <operadi> <şifre>
  */
    return Admin operpass
  }
  :umodes {
  ; Unreal sunucular için bot userflagları, değiştirmeyiniz (önerilen)
    return +SsBRDc-G +sFSc
  }
  :excempt {
  /*
  Tarama  ve işleme tabi tutulmayacak IP adresleri
  */
    return 192.168.1.2 192.168.1.6
  }
  :banreason {
  /*
  Yasaklanan IP adreslerinin sebep kısmında görüntülenecek metin. (ilave olarak)
  */
    return Proxy yasaktir.
  }
  :domain {
  /*
  Network yada Server Domain adı
  */
    return mircscripting.net
  }
  :controthle {
    return 5
  }
  :prxport {
  /*
  Taranmasını istediginiz portları yan yana sıralayın,
  örnekler proxy sistemlerinden özenle ve en çok kullanılanlara bakılarak
  secilmiştir.
 
  Bazı kullanıcıların Modem leri 80 potuna fabrika ayarı olacak acıktır
  bot modem ve proxy kullanıcıyı ayır edecek yetenege sahiptir. 
  */
    ;return 80 81 443 9090 3128 8080 8090 3124 3127 1080 25 5001 1214
    return 80 33 31 47 56 54 70 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 7777 8080 8000 8001 8118 8888 8922  9090 10102 10777 10886 217745 26260 30247 31337 36417 39641 44322 49531 59759
  }
  :conport {
      return 443
  }
  :ajoin {
  /*
  Botun sunucuya girdiginde duracagı oda, Beta versiyonda işlevi sadece durmaktır.
  kararlı versiyonda bilgilendirme odası(ları) olarak kullanılacaktır.
  */
    return #deneme,#opers
  }
  :timeoutsec {
  /*
  Proxy adreslerin tarama işleminin her bir ip-port basına sürecegi
  zamanı belirtir, bu işlem süresi sonunda  yanıt alınamayan ip için işlem sona erecektir.(ban'lanmayacak)
  Bu adresten yeniden kullanıcı giriş yapmadıkca tarama gercekleşmez.
  */
    return 3
  }
  :dns {
    /*
    Adreslerin servis saglayıcı tarafından tutulan isimsel yada isimsel adreslerin (anumeric,numeric)
    fiziksel adres dönüşlerini görmek içindir.
    */
    ;1=acik \ 0=kapalı
    return 1
  }
  :cfile {
  /*
  Bir çok kaydın yer alacagı ayarların kayıt edilecegi konfigurasyon
  dosyasının adıdır.
  */
    return config.txt
  }
}
/*
############# Konfigurasyonun sonu ##############
## DİKkATT! BU KISIMDAN SONRA DÜZENLEME YAPMAK ##
## SİSTEMİN ÇALIŞMAMASINA YADA DURMASINA NEDEN ##
## NEDEN OLABİLİR..                          ##
#################################################
*/

alias a {
  var %a = 1
  while %a <= $ini($conf(cfile),servers,0) {
    %servers = $addtok(%servers,$readini($conf(cfile),servers,$+(n,%a)),32)
    inc %a
  }
  return  %servers
  unset %servers
}
alias b {
  var %s = 1
  while %s <= $gettok($conf(server),0,32) {
    if $sock($+($conf(me),%s)).status != active {
      $iif($sock($+($conf(me),%s)),.sockclose $sock($+($conf(me),%s)))
      if !$sock($+($conf(me),%s),1).name {
        $+(.timer,_ct,%s) 1 $calc($conf(controthle) + %s) .sockopen $+($conf(me),%s) $replace($gettok($conf(server),%s,32),$chr(58),$chr(32))
      }
    }
    inc %s
  }
}
alias c {
  sockclose $+(*,$conf(me),*)
  var %i = 1
  while %i <= $gettok($conf(server),0,32) {
    if !$sock($+($conf(me),%i),1).name {
      $+(.timer,_ctc,%i) 1 $calc($conf(controthle) + %i) .sockopen $+($conf(me),%i) $replace($gettok($conf(server),%i,32),$chr(58),$chr(32))
    }
    inc %i
  }
  .timer_c 0 10 b
}
alias d {
  if ($hget(debug,debug) == acik) {
    echo *** Debug Closed
    hadd -m debug debug kapali
    hsave -i debug $conf(cfile)
    e -c
    return
  }
  :b
  if ($hget(debug,debug) == kapali) {
    echo *** Debug Open
    hadd -m debug debug acik
    hsave -i debug $conf(cfile)
    return
  }
  if !$hget(debug,debug) {
    err Debug Config line missing..! Actualy standart debug config making.
    hadd -m debug debug acik
    hsave -i debug $conf(cfile)
    hload -i debug $conf(cfile)
    goto b
    return
  }
  if !$1 { hload -i debug $conf(cfile) }
  if $1 == -i && $2 && !$3 {
    if !$isalias($2) {
      err Aliases function not found!, Plaease make first aliases function then use this command!.
    }
    if $isalias($2) {
      hadd -m dalias debugal $2
      err *** Debug outputing $2 function.
    }
  }
}
alias e {
  if $hget(debug,debug) == acik {
    $iif(!$window($+(@db-,$1)),window -fen $+(@db-,$1),aline $+(@db-,$1) <-- $1- )
    $iif($hget(dalias,debugal),$hget(dalias,debugal) $1-)
  }
  if $1 == -c { close -@ }
}
alias f {
  ;flush alias

}
alias g {
  /*
  ;+
  if $1 == $chr(43) && $3 {
    hadd -m $2 $3-
    hsave -i $2 $conf(cfile)
    hload -i $2 $conf(cfile)
  }
  ;-
  if $1 == $chr(45) {
    hfree  $2 $3- 
    hsave -i $2 $conf(cfile)
    hload -i $2 $conf(cfile)
  }
  ;@
  if $1 == $chr(64) { return $hget($2,$3-) }
  */
  ;<
  if $1 == $chr(60) { writeini $cofn(cfile) $1 $2- }
  ;<
  if $1 == $chr(62) { return $readini($cofn(cfile),$1,$2-) }
  if !$1  { hload -i c $conf(cfile) | echo *** Config file load }
  ;/
  if $1 == $chr(47) { hadd -m m $2- }
  ;\ 
  if $1 == $chr(92) { return $hget(m,$2) }
  ;!
  if $1 == $chr(33) { return hfree m }

}
alias l {
  ;ceza <1=sname> <2=time> <3=ip> <4=reason>
  ;cr only
  var %year = 525941
  var %month = 43829
  var %week = 10080
  var %day = 1440
  var %hour = 60
  var %min = 1
  if $right($2,1) == Y && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(y)) * %year) }
  if $right($2,1) == A && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(a)) * %month) }
  if $right($2,1) == W && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(w)) * %week) }
  if $right($2,1) == D && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(d)) * %day) }
  if $right($2,1) == H && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(h)) * %hour }
  if $right($2,1) == M && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(m)) * %min) }
  if $hget(Sver,Server) == CR {
    s $1 KLINE $3 $4- %exp
    s $1 AKILL $3 $4- %exp
    return
  }
  if $hget(Sver,Server) == Unreal {
    s $1 GZLINE $2 $3 $4
    return 
  }
  else {
    s $1 KLINE $3 0 $4 -
  }
}
alias s {
  $iif($window(@db-,$1),echo $+(@db-,$1) ---> $1- )
  if $sock($1).status == active { sockwrite -nt $1- }
}
alias err {
  echo :: 4,8 DATA $1-
}
##Event
;on *:START: { c | g }
ON *:SOCKOPEN:*: {
  ;echo :: $sockerr
  ;###System open sock
  if $+(*,$conf(me),*) iswm $sockname {
    var %n $conf(nick)
    s $sockname NICK %n 
    g / $sockname %n
    ; ident "domain" "ip" :user
    s $sockname USER $+($iif(!$gettok($conf(ident),1,$asc(@)),$conf(ident),$gettok($conf(ident),1,$asc(@))),$chr(32),",$iif(!$gettok($conf(ident),2,$asc(@)),$conf(domain),$gettok($conf(ident),2,$asc(@))),",$chr(32),",$iif(!$ip,127.0.0.1,$ip),",$chr(32),$conf(usern))
  }
  ;##proxy sock
  if *prx-* iswm $sockname {
    if ($sockerr) { sockclose $sockname | return }
    echo 2 Proxy: $chr(32)4Port: $sock($sockname).port - $sock($sockname).ip 4Type: $sock($sockname).type 4N\A: $portfree($sockerr)
    if $sock($sockname).port isin $conf(conport) {
      ;normal web
      s $sockname GET / HTTP/1.1
      s $sockname Host: $gettok($sockname,2,$asc(=)) $v2 $+ $str($crlf,2)
      s $sockname Referer: $+($conf(me),$chr(40),User:,$sockname,$chr(41))
      s $sockname User-Agent: Mozilla/4.6 [tr] $+($chr(40),Win,$os,;,$chr(32),I,$chr(41)) 
      /*
      s $sockname Accept-Encoding: gzip, deflate
      s $sockname Accept-Language: tr
      s $sockname Connection: Keep-Alive
      s $sockname Cache-Control: no-cache
      s $sockname $crlf
      */
      ;poxy connect
      s $sockname CONNECT $+(irc.,$conf(domain),:666,$r(0,9)) HTTP/1.0 $str($crlf,2)
      s $sockname $crlf
      ;proxy web
      s $sockname GET $+(HTTP://,www.,$conf(domain),:,$v2) HTTP/1.0 $str($crlf,2)
      s $sockname $crlf
      /*   
      */
    }
    if ($portfree($sockerr)) && $sock($sockname).port !isin $conf(conport) {
      ;%D detayli - %S standart
      var %D $+($conf(BanReason),~,$gettok($sock($sockname).ip,1-3,$asc(.)),.,$str(*,$len($gettok($sock($sockname).ip,-1,46))),:,$sock($sockname).port)
      var %Q $conf(BanReason)
      ; echo :sil: 4s $gettok($sockname,1,$asc(~)) GZLINE  $+(*@,$sock($sockname).ip) 1d %D
      l $gettok($sockname,1,$asc(~))  $+(*@,$sock($sockname).ip) 1d %D
      .sockclose $+(*,$gettok($sockname,2,$asc(=)),*)
    }
  }
}
ON *:SOCKREAD:*: {
  var %s
  ;##system sock
  if $+(*,$conf(me),*) iswm $sockname {
    sockread %s
    tokenize 32 %s
    ;##DEBUG
    if $hget(debug,debug) == acik { e $sockname $1- }
    echo :sil:debug: $1-
    ;##PING!PONG?
    if $1 == PING { s $sockname PONG $2- }
    ;##RAWs   
    if $2 isnum { 
      if $2 == 001 {
        ;  g / $sockname $gettok($1-,-1,32)
      }
      if $2 == 004 {
        ;server version
        if *Unreal?.* iswm $2- { hadd -m Sver Server Unreal | return }
        if ConferenceRoom isin $2- { hadd -m Sver Server CR | return }
        else { hadd -m Sver Server diger | return }
      }
      if $2 == 005 {
        s $sockname OPER $conf(operpass)
        s $sockname JOIN 0,
        .timer 1 5 s $sockname JOIN $replace($conf(ajoin),$chr(44),$chr(32))
      }
      if $2 == 302 {
        ;user host
      }
      if $2 == 376 || $2 == 422 {
        ;end motd -  motd yok
      }
      if $2 == 381 {
        ;now oper
        s $sockname NICK  $sockname
        if $hget(Sver,Server) == CR { var %sj FJOIN | .timer 1 5 s $sockname UMODE +fc }
        if $hget(Sver,Server) == Unreal {
          var %sj SAJOIN $sockname
          .timers 1 5 s $sockname $conf(umodes)
        }
        else { var %sj JOIN }
        s $sockname %sj $replace($conf(ajoin),$chr(44),$chr(32))
      }
      if $2 == 491 || $2 == 464 {
        ;non oper
        err $sockname $1-
      }
      if $2 == 433 {
        ;nick in use
        err $2-
      }
    } ;end raw

    ;##SCOMMAND
    if $2 == NICK {
      if $remove($gettok($1,1,$asc(!)),:) == $g(\,$sockname) {
        ;bot nick <$me> function
        if $remove($3,:) != $g(\,$sockname) && $+($conf(me),*) !iswm $remove($3,:) {
          g / $sockname $remove($3,:)
          if $sockname != $remove($3,:) {
            s $sockname NICK $sockname
            g / $sockname $remove($3,:)
          }
          $iif($g(\,$sockname) != $sockname,$+(.timer,$sockname) 0 5 s $sockname NICK $sockname)
        }
      }
      ; if $remove($3,:) != $g(\,$sockname) && $+($conf(me),*) == $remove($3,:) { err :no:19  }
      else {
        ;end more
      }
    } ;#end Scommands

    ;##SNOTICE
    if *Notice*--*Client*connecting*on*port* iswm $5- {
      var %ip = $remove($gettok($13,2,64),$chr(40),$chr(41),$chr(64))
      ;server ip noscan - excemp ip'ler
      if !$regex($conf(server),(%pi)) && !$regex($conf(excempt),(%pi)) {
        var %pi = 1
        while (%pi <= $gettok($conf(prxport),0,32)) {
          var %ki = $gettok($conf(prxport),%pi,32)
          var %pxn = $+($sockname,~prx-,%ki,=,%ip)
          if !$sock(%pxn,1).name {
            sockopen %pxn %ip %ki

            $+(.timer,%pxn) 1 $conf(timeoutsec) .sockclose %pxn
            if $conf(dns) { .dns %ip }
          }
          inc %pi
        }
      }
      if *Notice?Client?connecting* iswm $5- || *Client?exiting:* iswm $5- {
        $iif(!$window(@G\C),window -fen @G\C,aline @G\C $1-)
      }

    } ;#end Snotice

    ;##PRIVMSG
    if $2 === PRIVMSG {
      err ----> $1-
      if :FINGER === $4 {
        if $3 == $sockname || $left($3,1) == $chr(35) {
          if !$hget(finger,$sockname) {
            hinc -mu10 finger $sockname
            $iif($remove($gettok($1,1,$asc(!)),:) != $sockname,s $sockname NOTICE $remove($gettok($1,1,$asc(!)),:) $+(:,$chr(1),FINGER,$chr(32),$conf(usern),$chr(32),$chr(40),$emailaddr,$chr(41),$chr(32),Idle,$chr(32),$idle,$chr(1)))
          }
        }
      }
      if $4 === :VERSION && !$5 {
        if $3 == $sockname || $left($3,1) == $chr(35) {
          if !$hget(Fversion,$sockname) {
            hinc -mu8 Fversion $sockname
            $iif($remove($gettok($1,1,$asc(!)),:) != $sockname,s $sockname NOTICE $remove($gettok($1,1,$asc(!)),:) $+(:,$chr(1),VERSION,$chr(32),mIRC,$chr(32),v,$version,$chr(32),Khaled,$chr(32),Mardam-Bey,$chr(1)))
          }
          if $hget(Fversion,$sockname) {
            ;diger
          }
        }
      }
    } ;#end Privmsg

    ;##Scanner Sock
    if *prx-* iswm $sockname {
      if $sock($sockname).port isin $conf(conport) {
        sockread %s
        if  *<?>* iswm %s || *-*:* iswm %s  {
          echo :REAL-SITE: %s
          ;real web
          ; .sockclose $sockname
          return
        }
        if $regex(%s,.*HTTP\/1\.. 200 .*) {
          echo :PROXY-SITE: %s 
          echo : s $gettok($sockname,1,$asc(~)) privmsg os akill add +1d $+(*@,$sock($sockname).ip) $+($conf(BanReason),~,$left($sock($sockname).ip,-3),$str(*,$len($gettok($sock($sockname).ip,-1,46))),:,$sock($sockname).port )
        }
        if *<?>* iswm %s && $regex(%s,.*HTTP ERROR: 501 Method+NICK+.*) {
          echo :WEB-PROXY-SITE: %s 
          echo : s $gettok($sockname,1,$asc(~)) privmsg os akill add +1d $+(*@,$sock($sockname).ip) $+($conf(BanReason),~,$left($sock($sockname).ip,-3),$str(*,$len($gettok($sock($sockname).ip,-1,46))),:,$sock($sockname).port )
        }
        else {
          echo :--: %s
          ; echo : s $gettok($sockname,1,$asc(~)) privmsg os akill add +1d $+(*@,$sock($sockname).ip) $+($conf(BanReason),~,$left($sock($sockname).ip,-3),$str(*,$len($gettok($sock($sockname).ip,-1,46))),:,$sock($sockname).port )
          ; return
        }
      }
      if $sock($sockname).port !isin $conf(conport) {
        sockread %s
      }
      if $sockerr > 0 { err $sock($sockname).wserr | return }
      ;echo 4 -s :-> $sock($sockname).ip $sock($sockname).port
      .sockclose $sockname
    }
  }
}

alias tr {
  var %prx $ticks
  .dns $1
  var %ip  $1
  var  %pi = 1
  while (%pi <= $gettok($conf(prxport),0,32)) {
    var %ki = $gettok($conf(prxport),%pi,32)

    var %pxn = $+($2,~prx-,%ki,=,$1)
    if !$sock(%pxn,1).name {
      sockopen %pxn %ip %ki
      $+(.timer,%pxn) 1 $conf(timeoutsec) sockclose %pxn
    }
    inc %pi
  }
}

Fidex 26/09/2009:
tokendeki bariz bi eksiklik hata olmus (;
ERR:[1]
if %pi !isin $gettok($conf(server)) && %pi !isin $gettok($conf(excempt))...

FIX:[1]
if !$regex($conf(server),(%pi)) && !$regex($conf(excempt),(%pi))..
;-----------------------------------------------------------------------------
ERR[2]
CLAC, diyebi identifier yok tabiki :)

if $right($2,1) == M && $left($2,$calc($len($2) -1)) isnum { var %exp $clac($gettok($2,1,$asc(m)) * %min) }

FIX:[2]
$calc($gettok($2,1,$asc(m))
;-----------------------------------------------------------------------------
user mode alınamadıgı icin giri\cikislar görünmüyordu
burada "S" fonksiyonuna görev vermeden işlem yaptırtmısım
ERR[3]
if $hget(Sver,Server) == CR {
var %sj FJOIN
.timer 1 5 s $sockname UMODE +fc
}
if $hget(Sver,Server) == Unreal {
var %sj SAJOIN $sockname
.timers 1 5 $sockname $conf(umodes)
;+scfF +scfF
}
FIX:[3]
if $hget(Sver,Server) == CR {
var %sj FJOIN
.timer 1 5 s $sockname UMODE +fc
}
if $hget(Sver,Server) == Unreal {
var %sj SAJOIN $sockname
.timers 1 5 s $sockname $conf(umodes)
}

;-----------------------------------------------------------------------------
insallah baska eksik hata yoktur.. :)

kod asagıdaki gibi calısıyor kendi ip'me atamadıgından gelen mesaja aldanmayın :)
örnek:
[21:05] Proxy: 80 - 78.188.15.??? Type: tcp N\A: $true
[21:05] :sil:debug: :irc.chatfox.net NOTICE ProxyKiller1 :You are not allowed to add a GZLINE on *@78.188.15.112
[21:05] :sil:debug: :irc.chatfox.net NOTICE ProxyKiller1 :*** Notice -- *** ProxyKiller1 tried to add a GZLINE on *@78.188.15.???

L4roXyL 21 Temmuz 2009 21:18

Yakından-da inceleme fırsatım oldu. Baştan aşağıya harika ve profesyonel bir kod.

WeiLSiDe 21 Temmuz 2009 21:46

Eline sağlık Güzel çalışma

WeiLSiDe 04 Eylül 2009 01:09

Ümit abi bunun mirc için olanı var mı? Sock değilde şöyleki kişisel bişey mesela. ŞunLarı yapsa yeterli:
1. Proxy sitelerinden kendini güncelleyip bir dosyaya kaydetsin.
2. Kayıt üzerindeki verilerle giriş ipleri karşılaştırıp proxy olarak tanıdığı ipleri sunucudan uzaklaştırsın. (kill vs.)
Umarım anlatabilmişimdir...

CoCoRiCo 04 Eylül 2009 01:24

bu zaten mIRC den calısıyor, normal eventlada calısır,

hiç konfigurasyon yapmasan bile snotice ile gelen "client connecting" kısmın dan ip alıp

TR 192.168.1.1 seklinde taratabilirsin..

manuel tarama içinde /tr ip adresi yeterlidir.
proxy sitesinden proxy almaya gerek yok onlar mevcut olanlardır, kuallnıcın ordaki ip 'eri kullanmasına göre
işlem yapmak yersiz, bu bot giren kişinin ip' sinin proxy olup olmadıgını anlayabilme yetenegi var. buda %100 tespit demektir.

WeiLSiDe 04 Eylül 2009 01:40

Kod:

on *:snotice:*client conn*: {
tr $10
}

ip 10 du galiba
yani bunu yapmam yeterli mi?

L4roXyL 04 Eylül 2009 02:04

$10-u ayıkla ama ip için.
Örnek: $remove($token($10,2,64),$chr(41))
on *:snotice:*client conn*:tr $remove($token($10,2,64),$chr(41))

WeiLSiDe 04 Eylül 2009 02:42

Ümit abi son olarak
############# Konfigurasyonun sonu ############## diye devam eden satırdan yukarki bölümü almıyorum değil mi? oper şifreleri sunucu adı felan girilen kısmı yani.

############# Konfigurasyonun sonu ##############
## DİKATTT! BU KISIMDAN SONRA DÜZENLEME YAPMAK ##
## SİSTEMİN ÇALIŞMAMASINA YADA DURMASINA NEDEN ##
## NEDEN OLABİKLİR.. ##
#################################################

Bu kısımdan aşağısını alıyorum değil mi?

CoCoRiCo 04 Eylül 2009 03:05

eger /b ile baglamayacaksan ki on start'a eklemek içindir
sen harici olarakta kullanabilirsin
ilk versiyonun 1.2 si bu iş için daha uygun aslında, bu MN ( multi network) cok linkli sistemler için ideal linksayısına göre botbaglanır ki; her link'in baglantıları o linkten görüntülernir
bu yüzden botsayısı artıyor..
fakat ben tek link kullanıyorum dersen tek ip yeterli.
senin ip adresinden ProxyKiller diye sock botun baglanması seni rahatsız etmez..

Soketler elbette ham verileri işledigi için event la işlenmiş verilerden daha hızlı
davranıs gösterir..

sorunun cevabına gelince tamamını kullanman gerekir ve ayarlarıda yapmalısın.

WeiLSiDe 04 Eylül 2009 03:19

Saolasın abi bu benim için biraz fazla sanırım. İlk versiyonu inceleyeyim biraz. Yardımların için teşekkürler

CoCoRiCo 04 Eylül 2009 04:09

evet v1.X senin için daha uygun

med1kal 04 Eylül 2009 09:06

Çok sıkı bir iş.

WeiLSiDe 06 Eylül 2009 13:03

Kod:

alias deb {
  debug -i db debg debg
}
alias debg {
  tokenize 32 $1-
  echo -s : $1-
}
on ^*:snotice:*: {
  if (*client*connect*on*port* iswm $1-) {
    tr $remove($gettok($10,2,64),$chr(40),$chr(41),$chr(6 4))
    $iif(!$window(@giris-cıkıs), window -fen @giris-cıkıs verdana 9)
    echo 5 @giris-cıkıs $1-
  }
  halt
}
alias po {
  return  21 22 23 33 47 56 54 81 70 1046 1080 1182 1183 1184 1188 1214 1278 1279 1745 1795 2124 2172 2173 2174 2175 2301 3128 3124 3127 4480 5463 6667 6588 8080 8000 8001 8118 8888 8922 10102 26260 31337 44322
}
alias tr {
  set %prx $ticks
  .dns $1
  set %ip  $1 | var %pi = 1
  while (%pi <= $gettok($po,0,32)) {
    var %ki = $gettok($po,%pi,32)
    sockopen $+(prx-,$1,-,$md5($+($r(a,z),$r(1,999),$ticks,$r(A,Z)))) %ip %ki 
    inc %pi
  }
  ;echo 4 Taranan portlar:3 $gettok($po,0,32) (Ad.) :2 $po
}
on *:sockopen:*prx-*: {
  if ($sockerr) { sockclose $sockname | return }
  ;echo 2 IP: $sock($sockname).ip $chr(32)4PORT: $sock($sockname).port 4TIP: $sock($sockname).type 4AÇIK\KAPALI: $portfree($sockerr) 4HATA\WS_Err: $sock($sockname).wserr 4MESAJ\WS_Msg: $sock($sockname).wsmsg
  if ($portfree($sockerr))  {
    var %ipsikim $sock($sockname).ip
    gzline $+(*@,$sock($sockname).ip) 1D 1Proxy yasaktır. Lütfen 4irc.mynet.com 1sohbet kurallarına uyunuz!
    sockclose $+(*,$sock($sockname).ip,*)
    $iif(!$window(@Proxy-sik),window -fen @Proxy-sik verdana 9,echo @Proxy-sik GzlineD %ipsikim Proxy taramasından geçemeyen ip pasif edildi. )
    return
  }
  .sockclose $sockname
}
on *:sockread:prx-*:{
  if ($sockerr > 0) { echo :HATA: $sock($sockname).wserr | return }
  ; echo 4 -s :---> $sock($sockname).ip $sock($sockname).port
  sockclose  $sockname
}
on *:dns:{
  if (%prx) {
    var %di = $dns(0)
    while (%di > 0) {
      echo 2 $chr(32) 4DNS: $dns(%di) 4ADRES: $dns(%di).addr \ $dns(%di).ip
      dec %di
    }
    unset %prx | unset %ip
    halt
  }
  unset %prx | unset %ip
}

Ümit abi yine senin düzenlemiş olduğun bi kod buldum. Bu bana göre daha kullanışlı gibi ancak şöyle birşey var. Çok sık olmasa da proxy olmayan iplere de işlem yapıyo örneğin 78.165.... gibi port 6667 bunun için portları mı düzenlemeliyim. Yani 6667 portunu silmemmi gerekli cod orjinal kalsın diye uğraşıyorum o bakımdan..

CoCoRiCo 06 Eylül 2009 14:47

alias po {
return 21 22 23 33 47 56 54 81 70 1046 1080 1182 1183 1184 1188 1214 1278 1279 1745 1795 2124 2172 2173 2174 2175 2301 3128 3124 3127 4480 5463 6667 6588 8080 8000 8001 8118 8888 8922 10102 26260 31337 44322
}

Genelde modemlerin 80-81 portu kullanmasından kaynaklanıyor, bu
yüzden 2.0 da modem ayrıstırma yetenegi eklemiştim..
Tabi bu ilk yazdıgımda yoktu bu yüzden en pratik cözüm port
listesinden 80-81i silmek olur ki zaten 80-81 web proxy olur irc ye
pek baglantı veren olmaz.

CoCoRiCo 26 Eylül 2009 21:19

code da bir cok hata vardı bunları düzelttim şimdilik sorun görünmüyor göresel ara yüz ve kullanıcı arayüzü hazırlamam için kodun sorunsuz oldugundan emin olmak istiyorum deneyen arkadasların
hataları bildirmesini rica ediyorum.

WeiLSiDe 28 Eylül 2009 01:13

Ümit abi güncel versiyonu deneme fırsatım olmadı.. Ama 1 ncisi çok sağlam olmuş.. heLaL oLsun

CoCoRiCo 28 Eylül 2009 23:20

Alıntı:

WeiLSiDe Nickli Üyeden Alıntı (Mesaj 904)
Ümit abi güncel versiyonu deneme fırsatım olmadı.. Ama 1 ncisi çok sağlam olmuş.. heLaL oLsun

güncel olan cok daha iyi farklı sunucularda kullanılabilir
yada networklerde her linkten bir bot girip denetim yapar
hassaslıgı cok daha etkili
ve gercek kullanıcılar ile botların baglantıları ayırabiliyor
geliştirmeye devam ediyoum vakit buldukca..

2.0 Networkler için ideal

WeiLSiDe 28 Eylül 2009 23:31

Sunucu sahipleri için 2.0 gercekten güzel bi çalışma. Atarsın sunucuya proxy felan giremez. Ancak ben kişisel, kendi scriptimde kullandığım için 2.0 versiyonu pek bana gelmiyo. Fakat son sürümde şahsi kullanıcılar için düzenlemeler yapılırsa hiç fena olmaz diye düşünüyorum. 2 şekilde de gayet güzel olmuş abi. Eline sağlık

Vefa 09 Ekim 2009 18:10

CoCoRiCo eline emegine saglık.yalnız bi türlü kuramadım bi yardımcı olabilirmisin

johndoe 08 Kasım 2009 18:15

şöyle bir durum var, proxykiller girdiginde kodun ekli oldugu bota gzline atiyor sebebi nedir bulamadim ?

Redworm 26 Ağustos 2011 01:08

merhaba .. kodun son güncel halini paylaşman mümkünmü ?

xyzzy 11 Aralık 2011 05:45

Kodlamanin socket bot degilde direkt olarak kullaniminida paylasmaniz hos olurdu :)

By_ATMACA 26 Eylül 2013 23:30

Kod:

[23:54] -irc.askcafem.com- *** Notice -- Client connecting on port 6667: ali_19 ([email protected])
-
:sil:debug: :irc.askcafem.com NOTICE ProxyKiller1 :*** Notice -- Client connecting on port 6667: ali_19 ([email protected])
Proxy: 80 - 78.167.93.25 4Type: tcp 4N\A: $true
:sil:debug: :[email protected] PRIVMSG #bilgi :- *** Notice -- Client connecting on port 6667: ali_19 ([email protected])
-
* /sockopen: Yetersiz veya eksik parametre (Satır 432, script102)
-
:sil:debug: :irc.askcafem.com 401 * 1d :No such nick
:sil:debug: :irc.askcafem.com 401 ProxyKiller1 1d :No such nick

Sunucum Cr Ve Bu Hata ile Karşilaştim

CoCoRiCo 29 Eylül 2013 01:00

if $right($2,1) == Y && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(y)) * %year) }
if $right($2,1) == A && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(a)) * %month) }
if $right($2,1) == W && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(w)) * %week) }
if $right($2,1) == D && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(d)) * %day) }
if $right($2,1) == H && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(h)) * %hour }
if $right($2,1) == M && $left($2,$calc($len($2) -1)) isnum { var %exp $calc($gettok($2,1,$asc(m)) * %min) }

if $hget(Sver,Server) == CR {
s $1 KLINE $3 $4- %exp
s $1 AKILL $3 $4- %exp

return
}

kırmız satırlardan hangisine nick denk geliyorsa ona göre snotice den ayarla
%exp ne kadar süre ban olcagını belirler unreal üzerine yogunlastıgım için o kısmı atlamıs olmalıyım sorunu cözdgünde
yaz ki ona göre bende FIX edeyim.

By_ATMACA 30 Eylül 2013 23:26

hocam Veriler Su Sekılde
Kod:

$1: ***
$2: Notice
$3: --
$4: Client
$5: connecting
$6: on
$7: port
$8: 6667:
$9: NiRVaNa
$10: ([email protected])

$9 Gelior nıck Lakın Bu Seferde gıren proxyLere Tepkı yok hıc

Chelt 21 Ocak 2014 02:49

botun ayarlarını yaptım ama bu sefer girer girmez bana zline atıyor.

PHP- Kodu:

Zaman proxykiller1~prx-8118=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-8118=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-8888=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-8888=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-8922=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-8922=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-9090=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-9090=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-10102=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-10102=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-10777=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-10777=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-10886=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-10886=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-217745=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-217745=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-26260=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-26260=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-30247=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-30247=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-31337=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-31337=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-36417=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-36417=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-39641=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-39641=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-44322=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-44322=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-49531=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-49531=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-59759=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-59759=85.96.46.164 (Ayna)
-
:
sil:debug: :irc.ayna.org NOTICE ProxyKiller1 :*** Global Z:line added for *@85.96.46.164 on Tue Jan 21 00:40:10 2014 GMT (from ProxyKiller1!hted5a8f4@coadmin.ayna.org to expire at Wed Jan 22 00:40:10 2014 GMTProxy_yasaktir.~85.96.46.***:80)
:
sil:debugERROR :Closing LinkProxyKiller1[85.96.46.164] (Z:lined (Proxy_yasaktir.~85.96.46.***:80))
:
sil:debug: :irc.ayna.org NOTICE bmbb70e2a5 :*** Global Z:line added for *@85.96.46.164 on Tue Jan 21 00:40:10 2014 GMT (from ProxyKiller1!hted5a8f4@coadmin.ayna.org to expire at Wed Jan 22 00:40:10 2014 GMTProxy_yasaktir.~85.96.46.***:80)
:
sil:debug: :irc.ayna.org NOTICE bmbb70e2a5 :*** Notice -- Client exitingProxyKiller1 (hted5a8f4@85.96.46.164) [Z:lined (Proxy_yasaktir.~85.96.46.***:80)]
:
sil:debug: :irc.ayna.org NOTICE bmbb70e2a5 :*** Notice -- Client exitingChelt (GTI@85.96.46.164) [Z:lined (Proxy_yasaktir.~85.96.46.***:80)]
:
sil:debugERROR :Closing Linkbmbb70e2a5[85.96.46.164] (Z:lined (Proxy_yasaktir.~85.96.46.***:80))
-
[
02:39:51Closing LinkChelt[85.96.46.164] (Z:lined (Proxy_yasaktir.~85.96.46.***:80))
-
[
02:39:51] * Bağlantınız Kesildi 


Feragat 21 Ocak 2014 02:58

Alıntı:

DaGGeR Nickli Üyeden Alıntı (Mesaj 1824)
botun ayarlarını yaptım ama bu sefer girer girmez bana zline atıyor.

PHP- Kodu:

Zaman proxykiller1~prx-8118=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-8118=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-8888=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-8888=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-8922=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-8922=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-9090=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-9090=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-10102=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-10102=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-10777=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-10777=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-10886=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-10886=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-217745=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-217745=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-26260=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-26260=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-30247=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-30247=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-31337=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-31337=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-36417=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-36417=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-39641=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-39641=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-44322=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-44322=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-49531=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-49531=85.96.46.164 (Ayna)
Zaman proxykiller1~prx-59759=85.96.46.164 1 Zaman(s5s gecikme .sockclose ProxyKiller1~prx-59759=85.96.46.164 (Ayna)
-
:
sil:debug: :irc.ayna.org NOTICE ProxyKiller1 :*** Global Z:line added for *@85.96.46.164 on Tue Jan 21 00:40:10 2014 GMT (from ProxyKiller1!hted5a8f4@coadmin.ayna.org to expire at Wed Jan 22 00:40:10 2014 GMTProxy_yasaktir.~85.96.46.***:80)
:
sil:debugERROR :Closing LinkProxyKiller1[85.96.46.164] (Z:lined (Proxy_yasaktir.~85.96.46.***:80))
:
sil:debug: :irc.ayna.org NOTICE bmbb70e2a5 :*** Global Z:line added for *@85.96.46.164 on Tue Jan 21 00:40:10 2014 GMT (from ProxyKiller1!hted5a8f4@coadmin.ayna.org to expire at Wed Jan 22 00:40:10 2014 GMTProxy_yasaktir.~85.96.46.***:80)
:
sil:debug: :irc.ayna.org NOTICE bmbb70e2a5 :*** Notice -- Client exitingProxyKiller1 (hted5a8f4@85.96.46.164) [Z:lined (Proxy_yasaktir.~85.96.46.***:80)]
:
sil:debug: :irc.ayna.org NOTICE bmbb70e2a5 :*** Notice -- Client exitingChelt (GTI@85.96.46.164) [Z:lined (Proxy_yasaktir.~85.96.46.***:80)]
:
sil:debugERROR :Closing Linkbmbb70e2a5[85.96.46.164] (Z:lined (Proxy_yasaktir.~85.96.46.***:80))
-
[
02:39:51Closing LinkChelt[85.96.46.164] (Z:lined (Proxy_yasaktir.~85.96.46.***:80))
-
[
02:39:51] * Bağlantınız Kesildi 



Taradığı portlardan 80 Portunu sil. Şu kısımdaki:
Kod:

return 80 33 31 47 56 54 70 1046

Bosson 24 Nisan 2014 15:44

Bunu kendi scriptimizde kullanmak için ne yapmamız gerekiyor.

Feragat 24 Nisan 2014 17:16

Alıntı:

Bosson Nickli Üyeden Alıntı (Mesaj 1904)
Bunu kendi scriptimizde kullanmak için ne yapmamız gerekiyor.

1-) Kodları boş bir remote sayfasına atın
2-) Kod'da doldurmanız gereken yerleri, sunucu bilgilerinize göre doldurun.
3-) /b komutu ile botu aktif hale getiriyordunuz yanılmıyorsam.

Kuzencan 24 Temmuz 2015 03:35

süper 10 numara 5646546 yildiz :)


++ mIRCScripting.net hakkında kısaca:

mS; "Gayri resmi mIRC" kullanıcı ve tasarımcı topluluğudur.
2009 yılında kurulan mS; tasarımcı ve geliştiricileri bir araya getiren etkileşim ve iletişim sağlayan bir platformdur.
mS; tasarım, programlama, geliştirme, düzenleme vb. pek çok konu etrafında bir araya gelmiş "mIRC" meraklısı bir çok insan tarafından yaratılan içeriğiyle; kullanıcı dostu, özgün elit, nitelikli kişi ve konularla hizmet sunan mIRC Scripting platformudur.

Özgün içerikten onay almaksızın içeriği yaratan kullanıcılarımız tamamen yada kısmen sorumludur, aynı zamanda söz konusu içerik mS yetkilileri izni olmaksızın, kaynak gösterilse dahi(!) kopyalanamaz ve/ya paylaşılamaz.   Site/içerik hakkında görüş, öneri ve şikayetleriniz için sikayet[at]mircscripting[dot]net e-posta ve ya İletişim adresinden bizlere ulaştırabilirsiniz.



mIRC mIRC Orjinal mIRC İndir mIRC Download mIRC Tutorials mIRC Socket mIRC Commands mIRC Komutlar mIRC Yükle mIRC Dersler mIRC Hazır Kodlar mIRC Classentifier mIRC DLL mIRC Dialog mIRC IRC mIRC FTP mIRC Telnet mIRC Help
mIRC Yardım mIRC Iconlar mIRC Com Object mIRC Binary Files mIRC Picture Windows mIRC Unicode mIRC Forum mIRC Hazır Kodlar mIRC Kod mIRC Script mIRC File Handling mIRC Scripting Language mIRC Scripting Dili mIRC Scripting Info
mIRC Scripting Tutorials



User Alert System provided by Advanced User Tagging v3.1.3 (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd. Runs best on HiVelocity Hosting.

1 2 13 14 16 17 18 19 21 22 23 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 49 50 51 52 54 55 56 57 58 59 60 61 62 63 67 68 69 70 71 72 73 74 75 76

SEO by vBSEO 3.6.1