Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Elastic StackでWebサーバのログ解析を始めた件について / Web server...
Search
takahoyo
December 02, 2017
Technology
0
210
Elastic StackでWebサーバのログ解析を始めた件について / Web server access log analysis using Elastic Stack
元祖濱せっく#1 のLTで発表した資料です #HamaSec
takahoyo
December 02, 2017
Tweet
Share
More Decks by takahoyo
See All by takahoyo
OSEP取るまでにやったこと
takahoyo
0
2.3k
"申" (猿)がつくセキュリティツールを検証してみた
takahoyo
4
1.2k
おうちで出来るセキュリティチャレンジ / cyber security challenge from home
takahoyo
4
1.9k
malspamの情報収集と解析 / malspam information gathering and analysis
takahoyo
0
100
Scapyで作る・解析するパケット/ network packets craft and analysis by Scapy
takahoyo
2
2.1k
パケットで遊ぼう / let's play using network packet
takahoyo
0
220
hpingで作るパケット / network packet craft by hping
takahoyo
0
400
低対話型サーバハニーポットの運用結果及び考察 / Operation result of low interaction honeypots
takahoyo
0
250
Other Decks in Technology
See All in Technology
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
460
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
160
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
440
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
130
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
180
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
590
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.3k
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
510
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
140
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
180
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
230
AI駆動開発を事業のコアに置く
tasukuonizawa
1
130
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Writing Fast Ruby
sferik
630
62k
Designing for Timeless Needs
cassininazir
0
130
ラッコキーワード サービス紹介資料
rakko
1
2.2M
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
Side Projects
sachag
455
43k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
410
Transcript
Elastic Stackで Webサーバのログ解析を 始めた件について @takahoyo 元祖 濱せっく #1
今日の内容 Elastic Stackを使ってWebサーバのログ解析を 始めた ログ解析して特徴的だった情報を紹介
モチベーション 学生の頃にWebサーバをVPS上に立てた 勉強がてらWebページ作ってみよう Webアプリケーション作ってみよう ログは時々アクセスログをgrepで眺めるくらい
社会人になって… Webサーバにどんな攻撃来てるのか気になる 社会人力を使って自宅サーバを買ったので何かで きないかな そうだ ログ解析基盤、作ろう 最近Elastic Stack流行ってるし、やってみよう
VPS HOME ログ解析基盤 の構成 VPN USER Log Server ログ収集・解析に使用するソフトウェア •
filebeat:access logをサーバからESへ転送する • elasticsearch:log dataを保存 • kibana:elasticsearchのデータを参照・可視化 ログ転送に使用するネットワーク • VPNを使ってVPSとHOMEを接続 – 認証・暗号化を実施 – FWで必要なホスト・ポートのみアクセスを許可 Firewall Web Server (nginx)
ログ解析基盤 への転送設定 filebeatのnginx moduleを使用 意外と簡単にelasticsearchへ取り込みが出来た さらに、GeoIP情報やUser-Agent解析も自動で行う
通常、Logをparseする処理が必要 デフォルトではDashboardも自動生成 設定ファイルは以下の通り filebeat.modules: - module: nginx access: enabled: true var.pipeline: with_plugins var.paths: - /var/log/nginx/access.log error: enabled: true var.paths: - /var/log/nginx/error.log filebeat.prospectors: output.elasticsearch: enabled: true hosts: [“elasticsearch:9200"] filebeat.yml
None
可視化してわかったこと ブラジルから激しいアクセスが なんじゃこりゃ…
ログを見る “/”を“GET” してるだけ User-Agentが”Other“? ingest-user-agent モジュールで自動で解析されてしまった
ログを見る しょうがないので生ログを見る User-Agentは、"curl/7.17.1 (mips-unknown-linux-gnu) libcurl/7.17.1 OpenSSL/0.9.8i zlib/1.2.3”
mips ってことは組み込み系? 168.0.xxx.yyy - - [01/Dec/2017:23:37:23 +0900] "GET / HTTP/1.1" 200 612 "-" "curl/7.17.1 (mips-unknown- linux-gnu) libcurl/7.17.1 OpenSSL/0.9.8i zlib/1.2.3” 177.101.xxx.yyy - - [01/Dec/2017:23:00:59 +0900] "GET / HTTP/1.1" 200 612 "-" "curl/7.17.1 (mips-unknown- linux-gnu) libcurl/7.17.1 OpenSSL/0.9.8i zlib/1.2.3” 168.0.xxx.yyy - - [01/Dec/2017:22:54:08 +0900] "GET / HTTP/1.1" 200 612 "-" "curl/7.17.1 (mips-unknown- linux-gnu) libcurl/7.17.1 OpenSSL/0.9.8i zlib/1.2.3” 187.120.xxx.y - - [01/Dec/2017:22:44:37 +0900] "GET / HTTP/1.1" 200 612 "-" "curl/7.17.1 (mips-unknown- linux-gnu) libcurl/7.17.1 OpenSSL/0.9.8i zlib/1.2.3” 168.0.xx.yyy - - [01/Dec/2017:22:38:39 +0900] "GET / HTTP/1.1" 200 612 "-" "curl/7.17.1 (mips-unknown- linux-gnu) libcurl/7.17.1 OpenSSL/0.9.8i zlib/1.2.3"
Shodanで調べてみる いくつかのIPをShodanで調べたところ、すべてのIPで2000/tcpが動 いていた これが原因?何かのネットワーク機器ぽい
まとめ Elastic Stackを使うことでログ収集が簡単に可能 集めた情報を可視化することでログ解析が楽しく、 簡単にできる 可視化して見つけた情報をもとにOSINTしてみる と新たなことがわかるかも
今後はさらに多くのホストから、さらに多くのロ グを収集して、Elasticに入れて解析したい