悪用厳禁!Nmapでポートスキャンを試してみる
セキュリティの勉強のためにポートスキャンが実行できるツールNmapをEnvaderで学びます。
ポートは通信の出入り口ですので、不用意に開いているポートをスキャンして探すという行為は攻撃の準備、空き巣の下見とも捉えられます。
相手の手口を知ることで攻撃に備えるという意味でセキュリティの知識を高めたいと思います。
Nmapとは
本来はネットワーク状況の調査や監査のために用いられるオープンソースソフトウェアです。
しかし不用意に使うと相手に迷惑をかけてしまうことや悪用もできるため取り扱い注意となっているようです。
こちらで配布されています。
ポートスキャンをもうちょっと詳しく
ネットワーク機器のポートに対して接続を試みることでポートの開閉具合やサービス・バージョンと言った情報を得ることができます。
以下は仮想環境化でローカルIPネットワークに対しssh22番ポートの空きポートをスキャンしてみた結果です。
Starting Nmap 7.40 ( https://nmap.org ) at 2022-03-21 15:23 UTC
Nmap scan report for 172-19-4-2 (172.19.4.2)
Host is up (0.00029s latency).
PORT STATE SERVICE
22/tcp open ssh
Nmap scan report for 547e0f40-8df4-4a3d-9790-70875bf36007-1063-wetty.adNW4-0 (172.19.4.3)
Host is up (0.00078s latency).
PORT STATE SERVICE
22/tcp closed ssh
Nmap scan report for 547e0f40-8df4-4a3d-9790-70875bf36007-1063-2.adNW4-0 (172.19.4.75)
Host is up (0.00065s latency).
PORT STATE SERVICE
22/tcp closed ssh
Nmap scan report for 547e0f40-8df4-4a3d-9790-70875bf36007-1063-1.adNW4-0 (172.19.4.116)
Host is up (0.00069s latency).
PORT STATE SERVICE
22/tcp open ssh
2つの空きポートを見つけました。
ユーザー名やPasswordがあれば接続できてしまいます。
インストール方法
CentOSにインストールする方法は以下のとおりです。
yum -y install nmap
これだけです。
これ以降はEnvaderの仮想環境で誰にも迷惑をかけない形で実行していきます。
使用方法
# IPアドレスで指定
nmap 192.168.0.1
# FQDNで指定もできます
nmap www.example.com
# UDPスキャン
nmap -sU www.example.com
デフォルトではTCPスキャンとなっています。
オプションは以下の通り。
Option | 名称 | 説明 |
---|---|---|
-sS | SYNスキャン | 対象にSYNパケットを送信し、SYN+ACKパケットが返ってくるかどうかでポートが開いているかを判断するスキャン方法 |
-SA | ACKスキャン | 対象にACKパケットを送信し、RSTパケットが返ってくるかどうかでファイアウォールの有無を判断するスキャン方法 |
-sU | UDPスキャン | 対象にUDPパケットを送信し、ICMP port unreachableが返ってくるかどうかでポートが開いているかを判断するスキャン方法 |
-sP | PINGスキャン | 対象にpingを送信し、pingの応答が返ってくるかどうかでホストが存在するか判断するスキャン方法 |
引用元:Nmapを使ってみよう
Envaderの練習問題ではsshポートをスキャンしてssh接続を試してみる事ができます。
Nmapにはこの他にもFireWallをすり抜けたり、ステルススキャンなどの機能があります。
再度注意!以下のようなリスクがあります
学んだこと
手軽にセキュリティホールを見つけることができることがわかりました。
ここまで手軽だと気軽に攻撃仕掛けてくる人が居てもおかしくないですね……。よりセキュリティに対する意識が高まりました。
セキュリティという重大な問題に対して浅学者の記事ですので補足や間違い等ありましたら遠慮なくご指摘いただけるとありがたいです!
参考にしたサイト
見出し画像
これまで学んだセキュリティ
Discussion