SlideShare a Scribd company logo
1 of 10
脆弱性スキャナNessusの観察
~パケットモニタリングを添えて~
観察対象と動機
Spectre / Meltdown はOS上のメモリを読み取られる脆弱性
パケットを送り込んで遠隔コード実行可能なものではないはず
どうやってリモートから脆弱性の有無を判断するんだろう・・・?
Spectre and Meltdownテンプレート
注:テンプレートとは
脆弱性スキャナのパラメータやプラグインのプリセットのこと
テンプレートを使用せず自分で同じ条件のスキャナを組むこともできる
検証環境
Win10-Host
Win7-Guest
allow tcp 445
注1:
Administratorアカウントが有効になっていないと
脆弱性を検出できなかった
注2:
SMBが有効かつ445ポートが空いていないと
脆弱性を検出できなかった
脆弱性の検出結果
Meltdown/Spectreに対する
セキュリティアップデートの状況に
問題が見つかった
KB4056897/KB4056894が必要
ntoskrnl.exeのバージョンが低い
(カーネルパッチが当たっていない)
どうやってこの結果を調べたのか?
レジストリキーの列挙
リモートレジストリサービス(WINREG)
へのアクセスを観測
OpenHKLM:
HKEY_LOCAL_MACHINEを開く
OpenKey:
指定のレジストリキーを開く
QueryInfoKey:
サブキーの数と更新日を得る
EnumKey:
サブキーを列挙する
システムに適用されているKBが
このレジストリキーに列挙されている
プラグインで指定したKBが見つからなければアラートを上げる
システムファイルの確認
システムファイル
ntoskrnl.exe : Windowsカーネル
itss.dll : ヘルプファイル用ライブラリ
win32k.sys : Windowsカーネルドライバ
bcrypt.dll : 暗号モジュール
srv.sys: SMBドライバ
プラグインで指定したファイルのバージョンが古ければアラートを上げる
備考: 名前付きパイプ
IPC$/svcctl: Windowsサービス制御
IPC$/winreg : リモートレジストリサービス
IPC$/lsarpc : 認証情報の取得
結論
Win10-Host
Win7-Guest
レジストリキー
システムファイル
1
2
3
5
6
1.
AdministratorアカウントでIPC$に接続する
2.
WINREG経由でレジストリにアクセスする
3.
KBの適用状況一覧を取得して脆弱性が残ってい
るか確認する
4.
AdministratorアカウントでC$に接続する
5.
C:/Windows/System32/にアクセスする
6.
システムファイルを取得して脆弱性が残っている
か確認する
4
おまけ:他のテンプレートは何をしているのか
WannaCry Ransomeware
1.マルウェアスキャナ(tenable_mw_scan)を
対象クライアントに書き込む
2.svcctl 経由でtenable_mw_scanを起動する
3.スキャン結果が記載されたtxtを取得する
備考: tenable_mw_scan:
既知のマルウェアのハッシュ値と比較して
システム内のWannaCryを検出する実行ファイル
PeekNamedPipe Requestに対して
STATUS_INSUFF_SERVER_RESOURCESが返る
= Eternal Blueが利用可能な状態
脆弱性の有無を確認
感染の有無を確認
備考: Metasploitでも同じ手法で脆弱性の有無を調査する
Basic Network Scan
名前付きパイプへのアクセスが多数
RPC経由でシステム情報を収集している
※WannaCryテンプレートのようなカスタムスキャナは無い
オープンポートをスキャン
一通りのサービスポートをSYNスキャン
Listen状態のポートは更に情報取得を試みる
5357 :WSD
49154-49157:lsass
135, 139, 445:SMB/RPC
システム情報収集

More Related Content

What's hot

「Ansible on Azure入門」資料
「Ansible on Azure入門」資料「Ansible on Azure入門」資料
「Ansible on Azure入門」資料Hidetoshi Hirokawa
 
フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性IIJ
 
クラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねクラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねYoshioSawada
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)NTT DATA Technology & Innovation
 
OpenStack マルチノード環境構築
OpenStack マルチノード環境構築OpenStack マルチノード環境構築
OpenStack マルチノード環境構築HommasSlide
 
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013Kinji Akemine
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したことAmazon Web Services Japan
 
診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)shingo inafuku
 
AppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころAppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころMasayuki Wakizaka
 
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶTomomitsuKusaba
 
とある診断員とAWS
とある診断員とAWSとある診断員とAWS
とある診断員とAWSzaki4649
 
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1Etsuji Nakai
 
IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)
IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)
IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)TAKUYA OHTA
 
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能TAKUYA OHTA
 
Ansible AWXで一歩進んだプロビジョニング
Ansible AWXで一歩進んだプロビジョニングAnsible AWXで一歩進んだプロビジョニング
Ansible AWXで一歩進んだプロビジョニングsugoto
 
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended NetworkSCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Networkwind06106
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策
ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策
ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策エクイニクス・ジャパン
 
ウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説するウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説するHiroshi Tokumaru
 

What's hot (20)

「Ansible on Azure入門」資料
「Ansible on Azure入門」資料「Ansible on Azure入門」資料
「Ansible on Azure入門」資料
 
フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性フロントからバックエンドまで - WebAssemblyで広がる可能性
フロントからバックエンドまで - WebAssemblyで広がる可能性
 
クラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよねクラウドでも非機能要求グレードは必要だよね
クラウドでも非機能要求グレードは必要だよね
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
 
OpenStack マルチノード環境構築
OpenStack マルチノード環境構築OpenStack マルチノード環境構築
OpenStack マルチノード環境構築
 
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
モデルベースドテスト入門 -テスト詳細設計を自動化しよう- #stac2013
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)
 
AppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころAppiumのWebViewアプリテストの仕組みとハマりどころ
AppiumのWebViewアプリテストの仕組みとハマりどころ
 
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
 
とある診断員とAWS
とある診断員とAWSとある診断員とAWS
とある診断員とAWS
 
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No1
 
IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)
IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)
IT エンジニアのための 流し読み Windows 10 - 入門!Windows Server Update Services (WSUS)
 
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
 
Ansible AWXで一歩進んだプロビジョニング
Ansible AWXで一歩進んだプロビジョニングAnsible AWXで一歩進んだプロビジョニング
Ansible AWXで一歩進んだプロビジョニング
 
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended NetworkSCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
 
AWS Black Belt Techシリーズ AWS IAM
AWS Black Belt Techシリーズ AWS IAMAWS Black Belt Techシリーズ AWS IAM
AWS Black Belt Techシリーズ AWS IAM
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策
ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策
ぜんぜんスマートじゃないプライベートクラウドの現実 - 運用担当者が苦労する4つの問題と3つの救済策
 
ウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説するウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説する
 

Similar to Nessusの仕組み / How Nessus works

Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張
Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張
Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張Ruo Ando
 
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月VirtualTech Japan Inc.
 
webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法
webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法
webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法hiroya
 
Mr201304 open flow_security_jpn
Mr201304 open flow_security_jpnMr201304 open flow_security_jpn
Mr201304 open flow_security_jpnFFRI, Inc.
 
Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)
Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)
Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)Panda Yamaki
 
Try andstudy cloud_20120509_nagoya
Try andstudy cloud_20120509_nagoyaTry andstudy cloud_20120509_nagoya
Try andstudy cloud_20120509_nagoyaEtsuji Nakai
 

Similar to Nessusの仕組み / How Nessus works (6)

Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張
Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張
Split device driver による仮想マシンモニタ上のセキュアOSの機能拡張
 
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
OpenStack検証環境構築・トラブルシューティング入門 - OpenStack最新情報セミナー 2014年8月
 
webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法
webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法
webstart-maven-pugin + 無償で正統?なコード署名証明書を入手する方法
 
Mr201304 open flow_security_jpn
Mr201304 open flow_security_jpnMr201304 open flow_security_jpn
Mr201304 open flow_security_jpn
 
Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)
Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)
Hokkaido.cap#8 ケーススタディ(セキュリティ解析:後編)
 
Try andstudy cloud_20120509_nagoya
Try andstudy cloud_20120509_nagoyaTry andstudy cloud_20120509_nagoya
Try andstudy cloud_20120509_nagoya
 

Nessusの仕組み / How Nessus works