脆弱なCRLF環境を探しています。これまでのところ、PHPおよびJSPをテストしました。
PHP 5.6では、header
は改行を挿入しようとすると警告を表示します:
<b>Warning</b>: Header may not contain more than a single header, new line detected in
Java 1.8 + Tomcat 7.0.78では、response.setHeader
は\r\n
記号をスペースに置き換えます。
それで、どのバージョンから始めてJavaおよびPHPはCRLF脆弱性を修正しましたか?
PHP-4.2.1- [〜#〜] cve [〜#〜] -または、アンダースの回答を参照してください。
Tomcat-6.0.37/7.0.30より前- [〜#〜] cve [〜#〜]
CRLFインジェクションはHTTP応答分割攻撃に直接関連しているため、私が尋ねた質問 here を読むことをお勧めします。答えは私の予想を上回っていました。
[〜#〜]編集[〜#〜]
いくつかの理由で、私はいくつかのPHPヘッダーインジェクションを今日テストする必要がありました。@ Andersは正しいです。CVEでリンクしたエクスプロイトは、以下の彼の回答で述べたエクスプロイトよりも実行がはるかに困難です。
PHPの場合、 header
のマニュアルの変更ログ には次のように記述されています。
5.1.2この関数は、ヘッダーインジェクション攻撃に対する保護として、複数のヘッダーが同時に送信されるのを防ぎます。