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
[חדש] - Protection Server EmptySat Aug 05, 2023 2:09 am by Chief

» mIRCx IRC Network Config
[חדש] - Protection Server EmptySat Jul 15, 2023 9:51 pm by Chief

» ircu2.10.12-pk with dnsbl
[חדש] - Protection Server EmptyFri Mar 10, 2023 2:22 pm by Admin

» Guide install PyLink on New version FreeBSD
[חדש] - Protection Server EmptyThu Dec 15, 2022 9:39 pm by Chief

» מדריך התקנה PBot על מערכת הפעלה FreeBsd-12
[חדש] - Protection Server EmptyMon Dec 05, 2022 5:44 am by Chief

» install Nefarious2 && X3 IRC Services in FreeBsd
[חדש] - Protection Server EmptySat Nov 12, 2022 3:12 pm by Chief

» help problem with adduser in Freebsd 12
[חדש] - Protection Server EmptyFri Nov 11, 2022 9:06 pm by Chief

» מדריך פקודות והתקנה בסרביס X3
[חדש] - Protection Server EmptyFri Oct 28, 2022 1:43 pm by Chief

» מדריך הגדרות WebIRC in Nefarious2
[חדש] - Protection Server EmptyThu Apr 07, 2022 4:45 am by Chief

April 2024
MonTueWedThuFriSatSun
1234567
891011121314
15161718192021
22232425262728
2930     

Calendar Calendar

Affiliates
free forum

Affiliates
free forum


[חדש] - Protection Server

Go down

[חדש] - Protection Server Empty [חדש] - Protection Server

Post  Admin Wed Aug 31, 2011 9:39 pm

הקוד נבנה ע"י Or ומטרתו הוא להגן על השרת מפני הצפות גלובאליות, כלומר מפני בוטנטים מכל ההיבטים:

  • הגנה מפני הצפות הצטרפות גלובאלית לערוץ

  • הגנה מפני הצפות כניסות לשרת של בוטנטים

  • הגנה מפני שינוי ניקים מהירים של בוטנטים

  • הגנה מפני הצפות טקסט גלובאליות

  • הגנה מפני הצפות נוטיס גלובאליות

  • הגנה מפני הצפות Ctcp גלובאליות

  • הגנה מפני הצפות DCC גלובאליות


Code:

dialog botnets {
  title "Botnets Protection"
  size -1 -1 173 137
  option dbu notheme
  check "Connect Flood Server", 1, 8 26 65 10
  edit "", 2, 74 26 10 10, center
  text "In", 3, 85 27 6 8, center
  edit "", 4, 92 26 10 10, center
  text "Sec(s)", 5, 103 27 16 8
  check "Nicks Change Flood", 6, 8 41 65 10
  edit "", 7, 74 41 10 10, center
  edit "", 8, 92 41 10 10, center
  text "In", 9, 85 42 6 8, center
  text "Sec(s)", 10, 103 42 16 8
  check "Global Text Flood", 11, 8 56 65 10
  edit "", 12, 74 56 10 10, center
  edit "", 13, 92 56 10 10, center
  text "In", 14, 85 57 6 8, center
  text "Sec(s)", 15, 103 57 16 8
  check "Global Notice Flood", 16, 8 71 65 10
  edit "", 17, 74 71 10 10, center
  edit "", 18, 92 71 10 10, center
  text "In", 19, 85 72 6 8, center
  text "Sec(s)", 20, 103 72 16 8
  check "Global Ctcp Flood", 21, 8 86 65 10
  edit "", 22, 74 86 10 10, center
  edit "", 23, 92 86 10 10, center
  text "In", 24, 85 87 6 8, center
  text "Sec(s)", 25, 103 87 16 8
  combo 26, 124 26 40 11, drop
  combo 27, 124 41 40 11, drop
  combo 28, 124 56 40 11, drop
  combo 29, 124 71 40 11, drop
  combo 30, 124 86 40 11, drop
  box "Protect Options", 31, 5 2 117 117
  box "Punishment", 32, 122 2 45 117
  button "Servers Protected", 33, 4 123 48 10, flat
  button "OK", 34, 84 123 22 10, flat ok
  check "Global DCC Flood", 35, 8 101 65 10
  edit "", 36, 74 101 10 10, center
  text "In", 37, 85 102 6 8, center
  edit "", 38, 92 101 10 10, center
  text "Sec(s)", 39, 103 102 16 8
  combo 40, 124 101 40 11, drop
  check "Join Flood Channel", 41, 8 11 65 10
  edit "", 42, 74 11 10 10, center
  text "In", 43, 85 12 6 8, center
  edit "", 44, 92 11 10 10, center
  text "Sec(s)", 45, 103 12 16 8
  combo 46, 124 11 40 11, drop
  button "Default", 47, 56 123 24 10, flat
}
 
dialog serpro {
  title "Servers List"
  size -1 -1 80 147
  option dbu notheme
  combo 1, 3 17 71 79, size
  button "Add", 2, 4 4 33 10, flat
  button "Del", 3, 40 4 33 10, flat
  box "", 4, 1 -2 77 101
  button "Close", 5, 22 135 33 10, flat cancel
  text "servers masks examples:", 6, 5 102 69 8, disable center
  text "0.0.0.0", 7, 5 110 69 7, disable center
  text "irc.network.co.il", 8, 5 117 69 7, disable center
  text "network", 9, 5 124 69 7, disable center
  box "", 10, 1 96 77 38
}
 
on *:dialog:serpro:init:0:{
  if ($lines(serpro.txt) > 0) { filter -fo serpro.txt $dname 1 }
}
 
on *:dialog:serpro:sclick:*:{
  if ($did == 2) {
    if ($did(1)) && (!$read(serpro.txt,w,$did(1))) { did -a $dname 1 $did(1) | write serpro.txt $did(1) | did -c $dname 1 $did(1).lines }
  }
  elseif ($did == 3) {
    if ($did(1)) && ($read(serpro.txt,w,$did(1))) { did -d $dname 1 $didwm($dname,1,$did(1)) | write -dl [ $+ [ $readn ] ] serpro.txt }
  }
}
 
on *:dialog:botnets:init:0:{
  did -ra $dname 26,27 Gline
  did -c $dname 26,27 1
  didtok $dname 28-30,40,46 32 Gline Kick Kick+ban
  if (%E.Join) { did -c $dname 41 }
  else { did -b $dname 42-46 }
  if (%E.Connect) { did -c $dname 1 }
  else { did -b $dname 2-5,26 }
  if (%E.Nick) { did -c $dname 6 }
  else { did -b $dname 7-10,27 }
  if (%E.Text) { did -c $dname 11 }
  else { did -b $dname 12-15,28 }
  if (%E.Notice) { did -c $dname 16 }
  else { did -b $dname 17-20,29 } 
  if (%E.Ctcp) { did -c $dname 21 }
  else { did -b $dname 22-25,30 }
  if (%E.Dcc) { did -c $dname 35 }
  else { did -b $dname 36-40 }
  if (%JoinFlood) { did -ra $dname 42 %JoinFlood }
  else { did -ra $dname 42 3 | set %JoinFlood 3 }
  if (%JoinSec) { did -ra $dname 44 %JoinSec }
  else { did -ra $dname 44 3 | set %JoinSec 3 }
  if (%ConnectFlood) { did -ra $dname 2 %ConnectFlood }
  else { did -ra $dname 2 3 | set %ConnectFlood 3 }
  if (%ConnectSec) { did -ra $dname 4 %ConnectSec }
  else { did -ra $dname 4 4 | set %ConnectSec 4 }
  if (%NickFlood) { did -ra $dname 7 %NickFlood }
  else { did -ra $dname 7 3 | set %NickFlood 3 }
  if (%NickSec) { did -ra $dname 8 %NickSec }
  else { did -ra $dname 8 4 | set %NickSec 4 }
  if (%TextFlood) { did -ra $dname 12 %TextFlood }
  else { did -ra $dname 12 3 | set %TextFlood 3 }
  if (%TextSec) { did -ra $dname 13 %TextSec }
  else { did -ra $dname 13 4 | set %TextSec 4 }
  if (%NoticeFlood) { did -ra $dname 17 %NoticeFlood }
  else { did -ra $dname 17 3 | set %NoticeFlood 3 }
  if (%NoticeSec) { did -ra $dname 18 %NoticeSec }
  else { did -ra $dname 18 4 | set %NoticeSec 4 }
  if (%CtcpFlood) { did -ra $dname 22 %CtcpFlood }
  else { did -ra $dname 22 3 | set %CtcpFlood 3 }
  if (%CtcpSec) { did -ra $dname 23 %CtcpSec }
  else { did -ra $dname 23 4 | set %CtcpSec 4 }
  if (%DccFlood) { did -ra $dname 36 %DccFlood }
  else { did -ra $dname 36 3 | set %DccFlood 3 }
  if (%DccSec) { did -ra $dname 38 %DccSec }
  else { did -ra $dname 38 4 | set %DccSec 4 }
  if (%PunJoin) { did -c $dname 46 %PunJoin }
  else { did -c $dname 46 3 }
  if (%PunText) { did -c $dname 28 %PunText }
  else { did -c $dname 28 3 }
  if (%PunNotice) { did -c $dname 29 %PunNotice }
  else { did -c $dname 29 3 }
  if (%PunCtcp) { did -c $dname 30 %PunCtcp }
  else { did -c $dname 30 1 }
  if (%PunDcc) { did -c $dname 40 %PunDcc }
  else { did -c $dname 40 1 }
}
 
on *:dialog:botnets:sclick:*:{
  if ($did == 33) && (!$dialog(serpro)) { dialog -m serpro serpro }
  elseif ($did == 47) {
    did -c $dname 46 3
    did -c $dname 26-27,30,40 1
    did -c $dname 28,29 3
    set %JoinFlood 3
    set %JoinSec 3
    set %ConnectFlood 3
    set %ConnectSec 4
    set %NickFlood 3
    set %NickSec 4
    set %NoticeFlood 3
    set %NoticeSec 4
    set %CtcpFlood 3
    set %CtcpSec 4
    set %DccFlood 3
    set %DccSec 4
    did -ra $dname 42,44,2,7,12,17,22,36 3
    did -ra $dname 4,8,13,18,23,38 4
    set %PunJoin 3
    set %PunText 3
    set %PunNotice 3
    set %PunCtcp 1
    set %PunDcc 1
  }
  elseif ($did == 41) {
    set %E.Join $iif($did(41).state,1,$null)
    did $iif(%E.Join,-e,-b) $dname 42-46
  }
  elseif ($did == 1) {
    set %E.Connect $iif($did(1).state,1,$null)
    did $iif(%E.Connect,-e,-b) $dname 2-5,26
  }
  elseif ($did == 6) {
    set %E.Nick $iif($did(6).state,1,$null)
    did $iif(%E.Nick,-e,-b) $dname 7-10,27
  }
  elseif ($did == 11) {
    set %E.Text $iif($did(11).state,1,$null)
    did $iif(%E.Text,-e,-b) $dname 12-15,28
  }
  elseif ($did == 16) {
    set %E.Notice $iif($did(16).state,1,$null)
    did $iif(%E.Notice,-e,-b) $dname 17-20,29
  }
  elseif ($did == 21) {
    set %E.Ctcp $iif($did(21).state,1,$null)
    did $iif(%E.Ctcp,-e,-b) $dname 22-25,30
  }
  elseif ($did == 35) {
    set %E.Dcc $iif($did(35).state,1,$null)
    did $iif(%E.Dcc,-e,-b) $dname 36-40
  }
  elseif ($did == 46) { set %PunJoin $did(46).sel }
  elseif ($did == 28) { set %PunText $did(28).sel }
  elseif ($did == 29) { set %PunNotice $did(29).sel }
  elseif ($did == 30) { set %PunCtcp $did(30).sel }
  elseif ($did == 40) { set %PunDcc $did(40).sel }
}
 
on *:dialog:botnets:edit:*:{
  if ($did == 42) { set %JoinFlood $did(42) }
  elseif ($did == 44) { set %JoinSec $did(44) }
  elseif ($did == 2) { set %ConnectFlood $did(2) }
  elseif ($did == 4) { set %ConnectSec $did(4) }
  elseif ($did == 7) { set %NickFlood $did(7) }
  elseif ($did == 8) { set %NickSec $did(8) }
  elseif ($did == 12) { set %TextFlood $did(12) }
  elseif ($did == 13) { set %TextSec $did(13) }
  elseif ($did == 17) { set %NoticeFlood $did(17) }
  elseif ($did == 18) { set %NoticeSec $did(18) }
  elseif ($did == 22) { set %CtcpFlood $did(22) }
  elseif ($did == 23) { set %CtcpSec $did(23) }
  elseif ($did == 36) { set %DccFlood $did(36) }
  elseif ($did == 38) { set %DccSec $did(38) }
}
 
alias bk {
  if (%PunJoin == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok($1,1,32) - :Abuse - Join Flood! }
  elseif (%PunJoin == 2) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { kick %fChan $gettok($1,1,32) Abuse - Join Flood! }
  elseif (%PunJoin == 3) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { ban -k %fChan $gettok($1,1,32) Join Flood! }
  dline %twinC $fline(%twinC,$1)
}
alias sk {
  gline $gettok($1,1,32) - :Botnets Flood!
  dline %twinS $fline(%twinS,$1)
}
alias nk {
  if (%PunNotice == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok($1,1,32) - :Abuse - Notice Flood! }
  elseif (%PunNotice == 2) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { kick %NChan $gettok($1,1,32) Abuse - Notice Flood! }
  elseif (%PunNotice == 3) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { ban -k %NChan $gettok($1,1,32) Notice Flood! }
  dline %twinCN $fline(%twinCN,$1)
}
alias tk {
  if (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok($1,1,32) - :Abuse - Text Flood! }
  elseif (%PunText == 2) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { kick %TChan $gettok($1,1,32) Abuse - Text Flood! }
  elseif (%PunText == 3) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { ban -k %TChan $gettok($1,1,32) Text Flood! }
  dline %twinCT $fline(%twinCT,$1)
}
alias pk {
  if (%PunCtcp == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok($1,1,32) - :Abuse - Ctcp Flood! }
  elseif (%PunCtcp == 2) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { kick %PChan $gettok($1,1,32) Abuse - Ctcp Flood! }
  elseif (%PunCtcp == 3) && (($me isop $chan) || ($regex($usermode,/[AoNO]/i))) { ban -k %PChan $gettok($1,1,32) Ctcp Flood! }
  dline %twinCP $fline(%twinCP,$1)
}
 
alias nck {
  gline $iif($regex($gettok($1,4,32),/(\d+\.\d+\.\d+\.\d+)/),*@ $+ $regml(1),$gettok($1,1,32)) - :Nick Flood!
  dline %twinCk $fline(%twinCk,$1)
}
 
on !*:join:#:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Join) || ($me !isop $chan)) { return }
  var %winC = @joinF
  if (!$window(%winC)) { window -h %winC }
  var %resjoin = $calc($ctime - $gettok($fline(%winC,* $chan,$fline(%winC,* $chan,0)).text,2,32))
  if (%resjoin > %JoinSec) && ($fline(%winC,* $chan)) { dline %winC $fline(%winC,* $chan,$fline(%winC,* $chan,0)) }
  if ($fline(%winC,$nick * $chan)) { rline %winC $fline(%winC,$nick * $chan) $nick $ctime $chan }
  else { aline %winC $nick $ctime $chan }
  if (($fline(%winC,* $chan,0) >= %JoinFlood) || (%autoJ. [ $+ [ $chan ] ] && $fline(%winC,* $chan,0))) {
    set %fChan $chan
    set %twinC %winC
    filter -wk %winC bk * $chan
    set -u [ $+ [ %JoinSec ] ] %autoJ. [ $+ [ $chan ] ] 1
  }
}
 
on *:snotice:*Client connecting*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Connect)) { return }
  var %winS = @connectF
  if (!$window(%winS)) { window -h %winS } 
  var %sre = $calc($ctime - $gettok($fline(%winS,* $serverip,$fline(%winS,* $serverip,0)).text,2,32))
  if (%sre > %ConnectSec) && ($fline(%winS,* $serverip)) { dline %winS $fline(%winS,* $serverip,$fline(%winS,* $serverip,0)) }
  if ($fline(%winS,$9 * $serverip)) { rline %winS $fline(%winS,* $serverip) $9 $ctime $serverip }
  else { aline %winS $9 $ctime $serverip }
  if (($fline(%winS,* $serverip,0) >= %ConnectFlood) || (%autoS. [ $+ [ $serverip ] ])) {
    set %twinS %winS
    filter -wk %winS sk * $serverip
    set -u [ $+ [ %ConnectSec ] ] %autoS. [ $+ [ $serverip ] ] 1
  }
}
 
on *:snotice:*has changed his/her nickname*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Nick)) { return }
  var %winCk = @nickF
  if (!$window(%winCk)) { window -h %winCk }
  var %snck = $calc($ctime - $gettok($fline(%winCk,* $serverip *,$fline(%winCk,* $serverip *,0)).text,2,32))
  if (%snck > %NickSec) && ($fline(%winCk,* $serverip *)) { dline %winCk $fline(%winCk,* $serverip *,$fline(%winCk,* $serverip *,0)) }
  if ($fline(%winCk,* $serverip $5)) { rline %winCk $fline(%winCk,* $serverip $5) $11 $ctime $serverip $5 }
  else { aline %winCk $11 $ctime $serverip $5 }
  if (($fline(%winCk,* $serverip *,0) >= %NickFlood) || (%autonck. [ $+ [ $serverip ] ])) {
    set %twinCk %winCk
    filter -wk %winCk nck * $serverip *
    set -u [ $+ [ %NickSec ] ] %autonck. [ $+ [ $serverip ] ] 1
  }
}
 
on *:notice:*:#:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Notice) || ($me !isop $chan)) { return }
  var %winN = @noticeF
  if (!$window(%winN)) { window -h %winN }
  var %resnot = $calc($ctime - $gettok($fline(%winN,* $hash($strip($1-),32) $chan,$fline(%winN,* $hash($strip($1-),32) $chan,0)).text,2,32))
  if (%resnot > %NoticeSec) && ($fline(%winN,* $hash($strip($1-),32) $chan)) { dline %winN $fline(%winN,* $hash($strip($1-),32) $chan,$fline(%winN,* $hash($strip($1-),32) $chan,0)) }
  if ($fline(%winN,$nick *)) { rline %winN $fline(%winN,$nick *) $nick $ctime $hash($strip($1-),32) $chan }
  else { aline %winN $nick $ctime $hash($strip($1-),32) $chan }
  if (($fline(%winN,* $hash($strip($1-),32) $chan,0) >= %NoticeFlood) || (%autoN. [ $+ [ $chan ] $+ [ $hash($strip($1-),32) ] ])) {
    set %NChan $chan
    set %twinCN %winN
    filter -wk %winN nk * $hash($strip($1-),32) $chan   
    set -u [ $+ [ %NoticeSec ] ] %autoN. [ $+ [ $chan ] $+ [ $hash($strip($1-),32) ] ] 1
  }
}
 
on *:text:*:#:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Text) || ($me !isop $chan)) { return }
  var %winT = @textF
  if (!$window(%winT)) { window -h %winT } 
  var %restext = $calc($ctime - $gettok($fline(%winT,* $hash($strip($1-),32) $chan,$fline(%winT,* $hash($strip($1-),32) $chan,0)).text,2,32))
  if (%restext > %TextSec) && ($fline(%winT,* $hash($strip($1-),32) $chan)) { dline %winT $fline(%winT,* $hash($strip($1-),32) $chan,$fline(%winT,* $hash($strip($1-),32) $chan,0)) }
  if ($fline(%winT,$nick *)) { rline %winT $fline(%winT,$nick *) $nick $ctime $hash($strip($1-),32) $chan }
  else { aline %winT $nick $ctime $hash($strip($1-),32) $chan }
  if (($fline(%winT,* $hash($strip($1-),32) $chan,0) >= %TextFlood) || (%autoT. [ $+ [ $chan ] $+ [ $hash($strip($1-),32) ] ])) {
    set %TChan $chan
    set %twinCT %winT
    filter -wk %winT tk * $hash($strip($1-),32) $chan
    set -u [ $+ [ %TextSec ] ] %autoT. [ $+ [ $chan ] $+ [ $hash($strip($1-),32) ] ] 1
  }
}
 
ctcp *:*:#:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Ctcp) || ($me !isop $chan)) { return }
  var %winP = @ctcpF
  if (!$window(%winP)) { window -h %winP }
  var %resctcp = $calc($ctime - $gettok($fline(%winP,* $hash($strip($1-),32) $chan,$fline(%winP,* $hash($strip($1-),32) $chan,0)).text,2,32))
  if (%resctcp > %CtcpSec) && ($fline(%winP,* $hash($strip($1-),32) $chan)) { dline %winP $fline(%winP,* $hash($strip($1-),32) $chan,$fline(%winP,* $hash($strip($1-),32) $chan,0)) }
  if ($fline(%winP,$nick *)) { rline %winP $fline(%winP,$nick *) $nick $ctime $hash($strip($1-),32) $chan }
  else { aline %winP $nick $ctime $hash($strip($1-),32) $chan }
  if (($fline(%winP,* $hash($strip($1-),32) $chan,0) >= %CtcpFlood) || (%autoP. [ $+ [ $chan ] $+ [ $hash($strip($1-),32) ] ])) {
    set %PChan $chan
    set %twinCP %winP
    filter -wk %winP pk * $hash($strip($1-),32) $chan
    set -u [ $+ [ %CtcpSec ] ] %autoP. [ $+ [ $chan ] $+ [ $hash($strip($1-),32) ] ] 1
  }
}
 
on *:dccserver:*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Dcc)) { return }
  var %hs = $+(a,.,$hash($strip($1-),32)), %tk = $token($address($nick,5),2,33)
  if (!$hget(%hs,%tk)) { hadd -mu [ $+ [ %DccSec ] ] %hs %tk $nick }
  if ($hget(%hs,0).item >= %DccFlood) {
    var %x 1
    while ($hget(%hs,%x).item) {
      var %dm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunText == 2 || %PunText == 3) {
        var %i 1
        while ($chan(%i)) {
          dll WhileFix.dll WhileFix .
          if ($gettok(%dm,2,47) ison $chan(%i)) {
            if (%PunText == 2) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { kick $chan(%i) $gettok(%dm,2,47) Abuse - Dcc Flood! }
            elseif (%PunText == 3) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { ban -k $chan(%i) $gettok(%dm,2,47) Abuse - Dcc Flood! }
          }
          inc %i
        }
      }
      elseif (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok(%dm,2,47) - :Abuse - Dcc Flood }
      hdel -w %hs %dm
      inc %x
    }
  }
}
 
menu * {
  -
  Server Protection:if (!$dialog(botnets)) { dialog -m botnets botnets }
  -
}


Last edited by Admin on Wed Sep 07, 2011 12:57 am; edited 1 time in total
Admin
Admin
Admin

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

https://mircx.forumotion.net

Back to top Go down

[חדש] - Protection Server Empty Re: [חדש] - Protection Server

Post  Admin Wed Aug 31, 2011 10:15 pm

הערה
נוספת תצטרכו להכניס לתייקיה של המירק שלכם את זה WhileFix.dll
ואז תגדירו את הגנה
להורדה
http://f2h.nana10.co.il/8yqu754ai28k
זכויות שמורות לOr
מנהל שרת ואתר של mIRCx
Admin
Admin
Admin

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

https://mircx.forumotion.net

Back to top Go down

[חדש] - Protection Server Empty תיקון באג קטן והנה החדש

Post  Admin Wed Aug 31, 2011 10:53 pm

Code:

dialog botnets {
  title "Botnets Protection"
  size -1 -1 173 137
  option dbu notheme
  check "Connect Flood Server", 1, 8 26 65 10
  edit "", 2, 74 26 10 10, center
  text "In", 3, 85 27 6 8, center
  edit "", 4, 92 26 10 10, center
  text "Sec(s)", 5, 103 27 16 8
  check "Nicks Change Flood", 6, 8 41 65 10
  edit "", 7, 74 41 10 10, center
  edit "", 8, 92 41 10 10, center
  text "In", 9, 85 42 6 8, center
  text "Sec(s)", 10, 103 42 16 8
  check "Global Text Flood", 11, 8 56 65 10
  edit "", 12, 74 56 10 10, center
  edit "", 13, 92 56 10 10, center
  text "In", 14, 85 57 6 8, center
  text "Sec(s)", 15, 103 57 16 8
  check "Global Notice Flood", 16, 8 71 65 10
  edit "", 17, 74 71 10 10, center
  edit "", 18, 92 71 10 10, center
  text "In", 19, 85 72 6 8, center
  text "Sec(s)", 20, 103 72 16 8
  check "Global Ctcp Flood", 21, 8 86 65 10
  edit "", 22, 74 86 10 10, center
  edit "", 23, 92 86 10 10, center
  text "In", 24, 85 87 6 8, center
  text "Sec(s)", 25, 103 87 16 8
  combo 26, 124 26 40 11, drop
  combo 27, 124 41 40 11, drop
  combo 28, 124 56 40 11, drop
  combo 29, 124 71 40 11, drop
  combo 30, 124 86 40 11, drop
  box "Protect Options", 31, 5 2 117 117
  box "Punishment", 32, 122 2 45 117
  button "Servers Protected", 33, 4 123 48 10, flat
  button "OK", 34, 84 123 22 10, flat ok
  check "Global DCC Flood", 35, 8 101 65 10
  edit "", 36, 74 101 10 10, center
  text "In", 37, 85 102 6 8, center
  edit "", 38, 92 101 10 10, center
  text "Sec(s)", 39, 103 102 16 8
  combo 40, 124 101 40 11, drop
  check "Join Flood Channel", 41, 8 11 65 10
  edit "", 42, 74 11 10 10, center
  text "In", 43, 85 12 6 8, center
  edit "", 44, 92 11 10 10, center
  text "Sec(s)", 45, 103 12 16 8
  combo 46, 124 11 40 11, drop
  button "Default", 47, 56 123 24 10, flat
}
 
dialog serpro {
  title "Servers List"
  size -1 -1 80 147
  option dbu notheme
  combo 1, 3 17 71 79, size
  button "Add", 2, 4 4 33 10, flat
  button "Del", 3, 40 4 33 10, flat
  box "", 4, 1 -2 77 101
  button "Close", 5, 22 135 33 10, flat cancel
  text "servers masks examples:", 6, 5 102 69 8, disable center
  text "0.0.0.0", 7, 5 110 69 7, disable center
  text "irc.network.co.il", 8, 5 117 69 7, disable center
  text "network", 9, 5 124 69 7, disable center
  box "", 10, 1 96 77 38
}
 
on *:dialog:serpro:init:0:{
  if ($lines(serpro.txt) > 0) { filter -fo serpro.txt $dname 1 }
}
 
on *:dialog:serpro:sclick:*:{
  if ($did == 2) {
    if ($did(1)) && (!$read(serpro.txt,w,$did(1))) { did -a $dname 1 $did(1) | write serpro.txt $did(1) | did -c $dname 1 $did(1).lines }
  }
  elseif ($did == 3) {
    if ($did(1)) && ($read(serpro.txt,w,$did(1))) { did -d $dname 1 $didwm($dname,1,$did(1)) | write -dl [ $+ [ $readn ] ] serpro.txt }
  }
}
 
on *:dialog:botnets:init:0:{
  didtok $dname 26-30,40,46 32 Gline Kick Kick+ban
  if (%E.Join) { did -c $dname 41 }
  else { did -b $dname 42-46 }
  if (%E.Connect) { did -c $dname 1 }
  else { did -b $dname 2-5,26 }
  if (%E.Nick) { did -c $dname 6 }
  else { did -b $dname 7-10,27 }
  if (%E.Text) { did -c $dname 11 }
  else { did -b $dname 12-15,28 }
  if (%E.Notice) { did -c $dname 16 }
  else { did -b $dname 17-20,29 } 
  if (%E.Ctcp) { did -c $dname 21 }
  else { did -b $dname 22-25,30 }
  if (%E.Dcc) { did -c $dname 35 }
  else { did -b $dname 36-40 }
  if (%JoinFlood) { did -ra $dname 42 %JoinFlood }
  else { did -ra $dname 42 3 | set %JoinFlood 3 }
  if (%JoinSec) { did -ra $dname 44 %JoinSec }
  else { did -ra $dname 44 3 | set %JoinSec 3 }
  if (%ConnectFlood) { did -ra $dname 2 %ConnectFlood }
  else { did -ra $dname 2 3 | set %ConnectFlood 3 }
  if (%ConnectSec) { did -ra $dname 4 %ConnectSec }
  else { did -ra $dname 4 4 | set %ConnectSec 4 }
  if (%NickFlood) { did -ra $dname 7 %NickFlood }
  else { did -ra $dname 7 3 | set %NickFlood 3 }
  if (%NickSec) { did -ra $dname 8 %NickSec }
  else { did -ra $dname 8 4 | set %NickSec 4 }
  if (%TextFlood) { did -ra $dname 12 %TextFlood }
  else { did -ra $dname 12 3 | set %TextFlood 3 }
  if (%TextSec) { did -ra $dname 13 %TextSec }
  else { did -ra $dname 13 4 | set %TextSec 4 }
  if (%NoticeFlood) { did -ra $dname 17 %NoticeFlood }
  else { did -ra $dname 17 3 | set %NoticeFlood 3 }
  if (%NoticeSec) { did -ra $dname 18 %NoticeSec }
  else { did -ra $dname 18 4 | set %NoticeSec 4 }
  if (%CtcpFlood) { did -ra $dname 22 %CtcpFlood }
  else { did -ra $dname 22 3 | set %CtcpFlood 3 }
  if (%CtcpSec) { did -ra $dname 23 %CtcpSec }
  else { did -ra $dname 23 4 | set %CtcpSec 4 }
  if (%DccFlood) { did -ra $dname 36 %DccFlood }
  else { did -ra $dname 36 3 | set %DccFlood 3 }
  if (%DccSec) { did -ra $dname 38 %DccSec }
  else { did -ra $dname 38 4 | set %DccSec 4 }
  if (%PunJoin) { did -c $dname 46 %PunJoin }
  else { did -c $dname 46 3 }
  if (%PunConnect) { did -c $dname 26 %PunConnect }
  else { did -c $dname 26 1 }
  if (%PunNicks) { did -c $dname 27 %PunNicks }
  else { did -c $dname 27 1 }
  if (%PunText) { did -c $dname 28 %PunText }
  else { did -c $dname 28 3 }
  if (%PunNotice) { did -c $dname 29 %PunNotice }
  else { did -c $dname 29 3 }
  if (%PunCtcp) { did -c $dname 30 %PunCtcp }
  else { did -c $dname 30 1 }
  if (%PunDcc) { did -c $dname 40 %PunDcc }
  else { did -c $dname 40 1 }
}
 
on *:dialog:botnets:sclick:*:{
  if ($did == 33) && (!$dialog(serpro)) { dialog -m serpro serpro }
  elseif ($did == 47) {
    did -c $dname 46 3
    did -c $dname 26-27,30,40 1
    did -c $dname 28,29 3
    set %JoinFlood 3
    set %JoinSec 3
    set %ConnectFlood 3
    set %ConnectSec 4
    set %NickFlood 3
    set %NickSec 4
    set %NoticeFlood 3
    set %NoticeSec 4
    set %CtcpFlood 3
    set %CtcpSec 4
    set %DccFlood 3
    set %DccSec 4
    did -ra $dname 42,44,2,7,12,17,22,36 3
    did -ra $dname 4,8,13,18,23,38 4
    set %PunJoin 3
    set %PunConnect 1
    set %PunNicks 1
    set %PunText 3
    set %PunNotice 3
    set %PunCtcp 1
    set %PunDcc 1
  }
  elseif ($did == 41) {
    set %E.Join $iif($did(41).state,1,$null)
    did $iif(%E.Join,-e,-b) $dname 42-46
  }
  elseif ($did == 1) {
    set %E.Connect $iif($did(1).state,1,$null)
    did $iif(%E.Connect,-e,-b) $dname 2-5,26
  }
  elseif ($did == 6) {
    set %E.Nick $iif($did(6).state,1,$null)
    did $iif(%E.Nick,-e,-b) $dname 7-10,27
  }
  elseif ($did == 11) {
    set %E.Text $iif($did(11).state,1,$null)
    did $iif(%E.Text,-e,-b) $dname 12-15,28
  }
  elseif ($did == 16) {
    set %E.Notice $iif($did(16).state,1,$null)
    did $iif(%E.Notice,-e,-b) $dname 17-20,29
  }
  elseif ($did == 21) {
    set %E.Ctcp $iif($did(21).state,1,$null)
    did $iif(%E.Ctcp,-e,-b) $dname 22-25,30
  }
  elseif ($did == 35) {
    set %E.Dcc $iif($did(35).state,1,$null)
    did $iif(%E.Dcc,-e,-b) $dname 36-40
  }
  elseif ($did == 46) { set %PunJoin $did(46).sel }
  elseif ($did == 26) { set %PunConnect $did(26).sel }
  elseif ($did == 27) { set %PunNicks $did(27).sel }
  elseif ($did == 28) { set %PunText $did(28).sel }
  elseif ($did == 29) { set %PunNotice $did(29).sel }
  elseif ($did == 30) { set %PunCtcp $did(30).sel }
  elseif ($did == 40) { set %PunDcc $did(40).sel }
}
 
on *:dialog:botnets:edit:*:{
  if ($did == 42) { set %JoinFlood $did(42) }
  elseif ($did == 44) { set %JoinSec $did(44) }
  elseif ($did == 2) { set %ConnectFlood $did(2) }
  elseif ($did == 4) { set %ConnectSec $did(4) }
  elseif ($did == 7) { set %NickFlood $did(7) }
  elseif ($did == 8) { set %NickSec $did(8) }
  elseif ($did == 12) { set %TextFlood $did(12) }
  elseif ($did == 13) { set %TextSec $did(13) }
  elseif ($did == 17) { set %NoticeFlood $did(17) }
  elseif ($did == 18) { set %NoticeSec $did(18) }
  elseif ($did == 22) { set %CtcpFlood $did(22) }
  elseif ($did == 23) { set %CtcpSec $did(23) }
  elseif ($did == 36) { set %DccFlood $did(36) }
  elseif ($did == 38) { set %DccSec $did(38) }
}
 
on *:snotice:*Client connecting*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Connect)) { return }
  var %ip = $iif($regex($10,/(\d+\.\d+\.\d+\.\d+)/),$regml(1),1)
  if (!$hget(Botnet,$9)) { hadd -mu [ $+ [ %ConnectSec ] ] Botnet $9 %ip }
  if ($hget(Botnet,0).item >= %ConnectFlood) {
    var %x 1
    while ($hget(Botnet,%x).item) {
      var %cn = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunConnect == 2 || %PunConnect == 3) {
        var %i 1
        while ($chan(%i)) {
          dll WhileFix.dll WhileFix .
          if (%cn ison $chan(%i)) {
            if (%PunConnect == 2) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { kick $chan(%i) %cn Abuse - Botnets Flood! }
            elseif (%PunConnect == 3) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { ban -k $chan(%i) %cn Abuse - Botnets Flood! }
          }
          inc %i
        }
      }
      elseif (%PunConnect == 1) && ($regex($usermode,/[AoNO]/i)) { gline %cn - :Abuse - Botnets Flood }
      hdel -w Botnet %cn     
      inc %x
    }
  }
}
 
on !*:join:#:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Join)) { return }
  var %ip = $+($wildsite,/,$nick)
  if (!$hget(Jflood,$nick)) { hadd -mu [ $+ [ %JoinSec ] ] Jflood $nick %ip }
  if ($hget(Jflood,0).item >= %JoinFlood) {
    var %x 1
    while ($hget(Jflood,%x).item) {
      var %bm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunJoin == 1) && ($regex($usermode,/[AoNO]/i)) { gline %bm - :Abuse - Join Flood! }
      elseif (%PunJoin == 2) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { kick # %bm Abuse - Join Flood! }
      elseif (%PunJoin == 3) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { ban -k # %bm Abuse - Join Flood! }
      hdel -w Jflood %bm     
      inc %x
    }
  }
}
 
on *:text:*:*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Text)) { return }
  var %hs = $+(a,.,$hash($strip($1-),32)), %tk = $+($wildsite,/,$nick)
  if (!$hget(%hs,%tk)) { hadd -mu3 %hs %tk $nick }
  if ($hget(%hs,0).item >= 3) {
    var %x 1
    while ($hget(%hs,%x).item) {
      var %tm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok(%tm,2,47) - :Abuse - Text Flood! }
      elseif (%PunText == 2) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { kick # $gettok(%tm,2,47) Abuse - Text Flood! }
      elseif (%PunText == 3) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { ban -k # $gettok(%tm,2,47) Abuse - Text Flood! }
      hdel -w %hs %tm
      inc %x
    }
  }
}
 
on *:notice:*:*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Notice)) { return }
  var %hs = $+(a,.,$hash($strip($1-),32)), %tk = $+($wildsite,/,$nick)
  if (!$hget(%hs,%tk)) { hadd -mu3 %hs %tk $nick }
  if ($hget(%hs,0).item >= 3) {
    var %x 1
    while ($hget(%hs,%x).item) {
      var %nm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok(%nm,2,47) - :Abuse - Notice Flood! }
      elseif (%PunText == 2) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { kick # $gettok(%nm,2,47) Abuse - Notice Flood! }
      elseif (%PunText == 3) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { ban -k # $gettok(%nm,2,47) Abuse - Notice Flood! }
      hdel -w %hs %nm
      inc %x
    }
  }
}
 
ctcp *:*:*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Ctcp)) { return }
  var %hs = $+(a,.,$hash($strip($1-),32)), %tk = $token($address($nick,5),2,33)
  if !$hget(%hs,%tk) { hadd -mu3 %hs %tk $nick }
  if $hget(%hs,0).item >= 3 {
    var %x 1
    while ($hget(%hs,%x).item) {
      var %cm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok(%cm,2,47) - :Abuse - Ctcp Flood! }
      elseif (%PunText == 2) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { kick # $gettok(%cm,2,47) Abuse - Ctcp Flood! }
      elseif (%PunText == 3) && (($me isop $chan) || $regex($usermode,/[AoNO]/i)) { ban -k # $gettok(%cm,2,47) Abuse - Ctcp Flood! }
      hdel -w %hs %cm
      inc %x
    }
  }
}
 
on *:dccserver:*:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Dcc)) { return }
  var %hs = $+(a,.,$hash($strip($1-),32)), %tk = $token($address($nick,5),2,33)
  if !$hget(%hs,%tk) { hadd -mu3 %hs %tk $nick }
  if $hget(%hs,0).item >= 3 {
    var %x 1
    while ($hget(%hs,%x).item) {
      var %dm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunText == 2 || %PunText == 3) {
        var %i 1
        while ($chan(%i)) {
          dll WhileFix.dll WhileFix .
          if ($gettok(%dm,2,47) ison $chan(%i)) {
            if (%PunText == 2) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { kick $chan(%i) $gettok(%dm,2,47) Abuse - Dcc Flood! }
            elseif (%PunText == 3) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { ban -k $chan(%i) $gettok(%dm,2,47) Abuse - Dcc Flood! }
          }
          inc %i
        }
      }
      elseif (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok(%dm,2,47) - :Abuse - Dcc Flood }
      hdel -w %hs %dm
      inc %x
    }
  }
}
 
on *:nick:{
  var %reg = $server $+ $(|) $+ $network $+ $(|) $+ $serverip
  if ((!$read(serpro.txt,r,%reg)) || (!%E.Nick)) { return }
  var %lx = $+($wildsite,/,$newnick)
  if (!$hget(cn,%lx)) { hadd -mu3 cn %lx $newnick }
  if ($hget(cn,0).item >= 4) {
    var %x 1
    while ($hget(cn,%x).item) {
      var %nm = $ifmatch
      dll WhileFix.dll WhileFix .
      if (%PunText == 2 || %PunText == 3) {
        var %i 1
        while ($chan(%i)) {
          dll WhileFix.dll WhileFix .
          if ($gettok(%nm,2,47) ison $chan(%i)) {
            if (%PunText == 2) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { kick $chan(%i) $gettok(%nm,2,47) Abuse - Nicks-Change Flood! }
            elseif (%PunText == 3) && (($me isop $chan(%i)) || $regex($usermode,/[AoNO]/i)) { ban -k $chan(%i) $gettok(%nm,2,47) Abuse - Nicks-Change Flood! }
          }
          if ($me isop $chan(%i) && $gettok($hget(cn,%x).item,2,47) ison $chan(%i)) { ban -k $chan(%i) $gettok($hget(cn,%x).item,2,47) Nick-Change Flood }
          inc %i
        }
      }
      elseif (%PunText == 1) && ($regex($usermode,/[AoNO]/i)) { gline $gettok(%nm,2,47) - :Abuse - Nick-Change Flood }
      hdel -w cn %nm     
      inc %x
    }
  }
}
 
menu * {
  -
  Server Protection:if (!$dialog(botnets)) { dialog -m botnets botnets }
  -
}
http://pastie.org/2463324
זה הקוד שתוקן מבאג על ידי OR מנהל השרת ואתר של המירקס
Admin
Admin
Admin

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

https://mircx.forumotion.net

Back to top Go down

[חדש] - Protection Server Empty Re: [חדש] - Protection Server

Post  Sponsored content


Sponsored content


Back to top Go down

Back to top

- Similar topics

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