ハッシュ競合とサービス拒否攻撃を防ぐための PHP5.2.X パッチ方法_PHP チュートリアル

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

この記事は、ハッシュ競合とサービス拒否攻撃を防ぐために PHP5.2.X パッチのメソッドを分析しています。必要に応じて、友人が参照できます。


先週、5.4 がリリースされようとしていたときに、Dmitry は突然新しい構成項目を導入しました:

ハッシュ衝突に基づく攻撃を防止するための max_input_vars ディレクティブを追加しました。防止される攻撃は「ハッシュ アルゴリズム衝突による複数実装のサービス拒否」です。

攻撃の原理は非常に単純です。現在、多くの言語は、ユーザーからの一般的に使用される POST データを含むハッシュを使用して、リクエスト ヘッダーを構築し、多数の特別な「k」値を POST に付加します。 (言語のハッシュ アルゴリズムがカスタマイズされているため)、言語の下部にある POST データを格納するハッシュ テーブルが「競合」(衝突) によりリンク リストに縮退します。


このように、データ量が十分に大きい場合、言語は計算、検索、挿入時に大量の CPU 使用率を引き起こし、それによってサービス妨害攻撃を実行する可能性があります。

PHP5.4 は、制限を追加することでそのような攻撃の影響を回避しようとします:

- max_input_vars - 受け入れられる GET/POST/COOKIE 入力変数の数を指定します (デフォルト値は 1000)。

PHP 5.2 を使用していてそのような攻撃の脅威にさらされている場合は、次のパッチを適用できます。PHP 5.3 の場合は、このパッチが既に含まれている 5.3.9 にアップグレードすることを検討できます (5.3.9 は現在 RC ステータスであるため、したがって、アップグレードしたくない場合は、このパッチを参照して自分で 5.3 用のパッチを作成することもできます):

予防方法

1. PHP src に Cd を実行します: patch -p1 2. 最新の PHP 5.3.9-RC4 ではこの問題が修正されているため、5.3 の場合は 5.3.9RC4 にアップグレードできます
もちろん、RC バージョンにアップグレードしたくない場合は、このパッチを調整して 5.3 に適したパッチを作成するだけです。

パッケージは https://github.com/laruence/laruence.github.com/tree/master/php-5.2-max-input-vars でダウンロードできます

http://www.bkjia.com/PHPjc/629665.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/629665.html技術記事この記事では、ハッシュの競合とサービス拒否攻撃を防ぐための PHP5.2.X パッチ メソッドを分析しており、必要に応じて友人が参照できます。 先週、Dmitry は 5.4 のリリース直前に突然...
を導入しました。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!