MIRCX IRC Network
Would you like to react to this message? Create an account in a few clicks or log in to continue.
Search
 
 

Display results as :
 


Rechercher Advanced Search

Web Applications
install Joomla Wordpress Phpbb Drupal FluxBB PunBB osCommerce simple-machines MYBB moodle vBulletin Dolphin-v.7.1.1 PHPNUKE XOOPS
Services
install BorkNet Services X3 Services Anope Atheme Services Srvx IRC Srervices
IRCD
install Snircd IRCU INSPIRCD UNREAL Nefarious Bircd Bahamut Asuka Charybdis
TCL SCRIPT
TCL SCRIPT FOR EGGDROP Allprotection4.7 Antiproxy
Bots
Bots install FishBot bobot++ Eggdrop janus Omega Security Services Botnix Bopm SupyBot PyLink Hopm
Latest topics
» מדריך גירסה INSPIRCD V4
Securitybot  Version: 2.2 by Arthas EmptySat Aug 05, 2023 2:09 am by Chief

» mIRCx IRC Network Config
Securitybot  Version: 2.2 by Arthas EmptySat Jul 15, 2023 9:51 pm by Chief

» ircu2.10.12-pk with dnsbl
Securitybot  Version: 2.2 by Arthas EmptyFri Mar 10, 2023 2:22 pm by Admin

» Guide install PyLink on New version FreeBSD
Securitybot  Version: 2.2 by Arthas EmptyThu Dec 15, 2022 9:39 pm by Chief

» מדריך התקנה PBot על מערכת הפעלה FreeBsd-12
Securitybot  Version: 2.2 by Arthas EmptyMon Dec 05, 2022 5:44 am by Chief

» install Nefarious2 && X3 IRC Services in FreeBsd
Securitybot  Version: 2.2 by Arthas EmptySat Nov 12, 2022 3:12 pm by Chief

» help problem with adduser in Freebsd 12
Securitybot  Version: 2.2 by Arthas EmptyFri Nov 11, 2022 9:06 pm by Chief

» מדריך פקודות והתקנה בסרביס X3
Securitybot  Version: 2.2 by Arthas EmptyFri Oct 28, 2022 1:43 pm by Chief

» מדריך הגדרות WebIRC in Nefarious2
Securitybot  Version: 2.2 by Arthas EmptyThu Apr 07, 2022 4:45 am by Chief

May 2024
MonTueWedThuFriSatSun
  12345
6789101112
13141516171819
20212223242526
2728293031  

Calendar Calendar

Affiliates
free forum

Affiliates
free forum


Securitybot Version: 2.2 by Arthas

Go down

Securitybot  Version: 2.2 by Arthas Empty Securitybot Version: 2.2 by Arthas

Post  Admin Thu Dec 08, 2011 2:56 pm

Code:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;.
;;;.  Securitybot
;;;.  by Arthas
;;;.
;;;.  Version: 2.2
;;;.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
on !@*:action:*:%sec.channel:{
  if (*#* iswm $1-) || (*www* iswm $1-) || (*http* iswm $1-) || (*.com* iswm $1-) || (*.co.il* iswm $1-) && ($gettok($wildsite,2,64) !isin %Sec.Protected) && (%Sec.advertise == ON) && ($nick isreg %sec.channel) {
    if (!%six) {
      if (%Sec.kicks == 1) { ban -k # $nick 2 Banned: 30 minutes tempban $+ $chr(44) Advertise channel detected. ID: %id $+ . | .timer 1 1800 mode # -b $wildsite }
      elseif (%Sec.kicks == 2) { .msg q tempban # $wildsite 30m Banned: 30 minutes tempban $+ $chr(44) Advertise channel detected. ID: %id $+ . }
      else { ban # $wildsite | .notice $nick Banned: 30 minutes tempban $+ $chr(44) Advertise channel detected. ID: %id $+ . | .timer 1 1800 mode # -b $wildsite }
      inc %id
      inc -u2 %six
      set %lastad $nick
      set %lastadv $wildsite
    }
    else {
      if ($nick !isin %lastad) {
        set %advertising $addtok($addtok(%advertising,%lastadv,44),$wildsite,44)
        set %advertisingnicks $addtok($addtok(%advertisingnicks,%lastad,44),$nick,44)
        if (!$timer(adv).type) {
          mode # +mir
          .timeradv 1 5 dobans #
          inc -u2 %work
        }
      }
    }
  }
  if (%Sec.flood == ON) && ($nick isreg #) && ($gettok($wildsite,2,64) !isin %Sec.Protected) {
    inc -u3 % [ $+ [ $nick ] ]
    if (% [ $+ [ $nick ] ] == %Sec.floodtimes) {
      if (%Sec.kicks == 1) { ban -k # $nick 2 Banned: 15 minutes tempban $+ $chr(44) Flood channel detected. ID: %id $+ . | .timer 1 600 mode # -b $wildsite }
      elseif (%Sec.kicks == 2) { .msg q tempban # $wildsite 15m Banned: 15 minutes tempban $+ $chr(44) Flood channel detected. ID: %id $+ . }
      else { ban # $wildsite | .notice $nick Banned: 15 minutes tempban $+ $chr(44) Flood channel detected. ID: %id $+ . | .timer 1 600 mode # -b $wildsite }
      inc %id
    }
  }
  if (%Sec.flood == ON) && (!%work) && ($nick isreg #) && ($nick !== fishbot && $nick !== snailbot && $nick !== triviabot) && ($gettok($wildsite,2,64) !isin %Sec.Protected && $nick !isin %tfldn) {
    inc -u1 %tfld | set -u1 %tfldn $addtok(%tfldn,$nick,44)
    if (%tfld == 8) { inc -u2 %work | mode # +mir | var %x = 1 | while ($gettok(%tfldn,%x,44)) { .timer 1 $calc(%x *3) .msg q tempban # $address($v1,2) 15m Banned: Flood channel detected. ID: %id $+ . | inc %x | inc %id } | unset %tfld %tfldn | .timer 1 $calc(%x *3 +5) mode # -mir }
  }
}
on *:text:*:*:{
  if ($target !ischan) {
    if ($gettok($wildsite,2,64) !isin %Sec.owners) {
      inc -u5 %1
      if (%1 == 20) { unset %1 | mode $me +R }
    }
    if (!$window(@PMS)) .window @PMS | .close -m $nick | .echo @PMS $timestamp ( $+ $Nick $+ ) $1-
    if ($nick ison %sec.channel) {
      if (*#* iswm $1-) && ($gettok($wildsite,2,64) !isin %Sec.owners) && ($nick isreg %sec.channel) && ($gettok($wildsite,2,64) !isin %Sec.Protected) && (%Sec.PMadvertise == ON) && (%dohop) && (%pmad !> 3) {
        if (%Sec.kicks == 1) { .ban %sec.channel $wildsite | kick %sec.channel $nick Banned: 30 minutes tempban $+ $chr(44) PM advertise channel detected. ID: %id $+ . | .timer 1 1800 mode %sec.channel -b $wildsite }
        elseif (%Sec.kicks == 2) { .msg q tempban %sec.channel $wildsite 30m Banned: 30 minutes tempban $+ $chr(44) PM advertise channel detected. ID: %id $+ . }
        else { ban %sec.channel $wildsite | .notice $nick Banned: 30 minutes tempban $+ $chr(44) PM advertise channel detected. ID: %id $+ . | .timer 1 1800 mode %sec.channel -b $wildsite }
        inc %id | inc -u4 %pmad
      }
    }
  }
  if ($me isop %sec.channel) && ($nick ison %sec.channel) {
    if ($target == %sec.channel) || ($target !ischan) {
      if (!sstatus == $1) || (!p-status == $1) || (!pstatus == $1) || (!s-status == $1) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $pstatus | inc -u4 %flood }
      if ($1- == !SAdmins) || ($1- == !SOwners) && (!%flood) {
        if ($numtok(%Sec.owners,32) == 0) { .msg $iif($target ischan,%sec.channel,$nick) $stl(There are no admins.) | inc -u4 %flood }
        else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Security bot admins: $replace(%Sec.Owners,$chr(32),$chr(44) $+ $chr(32))) | inc -u4 %flood }
      }
      if ($1- == !SProtected) || ($1- == !Protected) && (!%flood) {
        if ($numtok(%Sec.protected,32) == 0) { .msg $iif($target ischan,%sec.channel,$nick) $stl(There are no protected users.) | inc -u4 %flood }
        else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Security bot protected: $replace(%Sec.Protected,$chr(32),$chr(44) $+ $chr(32))) | inc -u4 %flood }
      }
      if (!Credits == $1) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $stl($Credits) | inc -u4 %flood }
      if ($gettok($wildsite,2,64) isin %Sec.owners) {
        if ($1 == !total) && ($2 == bans) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $stl(Total bans: < $+ %id $+ >) | inc -u3 %flood }
        if ($1 == !Sstatus) || (!p-status == $1) || (!pstatus == $1) || (!s-status == $1) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $pstatus | inc -u4 %flood }
        if ($1 == !bclear) && (!%flood) { .mode %sec.channel -b *!*@* | inc -u4 %flood }
        if ($1 == !ALL) && (!%flood) {
          if ($2 == on) {
            if (%Sec.Advertise == ON) && (%Sec.PMAdvertise == ON) && (%Sec.flood == ON) && (%Sec.joinpart == ON) && (%Sec.antitakeover == ON) && (%Sec.Clones == ON) && (%Sec.Openproxy == ON) { .msg $iif($target ischan,%sec.channel,$nick) $stl(All protections is already ON) | inc -u3 %flood }
            else { ALLProtectionsON | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) All protections has turned to ON) | inc -u3 %flood }
          }
          if ($2 == off) {
            if (%Sec.Advertise == OFF) && (%Sec.PMAdvertise == OFF) && (%Sec.flood == OFF) && (%Sec.joinpart == OFF) && (%Sec.antitakeover == OFF) && (%Sec.Clones == OFF) && (%Sec.Openproxy == OFF) { .msg $iif($target ischan,%sec.channel,$nick) $stl(All protections is already OFF) | inc -u3 %flood }
            else { ALLProtectionsOFF | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) All protections has turned to OFF) | inc -u3 %flood }
          }
        }
        if ($1 == !Advertise) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.advertise == ON,Advertise protection is already ON,Done $+ $chr(44) Advertise protection has turned to ON)) | set %Sec.advertise ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.advertise == OFF,Advertise protection is already OFF,Done $+ $chr(44) Advertise protection has turned to OFF)) | set %Sec.advertise OFF | inc -u3 %flood }
        }
        if ($1 == !PMAdvertise) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.pmadvertise == ON,PM Advertise protection is already ON,Done $+ $chr(44) PM Advertise protection has turned to ON)) | set %Sec.PMadvertise ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.pmadvertise == OFF,PM Advertise protection is already OFF,Done $+ $chr(44) PM Advertise protection has turned to OFF)) | set %Sec.PMadvertise OFF | inc -u3 %flood }
        }
        if ($1 == !Flood) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.flood == ON,Flood protection is already ON,Done $+ $chr(44) Flood protection has turned to ON)) | set %Sec.Flood ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.flood == OFF,Flood protection is already OFF,Done $+ $chr(44) Flood protection has turned to OFF)) | set %Sec.Flood OFF | inc -u3 %flood }
        }
        if ($1 == !Takeover) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.antitakeover == ON,Takeover protection is already ON,Done $+ $chr(44) Takeover protection has turned to ON)) | set %Sec.AntiTakeOver ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.antitakeover == OFF,Takeover protection is already OFF,Done $+ $chr(44) Takeover protection has turned to OFF)) | set %Sec.AntiTakeOver OFF | inc -u3 %flood }
        }
        if ($1 == !JoinPart) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.joinpart == ON,Joinpart protection is already ON,Done $+ $chr(44) Joinpart protection has turned to ON)) | set %Sec.JoinPart ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.joinpart == OFF,Joinpart protection is already OFF,Done $+ $chr(44) Joinpart protection has turned to OFF)) | set %Sec.JoinPart OFF | inc -u3 %flood }
        }
        if ($1 == !Clones) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.Clones == ON,Clones protection is already ON,Done $+ $chr(44) Clones protection has turned to ON)) | set %Sec.Clones ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.clones == OFF,Clones protection is already OFF,Done $+ $chr(44) Clones protection has turned to OFF)) | set %Sec.Clones OFF | inc -u3 %flood }
        }
        if ($1 == !JoinFlood) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.clones == ON,Joinflood protection is already ON,Done $+ $chr(44) Joinflood protection has turned to ON)) | set %Sec.Clones ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.clones == OFF,Joinflood protection is already OFF,Done $+ $chr(44) Joinflood protection has turned to OFF)) | set %Sec.Clones OFF | inc -u3 %flood }
        }
        if ($1 == !Clones/JoinFlood) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.clones == ON,Joinflood protection is already ON,Done $+ $chr(44) Joinflood protection has turned to ON)) | set %Sec.Clones ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.clones == OFF,Joinflood protection is already OFF,Done $+ $chr(44) Joinflood protection has turned to OFF)) | set %Sec.Clones OFF | inc -u3 %flood }
        }
        if ($1 == !OpenProxy) && (!%flood) {
          if ($2 == on) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.Openproxy == ON,Openproxy protection is already ON,Done $+ $chr(44) Openproxy protection has turned to ON)) | set %Sec.Openproxy ON | inc -u3 %flood }
          if ($2 == off) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif(%sec.advertise == OFF,Advertise protection is already OFF,Done $+ $chr(44) Advertise protection has turned to OFF)) | set %Sec.Openproxy OFF | inc -u3 %flood }
        }
        if ($1 == !dohop) { dohop | inc -u3 %flood }
        if ($1 == !add) && (!%flood) {
          if ($2 == owner) {
            if (*@* iswm $3) {
              if ($3 !isin %sec.owners) { set %sec.owners $addtok(%sec.owners,$3,32) | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) $3 has been added to the ownerslist.) | inc -u3 %flood }
              else { .msg $iif($target ischan,%sec.channel,$nick) $stl($3 is already on the OWNERSLIST) | inc -u3 %flood }
            }
            else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Wrong syntax ! !Add owner ADDRESS) | inc -u3 %flood }
          }
        }
        if ($1 == !del) && (!%flood) {
          if ($2 == owner) {
            if (*@* iswm $3) {
              if ($3 isin %sec.owners) { set %sec.owners $remtok(%sec.owners,$3,1,32) | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) $3 has been deleted from the ownerslist.) | inc -u3 %flood }
              else { .msg $iif($target ischan,%sec.channel,$nick) $stl($3 is NOT on the OWNERSLIST) | inc -u3 %flood }
            }
            else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Wrong syntax !) | inc -u3 %flood }
          }
        }
        if ($1 == !add) && (!%flood) {
          if ($2 == protected) {
            if (*@* iswm $3) {
              if ($3 !isin %sec.protected) { set %sec.protected $addtok(%sec.protected,$3,32) | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) $3 has been added to the protectedlist.) | inc -u3 %flood }
              else { .msg $iif($target ischan,%sec.channel,$nick) $stl($3 is already on the PROTECTEDLIST) | inc -u3 %flood }
            }
            else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Wrong syntax ! !Add owner ADDRESS) | inc -u3 %flood }
          }
        }
        if ($1 == !del) && (!%flood) {
          if ($2 == protected) {
            if (*@* iswm $3) {
              if ($3 isin %sec.protected) { set %sec.protected $remtok(%sec.protected,$3,1,32) | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) $3 has been deleted from the protectedlist.) | inc -u3 %flood }
              else { .msg $iif($target ischan,%sec.channel,$nick) $stl($3 is NOT on the OWNERSLIST) | inc -u3 %flood }
            }
            else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Wrong syntax !) | inc -u3 %flood }
          }
        }
        if ($1 == !Blacklist) { if ($numtok(%sec.blacklist,32) !== 0) { .msg $iif($target ischan,%sec.channel,$nick) $stl(Blacklist users:) | .msg $iif($target ischan,%sec.channel,$nick) $stl($replace(%sec.blacklist,$chr(32),$+($chr(32),$chr(172),$chr(32)))) } | else .msg $iif($target ischan,%sec.channel,$nick) $stl(There are no BLACKLIST users.) | inc -u3 %flood }
        if ($1 == !add) && (!%flood) {
          if ($2 == black) {
            if (*@* iswm $3) {
              if ($3 !isin %sec.blacklist) { set %sec.blacklist $addtok(%sec.blacklist,$3,32) | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) $3 has been added to the blacklist.) | if ($4) { mode %sec.channel +b $address($4,2) | kick %sec.channel $4 You are in my BLACKLIST. } | inc -u3 %flood }
              else { .msg $iif($target ischan,%sec.channel,$nick) $stl($3 is already on the BLACKLIST) | inc -u3 %flood }
            }
            else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Wrong syntax ! !Add black ADDRESS NICK) | inc -u3 %flood }
          }
        }
        if ($1 == !del) && (!%flood) {
          if ($2 == black) {
            if (*@* iswm $3) {
              if ($3 isin %sec.blacklist) { set %sec.blacklist $remtok(%sec.blacklist,$3,1,32) | .msg $iif($target ischan,%sec.channel,$nick) $stl(Done $+ $chr(44) $3 has been deleted from the blacklist.) | inc -u3 %flood }
              else { .msg $iif($target ischan,%sec.channel,$nick) $stl($3 is NOT on the BLACKLIST) | inc -u3 %flood }
            }
            else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Wrong syntax !) | inc -u3 %flood }
          }
        }
        if ($1 == !n) || ($1 == !notice) && (!%flood) {
          if ($2) { mode # -N | .notice # $stl($2-) | mode # +N | inc -u4 %flood }
          else { .msg $iif($target ischan,%sec.channel,$nick) $stl(Please write something.) | inc -u4 %flood }
        }
        if ($1 == !SetChannel) && (!%flood) { set %lastchan %Sec.channel | timer 1 5 unset %lastchan | set %Sec.channel $2 | timer 1 1 .msg $iif($target ischan,%lastchan,$nick) $stl(Done. Changing channel from  $+ %lastchan $+  to %Sec.channel) | .timer 1 2 part %lastchan | timer 1 4 join %Sec.channel | inc -u4 %flood }
        if ($1 == !Channel) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $stl(Correct channel is %Sec.channel) | inc -u4 %flood }
        if ($1 == !Join) || ($1 == !Part) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $stl($iif($1 == !join,Joining to,Parting from) $2) | $iif($1 == !join,join,part) $2 | inc -u4 %flood }
        if ($1 == !Commands) && (!%flood) { .msg $iif($target ischan,%sec.channel,$nick) $stl(Commands are: !All <ON/OFF> ¬ !Advertise <ON/OFF> ¬ !PMAdvertise <ON/OFF> ¬ !Flood <ON/OFF> ¬ !Takeover <ON/OFF> ¬ !JoinPart <ON/OFF>) | .msg $iif($target ischan,%sec.channel,$nick) $stl(!Clones/JoinFlood <ON/OFF> ¬ !OpenProxy <ON/OFF> ¬ !N/!Notice <Yournotice> ¬ !SetChannel <#Channel> ¬ !Channel) | .msg $iif($target ischan,%sec.channel,$nick) $stl(!Join <#Channel> ¬ !Part <#Channel> ¬ !Add black <ADDRESS> <*NICK*> ¬ !Del black <ADDRESS> ¬ !BClear) | inc -u4 %flood }
      }
    }
    if ($target iswm %sec.channel) {
      if (*#* iswm $1-) || (*www* iswm $1-) || (*http* iswm $1-) || (*.com* iswm $1-) || (*.co.il* iswm $1-) && ($gettok($wildsite,2,64) !isin %Sec.Protected) && (%Sec.advertise == ON) && ($nick isreg %sec.channel) {
        if (!%six) {
          if (%Sec.kicks == 1) { ban -k # $nick 2 Banned: 30 minutes tempban $+ $chr(44) Advertise channel detected. ID: %id $+ . | .timer 1 1800 mode # -b $wildsite }
          elseif (%Sec.kicks == 2) { .msg q tempban # $wildsite 30m Banned: 30 minutes tempban $+ $chr(44) Advertise channel detected. ID: %id $+ . }
          else { ban # $wildsite | .notice $nick Banned: 30 minutes tempban $+ $chr(44) Advertise channel detected. ID: %id $+ . | .timer 1 1800 mode # -b $wildsite }
          inc %id
          inc -u2 %six
          set %lastad $nick
          set %lastadv $wildsite
        }
        else {
          if ($nick !isin %lastad) {
            set %advertising $addtok($addtok(%advertising,%lastadv,44),$wildsite,44)
            set %advertisingnicks $addtok($addtok(%advertisingnicks,%lastad,44),$nick,44)
            if (!$timer(adv).type) {
              mode # +mir
              .timeradv 1 5 dobans #
              inc -u2 %work
            }
          }
        }
      }
      if (%Sec.flood == ON) && ($nick isreg %sec.channel) && ($gettok($wildsite,2,64) !isin %Sec.Protected) {
        inc -u3 % [ $+ [ $nick ] ]
        if (% [ $+ [ $nick ] ] == %Sec.floodtimes) {
          if (%Sec.kicks == 1) { ban -k # $nick 2 Banned: 15 minutes tempban $+ $chr(44) Flood channel detected. ID: %id $+ . | .timer 1 600 mode # -b $wildsite }
          elseif (%Sec.kicks == 2) { .msg q tempban # $wildsite 15m Banned: 15 minutes tempban $+ $chr(44) Flood channel detected. ID: %id $+ . }
          else { ban # $wildsite | .notice $nick Banned: 15 minutes tempban $+ $chr(44) Flood channel detected. ID: %id $+ . | .timer 1 600 mode # -b $wildsite }
          inc %id
        }
      }
      if (%Sec.flood == ON) && (!%work) && ($nick isreg #) && ($nick !== fishbot && $nick !== snailbot && $nick !== triviabot) && ($gettok($wildsite,2,64) !isin %Sec.Protected && $nick !isin %tfldn) {
        inc -u1 %tfld | set -u1 %tfldn $addtok(%tfldn,$nick,44)
        if (%tfld == 8) { inc -u2 %work | mode # +mir | var %x = 1 | while ($gettok(%tfldn,%x,44)) { .timer 1 $calc(%x *3) .msg q tempban # $address($v1,2) 15m Banned: Flood channel detected. ID: %id $+ . | inc %x | inc %id } | unset %tfld %tfldn | .timer 1 $calc(%x *3 +5) mode # -mir }
      }
    }
  }
}
on !@*:join:%sec.channel: {
  if ($gettok($wildsite,2,64) isin %sec.blacklist) && ($nick !== wowbot) && ($nick !== triviabot) { mode %sec.channel +b $wildsite | .timer 1 1 kick %sec.channel $nick You are in my BLACKLIST. }
  if (%Sec.openproxy = ON && $level($ulist($address($nick,5))) == OpenProxy) {
    inc %id
    if (!% [ $+ [ $maddress ] ]) {
      .msg q tempban # $maddress 30m Banned: Invaild Host. ID: %id $+ .
      inc -u5 % $+ $maddress
    }
  }
  if (%Sec.Clones == ON) && (*.users.quakenet.org !iswm $wildsite) && ($nick != Q) && ($nick != S) && ($nick != fishbot) && ($nick != snailbot) && ($nick != triviabot) && ($nick != wowbot) {
    hinc $+(-mu,$iif($hget(jflood,join).unset,$ifmatch,2)) JOIN FLOOD
    if (!$read(clonesnicks.txt, w ,$nick)) {
      write clonesnicks.txt $wildsite
      if (%sec.cloness != ON) {
      .timer2 1 4 .remove clonesnicks.txt }
    }
    if ($hget(join,flood) >= 4) && (%sec.cloness != ON) {
      inc -u4 %work
      timer1 off
      timer2 off
      mode # +imr
      set %sec.cloness ON
      .timer 1 1 qbanC #
      .timer 1 25 mode # -imr
      .timer 1 25 set %sec.cloness OFF
    }
  }
}
on !@*:part:%sec.channel: {
  if ($gettok($wildsite,2,64) !isin %Sec.Protected) {
    if (%Sec.joinpart == ON) && ($nick isreg #) {
      inc -u15 %Sec.Join/Part. [ $+ [ $nick ] ]
      if (%Sec.Join/Part. [ $+ [ $nick ] ] == %Sec.Joinparttimes) {
        if (%Sec.kicks == 1) { ban -k # $nick 2 Banned: 15 minutes tempban $+ $chr(44) Join part. ID: %id $+ . | .timer 1 600 mode # -b $wildsite }
        elseif (%Sec.kicks == 2) { .msg q tempban # $wildsite 15m Banned: 15 minutes tempban $+ $chr(44) Join part. ID: %id $+ . }
        else { ban # $wildsite | .notice $nick Banned: 15 minutes tempban $+ $chr(44) Join part. ID: %id $+ . | .timer 1 600 mode # -b $wildsite }
        inc %id
      }
    }
  }
}
on !@*:ban:%sec.channel:{
  if ($replace($banmask,*!*@,) isin %Sec.Protected) && ($nick != $me) {
    .msg q bandel # $banmask
    .msg q tempban # $wildsite 30m Banned: Dont handle with my boss.
  }
  if (%Sec.Antitakeover == ON) && ($nick !== Q) && ($nick ison %Sec.channel) && ($gettok($wildsite,2,64) !isin %Sec.Protected) {
    inc -u10 % [ $+ [ $nick ] ]
    if (% [ $+ [ $nick ] ] == 5) {
      .msg q banclear #
      .msg q tempban # $wildsite 30m Banned: Dont try to takeover here.
      .msg q REMOVEUSER # $nick
      unset % [ $+ [ $nick ] ]
    }
  }
  if (* $+ $gettok($address($me,2),2,64) iswm $banmask) && ($nick != $me) {
    if ($nick !== Q) {
      .msg q unbanme #
      .msg q invite #
      .msg q tempban # $wildsite 30m Banned: Dont ban me ...
      .msg q REMOVEUSER # $nick
      timer 1 2 join #
      timer 1 1 .msg q unbanme #
    }
    else {
      .msg q unbanme #
      .msg q invite #
      timer 1 1 join #
    }
  }
}
on !@*:kick:%sec.channel:{
  if ($address($knick,2) isin %Sec.Protected) && ($nick != $me) && ($nick != Q) {
    .msg q bandel # $address($knick,2)
    .msg q tempban # $wildsite 30m Banned: Dont handle with my boss.
    timer 1 2 invite # $knick
  }
  if ($knick iswm $me) && ($gettok($wildsite,2,64) !isin %Sec.Protected) {
    if ($nick !== Q) {
      .msg q unbanme #
      .msg q invite #
      .msg q REMOVEUSER # $nick
      timer 1 1 join #
      .msg q tempban # $wildsite 30m Banned: Dont kick me ...
    }
    else {
      .msg q unbanme #
      .msg q invite #
      timer 1 1 join #
    }
  }
  if (%Sec.Antitakeover == ON) && ($nick ison %Sec.channel) && ($nick !== Q) {
    inc -u10 % [ $+ [ $nick ] ]
    if (% [ $+ [ $nick ] ] == 5) {
      .msg q banclear #
      .msg q REMOVEUSER # $nick
      .msg q tempban # $wildsite 30m Banned: Dont try to takeover here.
    }
  }
}
alias Credits return This SecurityBOT has been created by Arthas. Version 2.2
dialog Security {
  title "Securitybot - Arthas"
  size -1 -1 114 146
  option dbu notheme
  tab "Settings", 1, 6 5 101 122
  text "Set channel:", 3, 11 24 31 8, tab 1
  edit "", 4, 43 22 50 11, tab 1 autohs
  text "User modes:", 5, 10 37 31 8, tab 1
  edit "", 6, 43 35 50 11, tab 1 autohs
  text "Flood", 7, 10 50 15 8, tab 1
  edit "", 8, 26 49 10 10, tab 1 autohs
  text "times in 3 seconds", 9, 37 50 45 8, tab 1
  text "J/Part", 10, 10 63 15 8, tab 1
  edit "", 11, 26 62 10 10, tab 1 autohs
  text "On violating the rules:", 13, 10 77 54 8, tab 1
  radio "Ban + kick", 14, 9 87 50 10, tab 1
  radio "Ban + notice", 15, 9 95 50 10, tab 1
  radio "Q ban", 16, 9 103 50 10, tab 1
  button "Update page", 17, 68 113 37 12, tab 1
  text "times in 15 seconds", 12, 37 63 49 8, tab 1
  button "Reset IDs", 18, 9 114 37 10, tab 1
  tab "Accesses", 2
  text "Owners:", 19, 10 22 25 8, tab 2
  list 21, 10 31 93 26, tab 2 size
  list 22, 10 85 93 26, tab 2 size
  edit "", 23, 38 21 65 10, tab 2 autohs
  button "Clear", 28, 11 111 30 12, tab 2
  button "Remove", 30, 73 111 30 12, tab 2
  button "Add", 29, 42 111 30 12, tab 2
  button "Add", 25, 42 57 30 12, tab 2
  button "Remove", 27, 73 57 30 12, tab 2
  text "Protected:", 20, 10 76 25 8, tab 2
  edit "", 24, 38 75 65 10, tab 2 autohs
  button "Clear", 26, 11 57 30 12, tab 2
  button "Protections", 31, 6 129 37 12
  button "Credits", 32, 71 129 37 12
  button "OK", 33, 44 129 26 12, ok
}
dialog Protections {
  title "Security"
  size -1 -1 57 97
  option dbu
  check "Advertise", 1, 2 6 50 10
  check "PM advertise", 2, 2 16 50 10
  check "Flood", 3, 2 26 50 10
  check "Join/Part", 4, 2 36 50 10
  check "Takeover", 5, 2 46 50 10
  check "Join flood", 6, 2 56 50 10
  check "Open proxy", 7, 2 66 50 10
  check "All protections", 8, 2 86 50 10
  box "", 9, -19 80 89 50
}
alias allon if (%Sec.Advertise == ON) && (%Sec.PMAdvertise == ON) && (%Sec.flood == ON) && (%Sec.joinpart == ON) && (%Sec.antitakeover == ON) && (%Sec.Clones == ON) && (%Sec.Openproxy == ON) did -c protections 8
alias Security { if (!$dialog(Security)) dialog -md Security Security }
on *:dialog:*:*:*:{
  if ($dname == protections) {
    if ($devent == init) {
      if (%Sec.Advertise == ON) did -c $DName 1 | if (%Sec.PMadvertise == ON) did -c $DName 2 | if (%Sec.flood == ON) did -c $DName 3 | if (%Sec.joinpart == ON) did -c $DName 4 | if (%Sec.antitakeover == ON) did -c $DName 5 | if (%Sec.clones == ON) did -c $DName 6 | if (%Sec.openproxy == ON) did -c $DName 7
      if (%Sec.Advertise == ON) && (%Sec.PMAdvertise == ON) && (%Sec.flood == ON) && (%Sec.joinpart == ON) && (%Sec.antitakeover == ON) && (%Sec.Clones == ON) && (%Sec.Openproxy == ON) did -c $DName 8
    }
    if ($devent == sclick) {
      If ($Did == 1) {
        if ($did(1).state == 1) { set %Sec.advertise ON | allon }
        else { set %Sec.advertise OFF | did -u $dname 8 }
      }
      If ($Did == 2) {
        if ($did(2).state == 1) { set %Sec.PMadvertise ON | allon }
        else { set %Sec.PMadvertise OFF | did -u $dname 8 }
      }
      If ($Did == 3) {
        if ($did(3).state == 1) { set %Sec.flood ON | allon }
        else { set %Sec.flood OFF | did -u $dname 8 }
      }
      If ($Did == 4) {
        if ($did(4).state == 1) { set %Sec.joinpart ON | allon }
        else { set %Sec.joinpart OFF | did -u $dname 8 }
      }
      If ($Did == 5) {
        if ($did(5).state == 1) { set %Sec.antitakeover ON | allon }
        else { set %Sec.antitakeover OFF | did -u $dname 8 }
      }
      If ($Did == 6) {
        if ($did(6).state == 1) { set %Sec.Clones ON | allon }
        else { set %Sec.Clones OFF | did -u $dname 8 }
      }
      If ($Did == 7) {
        if ($did(7).state == 1) { set %Sec.Openproxy ON | allon }
        else { set %Sec.Openproxy OFF | did -u $dname 8 }
      }
      If ($Did == 8) {
        if ($did(8).state == 1) { AllprotectionsON | var %x = 1 | while (%x <= 7) { did -c protections %x | inc %x } }
        else { AllprotectionsOFF | var %x = 1 | while (%x <= 7) { did -u protections %x | inc %x } }
      }
    }
  }
  if ($dname == Security) {
    if ($devent == init) {
      var %x = 1, %o = 1 | while (%x <= $numtok(%Sec.Owners,32)) { did -a $dname 21 $gettok(%Sec.Owners,%x,32) | inc %x } | while (%x <= $numtok(%Sec.Protected,32)) { did -a $dname 22 $gettok(%Sec.Protected,%x,32) | inc %x }
      did -a $dname 4 $iif(%sec.channel,%sec.channel,Not set)
      did -a $dname 6 $iif(%sec.modes,%sec.modes,Not set)
      did -a $dname 8 $iif(%Sec.floodtimes,%Sec.floodtimes,Not set)
      did -a $dname 11 $iif(%Sec.Joinparttimes,%Sec.Joinparttimes,Not set)
      if (%sec.kicks == 1) { did -c $dname 14 }
      if (%sec.kicks == 2) { did -c $dname 16 }
      if (!%sec.kicks) { did -c $dname 15 }
    }
    if ($devent == sclick) {
      if ($did == 17) {
        if (#* iswm $did(4)) { set %sec.channel $did(4) | join $did(4) }
        if (* iswm $did(6)) { set %Sec.modes $did(6) | mode $me + $+ $did(6) }
        if (* iswm $did(11)) { set %Sec.Joinparttimes $did(11) }
        if (* iswm $did(8)) { set %Sec.floodtimes $did(8) }
      }
      if ($did == 32) { echo -a This security bot has been created by Arthas }
      if ($Did == 31) { dialog -m protections protections }
      If ($Did == 14) && ($did(14).state == 1) { set %Sec.kicks 1 }
      If ($Did == 15) && ($did(15).state == 1) { unset %Sec.kicks }
      If ($Did == 16) && ($did(16).state == 1) { set %Sec.kicks 2 }
      if ($Did == 18) { unset %id }
      If ($Did == 27) && ($did($dname,21).seltext) { var %s = $did($dname,21).seltext | did -d $DName 21 $did($DName,21).sel | set %Sec.Owners $remtok(%Sec.Owners,%s,1,32) }
      If ($Did == 30) && ($did($dname,22).seltext) { var %u = $did($dname,22).seltext | did -d $DName 22 $did($DName,22).sel | set %Sec.protected $remtok(%Sec.Protected,%u,1,32) }
      If ($Did == 25) && (*.*.* iswm $did(23)) && ($did(23) !isin %Sec.Owners) { did -a $DName 21 $did(23) | set %Sec.Owners $addtok(%Sec.Owners,$did(23),32) }
      If ($Did == 29) && (*.*.* iswm $did(24)) && ($did(24) !isin %Sec.Protected) { did -a $DName 22 $did(24) | set %Sec.Protected $addtok(%Sec.Protected,$did(24),32) }
      If ($Did == 26) { did -r $dname 37 | unset %Sec.Owners }
      If ($Did == 28) { did -r $dname 45 | unset %Sec.Protected }
    }
  }
}
menu * {
  .Security Bot: Security
}
alias AllprotectionsON set %Sec.Advertise ON | set %Sec.AntiTakeOver ON | set %Sec.Clones ON | set %Sec.flood ON | set %Sec.joinpart ON | set %Sec.openproxy ON | set %Sec.PMadvertise ON
alias AllprotectionsOFF set %Sec.Advertise OFF | set %Sec.AntiTakeOver OFF | set %Sec.Clones OFF | set %Sec.flood OFF | set %Sec.joinpart OFF | set %Sec.openproxy OFF | set %Sec.PMadvertise OFF
alias stl return %Security.Style1 $+ %Security.Color1 $1- %Security.Style2
on *:MODE:%Sec.channel: if ($1 == +k) || ($1 == +ik) || ($1 == +i) && (%Sec.AntiTakeOver == ON) && ($nick !iswm Q) && ($nick !== $me) && ($wildsite !isin %Sec.Protected) { .msg q REMOVEUSER # $nick | .msg q tempban # $address($nick,2) 30m Banned: Dont try to takeover here. | mode # - $+ ik $2 }
alias dohop inc -u8 %dohop | mode %sec.channel +r | .timer 1 1 hop %sec.channel | .timer 1 3 mode %sec.channel -r | .timer 1 2 .msg %sec.channel $stl(Checking: $iif(%sec.pmadvertise == ON,PM Advertise $+ $Chr(44)) Blacklist users $+ $iif(%sec.openproxy == ON,$+ $Chr(44) Proxy hosts)) | if (%sec.pmadvertise == ON || %sec.openproxy == ON) { .timer 1 4 .who %sec.channel } 
raw 352:*: {
  if (%dohop) {
    if (%sec.openproxy == ON && $level($ulist($4)) == OpenProxy) {
      inc %id
      var %p = 1
      if (!% [ $+ [ $maddress($4) ] ]) {
        .timer 1 $calc(%p *3) .msg q tempban %sec.channel $maddress($4) 30m Banned: Invaild Host. ID: %id $+ .
        inc -u5 % $+ $maddress($4)
        inc %p
      }
    }
    if ($gettok($address($6,2),2,64) isin %sec.blacklist) { if ($nick !iswm wowbot && $nick !iswm triviabot) { mode %sec.channel +b $address($6,2) | kick %sec.channel $6 You are in my BLACKLIST. } }
  }
}
on *:connect:{ join %sec.channel | .remove clonesnicks.txt | set %sec.cloness OFF | timer 0 1000 dohop | mode $me +x | mode $me %Sec.modes | set %Security.Style1 14,1[3« | set %Security.Style2 3,1»14,1] | set %Security.Color1 0,1 | set %Security.Color2 3 | set %Security.Color3 14 }
alias pstatus return $stl(Advertise: $iif(%Sec.advertise == ON,3ON,4OFF) %Security.Color1 $+ PMAdvertise: $iif(%Sec.PMadvertise == ON,3ON,4OFF) %Security.Color1 $+ Flood: $iif(%Sec.flood == ON,3ON,4OFF) %Security.Color1 $+ JoinPart: $iif(%Sec.joinpart == ON,3ON,4OFF) %Security.Color1 $+ TakeOver: $iif(%Sec.antitakeover == ON,3ON,4OFF) %Security.Color1 $+ Clones/JoinFlood: $iif(%Sec.clones == ON,3ON,4OFF) %Security.Color1 $+ Openproxy: $iif(%Sec.openproxy == ON,3ON,4OFF))
alias qbanc {
  var %x = 1, %i = 1
  while ($read(clonesnicks.txt,%x)) {
    if ($read(clonesnicks.txt,%x)) {
      .timer 1 %i .msg q tempban $1 $iif($maddress($read(clonesnicks.txt,%x)),$maddress($read(clonesnicks.txt,%x)),$read(clonesnicks.txt,%x)) 15m Banned: JoinFlood. ID: %id $+ . | inc %id | inc %i 1
    }
    inc %x
  }
  .timer 1 $calc(%i +1) mode $1 -imr
  .timer 1 %i .remove clonesnicks.txt
  .timer 1 %i unset %Sec.ClonesS
}
alias dobans {
  var %c = 1, %t = 1
  while (%c <= $numtok(%advertising,44)) { .timer 1 $calc(%c *3) .msg q tempban $1 $iif($maddress($gettok(%advertising,%c,44)),$maddress($gettok(%advertising,%c,44)),$gettok(%advertising,%c,44)) 30m Banned: 30 minutes tempban $+ $chr(44) Flood advertise channel detected. ID: %id $+ . | inc %id | inc %c }
  .timer 1 $calc(%c *3 +5) mode $1 -imr | .timer 1 $calc(%c +1) .unset %advertisingnicks | .timer 1 $calc(%c +1) .unset %advertising | dec %id
}
Admin
Admin
Admin

מספר הודעות : 269
Join date : 2009-09-12
Age : 43
מיקום : mIRCX IRC Network

https://mircx.forumotion.net

Back to top Go down

Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum