Blast-RADIUSは、広く使用されているRADIUS/UDPプロトコルの認証バイパスで、脅威者が中間者MD5コリジョン攻撃でネットワークやデバイスに侵入することを可能にします。
企業や通信ネットワーク上の多くのネットワーク・デバイス(スイッチ、ルーター、その他のルーティング・インフラストラクチャを含む)は、認証・認可RADIUS(Remote Authentication Dial-In User Service)プロトコルを使用しており、1つのネットワーク上に数万台のデバイスが存在することもあります。
このプロトコルは、DSLやFTTH(Fiber to the Home)、802.1XやWi-Fi、2Gや3G携帯電話のローミング、5GのDNN(Data Network Name)、プライベートAPNやVPN、重要なインフラ・ネットワークなど、幅広い用途で認証に使用されている。
Blast-RADIUSは、新しいプロトコルの脆弱性(CVE-2024-3596)とMD5の衝突攻撃を悪用し、RADIUSトラフィックにアクセスできる攻撃者がサーバーの応答を操作したり、任意のプロトコル属性を追加したりできるようにします。
「Blast-RADIUS攻撃は、RADIUSクライアントとサーバー間の中間者攻撃者が、失敗した認証リクエストに対する有効なプロトコルAcceptメッセージを偽造することを可能にする」と、この攻撃の背後にある研究者は説明している。
「この偽造により、攻撃者はパスワードや共有秘密を推測したり、総当たりで実行したりすることなく、ネットワーク機器やサービスにアクセスできるようになる。攻撃者はユーザー認証情報を学習しません。
“我々の攻撃を悪用する敵は、部分的なネットワーク・アクセスから、認証にRADIUSを使用するあらゆるデバイスにログインできるように特権をエスカレートさせたり、任意のネットワーク特権を自身に割り当てることができる。”
RADIUSプロトコルは、デバイス上で認証を行う際にMD5ハッシュ化されたリクエストとレスポンスを使用する。研究者による概念実証のエクスプロイト(まだ共有されていない)は、認証リクエストの成功を示す有効な「Access-Accept」レスポンスを偽造するために必要なMD5 chosen-prefixハッシュの衝突を計算する。この偽造されたMD5ハッシュが、中間者攻撃(man-in-the-middle attack)を使ってネットワーク通信に注入され、攻撃者がログインできるようになる。
この悪用は、このMD5ハッシュを偽造するのに3~6分かかり、RADIUSで実際に一般的に使用されている30~60秒のタイムアウトよりも長い。
しかし、この攻撃で使用されるコリジョン・アルゴリズムの各ステップは効果的に並列化することができ、ハードウェアの最適化に適しているため、十分なリソースを持つ攻撃者であれば、GPU、FPGA、またはその他の最新かつ高速なハードウェアを使用して攻撃を実装し、はるかに高速な実行時間(おそらく数十倍から数百倍)を達成することができます。
MD5ハッシュの衝突は2004年に初めて実証されましたが、RADIUSプロトコルの文脈でこれを悪用できるとは考えられていませんでした。
「私たちの攻撃は、RADIUSがMD5を使用する方法におけるプロトコルの脆弱性を特定し、攻撃者が悪意のあるプロトコル属性を注入することで、サーバーが生成するResponse Authenticatorと攻撃者が望む偽造レスポンスパケットとの間でハッシュの衝突を引き起こすことを可能にします。
「さらに、私たちの攻撃はオンラインであるため、攻撃者はいわゆる chosen-prefix MD5 collision 攻撃を数分または数秒で計算できる必要があります。以前に報告された最良のチョーンドプレフィックスコリジョン攻撃時間は数時間を要し、RADIUSプロトコルと互換性のないコリジョンを生成した。
この攻撃はエンドユーザーの認証情報を危険にさらすものではないので、エンドユーザーがこの攻撃から身を守るためにできることは何もない。しかし、RADIUSデバイスを製造・管理するベンダーやシステム管理者は、これらのベスト・プラクティスと ガイダンスに従うことが推奨される。
この攻撃を防御するために、ネットワーク・オペレーターは、RADIUS over TLS(RADSEC)にアップグレードし、「マルチホップ」RADIUS導入に切り替え、アクセス制限管理VLANまたはTLS/ IPsecトンネリングを使用してインターネット・アクセスからRADIUSトラフィックを分離することができる。
Comments