IRCRehberi.Net- Türkiyenin En iyi IRC ve Genel Forum Sitesi

IRCRehberi.Net- Türkiyenin En iyi IRC ve Genel Forum Sitesi (https://www.ircrehberi.net/)
-   mIRC Scripting Hazır Kodlar (https://www.ircrehberi.net/mirc-scripting-hazir-kodlar/)
-   -   Sunucu koruma botu için kod örneği (https://www.ircrehberi.net/mirc-scripting-hazir-kodlar/195948-sunucu-koruma-botu-icin-kod-ornegi.html)

BlackForce 07 Ağustos 2024 20:19

Sunucu koruma botu için kod örneği
 
Merhaba,

bir süredir üstüne çalıştığım [Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...] için bir kod örneği paylaşmak istedim, 10 adet koruma verisi var.

IPSorgu.Xyz dünya standartlarında bir API ile IP adresinden şehir, bölge, ülke, enlem/boylam verileri, saat dilimi, para birimi, proxy tespiti vb. gibi herhangi bir IP'nin coğrafi konumunu almanızı sağlayan önde gelen IP'den coğrafi konum API'lerinden birini sunar.

Özetle, IP adresinden ülke, şehir, asn ve ip güvenliği hakkında değerli bilgiler sunuyor.

ircd sunucularına hizmet eden mIRC ve türevleri için özel başlıklar bulunuyor, örneğin


d=mirc Tek satır ve * karakteriyle sunar:

PHP- Kodu:

https://api.ipsorgu.xyz/proxy/213.33.98.123?d=mirc

Cevap:
IP213.33.98.123*UlkeKoduAT*UlkeAdiAustria*SehirVienna*StateCodeAT-9*Koordinat48.195116.3483*ASN8447*asDescA1TELEKOM-AT A1 Telekom Austria AGAT*asOrgA1 Telekom Austria AG*asDomaina1.at*Bad DatacenterFalse*IRCDronesFalse*BogonFalse*CrawlerFalse*AttackerFalse*SpamFalse*AbuseTrue*VPNFalse*TorFalse*ProxyTrue 

d=txt Çoklu satır olarak text formatında sunar:

PHP- Kodu:

https://api.ipsorgu.xyz/proxy/213.33.98.123?d=txt

Cevap:
IP213.33.98.123
UlkeKodu
AT
UlkeAdi
Austria
Sehir
Vienna
StateCode
AT-9
Koordinat
48.195116.3483
ASN
8447
asDesc
A1TELEKOM-AT A1 Telekom Austria AGAT
asOrg
A1 Telekom Austria AG
asDomain
a1.at
Bad Datacenter
False
IRCDrones
False
Bogon
False
Crawler
False
Attacker
False
Spam
False
Abuse
True
VPN
False
Tor
False
Proxy
True 

d= başlığı gönderilmediğinde oldukça ayrıntılı IP bilgisi sunulur.

h=1 Hostname taramasını aktif eder, sadece IP değil, hostname ile de proxy taraması yapılabiliyor:

PHP- Kodu:

https://api.ipsorgu.xyz/proxy/213.33.98.123?d=mirc 

Yani, ekstra IP Adresi çözümlemesiyle uğraşmayıp (Bkz mIRC: /dns hostname) direkt hostname ile sorgu atılabiliyor.

Kod:


alias jv return $replacecs($1-,\u0131,ı,\u0130,İ,\u011f,ğ,\u011e,Ğ,\u00fc,ü,\u00dc,Ü,\u015f,ş,\u015e,Ş,\u00f6,ö,\u00d6,Ö,\u00e7,ç,\u00c7,Ç)

alias type return mirc

alias ipSorguApi return apikeygirin

alias zmn {
  return $gettok($1-,3-3,32) $trTarih($gettok($1-,2-2,32)) $gettok($1-,5-,32) $trTarih($gettok($1-,1,32)) - Saat : $gettok($1-,4-4,32)
}

alias trTarih {
  return $replace($1-,Mon,Pazartesi,Tue,Salı,Wed,Çarşamba,Thu,Perşembe,Fri,Cuma,Sat,Cumartesi,Sun,Pazar,Nov,Kasım,Dec,Aralık,Jan,Ocak,Feb,Şubat,Apr,Nisan,May,Mayıs,Jun,Haziran,Jul,Temmuz,Aug,Agustos,Sep,Eylül,Oct,Ekim)
}

alias proxyCh {
  if (!$1 || !$2 || !$3) { echo proxyCh nick ip port olarak kullanınız. }
  else { var %pc $r(999,9999) | sockopen $+(pCh,%pc) api.ipsorgu.xyz 80 | sockmark $+(pCh,%pc) $+($1, $chr(247), $2, $chr(247), $3, $chr(247), $type) }
}

on *:sockopen:pCh*:{
  if ($sockerr) { sockclose $sockname }
  else {
    sockwrite -nt $sockname GET $+(/proxy/,$gettok($sock($sockname).mark,2,247),?d=,$type,$iif($ipSorguApi,$+(&api=,$ipSorguApi))) HTTP/1.1
    sockwrite -nt $sockname Host: $sock($sockname).addr | sockwrite -nt $sockname Connection: close | sockwrite -nt $sockname $crlf
  }
}

on *:sockread:pCh*:{
  var %b | sockread -f %b | tokenize 32 %b
  if $gettok($sock($sockname).mark,4,247) == mirc {
    if $regex($1-, "sebep": "(.*)") {
      echo -a Hata: $jv($regml(1))
    }
    elseif $regex($1-, ApiLimit: (.*)) {
      echo -a ---------------------- ApiLimit ---------------------- | echo -a 1
      echo -a Dakikalık Api İsteği Limiti: $regml(1)
    }
    elseif $regex($1-, Kalan: (.*)) {
      echo -a Dakikalık Kalan Api İsteği Sayısı: $regml(1)
    }
    elseif $regex($1-, Sifirlanma: (.*)) {
      echo -a API Sıfırlanma Süresi: $zmn($asctime($regml(1)))
    }
    elseif $regex($1-, RATELIMIT_HEADER_RETRY_AFTER: (.*)) {
      echo -a API Sonraki Deneme Süresi: $regml(1) | echo -a 1
    }
    elseif $regex($1-, IP: (.*)\*UlkeKodu: (.*)\*UlkeAdi: (.*)\*Sehir: (.*)\*StateCode: (.*)\*Koordinat: (.*)\*ASN: (.*)\*asDesc: (.*)\*asOrg: (.*)\*asDomain: (.*)\*Bad Datacenter: (.*)\*IRCDrones: (.*)\*Bogon: (.*)\*Crawler: (.*)\*Attacker: (.*)\*Spam: (.*)\*Abuse: (.*)\*VPN: (.*)\*Tor: (.*)\*Proxy: (.*)) {
      echo -a ---------------------- Nick ---------------------- | echo -a 1
      echo -a Nick: $gettok($sock($sockname).mark,1,247) IP: $gettok($sock($sockname).mark,2,247) Port: $gettok($sock($sockname).mark,3,247)
      echo -a 1
      echo -a ---------------------- Konum ---------------------- | echo -a 1
      echo -a Ulke Kodu: $regml(2) Ulke: $regml(3) Sehir: $regml(4) Plaka Kodu: $regml(5) Koordinat: $regml(6) Maps: $+(https://www.google.com.tr/maps/@,$+($removecs($regml(6), $chr(32))), ?hl=tr)
      echo -a 1
      echo -a ---------------------- ASN ---------------------- | echo -a 1
      echo -a ASN Numarası: $regml(7) Şirket Açıklaması: $regml(8) Şirket Adı: $regml(9) ASN Domain: $regml(10)
      echo -a 1
      echo -a ---------------------- Guvenlik ---------------------- | echo -a 1
      echo -a IRCDrones: $regml(11) 
      echo -a Bad Datacenter: $regml(12) Bogon: $regml(13) Crawler: $regml(14) Attacker: $regml(15)
      echo -a Spam: $regml(16) Abuse: $regml(17) VPN: $regml(18) Tor: $regml(19) Proxy: $regml(20)
      echo -a 1
    }
  }
  else { echo -a $1- }
}

Bu kod örneği, sunucu koruması botu kodlaması için sadece bir başlangıç referans noktasıdır, istediğiniz gibi düzenleyebilirsiniz/yeniden kodlayabilirsiniz.


API kullanım senaryoları için şu blog'a göz atabilirsiniz: [Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...]

(Bir süreliğine bütün kayıtlara günlük 5000 API sağlanıyor.)

Carpediem 07 Ağustos 2024 20:23

güzel çalışma başarılar.

Gururum 07 Ağustos 2024 22:12

Paylaşım için teşekkürler.

Melodi 07 Ağustos 2024 22:18

Emeğinize sağlık:yildiz::yildiz:

Fearless 08 Ağustos 2024 01:38

Emeğinize sağlık @[Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...] teşekkürler.

BuKLe 08 Ağustos 2024 02:50

Emeğinize sağlık

Reyhan 01 Eylül 2024 00:59

Emeğinize sağlık, paylaşım için teşekkür ederiz

oMeN 12 Eylül 2024 12:30

Emeğine sağlık, Teşekkür ederiz @[Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...]

RaS` 12 Eylül 2024 13:10

Emeğine sağlık, Teşekkür ederim @[Üye Olmadan Linkleri Göremezsiniz. Lütfen Üye Olmak için TIKLAYIN...]

Brittle 12 Eylül 2024 13:11

Emeğinize sağlık..


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 07:19.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.

Copyright ©2019 - 2025 | IRCRehberi.Net