Garbage Script on Goo BLOG

某SIerの"元"研究者 兼 情報Security技術者"F.Koryu"の日常の雑記置き場

(matcha445)まっちゃ445勉強会#12 雑感

2010-05-30 07:08:56 | セキュリティ(技術者向け)
前回の記事はあくまでRAWデータという事で、雑感等をとりまとめてみたいと思います。
-----
【Session1:「願い」~ペネトレーションテスターからセキュリティ担当者へ~(NTTD 辻さん)】
「ペネトレーションテスト」とは何か、そして何をする(している)のかからスタートし、作業の省力可に用いるツール(脆弱性スキャナ)の紹介と、ツールの弱点(False PositiveとFalse Negativeの発生)と、それを踏まえた上での対策(意志と思考を持つ人の力)について紹介されていました。

ツールについては、以前紹介したNessusのように色々なツールがあり、いずれも一長一短(ツールの癖)があります。
(例えばNessusだと以前はSSH系の調査がやや苦手という癖を持っていました……今は大分良くはなりましたが。)
このツールの癖というのは、調査対象によって調査し易い・し難いという形で表れるので、その辺は日頃からツールに関する情報収集を行い、この調査対象ならこのツールという形に持ち込むのが「輝手」かと思われます。

またツールはその性質上、False PositiveとFalse Negative(「ツールの嘘と沈黙」という言葉で表現していました)が発生してしまうのですが……
  • False Positive→検査する側が精査し本当に脆弱か否かを判断、その上で時としてレポートから除外する(または深刻度を下げる)などの対応を図る
  • False Negative→前述のツールの癖を把握し、その上で「他に類似する侵入口は無いか?」などを推測し、実際に手を動かして検証する事で対応を図る
    ……という事で対応を図る必要があるでしょう。
    (質疑応答の時に、False Negativeに関する情報の共有について質問させて頂きましたが、NTTDではマインドマップを活用し、ある対象についてはこのような脆弱性が発生し易く、それに対する検査項目を整理した上で技術者間で情報共有しているとの事だそうです。)

    最後に「調査するのは『人』である」という事、結局ある程度ツールでの自動化が図れるようになったとは言え、ツールは「自分の判断で任意に調査項目・方法をツール自身が変更する」というのは出来ない事から、調査漏れというのはどうしても発生してしまいます。そこは人の英知と柔軟性でカバーしましょうという事で。
    (この事を「攻める側も守る側も、システムの後には人が存在している」という言葉でまとめていました。)


    -----
    【Session2:LTセッション】
    [LT1:ペネトレーションテスターより愛を込めて part2(辻さん)]
    Session1に引き続き、LTにも辻さんが登場。実際にペネトレーションテストをしていてよく遭遇する脆弱性を3種類紹介していました。
    先に言ってしまうと、いずれもシステムを構築・運用する側が自ら検査する事で防ぐ事ができる「ついウッカリミス系」が多いとの事。第三者による検査を受ける前に自己診断を行う事で余計な指摘をされる事も防げますし、何より検査する側も検査対象・範囲・項目の削減が図れる事によって工数を削減できますよね。

    1位は「推測されやすいパスワード」として「パスワードが空」「Joeアカウント」「デフォルトパスワードのまま」というのを挙げられていました。対象はSSH、Telnet、SNMP(コミュニケーション名)、SMB、VMC、DBMSなどと様々。

    2位は「SSL関係」という事で「今更ながらSSL2.0が有効になっている」「鍵長が128bit未満」というのを挙げられていました。なお特に128bit長未満の鍵の件についてはPCIDSS 要求項目4.1が関連します。

    3位は「Apache関係」という事で「Expect リクエストヘッダにおけるXSS」413エラーメッセージにおけるHTTPメソッドを適切に処理しない問題」を挙げられていました。Apacheについてはプロダクトの中に含まれているにも関わらず、システム運用側がそれを把握していないというケースがあるとの事……皆さんご注意を……。

    -----
    [LT2:とあるシステムの脆弱性」(totoroさん)]
    相変わらず黒いのでオフレコ、一言で言うと「それは仕様です」。

    まぁ強いてツッコミすると、確かに今のままなら仕様と言われても仕方がないかと。
    と言うのも、「ソレ」を突く悪意有る行為のシナリオを挙げても、それが成立する前提条件が「客観的でない(統計的なデータが無い)」以上、受ける側としては納得できないのではないかと……。まずはその辺(客観的なデータを取り、確かにそれは成立するというのを証明する)を解決しない事には進展はしないのではないかと思います。

    ---
    [LT3:Google Chromium OS Forensics(Oroさん)]
    フォレンジクスを行う者として、今後出てくるであろう「Google Chromium OS」を搭載する機器に対する検証結果を紹介していました。
    結論から言うと、現時点では通常の手法では技術的もそうでうが、法的にも難しい部分があるという事だそうです。

    簡単に説明すると……
  • Google Chromium OSにはセキュリティ対策、特に機器盗難時などにディスクイメージを取られて解析されてしまう事への対策の1つとして、ユーザデータ格納部分については、ユーザ毎に暗号化されている
  • その暗号化に用いる鍵の1つとして「Googleアカウントのパスワードハッシュ」が挙げられる
  • 問題なのはその「Googleアカウントを如何に特定するのか?」という事
  • 現在Googleアカウントは、Googleのサーバ(Internet上にある)に保管されている……誰が使ったのか分からない機器を調査するために、どのGoogleアカウントなのかを如何に特定するかが問題となる
  • 下手にGoogleのサーバにアクセスしたら、それこそ不ア禁法が適用される可能性も無くは無い……
    ……という事だそうです。

    ---
    [LT4:WASF conf 2010報告会(ikepyonさん他)]
    時間が余った事もあって、急遽先日開催された「Web Application Security Forum カンファレンス 2010」の報告会が行われました。
    まぁこの件については各所に記事があるので、ココでは割愛させて頂きます。

    -----
    最後に、いつもながらですが「美味しかった」です(笑)。
    相変わらずスタッフ(まーさん)が選ぶお菓子は美味しいという事で(ヲ

  • (matcha445)まっちゃ445勉強会#12

    2010-05-29 12:37:48 | セキュリティ(技術者向け)
    今回もお昼から参加、会場は1F A・B会議室です。
    広いのは嬉しいんですが、電源がぁ~(あってて良かった電源タップ)。

    適宜更新したいと思います。

    (2010/5/29 13:03 追記)
    開会、スタッフからの連絡と自己紹介からスタート。

    (2010/5/29 13:35 追記)
    自己紹介タイム終了、最初の休憩後はいよいよセッションスタートです。
    ---
    【Session1:「願い」~ペネトレーションテスターからセキュリティ担当者へ~(NTTD 辻さん)】
    ペネトレーションテスト(ペネトレ)に対する理解を得てもらおうというのが今回のテーマ。
    ペネトレとは何ぞや?→「貫通、洞察力、眼識」。
    直訳すると「貫通試験、侵入試験」(世の中的には色々なキーワードで呼ばれている)。
    昔長野県でFWに穴が無いかテストしてニュースになったのがコレ。
    弱点を検出後、実際の攻撃手法を用いて侵入できるかを実証し、対象セキュリティレベルを診断する。
    間違った認識「外からアタック」→中からやる事もある。
    IPアドレスを持っている(要は通信できる)機器ならば全て対象になるという事。

    何するの?
    まずは情報収集、次に攻撃方法の考察、最後に実際に攻撃し、侵入できるか確認する。
    情報収集→ポートスキャン、OSやアプリのバージョン推測などなど。
    攻撃方法の推測→情報収集の結果から、脆弱性を推測、攻撃手法を考える。
    実際の攻撃→考えた攻撃手法を実際に試し、侵入や機密情報の奪取が出来るかを試してみる。
    (筆者補足:実際には、その後結果を取りまとめてレポート化するという工程があります。)

    調査にも穴はある。
    沢山の調査対象→手でやったら面倒なので「脆弱性スキャナ」を使う事が多い。
    脆弱性スキャナ→各種調査・攻撃パターンが多数収録されている。
    辻さんの所はNessusを使っているとの事。
    ツールには得手不得手があるし、設定内容や解釈にも特有の癖がある。
    →なので対象やツールの組み合わせによっては誤検出が発生する事がある。

    誤検出→「False Positive」と「False Negative」の2種類。
    「False Positive」→下手に報告すると「存在しないものを直せ」というのと同じ……受ける側としては困ってしまう。
    なので報告する側がFalse Positiveを適宜排除する必要がある。

    「False Negative」→本当は脆弱性があるのに「ない」と言われる。
    脆弱性と呼ばれるものには「ユーザ権限奪取」「バージョン情報・プロダクトの判明」「推奨設定ではない」など様々……だけど発生するのは重要度に関係なく発生する!!
    原因は?
    1.検査パターンが間に合っていない
    2.検査パターンの精度が低い
    3.開放ポートを発見できていない

    そんな事あるの???→脆弱性スキャナの特性や検査環境によって往々に生じるので、ある意味「日常」。
    なので「脆弱性スキャナには『嘘と沈黙』というリスクは常にある」という事を留意する必要がある。
    道具は道具なので、ツールで自動化するのではなく、作業の効率化・工数の削減を行うために使うというスタンスが良い。
    結局は検査する人がツールの嘘と沈黙を見破る必要がある。

    脆弱性スキャナは「レントゲン」、その写真の中に病巣があるかどうかを判断するのは医者(検査する人)、素人(検査される側)が正しく判断するためには、プロ(検査する人)の見識が必要という事です。

    侵入ハイライト(ケース紹介)
    (1)Sun Solarisのin.telnetdにおけるログイン認証回避の脆弱性
    スキャナによる結果→「あぶない……かも」
    ならば実際に手を動かして実証してみる(通常ログイン→脆弱性を突く方法でアクセス)→パス無しで入れてしまった!!!!!

    (2)管理者ユーザのパスワードが推測可能
    とあるNW機器を調べた(ID:admin、Pass:password)→ツール上では1つの口では入れたが、残り2つは検出できなかった
    実際に対象のポートに接続→他の2つの口も入れた!!
    人は色々推測できるけど、ツールは機械だから推測する事はできません...

    最後に……
    世の中に完全無欠の自動システムというものは存在しません。
    1つの目的を達成するために、自動で良い部分と手動でやらないといけない部分があるはずです。
    「セキュリティ製品」+「設定・運用」。
    自然界とは異なり、人間の意志とは無関係に脅威が自然発生するような事は、今のところはありません。
    敵は「意思を・思考を持つ人間」、システムの後ろには必ず人間が存在します(攻める側も守る側も同様)。


    (2010/5/29 15:20追記)
    お菓子タイム終了~、今回は「京都宇治 森半」の大福とどら焼き、それぞれまっちゃ味とほうじ茶味が用意されていました。
    (写真は帰宅後にアップします。)


    【Session2:LTセッション】
    [LT1:ペネトレーションテスターより愛を込めて part2(辻さん)]
    経験から、検出されやすい脆弱性を挙げてみます。
    ブッチギリ1位は「推測されやすいパスワード(SSH、Telnet、SMB、SNMP、VNC、DB系)」
    どんなパスワード?→パスなし、Joe、組織名・人名(+数字、@西暦)、初期パスワード
    曲者なのはJoe……「FTPで/homeや/etc/passwd」「http://URL/~usernameで」「入っていそうなアプリ名」

    2位は「SSL絡み」……「SSLv2が有効になっている」「128bit未満のキー」(これはPCIDSS 要件4.1に絡みます)
    お手軽に確認「ManySSL」

    3位は「Apache絡み」……「Expect リクエストヘッダにおけるXSS」「413エラーメッセージにおけるHTTPメソッドを適切に処理しない問題」
    2006,7年度発表の脆弱性ですが、案外ポコポコ出る……何かのアプリのUIのために一緒にインストールされていて、注視されておらず、見逃されがち

    最後に……リモートからシェル奪取や権限昇格も。発見して実際に実施する事もしばしば。
    でも「いわゆるウッカリが原因」というケースが多いのも事実。言い換えれば検査前に自分でチェックできるものも多いというのも事実(ちゃんと事前に自主検査しておくと、検査する際の工数も減るからお互い嬉しいよね?)。
    (筆者補足:事前に自主検査しておくと、検査にかかる工数が少なくて済む→安価に提供できるので、お互いwin-winの関係になりますよね?)


    [LT2:とあるシステムの脆弱性」(totoroさん)]
    いつもの通り、黒過ぎるのでオフレコw
    一言で表すなら「それは仕y(ry」


    [LT3:Google Chromium OS Forensics(Oroさん)]
    Google Chronium OSに対するフォレンジックについて検証。
    ブラックボックステストという事で、コンパイル済みのモノに対してテストしています。
    Google Chromium OSについての説明は割愛。
    マルチユーザ対応でユーザ毎にデータ暗号化している。
    ディスクイメージ解析時のユーザデータの保護のため、「小憎らしい」暗号化(技術的だけでなく法的も)、ユーザデータのワイプ、スワップアウトされたデータの保護が行われている。
    初回ログオン時は要オンライン(2回目以降はキャッシュのお蔭でオフラインでも可)、ログオン認証時はHTTPS通信で行っている。
    起動直後は最小構成で起動している。
    ディスクイメージ解析では、ユーザディレクトリを見る事が出来ない!!
    初回ログオン時に暗号化イメージとキーを作成、ループデバイスとしてマウント、暗号化キーはランダムなキーとGoogleアカウントのパスワードのハッシュ。なので、Googleアカウントのハッシュが分からないと……。

    今後は……
    メモリ保全&解析
    ユーザログオン時にリモートから……
    ディスクのイメージファイル解析を前提としたタイムラインの検討(解析にはGoogleアカウントを知る必要があるけど、それをどうやって知るのかという点で、調べた瞬間に不ア法が適用という可能性もあるのかも……)

    そう遠くない未来、chromeOS搭載の環境で「内部統制や訴訟対策したければGoogleエンタープライズ買ってね」となるのかも……

    [LT4:WASF conf 2010報告会(ikepyonさん他)]
    先日開催されたWeb Application Security Forum カンファレンス 2010の報告会。

    今更ながらHYBLID W-ZERO3の「インターネット接続共有」を試してみた

    2010-05-28 10:05:03 | 雑記
    今更感漂いまくりですが(汗)、明日のまっちゃ445勉強会#12会場でのネット接続環境を整えるため、HYBLID W-ZERO3の「インターネット接続共有」を試してみる事にしました(なお接続方法はUSBケーブル経由、残念ながら今使っているノートPCにはBluetooth用のアンテナは用意されていないので)。

    結論から言うと、一部引っかかる箇所さえ注意すれば、比較的簡単に実現可能です。

    (1.今回の環境)
    ノートPC : Let'snote R8 LIGHTモデル(OSはWIndows 7 Professional)
    HYBLID W-ZERO3 : ファームウェアはVer2.0
    接続方法 : 純正USBケーブルによる接続(PC本体と直接接続)

    (2.事前準備)
  • 予めノートPCに「Windows Mobile デバイスセンター」を導入しておく事
  • HYBLID W-ZERO3の3G回線をOFFにしている場合は、ONにしておく事
    特に後者が重要で、例えPHS回線で接続する場合であっても3G回線側がONになっていないと何故か接続できないという現象が発生します。
    また初回接続時にドライバがインストールされますが、3G回線がOFFになったままだと「認識できないデバイス」扱いとなり、ドライバのインストールに失敗します(この現象については、この記事が参考になりました)。

    (3.接続)
    接続するまでの手順と流れについてはWillcom社員ブログのこの記事の通りなので、割愛します(つーかそのまんまでOK)。
    1点注意するとすれば、既に別のPCと同期させている場合、「Windows Mobile デバイスセンター」側で同期する項目を全て解除させておかないと、(メールや電話帳やブックマークなどの)データがしっちゃかめっちゃかになる可能性があるという事くらいでしょうか。

    (4.利用しての所感)
    まぁ所詮PHS回線なので、通信速度は期待してはいけません(速度が必要な場合は、既に持っているb-mobile doccicaを使えば良いだけの話なので)。
    ただ、この機能の最大のメリットは「あくまで接続を共有している(PHSから接続しているのと同じ扱いになる)事から、別途プロバイダ等の契約やプロバイダ利用料が発生しない」事に尽きます。
    PHS通信だけなら、例の料金プラン改定によって月額料金の範囲内だけでネット接続環境が用意できてしまうのは、非常に魅力的かも。
    それに今回は勉強会の様子を記事して適宜更新するのが目的なので、通信速度はそれほど重要ではないですし。

  • 悪意ある者もTwitterを活用するという一例

    2010-05-19 09:11:30 | セキュリティ(技術者向け)
    「Twitterウイルス」の作成ツール出現、ツイートで感染PCを操作 - ITPro
    ツイートそのものでウイルス(と言うかBot(※1))を広めるのではなく、ハーダーからの指令をツイートで行うモノですね。
    単純にターゲットはTwitterユーザ、実際の拡散シナリオはこんな感じか?
  • Twitter絡みの便利なツールがあるという「偽の情報」と、偽のツール(実態はBot)を用意
  • 偽の情報を拡散しターゲットが罠に引っかかるのを待つ
  • 偽の情報に騙された人が、偽のツールをダウンロードしてインストールしようとする(この時点でBotに感染)
  • 頃合を見計らって、ハーダーは指令を送る

    一般の利用者にとって便利なサービスは、悪意ある者にとっても便利なツールであるという一例という事で。
    ---
    (※1)TwitterにおけるBot……ではなく、ボットネットの方のBot。つーか同じ用語でも界隈が変わると全く意味が異なるから(他の人に伝えようとする時には)困ってしまう(苦笑)。

  • 上手く使えばオンライン勉強会の会場としても使えるのでは?>

    2010-05-12 14:55:54 | 雑記
    Ustreamスタジオ渋谷がオープン 機材も無料貸し出し - ITMedia
    (セキュリティ系だとあまり行われてはいない(※1)ですが)最近はIT勉強会でもUstream等のオンライン動画配信サービスを用いた中継・動画配信が行われるようになりましたが、Ustream専用のスタジオが渋谷にオープンしたとの事。

    上手く使えば、場所に縛られる事がない「オンラインIT勉強会」の会場として使えるのではないかぁ……と(※2)。
    ---
    (※1)色々な理由があるんですが「話すテーマや内容が、時としてヤバい内容を含む」「仕事上顔バレできない人が参加している」辺りですかね。
    (※2)規約上使えればですが。

    今XenServerを触っているのだが……

    2010-05-07 13:14:57 | セキュリティ(技術者向け)
    今、諸々の事情でXenServer5.5.0 Update2を触っているんですが……初期状態のままだと、パスワード認証でrootユーザとしてSSH接続できてしまう事に驚いていたりします。

    内部で使っている分には(危険性を認識した上で使うなら)まあ許容できるのかもしれませんが、これを外向け用として使う場合には危険過ぎますな。
    なので初期構築はクローズドな環境で実施し、その上でsshdの設定等を変更してあげる必要がある……と。
    (具体的には「接続できるホストを限定(hosts.allowとhosts.denyで設定)」「作業用ユーザを作成し、公開鍵を準備」「公開鍵による接続ができたのを確認後、rootユーザでの接続とパスワード接続を共に禁止する」などが該当。)

    多分行かない(行けない)と思う>某イベント

    2010-05-06 16:38:16 | Game
    本当は別館に書くべき話なんだろうけど、あえてこっちに書く。

    過日、某所にて某ゲームのイベントがあったのだが……正直もう行かない(行けない)と思う。

    (1)年度末の人事異動により担当が別の人に変わったのだが、(仕事の)手際が悪すぎる。
    もうね、力を入れるべき処に力を入れず、どうでも良い処に力を入れている時点で正直萎える。
    それと判断が遅すぎ。某所にて(匿名で)質問を投げたのだが、正式回答が出たのがそのイベントの直前(本当に数日前)……約2週間近く間が開いていたんですが、その間何してたの?、と呟きたいくらい。
    (凄い悩む程の大問題かと言われたら、自分なら間違いなく No と答える程度の簡単な質問だったのだが……。)

    (2)司会進行等の手際が悪すぎ。
    開始(17時)前準備が遅く、参加人数も多いものだから、終了(20時予定)もズルズルと延びてしまい、結局終ったのが22時ちょっと前。
    ただでさえ交通アクセスが悪い(※1)んだから、その辺気をつけないといけない筈なのに、その辺が頭からスッポリ抜け落ちているような気がしてならない。

    (3)うるさ過ぎて落ち着けないにも関わらず、何故か「壁の花(※2)」が咲く。
    よく言えば「賑やか」なのだが、正直開催当初から参加していた身からすれば「うるさく」なってしまったと言うのが正直な処。
    にも関わらず、よーく観察してみると「壁の花」が咲いている。ちなみに私は担当が変わった2回分、壁の花になってみた(※3)のだが、全くスタッフのフォロー無し(苦笑)。


    もうね、「まっちゃ139/445」のスタッフさんの爪の垢を煎じて飲ませてやりたい気分(如何にこのスタッフさん達が優秀、かつ「おもてなしの心」を備えているかというのを痛感しましたヨ)。

    正直今のままなら、また行きたいとは思わないし、行こうとも思わない。少なくとも「うるさい」ままなら行けないだろうし(正直騒がしいのは苦手)。
    (まぁ今の担当は知らない人ではないので、その辺の話は何処かでぶつけようとは思っていますが。)
    ---
    (※1)週末は何と21時台には帰りのバスが無くなってしまう。従ってそれより遅くなった場合、最寄り駅まで歩く(30分以上!!)か、タクシーで帰るかの選択が迫られる。
    (※2)会場の隅っこ(それこそ壁際)とかで誰とも話さずぽつーんとしている人の事(byまっちゃさん)。
    (※3)体調が悪かった事もあってか、騒がしい場所から一時離れていた(と言っても他の人から見える位置だが)。