![見出し画像](https://assets.st-note.com/production/uploads/images/89566177/rectangle_large_type_2_99e5890ab2523299d8fbbbc54904b395.png?width=1200)
ログ分析ツール:開発中のログから情報を抽出する機能で不審なアクセスを発見
今朝は5時から開発開始です。
昨日の昼間は、かみさんとお出かけしてました。パソコンの前を離れて電車の中でログ分析ツールの改善方法を考えると、いろいろアイデアが浮かびました。帰ってから早速、一つ作ってみました。
検索する時にGrokパターンを指定して情報を抽出した結果だけを表示する機能です。
![](https://assets.st-note.com/img/1666478653575-D1P0PMY6gR.png?width=1200)
のような感じで必要な情報だけ表示できて、いい感じになっています。
TWSNMPの更新チェックを行っているアクセスログで使って見ると、不思議なことに抽出できない部分がありました。
ログの表示方法(ビュー)を切り替えると
![](https://assets.st-note.com/img/1666478824541-WzVlgh7sQG.png?width=1200)
見えてきました。
普通は
normal 2022/10/11 01:07:03.000 2.3609859855541484 118.21.148.203 - - [11/Oct/2022:01:07:03 +0900] "GET /cgi-bin/twsnmp/twsnmp.cgi?twsver=041107 HTTP/1.1" 200 1053 "-" "TWSNMPCheckUpdate" 118.21.148.203 - - [11/Oct/2022:01:07:03 +0900] "GET /cgi-bin/twsnmp/twsnmp.cgi?twsver=041107 HTTP/1.1" 200 1053 "-" "TWSNMPCheckUpdate"
のようにアクセス元のユーザーエージェントがTWSNMPCheckUpdateですが、問題のログは、
normal 2022/10/11 01:07:10.000 1.8652890834549103 34.227.205.142 - - [11/Oct/2022:01:07:10 +0900] "GET /cgi-bin/twsnmp/twsnmp.cgi?twsver=041107 HTTP/1.1" 200 1053 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36" 34.227.205.142 - - [11/Oct/2022:01:07:10 +0900] "GET /cgi-bin/twsnmp/twsnmp.cgi?twsver=041107 HTTP/1.1" 200 1053 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36"
のようにユーザーエージェントがブラウザーになっています。何か怪しいです。アメリカからののアクセスのようです。なかなかログ分析ツールが便利になってきました。
今朝は、ログのエクスポート機能、コピー、メモ機能を改善しました。
この記事に記載したログも改善したばかりのコピー機能で貼り付けました。
他に昨日思いついたアイデアは
ログのタイムスタンプだけコピーする機能
タイムスタンプの文字列から近い範囲のフィルターを作成する機能
ログの種類を判断するための試し読み込み機能
です。
タイムスタンプに関する機能は、syslogで何か調べていて特定のログに着目して、その時刻に近いアクセスログを調べたい時に使うものです。
ログのタイムスタンプだけコピーして、アクセスログを見ている画面の条件欄に貼り付けて範囲を指定して検索する。という流れです。
GUIから時間の範囲を指定するのは、ちょっと面倒なので早く作りたい機能です。
でも、今朝は時間切れです。
明日に続く
いいなと思ったら応援しよう!
![twsnmp](https://assets.st-note.com/production/uploads/images/14333815/profile_ee1accba5615957e5029db85d57fdb0a.jpg?width=600&crop=1:1,smart)