ブラックボックス診断とは?〜セキュリティ診断について理解を深めるその1〜
こんにちは。ブログ担当もちゃじです。
これまでペネトレについて勉強してきましたが、比較として出てくるセキュリティ診断(脆弱性診断)についても触れないわけにはいかず、今回はセキュリティ診断について書いてみます。
一つのことを勉強し始めるとアレもコレも理解しなければならず、底の見えないセキュリティ沼を実感しているところです。
セキュリティ診断について理解を深めるシリーズは、こちらからご覧いただけます。
- その1 ブラックボックス診断とは? ←本記事
- その2 セキュリティ診断の診断項目、その多さの理由に迫る
- その3 ローカルプロキシツールとは?
- その4 ツールによる診断とは?
- その5 手作業による診断とは?
- その6 報告書とは?
- その7 セキュリティ診断員ってこんな仕事
さて、ではセキュリティ診断について。
セキュリティ診断でわかること
セキュリティ診断を行うことにより、脆弱性の有無が分かります。例を挙げると、設計やプログラムのミスによって作られた不具合、ネットワークの設定漏れ、ファームウェアの更新状況、設定ミス、OS、アプリケーションの修正プログラム適用状況、不要なサービスの有無、不要なユーザーの有無などです。
おお、なんだかたくさんのことがわかるんですね。
セキュリティ診断には大きく2種類ある
てっきりセキュリティ診断は、それで一つの診断のことだと思っていましたが違いました。ホワイトボックス診断とブラックボックス診断の大きく二つに分けられるようです。
それにしてもネーミング・・・・・・Webセキュリティについて勉強していると出てくる用語の一つ一つがいちいち気になりますが大人なのでスルーして(できてない)。
今回はブラックボックス診断について書いてみます。
ブラックボックス診断の中にも2種類ある
なんと、ブラックボックス診断の中にも2種類あるそうです。その名もWebアプリケーション診断とプラットフォーム診断。こちらの名前はそのままなんですね、安心しました。
この二つは狭義のシステムに対して診断を行うサービスで、ネットワーク上にあるWebアプリケーションやサーバーといったシステムを対象としています。
なぜ二つに分かれているのかというと、診断の観点が違うからだそう。
Webアプリケーションとプラットフォームってなんのこと?
Webセキュリティ絶賛勉強中のもちゃじ、それぞれがそもそもなんのこと?とあやふやなので、まずはそこからです。
Webアプリケーションは、PHP、Java、Rubyなどでプログラミングされたサーバー側と、HTML、CSS、JavaScriptで作られたブラウザ側、この二つで成り立つアプリのこと。
ふむふむ。
プラットフォームは、アプリを動かす土台となるもののこと。DBサーバー、メールサーバー、Web/APサーバーなどのミドルウェアのこと。
ふむふむふむ。
両者を駅で例えてみると、電車をアプリケーション、駅や線路のインフラ系をプラットフォームといえそうですね。iPhoneでいうと、アプリはアプリケーション、iPhone本体、iOS、ネットワーク設定など全部含めたシステムで一つのプラットフォームといえそうです。
うん、なんとかイメージできました。
Webアプリケーション診断とは?
Webアプリケーション診断はどんなことをするのでしょうか。診断はリモートで行うことが多く、Webアプリケーションを利用するため公開されている機能から脆弱性を見つけていくとのこと。
具体的には、入力域に対して悪意のある攻撃をしたときにアプリの動きとしてどういう反応をするかチェックするというものです。
個人情報の入力、ありますよね。ECでクレジットカード情報、入力しますよね。
不正なものは入力しても悪影響がない仕様になっているはずなんです。ところが悪影響がでてしまう場合があるんです。それが脆弱性。「データベースからデータを引っ張ってくることができるコード」を入力しデータが取れてしまったら、それは相当まずいですよね。
プラットフォーム診断とは?
ではプラットフォーム診断とはどんなことをするのでしょうか。
診断はリモートではなくオンサイト(現地)で行うことが多く、対象サーバーなどのサービス情報から脆弱性を見つけていくとのこと。この場合、プラットフォーム自体が持っている脆弱性を発見できることが多いそうです。パスワードが初期のままで侵入できてしまったなど。
リモートで行う場合はファイアウォールが機能しているかどうかを確認できます。例えば、変な通信経路が空いているなど。これらはファイアウォールが機能している場合、はじいてくれます。プラットフォームを最前線で守ってくれているものがファイアウォールです。
「ファイアウォール函谷関」説!?
ファイアウォールは絶対防衛ラインです。これがあると悪さができないそうです。ネットワーク空間の函谷関ともちゃじはイメージしています。
悪の前に高く高くそびえ立つ函谷関。
何者の侵入も許すまじ!実に頼もしい限り。
函谷関(ファイアウォール)の外から診断するか、函谷関が守る都、咸陽(システム)から診断するかは、お客さまのやりたいこと、契約によります。
函谷関たるファイアウォールがなかった場合にどうなるかを調べるには、診断員がデータセンターまで赴き一つ一つ診断します。社員の悪さやスパイを発見できることもあるそうです。
とはいえ、設定ミスや李牧などの優秀なクラッカーにより、こっそり函谷関(ファイアウォール)の横から抜けてくるケースがあります。そこで機能するのがIDS/IPSやWAFなのですが、その辺りについてはまた機会を改めることにします。
どちらか片方だけの診断ではダメなの?
ブラックボックス診断の中の二つの診断を大きく捉えることができました。どちらか片方だけの診断でもいいのではと思われる方もいるかもしれません。おそらくピンポイントで脆弱性があるかどうかを確認したい場合は別として、両方診断した方がいいともちゃじは思います。
アプリと土台のどちらか片方だけチェックしても別の片方に脆弱性があった場合、それを見つけられません。電車だけ調べてOKでも、線路に脆弱性があった場合、被害は防げません。
アプリと土台は一心同体。勉強していく中で、これは一緒に診断した方がいいんだな、と理解しました。
まとめ
セキュリティ診断はホワイトボックス診断とブラックボックス診断の大きく二つに分けられ、ブラックボックス診断にはさらにWebアプリケーション診断とプラットフォーム診断の2種類があることを学びました。
それぞれで診断の観点が違い、Webアプリケーション診断は入力域に対して悪意のある攻撃があった場合、どのように対応するかを診断していく。
プラットフォーム診断は、リモート(ファイアウォールの外)からとオンサイト(システムがある内側)から行う場合があり、リモートの場合はファイアウォールが機能しているかのチェックになり、オンサイトで行う場合は、診断員がデータベースに赴き一つ一つ診断をしていく。
アプリと土台の両方を診断することで脆弱性の有無を確認していくのがセキュリティ診断(脆弱性診断)のブラックボックス診断です。
今回出てきた用語
ミドルウェア | コンピューターの基本的な制御を行うOSと、業務に応じ特別なことを提供するアプリケーションとの中間に存在するソフトウェア |
ホワイトボックス診断 | システムの設計書やソースコード、仕様書などをもとにセキュリティリスクの分析を行う机上型の診断 |
ブラックボックス診断 | OS、ミドルウェア、Webアプリケーションなどの対象システムの内部構造を考慮せず、仕様書や操作概要から疑似攻撃や侵入を仕掛けて脆弱性を発見する診断 |
あなたのWebサイトも、脅威に対する「安心」を手に入れませんか?
ふぅ…書き終えた
診断と名のつくもの多いな。概要をつかむにとどまった今回の記事。実は弊社信興テクノミストもセキュリティ診断を行っています。
https://web-scan.jp/
そっち見ればよかったんじゃ……
ライター/もちゃじ
IT業界に縁なく秘書畑をさすらい、前職はインドで社長秘書。ほぼ日本語とパッションのみで乗り切ったずうずうしさはスキルの一つか。完全なインドア派ながらたまにふらりと旅に出る。行き場のない母性を持て余し、友人の犬を溺愛するもほえられる。体が硬く、インドでヨガティーチャーに笑われたことに深く傷つく一面も。
ITド素人の私がWebセキュリティについて学び、レベルアップしていく(予定です)様子をお届けします。学びを発信することで、少しでもWebセキュリティに関する「難しそう」というイメージが下がり、苦手意識のある方たちに届いたらうれしいです。