网络安全之端口扫描

1、扫描三步曲

一个完整的网络安全扫描分为三个阶段:

第一阶段:发现目标主机或网络 (端口扫描)

第二阶段:发现目标后进一步搜集目标信息,包括操作系统类型、运行的服务以及服务软件的版本等。如果目标是一个网络,还可以进一步发现该网络的拓扑结构、路由设备以及各主机的信息 (目标信息识别)

第三阶段:根据收集到的信息判断或者进一步测试系统是否存在安全漏洞 (漏洞扫描)

2、端口扫描技术

当确定了目标主机活跃后,就可以使用端口扫描技术,发现目标主机的开放端口,包括网络协议和各种应用监听的端口。端口扫描技术主要包括以下三类:

开放扫描:会产生大量的审计数据,容易被对方发现,但其可靠性高;

TCP Connect 扫描、TCP反向ident扫描

隐蔽扫描:能有效的避免对方入侵检测系统和防火墙的检测,但这种扫描使用的数据包在通过网络时容易被丢弃从而产生错误的探测信息;

TCP SYN 扫描、TCP间接扫描

半开放扫描:隐蔽性和可靠性介于前两者之间。

TCP FIN 扫描、TCP Xmas扫描、TCP Null 扫描、TCP ftp proxy扫描、分段扫描、UDP扫描

3、目标信息识别

在找出网络上存活的系统之后,下一步就是要得到目标主机的操作系统信息和开放的服务信息。用到的技术主要有服务识别和操作系统探测(Operating System Detection)。

服务识别:通常获取服务类型的办法是根据RFC1700直接推断。但是下面几种情况可能会使这项工作变得稍微有些麻烦:

该主机将某服务故意开设到了非标准端口;

该主机开设了一个RFC1700中未定义的服务;

该主机被安置了后门程序。

所以有时候仅凭端口号来判断服务类型还是不够的,可能需要更多的信息。

操作系统探测:由于许多漏洞是和操作系统紧密相关的,因此,确定操作系统类型对于脆弱性评估工具而言也十分重要。目前用于探测操作系统的方法主要可以分为两类:利用系统的信息和利用TCP/IP堆栈指纹。而后者又有多种不同的实现方法。

表1:操作系统探测方法比较

4、漏洞检测

经过发现目标和攫取信息两个步骤以后,就可以进行漏洞检测。

漏洞检测的方法主要分为3种:直接测试(test)、推断(inference)和带凭证的测试(Test with Credentials)。

5、不同的扫描策略

对计算机进行安全扫描不仅可以从网络进行,也可以从主机进行。也就是说安全扫描有基于网络和基于主机两种策略。

基于网络的安全评估工具从入侵者的角度评估系统,这类工具叫做远程扫描器或者网络扫描器。基于主机的安全评估工具从本地系统管理员的角度评估系统,这类工具叫做本地扫描器或者系统扫描器。这两类扫描器的主要目的都是发现系统或网络潜在的安全漏洞。

(1)基于主机的脆弱性评估分析文件内容,对系统中不合适的设置、脆弱的口令以及其他存在安全问题进行检查。它具有以下特点:

运行于单个主机,扫描目标为本地主机;

扫描器的设计和实现与目标主机的操作系统相关;

扫描项目主要包括用户账号文件、组文件、系统权限、系统配置文件、关键文件、日志文件、用户口令、网络接口状态、系统服务、软件脆弱性等。

(2)基于网络的脆弱性评估通过执行一些插件或者脚本模拟对系统进行攻击的行为并记录系统的反应,从而发现其中的漏洞。它具有以下特点:

运行于单个或多个主机,扫描目标为本地主机或者单/多个远程主机;

扫描器的设计和实现与目标主机的操作系统无关;

扫描项目主要包括目标的开放端口、系统网络服务、系统信息、系统漏洞、远程服务漏洞、特洛伊木马检测、拒绝服务攻击等。

 

 

 

6、常用扫描工具比较

网络安全学习资源分享:

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

在这里插入图片描述

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享 (qq.com)

同时每个成长路线对应的板块都有配套的视频提供:

在这里插入图片描述

在这里插入图片描述

CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享 (qq.com)

因篇幅有限,仅展示部分资料,需要点击上方链接即可获取

猜你喜欢

转载自blog.csdn.net/2301_76161259/article/details/130282949