由于NMAP内置大量的指纹信息,所以使用NMAP扫描主机可以判断出服务的版本。例如,使用
nmap -sV IP 方式就可以获取服务版本信息。该命令可以扫描Oracle的版本信息,如返回以下信息:
1521/tcp open oracle-tns Oracle TNS Listener 11.1.0.6.0 (for Linux)
通过版本代号,可以发现Oracle的版本信息为11.1.0.6.0。该信息是Oracle 11gR1的Linux版本。
PS:有人反映说NMAP无法正确识别Oracle 11gR2及其以后的版本,由于没有环境,暂时无法确认。
下面是Oracle版本和版本编号对应关系
Oracle v2 : 2.3
Oracle v3 : 3.1.3
Oracle v4 : 4.1.4.0-4.1.4.4
Oracle v5 : 5.0.22, 5.1.17, 5.1.22
Oracle v6 : 6.0.17-6.0.36 (no OPS code), 6.0.37 (with OPS)
Oracle7: 7.0.12–7.3.4
Oracle8 Database: 8.0.3–8.0.6
Oracle8i Database Release 1: 8.1.5.0–8.1.5.1
Oracle8i Database Release 2: 8.1.6.0–8.1.6.3
Oracle8i Database Release 3: 8.1.7.0–8.1.7.4
Oracle9i Database Release 1: 9.0.1.0–9.0.1.5
Oracle9i Database Release 2: 9.2.0.1–9.2.0.8
Oracle Database 10g Release 1: 10.1.0.2–10.1.0.5
Oracle Database 10g Release 2: 10.2.0.1–10.2.0.5
Oracle Database 11g Release 1: 11.1.0.6–11.1.0.7
Oracle Database 11g Release 2: 11.2.0.1–11.2.0.4
Oracle Database 12c Release 1: 12.1.0.1-12.1.0.2
Oracle v2 : 2.3
Oracle v3 : 3.1.3
Oracle v4 : 4.1.4.0-4.1.4.4
Oracle v5 : 5.0.22, 5.1.17, 5.1.22
Oracle v6 : 6.0.17-6.0.36 (no OPS code), 6.0.37 (with OPS)
Oracle7: 7.0.12–7.3.4
Oracle8 Database: 8.0.3–8.0.6
Oracle8i Database Release 1: 8.1.5.0–8.1.5.1
Oracle8i Database Release 2: 8.1.6.0–8.1.6.3
Oracle8i Database Release 3: 8.1.7.0–8.1.7.4
Oracle9i Database Release 1: 9.0.1.0–9.0.1.5
Oracle9i Database Release 2: 9.2.0.1–9.2.0.8
Oracle Database 10g Release 1: 10.1.0.2–10.1.0.5
Oracle Database 10g Release 2: 10.2.0.1–10.2.0.5
Oracle Database 11g Release 1: 11.1.0.6–11.1.0.7
Oracle Database 11g Release 2: 11.2.0.1–11.2.0.4
Oracle Database 12c Release 1: 12.1.0.1-12.1.0.2