Linux端口扫描工具nmapandnwatch
Port scan简介
port Scan的方法介绍 port
Scan它是一种通过检测对方服务器的开放端口来检测对方服务器服务的方法。一般可分为主动和被动。
主动式是通过向对方服务器的特定端口发送数据包来判断。nmap 为代表
被动式,不主动发布数据包,而是在网络上长时间侦听,分析网络transaction,为了分析,严格的被动式不应称为端口扫描。nwatch为代表
优缺点比较 主动优势
只要对方不阻断通信,主动式就能在短时间内得到结果
主动缺点
1
现在有越来越多的防火墙具有阻断功能。当检测到端口扫描时,一些防火墙会关闭端口一段时间,有些机器使用了很多filter功能特定功能IP在这种情况下,主动正确性大大降低。
2
主动只是在瞬间扫描端口,只有服务器使用的服务才能检测到。
3 端口扫描是一种广义的攻击行为,一般不能对末经许可的机器实施。
被动优势
被动式只是侦听网络,不会成为网络攻击。它运行时间长,可以长时间检测服务器的变化。
被动缺点
因为它不会主动发送请求包,即使端口打开,如果没有实际通信,服务也无法被动检测到
3。nmap的安装
debian apt-get install nmap
fedora core yum install nmap
others 下载源代码,编译
4。nmap的使用方法
下面是Nmap四种最基本的扫描方法:
* TCP connect()端口扫描(-sT参数)。
* TCP同步(SYN)端口扫描(-sS参数)。
* UDP端口扫描(-sU参数)。
* Ping扫描(-sP参数)
若要勾画一个网络的整体情况,Ping扫描和TCP SYN扫描最实用。
* Ping通过发送扫描ICMP(Internet Control Message
Protocol,Internet控制消息协议)回应请求数据包和TCP应答(Acknowledge,简写ACK)确定主机状态的数据包非常适合检测指定网段内正在运行的主机数量。
* TCP SYN扫描一下子不容易理解,但是如果你把它和它混在一起,TCP
connect()扫描比较,很容易看到这种扫描方法的特点。TCP
connect()扫描时,扫描仪利用操作系统本身的系统调用打开一个完整的TCP也就是说,扫描仪打开了两个主机之间完整的握手过程(SYN,
SYN-ACK,和ACK)。一个完整的握手过程表明远程主机端口是打开的。
* TCP SYN扫描创建了半开放连接,它与TCP
connect()扫描的区别在于,TCP
SYN复位是扫描发送的(RST)标记而不是结束ACK标记(即,SYN,SYN-ACK,或RST):如果远程主机正在监控并打开端口,则使用远程主机
SYN-ACK应答,Nmap发送一个RST;如果远程主机的端口关闭,其响应将是RST,此时Nmap进入下一个端口。
-sS 使用SYN+ACK使用方法TCP SYN,
-sT 使用TCP的方法, 3次握手全做
-sU 使用UDP的方法
-sP ICMP ECHO Request 送信,有反应的端口进行调查
-sF FIN SCAN
-sX
-sN 全部FLAG OFF的无效的TCP包送信根据错误代码判断端口情况
-P0 无视ICMP ECHO request的结果,SCAN
-p scan port range 指定SCAN目端口的范围
1-100, 或者用25100的方式
-O 侦测OS的种类
-oN 文件名 通常输出格式文件
-oX 文件名 通过DTD,使用XML格式输出结果
-oG 文件名,grep格式输出容易
-sV 程序名和版本的服务SCAN
实例:
nmap -v target.com
这样对target.com所有保留TCP扫描端口,-v表示使用详细的模式。
nmap -sS -O target.com/24
这将开始一次SYN半开扫描的目标是target.example.comC类子网,它还试图确定在其上运行的系统是什么。root由于使用了半开扫描和系统检测,权限。
结果实例:
debianlinux:/etc/init.d# nmap 192.168.1.1
Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at
2005-08-30 00:01 JST
Interesting ports on 192.168.1.1
(The 1658 ports scanned but not shown below are in state:
closed)
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
80/tcp open http
1720/tcp filtered H.323/Q.931
3128/tcp open squid-http
5。nwatch的安装 nwatch 需要的包
Perl 5.005_03以上
Net::Pcap
Ndiff 0.05 bata2 以上
libpcap
debian: apt-get install nwatch
6.nwatch的使用方法
-d 默认为网络设备名eth0
-h host/network[:port][t,u]
t,u 可以指定TCP或UDP 默认为TCP
-o 输出文件名
-fi 时间(秒) 把数据写盘时间,默认为300秒
-si 数据Break时间(秒)默认为86400(一天)
LINK
nmap
http://www.insecure.org/nmap/
默认数据写盘时间为300秒-si 数据Break时间(秒)默认为86400(一天)LINKnmap
http://www.insecure.org/nmap/
linux下nmap工具的使用,linux下扫描端口
NMap,也就是Network Mapper,是Linux下面的网络扫描和嗅探工
有三个基本功能:一是检测一组主机是否在线;二是 扫描主机端口,嗅探提供的网络服务;还可以推断主机使用的操作系统
。Nmap扫描只有两个节点LAN,直到网络超过500个节点。 Nmap
还允许用户定制扫描技巧。通常,使用简单ICMP协议的ping操 能满足一般需求,也能深入探测UDP或者TCP端口,直到主机
所使用的操作系统所有检测结果也可以记录在各种格式的日志中, 进一步分析操作。
进行ping扫描,打印响应扫描的主机,不进一步测试(如端口扫描或操作系统检测):
nmap -sP 192.168.1.0/24
只列出指定网络上的每个主机,不向目标主机发送任何报纸:
nmap -sL 192.168.1.0/24
检测目标主机开放的端口,可指定逗号分隔的端口列表(如-PS22,23,25,80):
nmap -PS 192.168.1.234
使用UDP ping探测主机:
nmap -PU 192.168.1.0/24
最常用的扫描选项:SYN扫描,又称半开放扫描,不打开一个完整的TCP连接,执行得很快:
nmap -sS 192.168.1.0/24
当SYN扫描不能使用时,TCP Connect()扫描是默认的TCP扫描:
nmap -sT 192.168.1.0/24
UDP扫描用-sU选项,UDP扫描发送空(无数据)UDP报头到每个目标端口:
nmap -sU 192.168.1.0/24
确定目标机支持什么IP协议 (TCP,ICMP,IGMP等):
nmap -sO 192.168.1.19
探测目标主机的操作系统:
nmap -O 192.168.1.19
nmap -A 192.168.1.19
另外,nmap官方文件中的例子:
nmap v scanme.nmap.org
这个选项扫描主机scanme.nmap.org中 所有的保留TCP端口。选项-v启用细节模式。
nmap -sS -O scanme.nmap.org/24
进行秘密SYN扫描,对象为主机Saznme所在的“C类”网段
的255台主机。同时尝试确定每台工作主机的操作系统类型。因为进行SYN扫描 和操作系统检测,这个扫描需要有根权限。
nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127
进行主机列举和TCP扫描,对象为B类188.116网段中255个8位子网。这
个测试用于确定系统是否运行了sshd、DNS、imapd或4564端口。如果这些端口
打开,将使用版本检测来确定哪种应用在运行。
nmap -v -iR 100000 -P0 -p 80
随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段
发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因 此使用-P0禁止对主机列表。
nmap -P0 -p80 -oX logs/pb-port80scan.xml -oG
logs/pb-port80scan.gnmap 216.163.128.20/20
扫描4096个IP地址,查找Web服务器(不ping),将结果以Grep和XML格式保存。
host -l company.com | cut -d -f 4 | nmap -v -iL -
进行DNS区域传输,以发现company.com中的主机,然后将IP地址提供给 Nmap。上述命令用于GNU/Linux --
其它系统进行区域传输时有不同的命令。
其他选项:
-p (只扫描指定的端口)
单个端口和用连字符表示的端口范 围(如 1-1023)都可以。当既扫描TCP端口又扫描UDP端口时,可以通过在端口号前加上T:
或者U: 指定协议。 协议限定符一直有效直到指定另一个。 例如,参数 -p
U:53,111,137,T:21-25,80,139,8080 将扫描 UDP
端口53,111,和137,同时扫描列出的TCP端口。
-F (快速 (有限的端口) 扫描)