Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $ Ad_ddos_query = 10, / / number of requests per second to detect DDOS attacks
- $ Ad_check_file = 'check.txt'; / / file to write the current state during the monitoring
- $ Ad_temp_file = 'all_ip.txt'; / / temporary file
- $ Ad_black_file = 'black_ip.txt'; / / will be entered into a zombie machine ip
- $ Ad_white_file = 'white_ip.txt'; / / ip logged visitors
- $ Ad_dir = 'anti_ddos'; / / directory with scripts
- $ Ad_num_query = 0, / / current number of requests per second from a file $ check_file
- $ Ad_sec_query = 0, / / second from a file $ check_file
- $ Ad_end_defense = 0, / / end while protecting the file $ check_file
- $ Ad_sec = date ("s"); / / current second
- $ Ad_date = date ("mdHis"); / / current time
- $ Ad_defense_time = 10000 / / ddos attack detection time in seconds at which stops monitoring
- 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 ("Not enough files.");
- }
- 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);
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement