・どうやって機器の使用ライブラリ名を入手しているのでしょうか?
Telnetポートは閉じており、SSHのパスワードはNESSUSにはわからないはずですが...
ライブラリ名は入手していません。ポートの開き状況を確認し、その応答からソフトウェアの種類やバージョン等を判断します。
・どの範囲までスキャンしているのでしょうか?rootFSに存在するライブラリは全てスキャンされますか?
「ライブラリ」をどういう意味で使っているか分かりませんが、狭義のライブラリ(.soなど)はスキャンしません。ソフトウェアという意味であれば、開いてるポートのソフトウェアのみです。
例えばOpenSSLのバージョンが古いものを使用していると、検知されますか?
検知されることもあります。それは、ApacheなどがOpenSSLのバージョンをレスポンスヘッダに表示している場合などです。それ以外の状況では検知しないと思います。SSL(TLS)の設定については検知してくれます。
・Kernelなどブートローダーの脆弱性まではわからないのでしょうか?
検知しないと思います。
ところで、Nessusにはsshログインしてスキャンするモードもあります。こちらですと、Linuxディストリビューションのパッケージで導入しているソフトウェアのパッチ適用状況は分かります。OpenSSLを自分でビルドしている場合は検知されません。
クレデンシャルスキャンについては、下記の動画にて具体的なやり方を説明しています。
Nessus Essentialsのクレデンシャルスキャンによりパッチ適用状況を確認してみよう
(コメントに対する回答)
ライブラリ名は入手していません。ポートの開き状況を確認し、その応答からソフトウェアの種類やバージョン等を判断します。
→netstatコマンドのようなものでしょうか?
netstatとは違いますね。netstatは内部から調べるものです。Nessusは基本的には外部から調べます。
これはウェルノウンポート以降の登録済ポートの開き状況も確認しているのでしょうか。
はい。ただ、全てのポートを確認することもできます。以下の動画で設定方法を説明しています。
まったくパッチのあたっていないCentOS6を脆弱性診断したら驚きの結果に
また、ポートの応答から何のデーモンが存在しているかわかるコマンドがあるのでしょうか。
いいえ。それを調べているのがNessusそのものです。ただし、nmapを使っても調べることはできます。
例えばOpenSSLのバージョンが古いものを使用していると、検知されますか?
検知されることもあります。それは、ApacheなどがOpenSSLのバージョンをレスポンスヘッダに表示している場合などです。それ以外の状況では検知しないと思います。SSL(TLS)の設定については検知してくれます。
→SSL(TLS)の設定については、対応しているTLSのVerだと解釈しました。
例えばTLS1.1以前を有効にしていると、レスポンスヘッダに記載がなくとも何かしらの警告が出るということで理解しました。
そのとおりですが、TLSの「バージョン」だけではありません。
またWEBサーバの対応暗号スイートのひとつに、SHA-1などの脆弱なものが含まれていた場合、対応暗号スイート一覧の中に脆弱な組み合わせが存在する旨は発見できますでしょうか。
暗号スイートの問題は検出されます。
どの暗号スイートでハンドシェイクするかはブラウザに依存すると思いますので、WEBサーバ側の暗号スイートにひとつでも脆弱なものがあれば、検出してほしいなと思った次第です。
検出します。
ちなみにクロスコンパイルしていた場合は検出できないのでしょうか。
検出しません。標準パッケージのみです。
また、動画最後の「パッチがない場合検知できない」について、現行のVerにはパッチが適用されたが、パッチが適用されなかった旧Verのソフトを使用している場合は、「パッチがない場合」に該当し検知できないのでしょうか。
質問の意味が分かりません。
パッチがあるか、ではなく、使用しているソフトのVer名で脆弱性を検出する方式はありますか?
それはクレデンシャルスキャン以外のスキャンでは検出できる場合があります。Nessusがまずソフトウェアのバージョンをバナーなどから検出できた場合は当該バージョンの脆弱性を表示ます。
最後に、NESSUSが実行時に何をスキャンしているかある程度明確になった仕様書のようなものを探したのですが、見つけられませんでした。これは存在しないのでしょうか?
知りません。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/02 14:51
2020/09/03 02:18