漏洞扫描器原理
主机存货探测:
扫描器三大功能:主机发现、发现主机上的服务、发现服务的漏洞。
扫描器首先探测目标系统的存货主机,探测方式默认用 ICMP ping和TCP ping ,也可以选用UDP ping。
倘若主机开启禁ping,扫描器无法探测到主机存活与否,扫描器会对其进行逐个端口扫描,,准确,但效率低。
判断端口及服务:
通过TCP端口扫描方式,确定目标主机开放的端口,默认通过CONNECT方式,可选用SYN方式,同时根据协议指纹技术识别出主机的操作系统类型
判断漏洞
扫描器对开放端口进行网络服务类型的识别,确定其提供的网络服务。漏洞扫描器根据目标系统的操作系统平台和提供的网络服务,调用漏洞资料库中已知的各种漏洞进行逐一检测,通过对探测响应数据包的分析判断是否存在已知安全漏洞。
攻击风险及误报
在漏洞的检测过程中,扫描器会基于自身数据库中payload(漏洞利用程序)向目标发送信息,基于返回的数据包来确定漏洞是否存在,虽然是非攻击性的payload的, 但此过程仍存在一 定的风险。
有些漏洞是没有payload,或者扫描器自身数据库中没有此漏洞的payload,这时,扫描器就会基于扫描出来的目标系统的服务版本来判断是否存在漏洞,如扫描出目标主机存在Oracle 11g数据库,而此时扫描器没有此版本的payload,扫描器就会把数据库中所有低于此版本的漏洞全部呈现出来。同时,在判断目标系统的服务版本中,可能也会出现偏差,最终也会导致漏洞误报。