XXEがXMLインジェクションの一種であるため、なぜXXEがインジェクションカテゴリに分類されないのかを説明します。
XML外部エンティティは、XMLパーサー/インタープリターを操作して、一部のデータ(つまり、ファイルシステムからのファイル)の情報開示を達成するための攻撃です。
SQLインジェクションは、SQL解釈を操作して幅広い目標を達成する攻撃であり、その1つは、一部のデータの情報開示である可能性があります。
一部の組織はXXEをインジェクション攻撃とさえ呼んでおり、OWASPはA1の下にXMLインジェクションをリストしています。 XXEでは、コマンドをインタープリターに技術的に挿入するわけではないと私は主張しますが、両方のカテゴリーのデータフローは基本的に同じです。
脅威は基本的に同じです-情報漏えいとサービス拒否。ただし、SQLインジェクションを使用すると、さらに多くのことが可能になります。
では、この分割の主な理由は何だと思いますか?特にXXEに対する意識を高めるだけですか、それとも本当にスタンドアロンとして分類できますか?
XXSもインジェクションとして扱うことができると私は主張しますが、ここでの違いは、システムは攻撃されないがそのユーザーは攻撃されることであることを受け入れることができます。
MITER CAPECでさえ、インジェクションはSubversion of Acess Controlとは明らかに異なるトップレベルのカテゴリーです。 XXEは Privilege Abuse の一種で、インジェクションではなく、Subversionのアクセス制御に該当します。
つまり、
予期しないアイテムを挿入する->コマンド注入->XMLインジェクション
とは全く違う
Subvert Access Control->特権の乱用->XML外部エンティティ