ホームページ バックエンド開発 PHPチュートリアル PHP は CC 攻撃コードを防止します。 PHP は Web ページの頻繁な更新を防止します。

PHP は CC 攻撃コードを防止します。 PHP は Web ページの頻繁な更新を防止します。

Jun 02, 2018 pm 02:11 PM
php コード ウェブページ

この記事では主に、CC 攻撃を防ぐための PHP コードと、Web ページの頻繁な更新と悪意のある Web ページの急速な更新を防ぐための PHP を紹介します。CC 攻撃は、プロキシ サーバーを使用してターゲット サイトに向けられた正当なリクエストを生成し、複数のユーザーが被害者に継続的にアクセスすることをシミュレートします。興味のある友達は勉強してみてください

Web ページは悪意を持ってすぐに更新されます。CC 攻撃では、攻撃者がプロキシ サーバーを使用してターゲット サイトへの正当なリクエストを生成し、複数のユーザーが被害 Web サイトに継続的にアクセスすることをシミュレートします。大量のデータを必要とするページを操作すると、最終的にターゲット Web サイトのサーバーがリソース不足になり、サーバー リソースが長時間にわたって 100% 使用されることになります。ネットワークが混雑し、通常のアクセスが中断されるまで、未完了の接続が常に存在します。これをCC攻撃と呼びます。攻撃対策ソフトウェアを使用してこれを実現することもできますが、その効果が明らかではない場合があります。

以下に、CC 攻撃をある程度防ぐことができる PHP コードを提供します。
主な機能: 3 秒以内に 5 回以上ページを継続的に更新すると、ローカル マシン http://127.0.0.1 がポイントされます。
CC 攻撃を防ぐ必要があるページにこのコードを置くだけです。
ソースコード

<?php
$timestampcc = time();
$cc_nowtime = $timestampcc;
if(session_is_registered(&#39;cc_lasttime&#39;)){
 $cc_lasttime = $_SESSION[&#39;cc_lasttime&#39;];
 $cc_times = $_SESSION[&#39;cc_times&#39;]+1;
 $_SESSION[&#39;cc_times&#39;] = $cc_times;
}else{
 $cc_lasttime = $cc_nowtime;
 $cc_times = 1;
 $_SESSION[&#39;cc_times&#39;] = $cc_times;
 $_SESSION[&#39;cc_lasttime&#39;] = $cc_lasttime;
} 
if(($cc_nowtime-$cc_lasttime)<3){//3秒内刷新5次以上可能为cc攻击
 if($cc_times>=5){
 echo &#39;刷新太快!&#39;;
 exit;
 }
}else{
 $cc_times = 0;
 $_SESSION[&#39;cc_lasttime&#39;] = $cc_nowtime;
 $_SESSION[&#39;cc_times&#39;] = $cc_times;
} 
?>

以下はPHPにおけるCC攻撃を防ぐ効果的な方法です:

1.session Record
submit.phpは送信ページであり、このページにセッション変数を設定し、隠しフィールドおよびフォームとして、submitdeal.php ページに送信され、サーバー側では、投稿された隠し変数がサーバー側に記録されているセッション変数と比較され、同じであれば書き込まれます。このようにして、ユーザーがページを更新すると、値が等しくない場合、エラーまたはジャンプが表示されます。
利点:ユーザーが確認コードを入力する必要がない
欠点:フォームは簡単にコピーできます
2. 原理は最初のものと同じですが、セッションが異なる点が異なります。データは隠しフィールドとして送信されるのではなく、ユーザーによって入力されます。ほとんどの Web サイトではテキスト検証コードと画像検証コードが使用されており、画像検証コードは非常に安全です。

3. IP バインディング

データを送信した後、まず IP テーブルからクライアント IP を取得します。有効期限が切れていない場合は、エラーが報告されます。をクリックすると、客室の IP が取得され、その IP がデータベースに書き込まれます。
4. Cookie:
顧客が送信した後、処理プログラムはまずクライアントが Cookie を設定しているかどうかを検索し、設定していない場合は再度送信しません。 例:
ユーザーには意味がない 頻繁なジャンプやリクエストはサーバーに多大な負担をかけますが、実際には Cookie がこれを防ぐことができます。


<?php 
error_reporting(0); 
//if($_COOKIE["ck"])die("刷新过快!"); 
if($_COOKIE["ck"])header("Location:http://www.baidu.com");//这里如果用户刷新过快,给予终止php脚本或者直接302跳转 
setcookie("ck","1",time()+3);//设定cookie存活时间3s 
echo "hello!"; 
?>

方法1:


<?php  
session_start();  
$k=$_GET[&#39;k&#39;];  
$t=$_GET[&#39;t&#39;];  
$allowTime = 1800;//防刷新时间  
$ip = get_client_ip();  
$allowT = md5($ip.$k.$t);  
if(!isset($_SESSION[$allowT]))  
{  
 $refresh = true;  
 $_SESSION[$allowT] = time();  
}elseif(time() - $_SESSION[$allowT]>$allowTime){  
 $refresh = true;  
 $_SESSION[$allowT] = time();  
}else{  
 $refresh = false;  
}  
?>

方法2:


<? 
session_start(); 
if(!emptyempty($_POST[name])){ 
 $data = $_POST[name]; 
 $tag = $_POST[tag]; 
 if($_SESSION[status]==$tag){ 
 echo $data; 
 }else{ 
 echo "不允许刷新!"; 
 } 
} 
$v = mt_rand(1,10000); 
?> 
<form method="post" name="magic" action="f5.php"><input type="hidden" 
name="tag" value="<?=$v?>"><input type=text name="name"><input type="submit" value="submit"> 
</form> 
<? 
echo $v; 
$_SESSION[status] = $v; 
?>

方法3:


rrre

上記はさまざまな予防方法ですPHP メソッドにおける CC 攻撃は、Web ページが迅速かつ悪意を持って更新されるのを防ぐのに役立つことを願っています。

関連する推奨事項:

フォームの繰り返し送信を防ぐための ThinkPHP の方法


SQL インジェクションを防ぐための PHP の方法


以上がPHP は CC 攻撃コードを防止します。 PHP は Web ページの頻繁な更新を防止します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPセットアップの簡単なガイド PHPセットアップの簡単なガイド Jul 18, 2025 am 04:25 AM

PHPを設定するための鍵は、インストールメソッドを明確にし、PHP.iniを構成し、Webサーバーに接続し、必要な拡張機能を有効にすることです。 1. PHPのインストール:LinuxにAPTを使用し、Mac用のHomeBrew、およびWindowsに推奨されるXAMPPを使用します。 2。PHP.iniの構成:エラーレポート、制限のアップロードなどを調整し、サーバーを再起動します。 3。Webサーバーの使用:Apacheはmod_phpを使用し、nginxはphp-fpmを使用します。 4.完全な機能をサポートするために、Mysqli、JSON、MbStringなど、一般的に使用される拡張機能:MySqli、JSON、Mbstringなどをインストールします。

PHPでコードをコメントします PHPでコードをコメントします Jul 18, 2025 am 04:57 AM

PHPコメントコードには3つの一般的な方法があります。1。//#を使用して1行のコードをブロックすると、//を使用することをお勧めします。 2。使用/.../複数の行でコードブロックをラップするには、ネストすることはできませんが交差することができます。 3. / if(){}を使用するなどの組み合わせスキルコメントロジックブロックを制御するか、エディターショートカットキーで効率を改善するには、シンボルを閉じることに注意を払い、使用時にネストを避ける必要があります。

PHPコメントを書くためのヒント PHPコメントを書くためのヒント Jul 18, 2025 am 04:51 AM

PHPコメントを書くための鍵は、目的と仕様を明確にすることです。コメントは、「何が行われたのか」ではなく「なぜ」を説明する必要があり、冗長性や単純さを避けてください。 1.読みやすさとツールの互換性を向上させるために、クラスおよびメソッドの説明にdocblock(/*/)などの統合形式を使用します。 2。JSジャンプを手動で出力する必要がある理由など、ロジックの背後にある理由を強調します。 3.複雑なコードの前に概要説明を追加し、手順でプロセスを説明し、全体的なアイデアを理解するのに役立ちます。 4. TodoとFixmeを合理的に使用して、To Doアイテムと問題をマークして、その後の追跡とコラボレーションを促進します。優れた注釈は、通信コストを削減し、コードメンテナンスの効率を向上させることができます。

コメントで読みやすさを向上させます コメントで読みやすさを向上させます Jul 18, 2025 am 04:46 AM

良いコメントを書くための鍵は、コードの読みやすさを改善するために「何が行われたか」ではなく「なぜ」を説明することです。 1。コメントは、価値の選択や処理の背後にある考慮事項など、論理的な理由を説明する必要があります。 2。複雑なロジックに段落注釈を使用して、関数またはアルゴリズムの全体的な考え方を要約します。 3.コードとの一貫性を確保し、誤解を招くことを避け、必要に応じて時代遅れのコンテンツを削除するために、コメントを定期的に維持します。 4.コードをレビューする際にコメントを同期して確認し、コードコメントの負担を軽減するためにドキュメントを介してパブリックロジックを記録します。

効果的なPHPコメントを書く 効果的なPHPコメントを書く Jul 18, 2025 am 04:44 AM

コメントは、古いインターフェイスとの互換性やサードパーティの制限など、機能ではなくコードの存在の理由を説明したいため、不注意にすることはできません。コメントしなければならない領域には、複雑な条件付き判断、特別なエラー処理ロジック、一時的なバイパス制限が含まれます。コメントを書くためのより実用的な方法は、シーンに基づいてシングルラインのコメントを選択したり、コメントをブロックすることです。ドキュメントブロックコメントを使用して、関数、クラス、ファイルの開始時にパラメーターと返品値を説明し、コメントを更新します。複雑なロジックについては、前のロジックにラインを追加して、全体的な意図を要約できます。同時に、コードを封印するためにコメントを使用しないでください。バージョン制御ツールを使用します。

PHPの学習:初心者向けガイド PHPの学習:初心者向けガイド Jul 18, 2025 am 04:54 AM

tolearnphpefctivially、startbysettingupalocalserverenvironmentusingtoolslikexamppandacodeeditorlikevscode.1)instalxamppforapa Che、mysql、andphp.2)useocodeeditorforsyntaxsupport.3)testyoursetup withasimplephpfile.next、Learnpbasicsincludingvariables、ech

クイックPHPインストールチュートリアル クイックPHPインストールチュートリアル Jul 18, 2025 am 04:52 AM

to installphpquickly、usexampponwindowsorhomebrewonmacos.1.onwindows、downloadandinstallxampp、selectcomponents、startapache、andplacefilesinhtdocs.2

PHPブロックコメントのマスター PHPブロックコメントのマスター Jul 18, 2025 am 04:35 AM

phpblockcommentsEursefurwritingmulti-lineexplanations、一時的にdisabledingcode、およびgeneratingdocumentation.theyshouldnotedorleftunclosed.blockcommentshelpindocumentingのfunctionswithphpdoc、whitooklikephpstormuseuto-compling-compling-compling comprivedoc

See all articles