PHP は CC 攻撃コードを防止します。 PHP は Web ページの頻繁な更新を防止します。
この記事では主に、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('cc_lasttime')){ $cc_lasttime = $_SESSION['cc_lasttime']; $cc_times = $_SESSION['cc_times']+1; $_SESSION['cc_times'] = $cc_times; }else{ $cc_lasttime = $cc_nowtime; $cc_times = 1; $_SESSION['cc_times'] = $cc_times; $_SESSION['cc_lasttime'] = $cc_lasttime; } if(($cc_nowtime-$cc_lasttime)<3){//3秒内刷新5次以上可能为cc攻击 if($cc_times>=5){ echo '刷新太快!'; exit; } }else{ $cc_times = 0; $_SESSION['cc_lasttime'] = $cc_nowtime; $_SESSION['cc_times'] = $cc_times; } ?>
以下はPHPにおけるCC攻撃を防ぐ効果的な方法です:
1.session Record
submit.phpは送信ページであり、このページにセッション変数を設定し、隠しフィールドおよびフォームとして、submitdeal.php ページに送信され、サーバー側では、投稿された隠し変数がサーバー側に記録されているセッション変数と比較され、同じであれば書き込まれます。このようにして、ユーザーがページを更新すると、値が等しくない場合、エラーまたはジャンプが表示されます。
利点:ユーザーが確認コードを入力する必要がない
欠点:フォームは簡単にコピーできます
2. 原理は最初のものと同じですが、セッションが異なる点が異なります。データは隠しフィールドとして送信されるのではなく、ユーザーによって入力されます。ほとんどの Web サイトではテキスト検証コードと画像検証コードが使用されており、画像検証コードは非常に安全です。
データを送信した後、まず 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['k']; $t=$_GET['t']; $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:
上記はさまざまな予防方法ですPHP メソッドにおける CC 攻撃は、Web ページが迅速かつ悪意を持って更新されるのを防ぐのに役立つことを願っています。
関連する推奨事項:
フォームの繰り返し送信を防ぐための ThinkPHP の方法 SQL インジェクションを防ぐための PHP の方法以上がPHP は CC 攻撃コードを防止します。 PHP は Web ページの頻繁な更新を防止します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

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

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

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











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

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

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

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

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

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

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