ASV検査、ペネトレテスターの思考を追う:セキュリティ対策の「ある視点」(14)(3/4 ページ)
PCI DSSで定められた脆弱性スキャンテストを行う組織、ASV。彼らの検査手順と考え方をトレースし、セキュリティの意味を再考せよ!
その貫通に“確証”はあるか
貫通とは、脆弱性が発見され、そこから侵入できることを指す。検査対象の中にSolarisが稼働しており、かつtelnetのデフォルトポート(tcp/23)の開放が確認できた。そのポートに存在した脆弱性は、「Sun Solaris の in.telnetd におけるログイン認証回避の脆弱性(CVE-2007-0882)」だった。
【関連リンク】
Solarisのtelnetデーモン認証回避の脆弱性に関するレポート
http://www.nttdata-sec.co.jp/article/vulner/pdf/report20070215.pdf
この脆弱性を一言で述べると、パスワードを使用しないでログインできてしまう脆弱性である。しかし脆弱性スキャナからの報告は、「脆弱性が存在する可能性がある」というなんとも煮え切らないものだった。
このままでは、対象上にその脆弱性が存在するか否かをはっきりと断言することはできない。確証を得られないまま可能性として報告した場合、脆弱性が存在しなければ誤検出となり、脆弱性修正の必要がないものに対して、お客さまに修正を推奨するという報告を行うことになる。
脆弱性が存在する場合は、その確証がない報告により、脆弱性修正の緊急性、重要性を訴求できず、お客さまが修正を見送り、対象が危険な状態のまま運用を続けてしまうという結果になってしまうかもしれない。
そこで、筆者は白黒はっきりさせるために手動による確認を行った。その結果、報告された脆弱性を利用することで対象に侵入することに成功した。この脆弱性の利用では、一般ユーザーでの侵入となったのだが、さらに管理者権限への昇格を試みた結果、推測可能なパスワードで昇格することに成功したのである。
手動による検査を行うことで、脆弱性スキャナが「可能性」と報告した脆弱性を実際に「利用可能」な脆弱性であるという証明をすることができた。それだけではなく、その脆弱性の利用後、管理者権限まで容易に奪取可能であることも併せて証明することができ、対象が非常に危険な状態であるという評価を下すことができたのである。
脅威は“そこ”だけなのか
検査対象であるネットワーク機器の中にtcp/80の開放が確認できたものがあった。そのポートでは、Webインターフェイスによる管理のサービスが提供されていた。家庭用ルータなどでよく行われるパターンである。そのサービスに対して脆弱性スキャナは、そのネットワーク機器のデフォルトのユーザー名とパスワードでログイン可能であるという報告を挙げてきたのである。
早速、手動による確認を行うと報告どおりログインすることに成功したのである。デフォルトのユーザー名とパスワードでログイン可能であるという報告はこれだけだった。しかし筆者は、ポートスキャンの結果に疑問を感じた。
筆者の疑問というのは、ネットワーク機器の管理で使用されることの多いポートであるtcp/22(ssh)、tcp/23(telnet)が開放となっていたのにこれらに関する報告が何もないことである。確認のため、両方のポートへ接続を行うと、Webインターフェイスと同様、ログインするためのユーザー名、パスワードを求められた。この時点でほぼ間違いなく、確認した両方のポートもtcp/80と同じく管理用のポートであろうと推測できる。
推測を確信に変えるため、手動にてtcp/80のWebインターフェイスの管理画面の認証を突破したときと同様のユーザー名、パスワードを試行したところ、難なく認証を突破することができた。明らかな非検出といえるだろう。
Copyright © ITmedia, Inc. All Rights Reserved.