にゃん☆たくのひとりごと

ひとりごとです。感じたことだけをただ気ままに書きます。

Windowsイベントログについてのにゃんたくメモ

どもどもにゃんたくです(「・ω・)「ガオー

 

皆さんいかがお過ごしでしょうか。

最近雨ばっかりでちょっといつもよりおセンチさを感じているにゃんたくです。 

 

なんかブログでも書こうかなぁなんて思ってたんですけど、文章力や語彙力のNASAを常に感じて生きているので、どうしても書けなくて、でも書きたくて…

 

まるで好きな人にラブレターでも書く前の人間みたいになってしまったんですけど、やっぱり久々書きたくなったので、今回はあくまでもブログというより、

ぼくがあとで『Windowsイベントログの件そういや前に書いたよな、ちょっと見返してみるか』くらいの感覚のメモを書いていきます。単純に言うと、アルファ世界線のにゃんたくが牧瀬紅莉栖を救うためにシュタインズ・ゲート世界線に行ってしまってもこのメモを読めば『こ、これがリーディングシュタイナーか!』となるようにするためのメモです。は?

※このネタを知りたければシュタインズ・ゲートというアニメを見てください。東京オタク大学、間違えた東京電機大学というリアルに存在するにゃんたくの母校の学生が主人公として出てくるアニメです。くっそ面白いです。

 

さて、メモを書く前に一言。

コレを見てくれている人のことなんか全く考えていないメモなのであしからず。

あ、メモは読みたくないけど、参考情報だけ欲しい人は下記目次の参考資料一覧だけでも見ておくと良いかもしれませんよよよ。

 

今回メモを書こうと思ったきっかけ

Hal PomeranzさんのWindowsイベントログについての講演を聴きに行ったから。

twitter.com

 

あ、あとこのスライドを見たから。

http://deer-run.com/~hal/IREventLogAnalysis.pdf

ほんとそれだけ(●´ω`●)

 

 

Windowsイベントログってなんぞや

Windowsイベントログとは、『Windowsシステム内で起こった特定の現象や動作の記録(Windowsの中で起きたあれやこれやのうち、大事そうなことを記録したもの)』

参照:http://wa3.i-3-i.info/word11494.html

 

ちなみにイベントログは通常ココ↓にあるよ、エクスプローラーで見てみようね

C:\Windows\System32\Winevt\Logs\

 

 

ラテラルムーブメントってバズってるよな

ラテラルムーブメントとは、マルウェアがOSの正規機能を使って、侵入した組織のネットワーク内の偵察や情報収集、感染拡大する行動のこと。

▼参考情報

https://www.cybereason.co.jp/blog/cyberattack/2239/

http://www.atmarkit.co.jp/ait/articles/1803/20/news043.html

http://tech.nikkeibp.co.jp/it/article/COLUMN/20130730/495464/

https://www.ca.com/content/dam/ca/jp/files/white-paper/sec-white-paper-breaking-the-kill-chain-CS200-162063-jpn.pdf

https://digital-forensics.sans.org/media/SANS_Poster_2018_Hunt_Evil_FINAL.pdf

 

 

Hal Pomeranzさんが言ってたアレコレ

Hal Pomeranzさんが言ってた話を列挙していくよ。

コレ↓を見ながらこっから先読むとわかりやすいよ。

http://deer-run.com/~hal/IREventLogAnalysis.pdf

 

アレコレ①(スライド4~15)

⇒ラテラルムーブメントのログを見てみよう

⇒もうめんどくさいときはスライド15だけでも見よう、スライド15が重要まとめスライドになってる

 

■スライド4

攻撃者はこんな感じでラテラルムーブメントしようとするよ。

スケジュールタスクを起動してなにか実行してるログは注意してみたほうがいいぞ。

1.ターゲットとなるシステムに対しマルウェアをアップロードする

2.マルウェアを活性化させるための実行を設定する(結構すぐに) 

 

 

■スライド5~14

実際のログをこっから見ていくぞぞぞ。

Windowsイベントログでは『Event ID』と呼ばれる識別子がつけられるぞ。

Event ID:4624(意味:アカウントがログオンした)

⇒TargetUserName、TargetDomainName、IPアドレスが書いてある

⇒特に気にして見てみるのは、『Logon Type』の数字

 この数字で、どうやって『ログオン』したかわかる

 例:LogonType = 3 ⇒ネットワークからログオンした

 例:LogonType = 10 ⇒RDPからリモートでログオンした

⇒『Anonymous』ログオンの場合、怪しいか怪しくないかを判断するには、

 ・通常ログオン時の挙動と比べる

 ・時系列を追う、時間も一つのファクターである

 

▼参考情報

https://technet.microsoft.com/ja-jp/library/mt634186(v=vs.85).aspx

 

Event ID:4672(意味:特権(Admin)を利用された)

⇒このEventIDが記録されていた場合は注意

⇒大体はEvent ID:4624、と同じタイミングで発生する

⇒『Privilege List』と呼ばれるそのIDに与えられている権限一覧を確認することができる

 

▼参考情報https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/event.aspx?eventID=4672

 

Event ID:5140(意味:ネットワーク共有オブジェクトにアクセスがあった)

⇒このイベントが記録されていた場合は注意

⇒『ShareName』に共有されたファイルパスが記載される

 不可思議なパスがシェアされていたら注意

 (Cドライブ配下(もしくは全体)が共有されてたら注意。。。かも)

⇒ このイベントがファイルサーバー上で発生すれば問題はないが、ファイルサーバー以外のPCで発生してた場合は不可思議

 

▼参考情報

https://technet.microsoft.com/ja-jp/library/mt431793(v=vs.85).aspx

 

TaskSchedulerの動き

 ・Task Schedule ID:106(意味:タスクの新規登録)

 ・Task Schedule ID:200(意味:タスクの実行)

 ・Task Schedule ID:201(意味:タスクの実行終了)

 ・Task Schedule ID:141(意味:タスクの登録削除)

⇒106、を見ればスケジュールタスクを動かした時間、ユーザ情報がわかる(マシン名は不明だが)

⇒TaskSchedulerが動く前のEventID(例えば5140以前等)を見れば時系列的にユーザーがどう『行動』してるかがわかる(推測)

⇒106から200へ数分で発生していたら怪しい

⇒141、のようにタスクを削除する動きは怪しい可能性がある

 

▼参考情報

https://mnaoumov.wordpress.com/2014/05/15/task-scheduler-event-ids/

https://attack.mitre.org/wiki/Technique/T1053

 

Event ID:4688(意味:新しいプロセスが作成された) 

⇒実行ユーザー、プロセス名などが分かる。
⇒この場合、m.exe(mimikatz)でクレデンシャル情報を摂取しようとしている

Windowsイベントログ取得のデフォルト設定では4688は生成されない。
⇒実行された追加の情報が確認できる。

 

▼参考情報

https://docs.microsoft.com/ja-jp/windows-server/identity/ad-ds/manage/component-updates/command-line-process-auditing

 

Event ID:4634(意味:アカウントがログオフした) 

⇒あえてスケジュールタスクを削除しなかったり、正式にセッションを終了しない場合もある

 

▼参考情報

https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/event.aspx?eventID=4634

 

アレコレ②(スライド16~18)

⇒RDPのイベントログを見てみよう

⇒Security.evtx は、一定のサイズを超えると別のファイルに上書きされてしまう

 数時間程度のログしか残っていないので、ログ自体を別のシステムに保管しておき、辿れるようにしておく必要がある。

 

Event ID:1149(意味:リモートデスクトップサービスでユーザー認証に成功しました) 

⇒このイベントの次に『Local Session Manager』のログを見てみるよ

⇒『Local Session Manager』のログはココにあるよ↓ 

\Microsoft\Windows\TerminalServices-LocalSessionManager\Operational

 

Local Session Managerの動き

Event ID:21(意味:リモートデスクトップ セッション ログオン成功) 

Event ID:23(意味:リモートデスクトップ セッション ログオフ成功)

Event ID:25(意味:リモートデスクトップ セッション 再ログオン) 

Event ID:24(意味:リモートデスクトップ セッション 切断) 

 

⇒通常の動きの場合

1149→21→ログオンして作業→23→24

 

⇒ちょっと不可思議な場合

1149→21→1149→25→24

 

▼おかしいポイント①

1149でRDPのユーザー認証設定しているのに、再度1149のイベントが発生している

 

▼おかしいポイント②

2回目の1149を行っているIPが1回目の1149を行っているIPと異なっている

 

▼おかしいポイント③

2回目の1149の後に『25』というセッション再ログオンが発生し、かつ1回目の1149を行っているIPが次の『24』でセッション切断されている

 

▼参考情報

https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ee907328(v=ws.10)

https://jpcertcc.github.io/ToolAnalysisResultSheet_jp/details/mstsc.htm

http://blog.trendmicro.co.jp/archives/14451

https://ponderthebits.com/2018/02/windows-rdp-related-event-logs-identification-tracking-and-investigation/

 

 

アレコレ③(スライド20)

Event ID:7045(意味:サービスがシステムにインストールされました) 

⇒起動させられたファイルのファイルパスが書かれている

⇒新しいサービスが開始させられたことがわかる

⇒このイベントを見つけた場合『何が実行されたのか』を確認するのが大事

⇒C:\Windows\Temp\~、のようにTemp配下から起動させていたら怪しいを感じるべき

 

 

参考資料一覧

http://deer-run.com/~hal/

http://deer-run.com/~hal/IREventLogAnalysis.pdf

https://digital-forensics.sans.org/media/SANS_Poster_2018_Hunt_Evil_FINAL.pdf

https://www.jpcert.or.jp/research/20160628ac-ir_research.pdf

https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/

https://support.microsoft.com/ja-jp/help/977519/description-of-security-events-in-windows-7-and-in-windows-server-2008

 

 

 

最後に。

ここまでもし読んでくれた方がいたら、ぜひマサカリを僕に投げてくれると最高に嬉しいです。『お前言ってること間違ってるぞ』とか言ってください♡

あ、Hal Pomeranzさんの講演情報を教えてくれた僕の上司に感謝。大好きです♡

 

<更新履歴>

2018/06/22 PM 公開

2018/06/24 AM 追記:Event ID:4688、その他もろもろ