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
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Elastic StackでWebサーバのログ解析を始めた件について / Web server access log analysis using Elastic Stack
元祖濱せっく#1 のLTで発表した資料です #HamaSec
takahoyo
December 02, 2017
More Decks by takahoyo
See All by takahoyo
OSEP取るまでにやったこと
takahoyo
3
2.5k
"申" (猿)がつくセキュリティツールを検証してみた
takahoyo
4
1.3k
おうちで出来るセキュリティチャレンジ / cyber security challenge from home
takahoyo
4
1.9k
malspamの情報収集と解析 / malspam information gathering and analysis
takahoyo
0
130
Scapyで作る・解析するパケット/ network packets craft and analysis by Scapy
takahoyo
2
2.2k
パケットで遊ぼう / let's play using network packet
takahoyo
0
230
hpingで作るパケット / network packet craft by hping
takahoyo
0
440
低対話型サーバハニーポットの運用結果及び考察 / Operation result of low interaction honeypots
takahoyo
0
270
Other Decks in Technology
See All in Technology
いま、生成AIにKaggleをどこまで 任せられるか — ROGIIコンペでの進め方とTips
k951286
2
1.3k
全社に広がるMCPサーバーを、 どう安全に管理するか MCPass開発の舞台裏
mtpooh
3
280
Point Cloud as a Foreign Language for Multi-modal Large Language Model
takmin
0
370
GuardDuty 検知対応を DevOps Agent で効率化しようとしている話 / GuardDuty Investigations with DevOps Agent
masahirokawahara
1
280
データエンジニアリングワークショップ:Auto LoaderとSparkで学ぶデータパイプライン構築
databricksjapan
PRO
0
140
DGX Sparkを2台使って いろいろ動かす話
sonoda_mj
1
120
【Oracle AI Spotlight ウェビナー】AWSか、Azureか、Google Cloudか。その議論にオラクルを含める意義。
oracle4engineer
PRO
2
220
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
770
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
250
KAEN Company Deck
kaen
PRO
0
290
Level Up Your CDK DX: 5 Tools I’ve Been Building
gotok365
2
180
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
320
Featured
See All Featured
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
430
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
260
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
410
Deep Space Network (abreviated)
tonyrice
0
290
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Marketing to machines
jonoalderson
1
5.7k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
470
The Limits of Empathy - UXLibs8
cassininazir
1
630
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
New Earth Scene 8
popppiees
3
2.5k
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に入れて解析したい