++++++++++++++++++++
Dibuat index.php
++++++++++++++++++++
<?php
$ Ad_check_file = 'check.txt'; / / file untuk ketika kita ingin memeriksa
$ Ad_temp_file = 'all_ip.txt'; / / file sementara
$ Ad_black_file = 'black_ip.txt'; / / daftar yg akan dikirimkan ke zombie machine ip
$ Ad_white_file = 'white_ip.txt'; / / IP Pengunjung Situs
$ Ad_dir = 'anti_ddos'; / / folder ANTI DDOS
$ Ad_num_query = 0, / / hitungan data masuk sebelum file $ check_file
$ Ad_sec_query = 0, / / kedua setelahnya file $ check_file
$ Ad_end_defense = 0, / / matikan ketika sedang melindungi file $ check_file
$ Ad_sec = date ("s"); / / detik yg sedang berlangsung
$ Ad_date = date ("mdHis"); / / waktu saat ini
$ Ad_defense_time = 10000 / / Serangan DDOS yg dideteksi waktu ketika dihentikan pemeriksaan
if (! file_exists ("{$ ad_dir} / {$ ad_check_file}") or! file_exists ("{$ ad_dir} / {$ ad_temp_file}") or! file_exists ("{$ ad_dir} / {$ ad_black_file}") or ! file_exists ("{$ ad_dir} / {$ ad_white_file}") or! file_exists ("{$ ad_dir} / anti_ddos.php")) {
die ("tidak cukup filenya gan.");
}
require ("{$ ad_dir} / {$ ad_check_file}");
if ($ ad_end_defense and $ ad_end_defense> $ ad_date) {
require ("{$ ad_dir} / anti_ddos.php");
} Else {
if ($ ad_sec == $ ad_sec_query) {
$ Ad_num_query + +;
} Else {
$ Ad_num_query = '1 ';
}
if ($ ad_num_query> = $ ad_ddos_query) {
$ Ad_file = fopen ("{$ ad_dir} / {$ ad_check_file}", "w");
$ Ad_end_defense = $ ad_date + $ ad_defense_time;
$ Ad_string = '<? Php $ ad_end_defense ='. $ Ad_end_defense. ';?>';
fputs ($ ad_file, $ ad_string);
fclose ($ ad_fp);
} Else {
$ Ad_file = fopen ("{$ ad_dir} / {$ ad_check_file}", "w");
$ Ad_string = '<? Php $ ad_num_query ='. $ Ad_num_query. '; $ Ad_sec_query ='. $ Ad_sec. ';?>';
fputs ($ ad_file, $ ad_string);
fclose ($ ad_fp);
}
}
?>
++++++++++++++++++++
anti_ddos.php
++++++++++++++++++++
<?php
function getIP () {
if (getenv ("HTTP_CLIENT_IP") and preg_match ("/^[ 0-9 \ .]*?[ 0-9 \ .]+$/ is ", getenv (" HTTP_CLIENT_IP ")) and getenv (" HTTP_CLIENT_IP ") ! = '127 .0.0.1 ') {
$ Ip = getenv ("HTTP_CLIENT_IP");
} Elseif (getenv ("HTTP_X_FORWARDED_FOR") and preg_match ("/^[ 0-9 \ .]*?[ 0-9 \ .]+$/ is ", getenv (" HTTP_X_FORWARDED_FOR ")) and getenv (" HTTP_X_FORWARDED_FOR " !) = '127 .0.0.1 ') {
$ Ip = getenv ("HTTP_X_FORWARDED_FOR");
} Else {
$ Ip = getenv ("REMOTE_ADDR");
}
return $ ip;
}
$ Ad_ip = getIP ();
$ Ad_source = file ("{$ ad_dir} / {$ ad_black_file}");
$ Ad_source = explode ('', $ ad_source [0]);
if (in_array ($ ad_ip, $ ad_source)) {die ();}
$ Ad_source = file ("{$ ad_dir} / {$ ad_white_file}");
$ Ad_source = explode ('', $ ad_source [0]);
if (! in_array ($ ad_ip, $ ad_source)) {
$ Ad_source = file ("{$ ad_dir} / {$ ad_temp_file}");
$ Ad_source = explode ('', $ ad_source [0]);
if (! in_array ($ ad_ip, $ ad_source)) {
$ Ad_file = fopen ("{$ ad_dir} / {$ ad_temp_file}", "a +");
$ Ad_string = $ ad_ip. ' ';
fputs ($ ad_file, "$ ad_string");
fclose ($ ad_fp);
?>
<!--
Situs ini sedang mengalami serangan DDOS, Jika kamu bukan sebuah mesin gan, klik pada tombol, Ip anda (<?=$ ad_ip?>) jika iya akan segera diserang kembali!
<form method="post">
<input type="submit" name="ad_white_ip" value="bukan">
</ Form>
-->
<?php
die ();
}
elseif ($ _POST ['ad_white_ip']) {
$ Ad_file = fopen ("{$ ad_dir} / {$ ad_white_file}", "a +");
$ Ad_string = $ ad_ip. ' ';
fputs ($ ad_file, "$ ad_string");
fclose ($ ad_fp);
}
else {
$ Ad_file = fopen ("{$ ad_dir} / {$ ad_black_file}", "a +");
$ Ad_string = $ ad_ip. ' ';
fputs ($ ad_file, "$ ad_string");
fclose ($ ad_fp);
die ();
}
}
?>
Buat 4 file txt yaitu check.txt, white_ip.txt, black_ip.txt all_ip.txt
semuanya dibuat di folder/direktori yang sama dan di set PERM 666 (read and write)
lalu buat masukinnya ke file2 yang lain
tinggal input perintah require aja
ni scriptnya :
<?
require ("anti_ddos / index.php");
?>
semoga berguna untuk IT indonesia mohon dikembangkan & mohon tambahannya saran juga kritiknya.
Trima kasih untuk semua yg dibawah ini karena telah menginspirasikan saya, Karena Kreatifitasnya :
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Om Dom, Om Beku, Om Pretty, Om Patriot, Om Rival, Om Baributs, Om Putra, Om N1nj4
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
dan spesial buat member Manusia Biasa team, CX, HI Udah gan tutorial sederhana dr ane makasih yawh sun dulu :*
Anda baru saja membaca artikel yang berkategori dengan judul PHP anti DDOS. Anda bisa bookmark halaman ini dengan URL http://pembuatweb007.blogspot.com/2012/01/php-anti-ddos.html. Terima kasih!
Ditulis oleh:
Raka Satria Mencari Cpanel - Jumat, 27 Januari 2012
Belum ada komentar untuk "PHP anti DDOS"
Posting Komentar