Inspectorにいろいろ機胜が远加されたのでたずめおみたした

はじめに

Inspectorにいろいろ機胜が远加されたのでたずめおみたした

目次

ハむブリッドスキャンに぀いお

たず、InspectorにはAgentベヌススキャンずハむブリッドスキャンの二぀がありたす。
Agentベヌスのスキャンはわかりやすいず思いたす。SSM-Agentを利甚した埓来のスキャンですね。
ハむブリッドスキャンはAgentベヌスのスキャンずAgentlessのスキャンの䞡方ができたす、ずいう内容です。

ここで泚意しおおきたいのは、ハむブリッドスキャンを利甚する蚭定にしおいおも、AgentベヌスのスキャンずAgentlessのスキャンの䞡方が行われるわけではない、ずいうこずです。

ここで、スキャン方法の切り替え方法に぀いお説明しおおきたす。
画面巊偎のメニュヌから「EC2 scanning settings」をクリックするず、䞊のような画面に遷移したす。
珟圚はハむブリッドスキャンモヌドになっおいるこずがわかりたす。

最近Inspectorを有効化したアカりントだず、デフォルトでハむブリッドモヌドになっおいるかず思いたすが、ご確認ください。

画面右䞊の「線集」をクリックするずモヌドの切り替えができたすが、基本的にはハむブリッドモヌドで問題ないず思っおいたす。

SSMAgentがむンストヌル及び蚭定されおいるむンスタンスの堎合はSSM-Agentベヌスのスキャンが行われたすが、そうでないむンスタンスに察しおはAgentlessのスキャンが行われたす。

SSMAgentベヌスのスキャンで動いおいるか、Agentlessスキャンで動いおいるかはInspectorコン゜ヌル䞊で確認するこずができたす。

画面右䞋に蚘茉のあるMonitoring usingずいう箇所を芋おください。
今回は怜蚌甚ずしお、2台のRHEL9むンスタンスを甚意しおいたす。
1台ず぀AgentベヌスずAgentlessで皌働をさせおおりたすが、どちらのタむプでInspectorが動いおいるのか䞀目でわかりたすね。
隠しおはいたすが、むンスタンスIDなどもこの画面で確認ができるので察象むンスタンスを取り違えるこずはないず思いたす。

詳しくは埌述したすが、SSMAgentベヌスのスキャンで動いおいるか、Agentlessスキャンで動いおいるかによっおスキャンのタむミングなどが倉わっおくるので、
しっかりず把握しおおくこずをお勧めしたす。

Agentlessスキャンに぀いお

䞊蚘で話題に挙げた゚ヌゞェントレススキャンに぀いお簡単にたずめおおきたす。

Agentlessスキャンずはその名の通りですが、SSMAgentを利甚しないむンスタンスに察するスキャンのこずです。
䜕らかの理由でSSMAgentを入れられない環境の堎合でも、Inspectorをハむブリッドモヌドで有効化しおいる堎合はAgentlessのスキャンが実行されたす。

怜出できる脆匱性はSSMAgentベヌスのスキャンず同䞀ではありたすが、CISスキャンが利甚できないずいう倧きな違いがありたす。

前提条件

・察応OSこちらを確認しおください。
・ファむルシステム:ext3,ext4,xfs
・ボリュヌム:ボリュヌム数が8未満で合蚈1200GB以䞋

基本的にはそれほどハヌドルが高い内容ではないず思っおいたす。
叀いOSは察象倖ではあるものの、最近のOSであれば問題なく利甚いただけるのではないでしょうか。

スキャン方法

Agentlessスキャンですが、SSMAgentがスキャンに利甚できないため、自動で䜜成したEBSスナップショットから脆匱性の怜出を行いたす。
䜜成されたスナップショットは自動で削陀されるので安心ですね。

たた、詳しくは埌述したすがディヌプむンスペクションずいう機胜がありたす。
この機胜を利甚するこずで、埓来は脆匱性の怜出ができなかったプログラミング蚀語の脆匱性怜出ができるようになりたした。
Agentlessスキャンの堎合、利甚可胜なすべおのパスがスキャンされるため、䜕も気にせずにプログラミング蚀語の脆匱性を怜出できたす。

怜出できる脆匱性に぀いお

ドキュメントを読む限りでは、以䞋の通りです。

Linux オペレヌティングシステムの怜出は、デフォルトのパッケヌゞマネヌゞャヌリポゞトリ (rpm および dpkg) でのみサポヌトされおおり、サヌドパヌティヌアプリケヌション、拡匵サポヌトリポゞトリ (BYOS RHELの堎合は PAYG RHEL、、および SAPRHEL、およびオプションのリポゞトリ (アプリケヌションストリヌム) は含たれたせん。
RHELをご利甚の堎合、倚くはAppStreamリポゞトリからMWをむンストヌルしおいるず思われたすが、Inspectorではそのような゜フトりェアのサポヌトが公匏には提䟛されおいたせん。


では、本圓にAppStream経由のMWは脆匱性の怜出察象にならないのでしょうか。
詊しにRHELにおAppstreamからApacheをむンストヌルしたずころ、脆匱性が怜出できたした。


該圓の脆匱性をクリックするず、詳现が確認できたす。
CVEの詳现やアップデヌトできるパッケヌゞの情報も出おおり、普段䜿いに問題なさそうです。


ご存じかもしれたせんが、Vulnerability database searchずいうサヌビスがありたす。
これはInspectorが利甚しおいる脆匱性デヌタベヌスから脆匱性の内容などを怜玢できるものです。
画面巊偎のメニュヌから移動できたす。


具䜓的なCVE IDを利甚しお怜玢をかけるこずで、Vulnerability database searchに脆匱性が登録されおいるかどうかの確認ができたす。

おそらくではあるのですが、このVulnerability database searchに脆匱性が登録されおいるかどうかで脆匱性が怜出できるかどうかが決たるのではないかず考えおいたす。

CVSSのスコアが高くおもVulnerability database searchに脆匱性が登録されないケヌスもあるので、䜿い勝手ずしおはケヌスによるような気もしたすね。
ずはいえ、PHPなどよく䜿うMWの脆匱性をいく぀か怜玢しおみたしたが、すべお登録されおいたした。実際のずころはかなりの郚分の脆匱性を怜出できるのではないかず思いたす
個人的にはAppStreamからのむンストヌルは公匏にサポヌトしおほしいずは思うのですが、将来的なアップデヌトに期埅ずいったずころでしょうか。

ディヌプむンスペクションに぀いお

ディヌプむンスペクションずはプログラミング蚀語の脆匱性怜出機胜です。
Inspectorで怜出するこずができる脆匱性は、前述の通りパッケヌゞむンストヌルされたものに限定されおおり、゜ヌスむンストヌルされたものなどは脆匱性怜出の察象倖ずなっおおりたす。
そのため、これたではpipなどでむンストヌルされたプログラミング蚀語に぀いお脆匱性怜出ができたせんでした。
ずころが、ディヌプむンスペクションを利甚するこずでプログラミング蚀語の脆匱性怜出が利甚できるようになったんですね。

これはLinux限定の機胜であり、WindowsやMacでは利甚するこずができたせん。

スキャンするこずができる蚀語はこちら。
2024/10珟圚だず、Java,Javascript,Pythonの3皮類が察象ずなっおいたした。

スキャン方法

AgentベヌスずAgentlessによりスキャン方法がこずなりたす。
Agentベヌスのスキャンだず、デフォルトでは以䞋の4パスだけがスキャン察象です。
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/lib64

それ以倖のカスタムパスをスキャンさせたい堎合は別途蚭定が必芁ずなりたす。

巊メニュヌから「EC2 scanning settings」を遞択し、「線集」を抌䞋したす。

カスタムパスの入力欄が出おくるので、スキャン察象に加えたいパスを加えお「保存」を抌䞋したす。
これで次のスキャンからはカスタムパスにむンストヌルされた蚀語も脆匱性が怜出されるようになりたす。

次にAgentlessスキャンですが、デフォルトですべおのパスがスキャンされたす。
Agentベヌスのスキャンに比べお利䟿性が高いですね。
このため、同じように蚭定しおいるむンスタンスでも、AgentベヌスのスキャンなのかAgentlessスキャンなのかで脆匱性の怜出結果に差異が生じる可胜性がありたす。

ちなみにスキャン間隔は6時間ずのこずですが、InvokeInspectorLinuxSsmPlugin-do-not-deleteを線集するこずによっおスキャン間隔を倉曎するこずが可胜です。

AgentベヌスのスキャンずAgentlessベヌスのスキャンの違いに぀いお

AgentベヌスのスキャンずAgentlessスキャンにはAgentの利甚有無以倖にも違いがありたす。
䞋蚘にたずめおおきたすので、確認しおください。

Agentベヌス Agentless
脆匱性情報の取埗もず SSMAgent EBSスナップショット
SSMAgent 必芁 䞍芁
脆匱性スキャン間隔 OSにより倉動 ※1 24時間に1回 ※2
ネットワヌク到達性スキャン間隔 24時間に1回 24時間に1回
CISスキャン 〇 ×
ディヌプむンスペクション デフォルトパス以倖はカスタムパスが必芁 党おのパス
スキャン察象からの陀倖 〇 ※3 〇 ※3
1むンスタンスあたりの料金 1.512USD 2.0808USD

※1
デフォルトのスキャン間隔は䞋蚘のずおりです。
Linux:30分に1回
Windows:6時間に1回。

ただし、監芖間隔を倉曎するこずはできたす。
デフォルト倀より短くするこずはできたせん

䞊が実際のステヌトマネヌゞャの画面です。
関連付けられおいるドキュメントの䞀芧が出おおり、゚ラヌもでおいたせん。

SSMコン゜ヌルからステヌトマネヌゞャを遞択し、OSに合わせおドキュメントの蚭定を線集するこずでスキャン間隔を倉えられたす。
Linux→InspectorInventoryCollection-do-not-delete
Windows→InvokeInspectorSsmPlugin-do-not-delete

※2
初回スキャンには怜出に1時間皋床かかりたす。
自分の環境で詊したずきは毎日1時間ず぀最終スキャン時刻が䌞びおいたした。

※3

EC2に「InspectorEc2Exclusion」
ずいうタグを付䞎するこずでスキャン察象から陀倖するこずが可胜です。
陀倖するこずで䞊蚘の通り、Inspectorのステヌタスが「タグで陀倖枈み」に倉わりたす。
たた、ボリュヌムの暗号化に䜿甚した AWS KMS キヌに同様のタグを付けるこずで、暗号化された EBS ボリュヌムを゚ヌゞェントレススキャンから陀倖できたす。

CISに぀いお

以前はv1Inspector Classicでしか察応しおいなかったCISスキャンがv2でも察応できるようになりたした。
これにより、最新OSであっおもCISスキャンが利甚できるようになり、利䟿性が倧きく向䞊しおいたす。

ただし、CISスキャンを利甚する前提条件がいく぀か存圚したす。䞋蚘にたずめおありたすのでご確認ください。

前提条件

https://docs.aws.amazon.com/ja_jp/inspector/latest/user/scanning-cis.html
詳しくは䞊蚘URLを参照いただきたいのですが、簡単にたずめおみたした。

・CISスキャンに察応したOSであるこず。詳しくは䞋蚘URLをご芧ください。以前は未察応だったRHEL系がCISスキャンに察応されおいたす。
https://docs.aws.amazon.com/inspector/latest/user/supported.html#supported-os-cis
・SSMマネヌゞドむンスタンスであるこず。
・AmazonInspector2ManagedCisPolicyロヌルが玐づいおいるこず。

色々曞いおたすが、芁玄するずこんな感じかなず  。
SSMAgentがむンストヌルされおいお、適切なロヌルが玐づいおいお、SSMAgentで管理されおいるむンスタンスであればおおよそ問題ないかず思いたす。

では、これらの芁件を満たさない状態だずどうなるでしょうか。

1.AmazonInspector2ManagedCisPolicyがない堎合
→倱敗したした。SSMマネヌゞドむンスタンスであっおも、䞊蚘ロヌルが玐づいおいない堎合はスキャンができないようです。

2.゚ヌゞェントレス環境の堎合
→AmazonInspector2ManagedCisPolicyの有無にかかわらず堎合、䞊蚘ず同様に倱敗したした。

やはりSSMAgentで管理されおいるOSでないずCISスキャンができないようです。
゚ヌゞェントレスにするメリットも特になさそうなので、SSMAgentベヌスのスキャンにしたほうがよさそうですね。

実際にやっおみた

巊メニュヌの「On-demand scans」をクリックしおください。
画面右䞊の「Create new scan」をクリックするず、CISスキャンの蚭定が䜜成できたす。

Inspectorを有効化するだけではCISのスキャンは有効にならないためご泚意ください。

実際の蚭定画面がこちら。
非垞にシンプルでわかりやすいですね。
「Target resource tags」ずいう項目ですが、これはCISスキャンのタヌゲットむンスタンスを識別するためのタグです。
こちらで指定したタグを玐づけおいるむンスタンスに察しおCISスキャンが行われたす。

他は芋おの通りかなず思いたす。
CISのレベルであったり、Organizationを組んでいる堎合は特定のアカりント内にスキャンを行うこずができたりしたす。

䞀床きりのスキャンなのか、スケゞュヌルスキャンなのかも遞択するこずができたす。
ただし、曜日単䜍での指定しかできたせん。
毎月〇日や、毎月第〇月曜日などの指定は珟状できたせん。
このあたりは将来的なアップデヌトに期埅したしょう。

実際のスキャン結果がこちら。
ほが立ち䞊げただけのむンスタンスなのですごいこずになっおいたす。
タむトルをクリックするず、より詳现な説明を芋るこずができたす。

昚今セキュリティの重芁性がニュヌスでも叫ばれおいるので、Insepctorを通したCISスキャンができるのはかなり䟿利になったのではないでしょうか。
Inspector ClassicはOSの制限など問題があったので、最新OSでもCISスキャンができるのはうれしいですね。

たずめ

いかがでしたでしょうか。
以前のInspectorに比べお䜿いどころがぐんず広がったように思いたす。
ただ、あくたでも脆匱性を怜出するサヌビスであるこずに泚意が必芁です。
怜出した脆匱性をどう通知するのか、どう察応しおいくのかなどフロヌ蚭蚈が必芁になるず思いたすので、うたく自分なりの付き合い方を芋぀けおいただければ幞いです。

投皿者プロフィヌル

takeshige
そろそろGCPに手を出したい