安全でない直接オブジェクト参照(またはIDOR)は、パンチを詰め込んだ単純なバグです。 悪用されると、攻撃者に機密データやパスワードへのアクセスを提供したり、情報を変更する機能を提供したりする可能性があります。 HackerOneでは、毎月200以上が検出され、安全に顧客に報告されています。
IDORとは何ですか?
IDOR攻撃には、次のようないくつかの種類があります。
- ボディマニピュレーション、攻撃者がチェックボックス、ラジオボタン、API、およびフォームフィールドの値を変更して、他のユーザーからの情報に簡単にアクセスできるようにします。
- URLの改ざん、HTTPリクエストのパラメータを微調整することにより、クライアント側でURLが変更されます。
- HTTPリクエスト IDORの脆弱性は通常、GET、POST、PUT、およびDELETE動詞に見られます。
- 一括割当、レコードパターンを悪用して、ユーザーがアクセスできないようにする必要のあるデータを変更する可能性がある場合。 IDORの脆弱性の結果であるとは限りませんが、これが結果であるという強力な例は数多くあります。
最も単純で最も一般的な形式では、コンテンツへのアクセスまたはコンテンツの置換に必要な唯一の入力がユーザーからのものである場合に、IDORの脆弱性が発生します。 この脆弱性 カリフォルニアを拠点とするハッカーRojanRijal(別名 @リジャルロジャン)2018年は完璧な例です。
ShopifyのExchangeMarketplaceアプリケーションにクエリを送信するときに添付ファイルがどのようにラベル付けされているかを観察することで、Rojanは異なるアカウントの同じファイル名を利用してドキュメントを置き換えることができました。
図1:@rijalrojanがHackerOneプラットフォームでShopifyに報告したIDORの脆弱性。
小売およびeコマース企業の場合、IDORの脆弱性は、組織が報奨金を支払うものの15%を占め、政府(18%)、医療技術(36%)、および専門サービス(31%)業界全体のプログラムの最大の脆弱性を表しています。
それらが非常に単純である場合、なぜそれらはそれほど一般的ですか?
つまり、IDORはツールだけでは検出できません。
IDORを識別するには、創造性と手動のセキュリティテストが必要です。 ターゲットアプリケーションのビジネスコンテキストを理解する必要があります。 一部のスキャナーはアクティビティを検出する場合がありますが、分析、評価、および解釈には人間の目が必要です。 より深い文脈を理解することは、機械が複製できない本質的に人間のスキルです。 従来のペネトレーションテストでは、ペネトレーションテストがすべてのリクエストエンドポイントで可能なすべてのパラメータをテストしない限り、これらの脆弱性は検出されない可能性があります。
IDORの脆弱性にはどのような影響がありますか?
おそらく、最近の最も悪名高いIDORの脆弱性は、alt-techソーシャルメディアプラットフォームParlerに見られる脆弱性です。 同社は、IDORの明らかな兆候であるURLの番号で投稿を注文しました。 Parlerの投稿URLに連続した数字を追加すると、プラットフォーム上の次の投稿に無期限にアクセスできます。 認証やアクセス制限がなければ、攻撃者はサイト全体からすべての投稿、写真、ビデオ、およびデータをダウンロードするプログラムを簡単に構築できます。 これは単なる公開投稿(必ずしもアカウントの確認に使用されるIDではありません)でしたが、投稿からのジオロケーションデータもダウンロードされ、ユーザーの家のGPS座標が明らかになる可能性があります。
IDORが切り取られるのをどのように防ぐことができますか?
「IDORを回避するには、堅牢なアクセス制御メカニズムを構築し、シナリオに最適な方法を選択し、すべてのアクセスをログに記録し、可能であれば承認後のチェックで監査を行う必要があります」と、オンラインでよく知られているHackerOneハッカーのManoel AbreuNetto氏は述べています。 @マノエルト.
「ただし、IDORの影響を減らしたい場合は、単純なパターンを使用してバックエンドのオブジェクトを参照することは避けてください。したがって、順次整数値ではなく、uuidやMAC(ハッシュID)のようなものを使用します。 塩 ユーザーセッションごと。
これによりIDORが排除されるわけではありませんが、全体的な影響とオブジェクトを列挙する機能が低下します。」
IDORの脆弱性を修正するために、以下にいくつかのベストプラクティスを示します。
- 開発者は、キーやファイル名などのプライベートオブジェクト参照を表示しないようにする必要があります。
- パラメータの検証は適切に実装する必要があります。
- 参照されているすべてのオブジェクトの検証を確認する必要があります。
- トークンは、ユーザーにのみマップでき、公開されないように生成する必要があります。
- クエリのスコープがリソースの所有者であることを確認してください。
- UUIDはIDORの脆弱性を検出できないことが多いため、シーケンシャルIDではなくUUID(ユニバーサル一意識別子)を使用するようなことは避けてください。
リスクの軽減とハッカーによるセキュリティの開始の詳細については、 ハッカーによるセキュリティから価値を引き出すためのCISOガイド.
タグ
無料のアカウントを作成して、カスタムの読書体験のロックを解除します。
コインスマート。 BesteBitcoin-ヨーロッパのBörse
ソース:https://hackernoon.com/what-are-insecure-direct-object-references-idor-hz1j33e0?source = rss