見出し画像

TWWINLOG:Windowsのイベントログの情報が不揃いなことに悩む

昨日は8時前に寝たので今朝は2時半に起きてしまいました。猫は昨日、病院に行って主治医の先生に注射してもらったので今朝は元気一杯です。3時ぐらいから何度もご飯が欲しいと言ってやってきます。

昨日から悩んでいたWindowsのイベントログが出力されない問題は何となく解決できました。監査ポリシーの設定がいつのまにかリセットされる問題とログの保存サイズが原因だったようです。検索するといろいろでてきました。
ログオンなどのログが出力されるようになったので本題のログの集計を改善して試してみました。最初に思っていた方法ではうまくいきませんでしたが、試行錯誤の結果、なんとかまともな情報になったように思います。
ログオンの集計は

2021/08/06 05:19:23.023 info:local5 twwinlog type=Logon,target=myamai@DESKTOP-T6L1D1U,targetsid=S-1-5-21-1842116846-2461893462-751124811-1002,count=13,logon=6,failed=1,logoff=6,changeSubject=6,changeLogonType=3,changeIP=1,subject=@,subjectsid=,logonType=Unlock,ip=192.168.1.9,failCode=Bad Password,ft=2021-08-06T04:46:51+09:00,lt=2021-08-06T05:04:10+09:00

のような感じです。いろいろイベントログを出力するのに悪戦苦闘している間に、イベントログをクリアしたことを示すログを見つけました。ネットで検索するとセキュリティー的には重要なので検知した時点でsyslogで通知するようにしました。

2021/08/06 05:19:23.023 crit:local5 twwinlog type=ClearLog,subject=myamai@DESKTOP-T6L1D1U,subjectsid=S-1-5-21-1842116846-2461893462-751124811-1002

のようなログが出力されます。この部分を作っている時に、Windowsのイベントログの情報が不揃いなことに気づきました。操作した人示す情報がログオンのログと違う形式で記録されているのです。
ログオンなどは、

<EventData>
<Data Name='SubjectUserName'>test</Data>
</EventData>

イベントID1102のログクリアは

<UserData>
 <SubjectUserName>test</SubjectUserName>
</UserData>

です。なぜ統一しないのか不思議ですが考えても仕方ないので、取得方法を変えて対応しました。これらの開発は、

次に、TWWINLOGを再起動しても前に検索したイベントログの範囲から継続して検索できるように次回の検索開始時刻をどこかに保存することにしました。ファイルに保存する方法も考えましたが、Windowsなのでレジストリを使うことにしました。新しいパッケージを使う練習も兼ねています。

のパッケージを使えばよいことがわかりました。

が参考になりました。この開発は、

です。

かなり使えるようになってきたので、この連休中に最初のバージョンをリリースしようと思います。
明日に続く




開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。