Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ポートスキャナー入門: 正しく判断するために知っておきたいこと
Search
hackeT
April 24, 2025
Technology
0
15
ポートスキャナー入門: 正しく判断するために知っておきたいこと
ISACA名古屋支部_2025年04月SR分科会 資料
hackeT
April 24, 2025
Tweet
Share
More Decks by hackeT
See All by hackeT
OPSEC (Operations Security) について 知っておきたいこと
hacket
0
140
スレットハンティングについて知っておきたいこと
hacket
0
640
ランサムウェア攻撃について知っておきたいこと
hacket
0
230
APIセキュリティについて 知っておきたいこと
hacket
2
210
日曜フォレンジック ~デジタルカメラの写真と動画を復旧せよ~
hacket
0
71
msticpyの実践活用: 高度な脅威ハンティングを実現すべくSIEMとの虹の懸け橋となる
hacket
1
75
Practical msticpy use ~ rainbow bridge to SIEM for advanced threat hunting ~
hacket
0
160
フィッシング詐欺について知っておきたいこと
hacket
1
130
知られざるLOADERマルウェアの世界
hacket
0
120
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
180
アラフォーおじさん、はじめてre:Inventに行く / A 40-Something Guy’s First re:Invent Adventure
kaminashi
0
160
MariaDB Connector/C のcaching_sha2_passwordプラグインの仕様について
boro1234
0
1k
通勤手当申請チェックエージェント開発のリアル
whisaiyo
3
470
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
510
20251222_サンフランシスコサバイバル術
ponponmikankan
2
140
まだ間に合う! Agentic AI on AWSの現在地をやさしく一挙おさらい
minorun365
17
2.8k
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
420
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
1
1.9k
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
250
Amazon Connect アップデート! AIエージェントにMCPツールを設定してみた!
ysuzuki
0
140
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
186
22k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
28
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
170
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.4k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
0
170
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
How to Talk to Developers About Accessibility
jct
1
85
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
100
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
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分科会副査)による 「企業版サイバーポリスゲーム」 「名古屋国際センター第⼆研修室 @国際センター駅」で現地のみの開催です