blog

リモート・コンピューターが使用しているオペレーティング・システムを特定するには?

この記事で紹介するTipsでは、リモートコンピュータが実行しているオペレーティングシステムを特定するためにnmapコマンドを使用する方法を紹介します。LANホストのインベントリリストを作成している場合...

Nov 17, 2013 · 4 min. read
シェア

挙げる

このTipsでは、リモートコンピュータがどのオペレーティングシステムを実行しているかを調べるためにnmapコマンドを使用する方法を紹介します。LANホストのインベントリリストを作成する場合や、特定のローカルまたはリモートのIPアドレスの後ろで動作しているシステムがわからない場合、ヒントが必要です。このタスクにnmapコマンドを使っても、リモートのオペレーティングシステムを100%の精度で特定できるわけではありませんが、nmapがかなり有用な推論を提供してくれることは確かです。

ローカルネットワークの簡易スキャン

リモートホストのオペレーティングシステムをnmapで特定しようとするとき、NMAPは、オペレーティングシステムのデフォルトインストールに基づくポートのオープンおよびクローズ状態、他のユーザーによってnmapデータベースにすでに提出されたオペレーティングシステムのフィンガープリント、MACアドレスなど、さまざまな側面に基づいて推論を行います。

ネットワーク上でどのIPアドレスが有効かわからない場合は、まずサブネット全体をスキャンしてみてください。例えば、ここではローカルサブネット10.1.1.*をスキャンします:

# nmap -sP .* 
Starting Nmap 6.00 ( http://.org ) at 2013-01-08 08:14 EST 
Nmap scan report for .1 
Host is up (0.0026s latency). 
MAC Address: C4:7D:4F:6F:3E:D2 (Cisco Systems) 
Nmap scan report for .11 
Host is up. 
Nmap scan report for .13 
Host is up (0.0020s latency). 
MAC Address: 00:13:02:30:FF:EC (Intel Corporate) 
Nmap scan report for .14 
Host is up (0.0022s latency). 
MAC Address: A8:26:D9:ED:29:8E (HTC) 
Nmap scan report for .250 
Host is up (0.0041s latency). 
MAC Address: 00:23:EB:71:E0:F6 (Cisco Systems) 
Nmap done: 256 IP addresses (5 hosts up) scanned in 35.37 seconds 

上の出力から、現在アクティブなすべてのIPアドレスと、ホスト固有の関連ヒントを見ることができます。

リモートホストのオペレーティングシステムの特定

nmapが判断を下すためには、リモートホスト上で少なくとも1つのオープンポートと1つのクローズドポートを見つける必要があります。先ほどのスキャン結果に基づき、ホスト10.1.1.13に関する詳細情報を見てみましょう:

# nmap -O -sV .13 

出力:

Nmap scan report for .13  
Host is up (0.0073s latency).  
Not shown: 995 closed ports  
PORT     STATE SERVICE              VERSION  
22/tcp   open  ssh                  OpenSSH 5.5p1 Debian 6+squeeze2 (protocol 2.0)  
53/tcp   open  domain               ISC BIND 9.7.3  
80/tcp   open  http                 Apache httpd 2.2.16 ((Debian))  
111/tcp  open  rpcbind (rpcbind V2) 2 (rpc #100000)  
3389/tcp open  ms-wbt-server        xrdp  
MAC Address: 00:13:02:30:FF:EC (Intel Corporate)  
Device type: general purpose  
Running: Linux 2.6.X  
OS CPE: cpe:/o:linux:kernel:2.6  
OS details: Linux 2.6.32 - 2.6.35  
Network Distance: 1 hop  
Service Info: OS: Linux; CPE: cpe:/o:linux:kernel  
OS and Service detection performed. Please report any incorrect results at http://.org/submit/ . 
Nmap done: 1 IP address (1 host up) scanned in 20.57 seconds 

上記の出力から判断できるように、この特定のホストは Linux オペレーティングシステムの何らかのバージョンを実行しています。SSHのバージョンから、カーネルバージョン2.6のDebian 6である可能性が高く、正確なカーネルバージョンは2.6.32から2.6.35の間である可能性が高いです。

はんけつをくだす

WAN上の全てのリモートホストに同じ技術を使うことができます。システム管理者にとって、オペレーティングシステムのバージョンについてリモートホストをスキャンすることは非常に便利です。しかし一方で、このテクニックはハッカーに悪用される可能性があります。ハッカーはOSの種類とパッチレベルに関する正確な情報を使って、あらゆるホストを攻撃のターゲットにすることができます。このことからも、システムを常にパッチでアップデートしておくことをお勧めします。

Read next

企業におけるAPIの安全な利用を確保する方法

本稿では、安全でないAPIがどのように、そしてなぜ組織とそのユーザーに重大なリスクをもたらすのかを考察し、セキュリティチームが意識を高め、既存の企業ソフトウェアに含まれるAPIを保護し、APIデータを安全に利用するために何をすべきかを説明します。

Nov 16, 2013 · 5 min read