問題タブ [xxe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
51915 参照

java - JAXB で XXE 攻撃を防ぐ

最近、コードのセキュリティ監査が行われました。問題の 1 つは、アプリケーションがXml eXternal Entity (XXE) 攻撃の対象になっていることです。

基本的に、このアプリケーションは、Web サービスを介して XML として入力を受け取る電卓です。

以下は、アプリケーションに対する XXE 攻撃の例です。

ご覧のとおり、外部ファイル ( ) を指すエンティティを参照できます"file:///d:/"

XML入力自体(<calcinput>...</calcinput>一部)についてはJAXB(v2.1)でアンマーシャリングされています。Web サービス部分は jaxws-rt (2.1) に基づいています。

Web サービスを保護するために何をする必要がありますか?

0 投票する
1 に答える
2646 参照

c - libxml2in C で XXE を無効にする方法は?

要件: 次のリクエストをアプリケーションに渡すと、

1) リスクのある入力 xml に対して XML 検証を行う方法

2) libxml2 で XXE を無効にする方法、つまり ENTITY フィールドを解析しないようにする方法

libxml2 バージョン 2.9 以降では、XXE がデフォルトで無効になっていることを理解しています。ただし、現在は 2.7.7 バージョンを使用しています。

このリンクによるとXML_ENTITY_PROCESSING

Enum xmlParserOption には、libxml2 で定義されている次のオプションを含めることはできません。

XML_PARSE_NOENT: エンティティを展開し、置換テキストに置き換えます XML_PARSE_DTDLOAD: 外部 DTD を読み込みます

これまで、xmlParseMemory関数を使用して XML メモリ内ブロックを解析し、ツリーを構築していました。この関数は、xmlParserOption を設定するためのパラメータを取りません。

次に、xmlReadMemory関数と同じことを行いxmlParseMemoryますが、異なるパラメーターを取る関数に変更しました。

それでも、ENTITY フィールドが解析されていることがわかります。誰でも私を助けることができますか?さらに追加情報が必要な場合はお知らせください。

お時間をいただきありがとうございます。

よろしく

プラヴィーン

0 投票する
1 に答える
7442 参照

php - PHP バージョン全体での XXE 脆弱性の明確化

最後の手段としてここに質問を投稿します。Web を閲覧し、何度も試行しましたが、成功しませんでした。

XXE 攻撃を再現することは、それらを防ぐために私がやろうとしていることですが、PHP が XML エンティティを処理する方法について理解できていないようです。記録のために、私は Ubuntu 12.04 で PHP 5.5.10 を使用していますが、5.4 と 5.3 でいくつかのテストを行いました。

次の例では、true または false を指定して libxml_disable_entity_loader() を呼び出しても効果がないか、何か間違ったことをしています。

ただし、いくつかの引数を loadXML() に渡していくつかのオプションを許可することもできます。これは、エンティティが外部 URL の場合ではなく、ローカル ファイルの場合に機能します。

次の例のように、エンティティを別のものに変更すると、エンティティは解決されますが、パラメーターまたは関数を使用してエンティティを無効にすることはできませんでした...何が起こっているのですか?!

私が見つけた唯一の方法は、DOMDocument オブジェクトのプロパティを上書きすることでした。

  • resolveExternals を 1 に設定
  • 1 に設定された代用エンティティ

次に、それらが解決されるかどうか。

要約すると、明らかに理解していないことを本当に理解したいと思います。これらのパラメーターと関数が効果がないように見えるのはなぜですか? libxml2 は PHP よりも優先されますか?

どうもありがとう!

参考文献:

0 投票する
1 に答える
4618 参照

java - Default Parser を使用した JAXB XXE 攻撃

これは、JAXB API の使用中に XXE 攻撃を回避することに関するものです。JAXB を使用する場合、デフォルトの解析メカニズムをオーバーライドして、代わりの SAX パーサーを使用し、エンティティ機能を設定して XXE 攻撃を回避できることを理解しています。しかし、デフォルトのパーサーとは何かを正確に理解し、それにセキュリティ機能を設定したいと考えています。何か助けはありますか?

0 投票する
1 に答える
89 参照

xml - XML 外部エンティティの脆弱性 DoS ケース: 拡張が行われるのはいつですか?

XMLファイルを入力として受け取り、それを処理するアプリに取り組んでいます。このアプリは、有名な Billion Laughs のケースである XXE DoS 攻撃に対して脆弱であることがわかりました。ファイルが処理される前に、スキーマに対して検証されます。それで、私の質問は、検証中に DoS 攻撃が行われるかどうかです。または、検証中に XML エンティティが展開されないため、DoS 攻撃は検証後、検証済みのファイルが解析されるときにのみ発生しますか?

0 投票する
1 に答える
561 参照

xml - JBoss EAP 5.0.1 での SOAP ベースの Web サービスでの XML 外部エンティティ インジェクションの防止

JBoss WS 3.0.4 で JBoss EAP 5.0.1 を使用しており、XML 外部エンティティ インジェクションを防止するための解決策を見つけようとしています。より高いバージョンにアップグレードする以外にこれを修正するにはどうすればよいですか?

0 投票する
1 に答える
697 参照

java - XXEとBILLION LAUGHS

xxe と 10 億の笑いは xmlpullfactory を使用して可能ですか?以下の xml コードを試しました

kxml2-2.3.0.jarを使用した以下のJavaコードを使用して上記のxmlファイルを解析

GOT OUTPUT AS

無視できる空白:

文書型宣言:

無視できる空白: 開始タグ: 作成者

エンティティ リファレンス: js

エンティティ参照値: null

終了タグ: author 無視できる空白:

ドキュメントの終了: null

しかし、エンティティ参照値をjosmithとして取得したいのですが、何が問題になりますか?

0 投票する
2 に答える
14530 参照

java - Veracode XML External Entity Reference (XXE)

I've got the next finding in my veracode report: Improper Restriction of XML External Entity Reference ('XXE') (CWE ID 611) referring the next code bellow

...

...

I've been researching but I haven't found out a reason for this finding or a way of making it disappear. Could you tell me how to do it?

0 投票する
1 に答える
577 参照

java - jboss 4.2 での XXE 攻撃の防止

jboss 4.2 にデプロイされた Web サービスに対する xxe 攻撃を何らかの方法で防ぐことは可能ですか? WS は注釈によって定義されます。外部エンティティと dtd のサポートを無効にする構成が見つかりません。

この投稿 ( JAXB による XXE 攻撃の防止) は、サーブレットで SOAP を解析するためのソリューションですが、注釈付きの WS には何かが必要です。