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
13
ポートスキャナー入門: 正しく判断するために知っておきたいこと
ISACA名古屋支部_2025年04月SR分科会 資料
hackeT
April 24, 2025
Tweet
Share
More Decks by hackeT
See All by hackeT
OPSEC (Operations Security) について 知っておきたいこと
hacket
0
99
スレットハンティングについて知っておきたいこと
hacket
0
570
ランサムウェア攻撃について知っておきたいこと
hacket
0
210
APIセキュリティについて 知っておきたいこと
hacket
2
200
日曜フォレンジック ~デジタルカメラの写真と動画を復旧せよ~
hacket
0
69
msticpyの実践活用: 高度な脅威ハンティングを実現すべくSIEMとの虹の懸け橋となる
hacket
1
71
Practical msticpy use ~ rainbow bridge to SIEM for advanced threat hunting ~
hacket
0
150
フィッシング詐欺について知っておきたいこと
hacket
1
130
知られざるLOADERマルウェアの世界
hacket
0
110
Other Decks in Technology
See All in Technology
GopherCon Tour 概略
logica0419
2
190
多野優介
tanoyusuke
1
470
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
350
Azure Well-Architected Framework入門
tomokusaba
1
330
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
3
400
M5製品で作るポン置きセルラー対応カメラ
sayacom
0
160
20201008_ファインディ_品質意識を育てる役目は人かAIか___2_.pdf
findy_eventslides
1
520
社内お問い合わせBotの仕組みと学び
nish01
0
460
SOC2取得の全体像
shonansurvivors
1
410
【Oracle Cloud ウェビナー】クラウド導入に「専用クラウド」という選択肢、Oracle AlloyとOCI Dedicated Region とは
oracle4engineer
PRO
3
120
OpenAI gpt-oss ファインチューニング入門
kmotohas
2
1k
o11yで育てる、強い内製開発組織
_awache
3
120
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Documentation Writing (for coders)
carmenintech
75
5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Building Applications with DynamoDB
mza
96
6.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Optimizing for Happiness
mojombo
379
70k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Producing Creativity
orderedlist
PRO
347
40k
Music & Morning Musume
bryan
46
6.8k
Agile that works and the tools we love
rasmusluckow
331
21k
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分科会副査)による 「企業版サイバーポリスゲーム」 「名古屋国際センター第⼆研修室 @国際センター駅」で現地のみの開催です