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
ポートスキャナー入門: 正しく判断するために知っておきたいこと
Search
hackeT
April 24, 2025
Technology
0
5
ポートスキャナー入門: 正しく判断するために知っておきたいこと
ISACA名古屋支部_2025年04月SR分科会 資料
hackeT
April 24, 2025
Tweet
Share
More Decks by hackeT
See All by hackeT
OPSEC (Operations Security) について 知っておきたいこと
hacket
0
3
スレットハンティングについて知っておきたいこと
hacket
0
410
ランサムウェア攻撃について知っておきたいこと
hacket
0
190
APIセキュリティについて 知っておきたいこと
hacket
2
190
日曜フォレンジック ~デジタルカメラの写真と動画を復旧せよ~
hacket
0
65
msticpyの実践活用: 高度な脅威ハンティングを実現すべくSIEMとの虹の懸け橋となる
hacket
1
65
Practical msticpy use ~ rainbow bridge to SIEM for advanced threat hunting ~
hacket
0
140
フィッシング詐欺について知っておきたいこと
hacket
1
100
知られざるLOADERマルウェアの世界
hacket
0
100
Other Decks in Technology
See All in Technology
The Tale of Leo: Brave Lion and Curious Little Bug
canalun
1
130
Making a MIDI controller device with PicoRuby/R2P2 (RubyKaigi 2025 LT)
risgk
1
270
新卒エンジニアがCICDをモダナイズしてみた話
akashi_sn
2
250
React ABC Questions
hirotomoyamada
0
490
システムとの会話から生まれる先手のDevOps
kakehashi
PRO
0
290
クォータ監視、AWS Organizations環境でも楽勝です✌️
iwamot
PRO
1
320
Classmethod AI Talks(CATs) #21 司会進行スライド(2025.04.17) / classmethod-ai-talks-aka-cats_moderator-slides_vol21_2025-04-17
shinyaa31
0
600
30代からでも遅くない! 内製開発の世界に飛び込み、最前線で戦うLLMアプリ開発エンジニアになろう
minorun365
PRO
11
3.3k
AIと開発者の共創: エージェント時代におけるAIフレンドリーなDevOpsの実践
bicstone
1
320
LangfuseでAIエージェントの 可観測性を高めよう!/Enhancing AI Agent Observability with Langfuse!
jnymyk
1
240
Linuxのパッケージ管理とアップデート基礎知識
go_nishimoto
0
380
バクラクの認証基盤の成長と現在地 / bakuraku-authn-platform
convto
1
620
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
52
11k
Raft: Consensus for Rubyists
vanstee
137
6.9k
Faster Mobile Websites
deanohume
306
31k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Site-Speed That Sticks
csswizardry
5
500
Optimising Largest Contentful Paint
csswizardry
36
3.2k
Building Applications with DynamoDB
mza
94
6.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
9
760
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
ϙʔτεΩϟφʔೖ ਖ਼͘͠அ͢ΔͨΊʹ͓͖͍ͬͯͨ͜ͱ 2025年4⽉ SR分科会 ISACA名古屋⽀部 調査研究担当・CISA教育担当 理事 ⻑⾕川達也 2025年4⽉19⽇(⼟) 14:00-14:50
はじめに • セキュリティリサーチ(SR)分科会へようこそ︕ • リサーチ報告で 広く浅くインプット • ⼿を動かすハンズオンで アウトプット&エンジニアリング •
ディスカッション(交流)で ⼈脈形成 ご都合よろしければ、15:00〜の ISACA⽉例会にもご参加ください 本⽇は ハンズオン特化回
全体概要 タイムテーブル 1. ハンズオン演習説明 5分 2. ハンズオン時間 35分 3. 簡単な解説とまとめ
10分 演習⽤ ”ネットワークレンジ”に対してnmap/netcatツールで各種スキャン I ホストスキャン II ポートスキャン III サービススキャン を⾏うハンズオン演習 背景︓ポートスキャンは攻撃者の偵察に使われるのみならず、死活監視やネットワークの 把握にも活⽤される機会もあるため、広く知っておくべきテクニック 演習⽤サーバーを使って、演習⽤ネットワークレンジ以外へスキャンしないでください。
ハンズオン環境 参加者 演習管理用 Webサーバー ターゲットC ターゲットB ターゲットA 演習管理用Webサーバー越しにターゲットネットワークにのみスキャン 192.168.8.0/26 SlackでURLを共有
ポートスキャンの⼀般的なプロセス 脆弱性スキャン サービスのバージョン情報やバナー⽂字列だけでなく、脆弱性に該当するかのPoCパケットを送信もしたりする サービス(バージョン)スキャン オープンポートごとの起動サービス名とバージョンを知りたい ポート番号ごとに応答するバナー⽂字列を確認 ポートスキャン 起動ホストごとのオープンポートを知りたい TCP/UDP でポート番号ごとにパケット応答を確認
ホストスキャン ネットワーク上の起動ホストを知りたい Reverse DNS、ARP、ICMP、TCP/UDP で IPアドレスを探索
演習管理⽤Webサーバー(1) ログインページ 演習開始時にPasswordをSlackで共有します。 Passwordを⼊⼒フォームに⼊れて、Loginボタンを教えてください。 以後、セッションCookieでログイン状態を認識します。
演習管理⽤Webサーバー(2) スキャンツール実⾏ページ 利⽤できるツールは、nmapとnetcatのみです。 バージョンやオプション引数等はご⾃⾝でコマンドヘルプをご確認ください。(-h || --help) 管理者権限が必要な場合は、sudoオプションを☑ください。 (nmapのみ可) 時間がかかるScanを実施した際、諦める場合は必ずCancelボタンを押してください。
演習管理⽤Webサーバー(3) スキャンツール実⾏ページ結果 コマンドの結果は、Webページと 開発者ツールのJavaScriptコン ソールにも出⼒されます。 結果から有益な情報を各⾃で記録 してください。結果末尾にコピー ボタンを配置しています。 前⾴の「Go to
Answer Page」の ボタンを押すと回答ページに遷移 します。
演習管理⽤Webサーバー(4) 回答ページ Server A,B,CはIPアドレスの第4オクテットの昇順です。 例 “22/tcp|ssh”の形式で、発⾒できたオープンポートらについて “port番号/tcpまたはudp|service名”を⼊⼒し、「Submit」ボタンを押して回答を提出します。 Server A,B,Cには 演習管理⽤Webサーバーと
192.168.8.1のGW IPは 含みません
演習管理⽤Webサーバー(5) 回答ページ 結果 各Server内はどこにどのポートを⼊れても正解ポートが含まれていれば反応します。 また過去に⼊⼒した正解のポートは「セッションストレージ」で管理しています。 ぜひ20問全問正解を⽬指してがんばってください︕単純に1問 5%のScoreです。 service名は基本nmap定義に準拠します が、⼀部それだけでは正解にならずCTFのように調査して正しいservice名を探してもらう 問題があります。
作問者の⽬標は全員が
演習管理⽤Webサーバー(6) トラブルシューティング︖もしもこんなエラーが出たら 演習Webサーバーのコマンド実⾏がうまくいかない場合は↓ 1. ツール実⾏中の場合はまず「Cancelボタン」を押してください。 2. 「Cancelボタン」が機能しなければ、ツール実⾏ページをF5リロードしてください。 3. それでも状況が改善しなければ、セッションCookieを削除してください。削除後F5リロードす るとログインページからのやり直しとなり、セッション状況が初期化されますが、セッションス
トレージは残存するので過去の正解回答は残ったままです。 4. まだ解決しなければ、演習期間のブラウザーキャッシュを削除し、Webブラウザー再起動してく ださい。 5. 演習管理⽤Webサーバーが機能しなくなった場合に備えて、SOCKSプロキシを併設しています。 SOCKSプロキシを使わなければならない状況になったらアクセス⽅法をお伝えします。+どうし ても⾃分のツール環境から演習に参加したい⽅にはSOCKSプロキシへのアクセス⽅法をお伝えし ますのでSlackでDMください。 例: Websocketが過去のセッションを利用しようとしているがすでに存在しないエラー、過去を消去し、リセットするべきトラブル
ハンズオン演習スタート それでは、わいわいと ポートスキャン演習スタートです。 ご不明点があれば、遠慮なく管理者(⻑⾕川) を会場で捕まえるか、SlackでDMください。 簡単な解説は、終了10分前から⾏います。 Good Luck! 時間短縮のヒント︓ Server
B と Server C は10000番ポート以下 のみ解答フラグに含みます
コマンド引数のヒント ⚠本演習⽤サーバーにおける内部UNIXシェルへの受け渡しでは、いくつかの無害化処理を施しております nmapコマンド --version コマンドバージョン確認 -h ヘルプ表⽰ -nn DNS名前解決しない -vv
very verbose 詳細のデバッグ表⽰(⻑く時間がかかる場合に重宝) -Pn Probe none。⽣きているホストのIPアドレスが⾃明の場合はこれをセットするとホストスキャンをスキップ。 -p 22,80 22番と80番ポートのみに絞ったスキャン -p- 0-65535のすべてのポートへのスキャン -sV バージョンスキャン(アプリケーションレイヤーのパケットを解析) -sU UDPのポートに対するスキャンに必須 + sudo 権限も必須 sudoオプションを付与するとどうなるかはご⾃⾝でご確認ください。 netcatコマンド -N 標準⼊⼒終了後即時切断 -w 2 2秒後に切断 <<< SOMETHING ヒアストリング機能。この場合、標準⼊⼒で⽂字列SOMETHINGを送信します。またクオート(ʻや””)で 囲むとうまくいかない可能性があります。複雑な⽂字列の⼊⼒は必要としませんし、解答へ向けて環境変数とのバッティング もありません。
簡単な解説
簡単な解説まとめ(ਖ਼͘͠அ͢ΔͨΊʹ͓͖͍ͬͯͨ͜ͱ) Nmap • ホストスキャン - ⼀般ユーザー権限では、 80/tcp、443/tcp の 2ポートしかスキャンしない😭 -
管理者権限にてようやく、ARP + ICMP でスキャンできる😊 • ポートスキャン - デフォルトではよくサーバーが稼働している1000個のポート番号へのTCPスキャンのみ - sU: UDP (管理者権限が必要)。レアなポート番号には-pでポート番号の指定必須 - ポート番号毎に主たるサービス名がマッチアップされている(例 23/tcp = telnet) • サービス(バージョン)スキャン - sV: 実際に受け取ったバナー⽂字列等によりサービス名とバージョンを判断 Netcat (スキャニング⽤途) • TCP またはUDPのパケットのみ対応、ARPやICMPは送れない • デフォルトTCP (例 -nvw2)、UDPは-uが必要 (例 -nvwu2)
次回のSR分科会は「2025年7⽉19⽇(⼟)」 SR分科会へのご参加ありがとうございました。 次回の詳細情報は、Slackで別途ご連絡します。 次回は、ディスカッション回で花⽥先⽣(理事)(SR分科会副査)による 「企業版サイバーポリスゲーム」 「名古屋国際センター第⼆研修室 @国際センター駅」で現地のみの開催です