IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

9Beğeni(ler)
  • 8 Post By MasteR06
  • 1 Post By Swift

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 12 Ocak 2023, 23:25   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
Socket bot ile IRC port kapatma




Alıntı:
Mrp. 25 30 insanın girdiği bir ircim var.gelenler hep mobilden geliyor 2 adminimle kendim mırç kullanıyoz.
Biz kendim için başka port açtık. Onu bilen yok. Bir haçkır sürekli saldırıyor. Korumamızda pek iyi değil.
İstediğim zaman irc girişini portan kapatacak bir bot varmı. Gizli port dışında tüm portları ircden kapatacak.
Yardım için teşekkürler.

PM'den bana ulaşıp kod isteğinde bulunan kullanıcımızın mesajından anladığım kadarıyla istediği portlardan girişleri engelleyecek bir socket bot.
Basit bir şekilde birilerinin de işine yarar diye paylaşıyorum. Kullanıcımız da buradan görüp alır umarım.

Keyifli paylaşımlar..

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias swircbot $iif($sock(ircbot).status == active,sockwrite -nt ircbot $1-) on *:sockclose:ircbot:$+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port on *:sockopen:ircbot:{ if ($sockerr) { sockclose ircbot | $+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port | returnex } swircbot NICK $+($_ircbot,$r(1000,99999999)) swircbot USER $_ident "" " $+ $iif($host,$host,$ip) $_username sockmark $sockname $_ircbot } on *:sockread:ircbot:{ if ($sockerr) { sockclose ircbot | $+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port | returnex } var %;ircbot | sockread %;ircbot | tokenize 32 %;ircbot if ($1 = ping) swircbot pong $remove($2,:) elseif $regex($2,/(001|433)/) { swircbot oper $_oper | swircbot ns ghost $_ircbot $_pass | swircbot ns release $_ircbot $_pass | swircbot join #0,0 | $+(.timer,$rand(10,99999)) 1 3 swircbot nick $_ircbot } elseif $1 == error && $2 == :closing { sockclose ircbot | $+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port } elseif $regex($2,/(473|475|471|474)/) { swircbot sajoin $_ircbot $4 } elseif $regex($2,/(481|411)/) { swircbot oper $_oper | swircbot nick $_ircbot | swircbot nickserv identify $_pass } elseif ($2 == NICK) { if $_nick($1) == $_ircbot { swircbot ns ghost $_ircbot $_pass | swircbot ns release $_ircbot $_pass | $+(.timer,$rand(1000,999999)) 1 3 swircbot nick $_ircbot } elseif $right($3,-1) == $_ircbot { swircbot nickserv identify $_pass swircbot oper $_oper $iif($_supass,swircbot os su $_supass) swircbot join 0,0 swircbot mode $right($3,-1) +qHp-h swircbot chgh45t $right($3,-1) $_host $+(.timer,_ircbotgir) 1 5 swircbot sajoin $right($3,-1) $+($_opers,$chr(44),$_bots) } } elseif $regex($2,/366/) && !$istok($_opers $_bots,$4,32) { swircbot part $4 } elseif $regex($2,/^PART$/i) { if $regex($_nick($1),/^ $+ $_ircbot $+ $/Si) && $istok($_opers $_bots,$3,32) { swircbot sajoin $_nick($1) $3 } } elseif $regex($2,/^KICK$/i) { if $regex($4,/^ $+ $_ircbot $+ $/Si) && $istok($_opers $_bots $_xline,$3,32) { swircbot sajoin $4 $3 } } elseif $regex($2,/^JOIN$/i) { if $regex($_nick($1),/ $+ $+(^,$_ircbot,$) $+ /Si) { if ($right($3,-1) == $_opers) { swircbot mode $right($3,-1) -qao+h $str($+($_nick($1),$chr(32)),5) swircbot mode $_nick($1) +qHp-h swircbot chgh45t $_nick($1) $_usename } elseif $istok($_bots,$right($3,-1),32) { swircbot mode $right($3,-1) -qao+h $str($+($_nick($1),$chr(32)),5) swircbot mode $_nick($1) +qHp-h swircbot chgh45t $_nick($1) $_host } } } elseif $regex($2,/^MODE$/Si) && $regex($3,/^#/) { if $regex($4,^\+(\S+)?(b)(\S+)?) && $5 { swircbot mode $3 -b *!*@* if $regex($5-,/ $+ $_ircbot $+ /i) { swircbot mode $3 -b $_ircbot } } elseif $regex($4,^\-(\S+)?(h)(\S+)?) || $regex($4,^\+(\S+)?(a|q|o)(\S+)?) && $regex($5-,/ $+ $_ircbot $+ /i) { swircbot mode $3 -qao+h $str($+($_ircbot,$chr(32)),5) } } elseif $regex($2,/^NOTICE$/Si) && $regex($4-,/Client connecting on port/Si) { var %:nick $token($token($4-,1,40),-1,32), %:ident $token($token($4-,1,64),2,40), %:ip $token($token($4-,2,64),1,41), %:port $token($token($4-,1,58),-1,32), %rand $r(1000,999999) if $regex(%:port,/666(1|2|3|4|5|6|7|8|9|0)|7000/Si) { swircbot kill %:nick 0,1IRC Girişimiz Geçici Olarak Kapalıdır.Lütfen 4 $_web 0,1üzerinden giriş deneyiniz. } } } alias botçık { sockclose ircbot } alias botgir { sockopen ircbot $_sunucuip $_port } alias _ircbot return IRCQ alias _pass return nickpass alias _ident return Bozkurt alias _username return 0,1Buraya 4Bir şey yazın alias _oper return opernick operpass alias _supass return supass alias _sunucu return irc.sunucum.com alias _sunucuip return 111.222.33.44 alias _port return 6667 alias _web return
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
alias _opers return #Operkanalı alias _bots return #Botkanalı alias _xline return #xline

Gerekli bilgileri ekledikten sonra /botgir yazdığınızda otomatik olarak sunucuya bağlanır. /botçık yaptığında sunucudan çıkar.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if $regex(%:port,/666(1|2|3|4|5|6|7|8|9|0)|7000/Si) {

Kısmını kendinize göre düzenlersiniz.
Alıntı:
Mrp. 25 30 insanın girdiği bir ircim var.gelenler hep mobilden geliyor 2 adminimle kendim mırç kullanıyoz.
Biz kendim için başka port açtık. Onu bilen yok. Bir haçkır sürekli saldırıyor. Korumamızda pek iyi değil.
İstediğim zaman irc girişini portan kapatacak bir bot varmı. Gizli port dışında tüm portları ircden kapatacak.
Yardım için teşekkürler.

PM'den bana ulaşıp kod isteğinde bulunan kullanıcımızın mesajından anladığım kadarıyla istediği portlardan girişleri engelleyecek bir socket bot.
Basit bir şekilde birilerinin de işine yarar diye paylaşıyorum. Kullanıcımız da buradan görüp alır umarım.

Keyifli paylaşımlar..

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias swircbot $iif($sock(ircbot).status == active,sockwrite -nt ircbot $1-) on *:sockclose:ircbot:$+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port on *:sockopen:ircbot:{ if ($sockerr) { sockclose ircbot | $+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port | returnex } swircbot NICK $+($_ircbot,$r(1000,99999999)) swircbot USER $_ident "" " $+ $iif($host,$host,$ip) $_username sockmark $sockname $_ircbot } on *:sockread:ircbot:{ if ($sockerr) { sockclose ircbot | $+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port | returnex } var %;ircbot | sockread %;ircbot | tokenize 32 %;ircbot if ($1 = ping) swircbot pong $remove($2,:) elseif $regex($2,/(001|433)/) { swircbot oper $_oper | swircbot ns ghost $_ircbot $_pass | swircbot ns release $_ircbot $_pass | swircbot join #0,0 | $+(.timer,$rand(10,99999)) 1 3 swircbot nick $_ircbot } elseif $1 == error && $2 == :closing { sockclose ircbot | $+(.timer,ircbot) 1 2 sockopen ircbot $_sunucuip $_port } elseif $regex($2,/(473|475|471|474)/) { swircbot sajoin $_ircbot $4 } elseif $regex($2,/(481|411)/) { swircbot oper $_oper | swircbot nick $_ircbot | swircbot nickserv identify $_pass } elseif ($2 == NICK) { if $_nick($1) == $_ircbot { swircbot ns ghost $_ircbot $_pass | swircbot ns release $_ircbot $_pass | $+(.timer,$rand(1000,999999)) 1 3 swircbot nick $_ircbot } elseif $right($3,-1) == $_ircbot { swircbot nickserv identify $_pass swircbot oper $_oper $iif($_supass,swircbot os su $_supass) swircbot join 0,0 swircbot mode $right($3,-1) +qHp-h swircbot chgh45t $right($3,-1) $_host $+(.timer,_ircbotgir) 1 5 swircbot sajoin $right($3,-1) $+($_opers,$chr(44),$_bots) } } elseif $regex($2,/366/) && !$istok($_opers $_bots,$4,32) { swircbot part $4 } elseif $regex($2,/^PART$/i) { if $regex($_nick($1),/^ $+ $_ircbot $+ $/Si) && $istok($_opers $_bots,$3,32) { swircbot sajoin $_nick($1) $3 } } elseif $regex($2,/^KICK$/i) { if $regex($4,/^ $+ $_ircbot $+ $/Si) && $istok($_opers $_bots $_xline,$3,32) { swircbot sajoin $4 $3 } } elseif $regex($2,/^JOIN$/i) { if $regex($_nick($1),/ $+ $+(^,$_ircbot,$) $+ /Si) { if ($right($3,-1) == $_opers) { swircbot mode $right($3,-1) -qao+h $str($+($_nick($1),$chr(32)),5) swircbot mode $_nick($1) +qHp-h swircbot chgh45t $_nick($1) $_usename } elseif $istok($_bots,$right($3,-1),32) { swircbot mode $right($3,-1) -qao+h $str($+($_nick($1),$chr(32)),5) swircbot mode $_nick($1) +qHp-h swircbot chgh45t $_nick($1) $_host } } } elseif $regex($2,/^MODE$/Si) && $regex($3,/^#/) { if $regex($4,^\+(\S+)?(b)(\S+)?) && $5 { swircbot mode $3 -b *!*@* if $regex($5-,/ $+ $_ircbot $+ /i) { swircbot mode $3 -b $_ircbot } } elseif $regex($4,^\-(\S+)?(h)(\S+)?) || $regex($4,^\+(\S+)?(a|q|o)(\S+)?) && $regex($5-,/ $+ $_ircbot $+ /i) { swircbot mode $3 -qao+h $str($+($_ircbot,$chr(32)),5) } } elseif $regex($2,/^NOTICE$/Si) && $regex($4-,/Client connecting on port/Si) { var %:nick $token($token($4-,1,40),-1,32), %:ident $token($token($4-,1,64),2,40), %:ip $token($token($4-,2,64),1,41), %:port $token($token($4-,1,58),-1,32), %rand $r(1000,999999) if $regex(%:port,/666(1|2|3|4|5|6|7|8|9|0)|7000/Si) { swircbot kill %:nick 0,1IRC Girişimiz Geçici Olarak Kapalıdır.Lütfen 4 $_web 0,1üzerinden giriş deneyiniz. } } } alias botçık { sockclose ircbot } alias botgir { sockopen ircbot $_sunucuip $_port } alias _ircbot return IRCQ alias _pass return nickpass alias _ident return Bozkurt alias _username return 0,1Buraya 4Bir şey yazın alias _oper return opernick operpass alias _supass return supass alias _sunucu return irc.sunucum.com alias _sunucuip return 111.222.33.44 alias _port return 6667 alias _web return
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
alias _opers return #Operkanalı alias _bots return #Botkanalı alias _xline return #xline

Gerekli bilgileri ekledikten sonra /botgir yazdığınızda otomatik olarak sunucuya bağlanır. /botçık yaptığında sunucudan çıkar.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
if $regex(%:port,/666(1|2|3|4|5|6|7|8|9|0)|7000/Si) {

Kısmını kendinize göre düzenlersiniz.
__________________
Kahpeliğin bahanesi, İhanetin telafisi olmaz.

Konu MasteR06 tarafından (12 Ocak 2023 Saat 23:29 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Sohbet
Alt 17 Ocak 2023, 00:42   #2
Çevrimiçi
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
Cevap: Socket bot ile IRC port kapatma




Öncelikle paylaşımınız teşekkürler. Fakat bence bu bir çözüm değil.

Açıklayayım...

Eğer saldırı alıyorsanız (Mesaj atan kullanıcı için söylüyorum.) bunu durdurmanın birçok yolu var. Sunucuyu kapatarak girişi engellemek tuhaf bir yöntem.

Peki ne yapılabilir?

Öncelikle sağlayıcınız ile iletişime geçip, orijinal lisanslar ile güvenliği artırmak. (DDoS, güvenlik duvarları vs.)
Kullandığınız IRCd yazılımı eski ise güncel sürüme geçmek.
DNS Servisi kullanmak. (Cloudflare vb.)

Muhtemelen UnrealIRCd kullanıyordur bu arkadaş. Son sürümle birlikte güncel DNSBL oluşturduğunda, hiçbir şekilde saldırı yapamaz karşı taraf.

 
Alıntı ile Cevapla

Cevapla


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Socket bota port şifresi girdirmede sorun(!) XLarGe mIRC Scripting Sorunları 4 17 Kasım 2010 01:29
Port ip Leo mIRC Scripting Sorunları 1 14 Haziran 2009 01:40
arkadaslar acil yardım acık port kapatma Serseri_317 Eggdrop, NeoStats, BNC 3 16 Eylül 2007 15:09