web-dev-qa-db-ja.com

OWASPトップ10でXXEがインジェクションの一部にならないのはなぜですか?

XXEがXMLインジェクションの一種であるため、なぜXXEがインジェクションカテゴリに分類されないのかを説明します。

XML外部エンティティは、XMLパーサー/インタープリターを操作して、一部のデータ(つまり、ファイルシステムからのファイル)の情報開示を達成するための攻撃です。

SQLインジェクションは、SQL解釈を操作して幅広い目標を達成する攻撃であり、その1つは、一部のデータの情報開示である可能性があります。

一部の組織はXXEをインジェクション攻撃とさえ呼んでおり、OWASPはA1の下にXMLインジェクションをリストしています。 XXEでは、コマンドをインタープリターに技術的に挿入するわけではないと私は主張しますが、両方のカテゴリーのデータフローは基本的に同じです。

Data flow where an attacker supplies bad input to an interpeter, where the flow can have none, one or many intermediate processes 脅威は基本的に同じです-情報漏えいとサービス拒否。ただし、SQLインジェクションを使用すると、さらに多くのことが可能になります。

では、この分割の主な理由は何だと思いますか?特にXXEに対する意識を高めるだけですか、それとも本当にスタンドアロンとして分類できますか?

XXSもインジェクションとして扱うことができると私は主張しますが、ここでの違いは、システムは攻撃されないがそのユーザーは攻撃されることであることを受け入れることができます。

2
Nikola Luburić

MITER CAPECでさえ、インジェクションはSubversion of Acess Controlとは明らかに異なるトップレベルのカテゴリーです。 XXEは Privilege Abuse の一種で、インジェクションではなく、Subversionのアクセス制御に該当します。

つまり、

予期しないアイテムを挿入する->コマンド注入->XMLインジェクション

とは全く違う

Subvert Access Control->特権の乱用->XML外部エンティティ

3
atdre