本記事では、レインボーテーブル攻撃の基本的な仕組みから始めて、この攻撃がどのように機能し、何を目的としているのかを明確に説明します。実際に発生した具体的な被害事例をもとに、それによってもたらされるリスクを具体的に解説します。これらの情報をもとに、私たちがどのような対策を講じるべきかについても掘り下げていきます。

レインボーテーブル攻撃とは

レインボーテーブル攻撃は、事前に生成された膨大なハッシュ値のデータベース(レインボーテーブル)を用いて、暗号化されたパスワード(ハッシュ値)を解読する手法です。この攻撃は、一般的なハッシュ関数を逆算することで、元のパスワードを効率的に特定することが可能です。

レインボーテーブル攻撃の仕組み

チェインの作成

レインボーテーブルの基本となるチェイン作成は、様々な入力値に対してハッシュ関数を適用し、その結果からさらに次の入力値を生成するプロセスです。この反復プロセスにより、複数のハッシュ値と元のパスワードが連鎖的に関連づけられます。

レインボーテーブルの構築

レインボーテーブルは、さまざまなパスワードの可能性を表すチェインの集合体です。これらのチェインを事前に計算し保存することで、実際の攻撃時には迅速にハッシュ値を逆引きすることができます。

平分の比較と特定

レインボーテーブルを使用した攻撃では、ターゲットのハッシュ値とテーブル内のハッシュ値を比較して、一致するものが見つかれば、そのチェインを逆にたどることで元のパスワードを特定します。

末尾が一致するまで繰り返す

一致するハッシュ値が見つかるまで、レインボーテーブル内の異なるチェインを順番に検証します。これにより、最終的に正しいパスワードを見つけ出すことができます。

レインボーテーブル攻撃の対策

ストレッチング(繰り返しハッシュ化)

パスワードのストレッチングとは、ハッシュ関数を複数回適用することでパスワードを強化する技術です。これにより、レインボーテーブル攻撃や他のクラッキング手法に対する耐性が向上します。ストレッチングは、攻撃者が元のパスワードを推測するのに必要な時間を劇的に増加させます。

ソルト処理(平分に文字列を付与)

ソルト処理は、パスワードにランダムなデータを追加することで、生成されるハッシュがユニークになるようにします。これにより、レインボーテーブル攻撃によるクラックが困難になります。ソルトは各パスワードに対してユニークであるべきで、データベース内で公開されても安全性を損なわないように設計されています。

解読されにくいパスワードを設定する

強力なパスワードポリシーは、攻撃を防ぐ第一線です。長く、複雑で予測しにくいパスワードを設定することで、レインボーテーブル攻撃やその他の攻撃手法に対する脆弱性を減らすことができます。

レインボーテーブル攻撃の実際の被害事例

ビジネス特化型SNS「LinkedIn」

世界各国で利用されるビジネス特化型SNS「LinkedIn」は2012年に約1億1,700万人分のパスワードが流出。
これらのパスワードは「ハッシュ化」されていましたがレインボーテーブル攻撃によって特定され、
650万件以上の情報がハッカーフォーラム(サイバー犯罪の闇市場)に投稿された。

パスワードはハッシュ関数SHA-1でハッシュ化されていましたが、前述した「ソルト処理」は行われていいなかった。

出会い系サイト「Ashley Madison」

2015年、出会い系サイト「Ashley Madison」から40ヶ国3,300万人以上の会員のパスワードが流出。
このサイトでは「解読に数百年かかる」といわれるアルゴリズム「bcrypt」を使ってハッシュ化していたが解読された形。

原因はユーザーパスワードを通常ログインと自動ログインの両方に使用していたため。
自動ログインでは推奨されていないハッシュ関数MD5でハッシュ化し保存していたため、レインボーテーブル攻撃によって元のパスワードが簡単に割り出された。

レインボーテーブル攻撃とブルートフォース攻撃の違い

レインボーテーブル攻撃は、効率的な解読を可能にするために、事前計算されたハッシュ値のデータセットに依存しています。一方で、ブルートフォース攻撃は、目的のハッシュ値を見つけるまで無差別にあらゆる可能性を試すため、極めて時間と計算リソースを多く消費します。レインボーテーブル攻撃は準備に時間はかかるものの、一度テーブルが完成すれば複数のパスワードを迅速に解読できる点でブルートフォース攻撃よりも優れています。

このように、レインボーテーブル攻撃はブルートフォース攻撃と比較してより洗練された技術を用いるため、特定の防御策が必要です。それぞれの攻撃方法に対する対策を理解し適切に実施することで、これらの脅威からデータを守ることが可能です。

アクトのサイバーセキュリティ対策支援

アクトが提供するEDR+SOCサービス「セキュリモ」は、サイバー攻撃に対してAIでリアルタイム検知し、攻撃内容の可視化と分析内容を報告するPCやサーバーのセキュリティサービスです。弊社SOCチームが、グローバルトップクラスの検知率・防御力を持ったEDR(SentinelOne、Cybereason)のおまかせ運用を実現します。

アクトはSentinelOneとMSSP契約を持つ正式パートナーかつ、国内唯一のIRパートナーであり、 平常時からインシデント対応までお客さま負担をかけることなく、最高レベルのサイバーセキュリティをご提供します。

また、IT導入補助金対象サービスの『データお守り隊』もご提供しております。
EDR+SOC+簡易サイバー保険をお手頃価格でパッケージしたサービスです。補助金を申請することで低コストで高度なサイバーセキュリティ対策を実現できます。
ご興味がございましたら下記よりご確認ください。