ホームページ > バックエンド開発 > PHPチュートリアル > PHP_PHP チュートリアルでの CC スクリプト攻撃の防止に関する簡単な体験概要

PHP_PHP チュートリアルでの CC スクリプト攻撃の防止に関する簡単な体験概要

WBOY
リリース: 2016-07-13 17:10:35
オリジナル
1152 人が閲覧しました

著者は、CC スクリプト攻撃に関するいくつかの問題と、CC スクリプト攻撃を防ぐための解決策をまとめました。必要な友人は参照してください。

1. VPS コントロール パネルにログインし、いつでも VPS を再起動できるようにします。
2. まず Web サーバーを閉じます。過度の負荷がかかると、以降の操作が困難になったり、SSH にログインできなくなったりすることがあります。
3. 念のため、設定したWebサーバシステムを起動後の自動実行から外してください。
(システムにログインできなくなり、再起動後の負荷が高すぎてコンピューターの電源を入れた直後にログインできなくなった場合は、管理者に連絡して、VPS の IP または 80 ポートをブロックすることができます。マザーマシンの仮想コンソールを使用してシステムにログインし、操作 2 と 3 を実行してブロックを解除します)

2番目に、攻撃者のIPを調べます

1. Webサイトのルートディレクトリにファイルip.phpを作成し、以下の内容を記述します。

Nginx ルール:
コードは次のとおりです コードをコピー


$real_ip = getenv('HTTP_X_FORWARDED_FOR');

if(isset($real_ip)){

shell_exec("echo $real_ip >> real_ip.txt");

shell_exec("echo $_SERVER['REMOTE_ADDR'] >> proxy.txt");

}その他{

shell_exec("echo $_SERVER['REMOTE_ADDR'] >> ips.txt");

}

echo 「サーバーが攻撃を受けており、攻撃元を収集中です。5 分後にこのサイトにアクセスしてください。5 分以内にこのサイトに複数回アクセスすると、攻撃元として使用される可能性があり、IP アドレスがブロックされます。」ご協力ありがとうございます! ';

?>

2. 擬似静的を設定し、Web サイトへのすべてのアクセスを ip.php に書き換えます。


コードは次のとおりです

コードをコピー (.*) /ip.php を書き換えます Lighttpd ルール: 設定1、2が完了したらWebサーバーを起動し、IP情報の記録を開始します。 収集時間は、Web サーバーを再度シャットダウンする前に 3 ~ 5 分にすることをお勧めします。

URL.rewrite = (

"^/(.+)/?$" => "/ip.php"


)

3. Web サーバーを起動して IP の収集を開始します
real_ip.txt、このファイルに保存されている IP の 80% 以上が同じです。この IP は、攻撃者が攻撃を実行するプラットフォームの IP です。

proxy.txt、このファイルには攻撃者が呼び出したプロキシ サーバーの IP アドレスが保存されているため、ブロックする必要があります。
ips.txt、ここに記録されているのはプロキシサーバーの特徴を示さないIPであり、アクセス数に基づいて攻撃元かどうかを判断します。

三、前項の補足
VPS で WEB ログが有効になっている場合は、ログ ファイルの増加率をチェックして、どのサイトが攻撃を受けているかを判断できます。
ログが有効になっておらず、サイトの数が少ない場合は、一時的にログを有効にすることも便利です。

ログが有効になっておらず、サイトが多すぎる場合は、仮想ホストをバインドせずに一時 Web サーバー構成ファイルを使用し、デフォルト サイトを設定できます。次に、次の行を ip.php に追加します




コードは次のとおりです

コードをコピー

domain.txt にはアクセスしたドメイン名が保存され、CC によって攻撃されたサイトがその大部分を占めます。

4、IPのブロックを開始します
ファイルban.phpを作成します

shell_exec("echo $_SERVER['HTTP_HOST'] >> ドメイン.txt");
コードは次のとおりです コードをコピー

$しきい値 = 10;

$ips = array_count_values(file('ips.txt'));

$ban_num = 0;

foreach($ips as $ip=>$num){

if($num > $threshold){

$ip = トリム($ip);

$cmd = "iptables -I INPUT -p tcp --dport 80 -s $ip -j DROP";

シェル_exec($cmd);

echo "$ip 禁止!n";

$ban_num ++;

}

}

$proxy_arr = array_unique(file('proxy.txt'));

foreach($proxy_arr として $proxy){

プロキシ = トリム($proxy)

$cmd = "iptables -I INPUT -p tcp --dport 80 -s $proxy -j DROP";

シェル_exec($cmd);

"$proxy は禁止されました!n" をエコーし​​ます

$ban_num ++

;

}

エコー "合計: $ban_num ipsn";

?>

以下のコマンドでスクリプトを実行します(phpコマンドがPATHにあることを確認してください)

php ban.php

このスクリプトは、2 番目の段落の ips.txt に保存された結果に依存しており、そこに記録された IP 訪問数が 10 を超えると、攻撃元としてブロックされます。プロキシサーバーの場合は回数判定せずに直接ブロックします。

IP をブロックした後、すべての Web サイト設定を通常に復元すると、サイトは引き続き正常に動作できます。

http://www.bkjia.com/PHPjc/629653.html


www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/629653.html技術記事

著者は、CC スクリプト攻撃に関するいくつかの問題と、CC スクリプト攻撃を防ぐための解決策をまとめています。必要な友人は参照してください。 1. VPS コントロール パネルにログインし、いつでも再起動できるようにしてください...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート