初めに
こんにちは、初投稿です。
未経験エンジニアのクソ雑魚です。
何を思い立ってか、内気で引きこもってた僕が記事を書こうかなと思い始めました。
記念すべき初投稿内容は、公開サーバへのポートスキャン方法を書いてみようかなと。
※悪用するのはやめてください。あくまでペネトレーションテストなどの社会への貢献のためにこれらの技術を使用してください。法に触れるので。
目次
- Openポート調査に役立つサイト
- Nmapでのポートスキャン
- 基礎編
- 応用編
- まとめ
Openポート調査に役立つサイト
調査サイトは以下の二つです。
IoT機器のセキュリティ強化のために作られたサイトですね。
Shodan
左上のSearch欄(灰色)に調べたいサイトのURLやIPを叩き込めばそのサイトの情報が見えます。
Censys
Search欄にIPv4アドレスを入れれば調査できます。
出てきたレポートにOpenポートが記載されているので、Shodanほどではないですが、いろいろ情報が見れます。
Nmapでのポートスキャン
今度はコマンドラインで実際にポートスキャンを行っていきます。
私が使用する環境は以下です。
- Virtual Box 6.1.26
- Kali Linux 2021-03
今回の調査対象例:XXX.XXX.XXX
※実際に「XXX.XXX.XXX」にはドメインやIPを入力します。
検証する場合は自身のローカル環境に仮想でサーバを立てましょう。
基礎編
SYNスキャン
コネクションを確立しない一般的なコマンドで、「-sS」オプションを指定します。
今回は「-p」オプションを使ってポート番号80をスキャンしています。
# nmap XXX.XXX.XXX -sS -p 80
OSスキャン
サーバOS特定するときのスキャンです。
# nmap XXX.XXX.XXX -O
コネクトスキャン
サーバとTCP接続を行ってスキャンします。
# nmap XXX.XXX.XXX -sT
UDPスキャン
UDPでのスキャンです。フルポートスキャンすると大変時間がかかるので、「-p」でポートを指定すること 「-v」オプションのVerboseモードで進捗をターミナルに表示するようにしましょう。
※今回はSNMPプロトコルを優先的に調査します。
# nmap XXX.XXX.XXX -sU -p 161, 162 -v
応用編
実際に脆弱性検査を行う場合は、Kali Linuxで用意されているLuaで書かれたスクリプトを用います。
vulnスクリプト
「-script vuln」オプションを使います。
そのほかのオプションとしては、「-p-」オプションを使って全ポートスキャンします。時間がかかるので「-v」オプションは必須です。また、脆弱性あるVersion特定のために「-sV」オプションも使用しましょう
# nmap XXX.XXX.XXX -v -p- -sV -script vuln
safeスクリプト
「-script safe」オプションを使用します。
サーバに負荷がかかりすぎないようにスキャンするときに使用します。
# nmap XXX.XXX.XXX -v -p- -script safe
まとめ
今回の初投稿はいかがでしたでしょうか?
一部のポートスキャンの方法をまとめてみましたので、セキュリティエンジニアの皆さんの助けになればなと思います。