PowerShellでの不審サイトへのアクセスをイベントログで発見!

イベントで騒ぐ観衆
※当サイトはプロモーションが含まれています

こんにちは、ぎんたです。

IT・フォレンジック・セキュリティアナリスト関連業務を8年ほどやっております。

  • 不審な通信先へアクセスした痕跡って端末内のどのログをみるとわかるのだろう?
  • ネットワーク機器のログ以外で、端末のログでも痕跡があるのか確認したい!
  • 不審なファイルを端末で開いてしまった!端末への影響を確認したい。

端末の調査で不審な通信先へのアクセスの痕跡を調査する方法はいくつかありますが、おすすめの方法はPowerShellログを調査することです。

今回は、

  • PowerShellとは何か
  • PowerShell実行ログをどのイベントログで確認するか?
  • FullEventLogViewを使ったイベントログ解析方法

について順番に解説していきます。

なお、この記事はTryHackMeの「Advent of Cyber 3 day23」の内容を参考に作成しております。

Advent of Cyber 3 day23のコンテンツサイト

「Advent of Cyber 3」は無料で提供されている教材ですので、ご興味があればお試しいただくこともできます。

目次

PowerShellとは何か

PowerShellは、Windowsオペレーティングシステムに組み込まれており、管理者にとって日々の作業を自動化するための有益なツールです。

一方で、攻撃者にも非常に良く使われるツールでもあります。

攻撃者は、「Living off the Land」と呼ばれる概念で知られる悪意のある活動を行います。

「Living off the Land」攻撃とは、攻撃者が既に侵入しているターゲットシステム内に存在するツールや機能を利用して攻撃を行う手法です。

攻撃者は、ターゲットシステム内に存在する標準ツールやスクリプト、管理ツール、API、およびライブラリなどを使用し、検知されにくい攻撃を行うことができます。

PowerShell実行ログをどのイベントログで確認するか?

PowerShellコンソールで実行されるコマンドはイベントログで監査することができます。

これはPowerShellロギングとして知られています。

PowerShellコマンドやスクリプトが実行されると、そのアクティビティがイベントログに記録されます。

イベントログは、Microsoft-Windows-PowerShellなどのプロバイダーによって分類されます。

各プロバイダーは、端末で発生した特定のイベントやアクションを識別するための特定のイベントIDを持っています。

今回の調査では、

  • イベントログファイル:Microsoft-Windows-PowerShell/Operational
  • イベントID:4103、4104

を対象に調査を行います。

FullEventLogViewを使ったイベントログ解析

Windowsでイベントログの調査でイベントビューアというツールを使用できますが、これを簡単にできるように、NirSoftのFullEventLogViewというツールを使用します。

ツールを起動し、フィルタを使用します。

FullEventLogViewでのフィルタ設定1
FullEventLogViewでのフィルタ設定2

PowerShellのロギングの結果は多数出てしまう可能性が高いので、「http」の文字列が入っているものに絞ってみます。

「http」でフィルタをかけることで、PowerShellを使って外部と通信をしているイベントを効率よく見つけられます。

PowerShellの通信の履歴

このように、Invoke-WebRequestを用いて外部のサーバと4321ポートで通信した履歴を確認することができます。

もう少し別のログを確認してみましょう。

PowerShellの通信の履歴2

ここでは外部サイトから脆弱性を悪用するコードをダウンロードした履歴を確認できます。

wgetコマンドで示されたサイトにアクセスし、どのようなコードなのかの詳細を確認することもできます。

確認すると、“PrintNightmare “と名付けられたリモートコード実行およびローカル権限昇格の重大な脆弱性を突いたコードであることが判明しました。

PrintNightmareの脆弱性コードの確認結果

まとめ

今回はPowerShellでの不審サイトアクセスをイベントログで発見する方法について紹介しました。

振り返り
  • PowerShellの実行ログはイベントログで解析できる
  • イベントログファイル:Microsoft-Windows-PowerShell/Operational、イベントID:4103、4104で調査を実施
  • FullEventLogViewのフィルタで「http」を使用することで、不審サイトへの接続ログを効率良く見つけることができる

PowerShellのイベントログを追跡することで、攻撃者が行った行動を詳細に追うことができます。

ぎんた

PowerShellを使った攻撃は数多くあるので、攻撃手法もよく理解しておくことでログ調査の精度も増していくよ!
今後も継続して記事で紹介していくから、もしよかったら見ていってね!

以上、ぎんたでした。

学習に関しましては、以下のセキュリティの勉強法、おすすめの学習本・動画の記事が多くの方に読まれています。

資格の記事については以下の記事がおすすめです。

ITエンジニアへの転職については以下の記事がおすすめです。

その他学習・転職関連に関しましては、以下の記事もあわせて読まれています。

ぜひご覧ください!

よかったらシェアしてね!
目次