安全でない直接オブジェクト参照(あんぜんでないちょくせつオブジェクトさんしょう、Insecure direct object reference、IDOR)は、デジタルセキュリティにおけるアクセス制御の脆弱性の一種である。
これは、ウェブアプリケーションやアプリケーションプログラミングインタフェース(API)が、内部のデータベースにあるオブジェクトへの直接アクセスに識別子を使用しているにもかかわらず、アクセス制御や認証の検証を行っていない場合に発生する。たとえば、ウェブサイトに送信されるリクエストURLが、容易に列挙可能な一意の識別子を直接使用している場合(https://example.com/document/1234など)、これが悪用されてすべての記録へ意図しないアクセスを許す可能性がある。ディレクトリ・トラバーサル攻撃は、IDORの特殊なケースとみなされている。この脆弱性は非常に重大な懸念事項であり、長年にわたりOWASPのTop 10脆弱性の一つとしてリストされていた。連続するIDは、いくつかの手法を用いてダークキー(dark keys)に変換することができる。
例 2020年11月、サイレント・ブリーチ(Silent Breach)社はアメリカ合衆国国防総省のウェブサイトでIDORの脆弱性を特定し、同省の脆弱性開示プログラムを通じて非公開で報告した。このバグは、アカウントシステムにユーザーセッションメカニズムを追加し、サイト上での事前認証を必須とすることで修正された。
ソーシャル・ネットワーキング・サービスのParlerが連続した投稿識別子を使用していたため、2021年1月には同サービスから数テラバイトのデータがスクレイピングされる原因になったと報道された。しかし、このプロジェクトを担当した研究者は、その報道は不正確であると述べている。
脚注
関連項目
壊れたオブジェクトレベルの認可(Broken Object Level Authorization、略: BOLA) アクセス制御 識別子 ディレクトリ・トラバーサル