セッション・ハイジャックでのなりすましを実演する

2021/10/04 02:22

なんらかの方法でセッションIDを盗み出して正規の利用者になりすます「セッション・ハイジャック」を実演してみました。Cookieに含まれる値やセッションIDが悪意のある人に盗られた場合どのような事が危険か伝われば幸いです。10分弱の動画です。

セッション・ハイジャックとは

なんらかの方法(例えばクロスサイト・スクリプティング)で正規の利用者のセッションIDを盗み出すなどして、そのユーザになりすましてアクセスする攻撃手法をセッション・ハイジャックと言います。今回は二つのブラウザを用意して、片方で正規ユーザー、もう片方でセッションIDを盗み出した悪意のあるユーザーとして同じWEBサービスに同一ユーザとしてログインを試みました。

攻撃の仕組みや背景

大抵のWEBサービスでは「セッションIDが同じならば同一のユーザーである」というルールでシステムを作成しているので、そのIDが盗まれたものであったとしてもシステムが判別することはできず、正規ユーザとしてアクセスを許してしまいます。

さらに、セッションIDはCookieの情報の中に格納されている事が多いため、Cookieの情報を盗み出すことがセッションIDを奪取する一つの方法となります。

よく「Cookieの中身が誰かに盗まれるのは危険」とか「セッションIDはバレてはいけない」というような事が言われますが、この攻撃が可能になるという理由で危険性を理解できるはずです。

XSSの脆弱性を攻撃した結果「セッションIDの入ったCookieの情報を盗み出す」というところまで成立するとセッション・ハイジャックが可能になります。他の攻撃の危険を理解するのにも理解しておくと良いでしょう。

参考

以下のIPAの資料は大変網羅的なので是非一度目を通してみてください。今回ですと「1.4 セッション管理の不備」の内容が該当します。

安全なウェブサイトの作り方

この記事を書いた人

佐藤 正志

サークルアラウンド株式会社 代表取締役