漏洞扫描器和Nessus分析
Posted 南瓜__pumpkin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了漏洞扫描器和Nessus分析相关的知识,希望对你有一定的参考价值。
NESSUS基本原理及其关键技术分析
简单分类和扫描引擎技术
漏洞扫描技术可分为两类 :主机漏洞扫描技术,主要针对系统的配置缺陷;网络漏洞扫描技术,不仅能够检测系统漏洞,还可以对网络设备、整个网段进行检测。
基于网络的漏洞扫描 ,就是通过远程检测目标主机TCP/IP不同端口的服务,记录目标主机给予的回答。
匹配检测技术:获得相关信息后,与网络漏洞扫描系统提供的漏洞库进行匹配 ,如果满足匹配条件则视为漏洞存在 。
模拟攻击技术(插件技术):通过模拟黑客 的进攻手法 ,对目标主机系统进行攻击性的安全漏洞扫描 ,如果模拟攻击成功则视为漏洞存在 。
网络漏洞扫描系统的5个构成
网络漏洞扫描系统的构成:扫描引擎(使用匹配检测或插件技术)、用户配置控制台、扫描知识库(监视扫描状态、提供漏洞信息、接收扫描结果)、结果存储器和报告生成工具、漏洞数据库(扫描方法库)。
扫描引擎:扫描引擎是扫描器的主要部件 。如果采用匹配检测方法 ,则扫描引擎根据用户的配置组装好相应的数据包并发送到 目标系统 ,目标系统进行应答,再将应答数据包与漏洞数据库 中的漏洞特征进行比较,以之来判断所选择的漏洞是否存在 。如果采用的是插件技术 ,则扫描引擎根据用户的配置调用扫描方法库里的模拟攻击代码对 目标主机系统进行攻击,若攻击成功 ,则表明主机系统存在安全漏洞。
插件是用脚本语言编写的子程序 ,通常系统先制定扫描策略,然后扫描程序根据策略调用一系列插件来执行漏洞扫描 ,检测出系统中存在的一个或多个漏洞。
扫描方法库对插件技术的应用,使扫描器的升级和维护相对简单,具有很强的多扩展性。
工作原理
网络漏洞扫描系统的工作原理:首先,用户通过用户配置控制台模块向扫描引擎发出扫描命令。
然后,用户配置控制台模块向扫描引擎模块发出相应的扫描请求。
扫描引擎模块在接到请求之后启动相应的子功能模块,
若扫描方法采用的是匹配检测法 ,则对被扫描主机进行扫描 ,通过对从被扫描主机返回的信息进行分析判断,若采用的是模拟攻击法 ,则在扫描方法库中调用模拟攻击代码 ,并扫描目标主机 。
最后 ,利用当前活动扫描知识库 中存储的扫描结果生成扫描报告 ,再由用户配置控制台模块最终呈现给用户。
Nessus源代码分析
源代码主要包括4部分的内容:
- 服务端的内核代码(Nessus-Core)
- 服务器端的插件库代码(Nessus-Plugins)
- 功能函数库代码(Nessus-Library)
- 客户端代码
服务器端的工作流程 主要分成两个部分:一部分是nessusd.C文件,这个文件里的主程序主要是负责解读接收客户端发送过来的字段,然后根据客户发送的请求作出相应的操作;而另一部分主要是nessus—check—signature.C文件,这一文件里的主程序主要是管理加密,签名方面的信息。
Nessus服务器端采用了 模块结构 ,它们可以分成6个模块。
- 主控模块:控制各个模块的调用日志模块,记录日志文件 ;
- 认证模块:对客户提交用户名和密码进行认证;
- 日志模块:记录日志文件 ;
- 通信模块:按NTP协议处理收到的消息并向客户端发出消息;
- 扫描模块:按用户的要求进行扫描;
- 加密模块:对客户和服务器之间的通信进行加密。
插件的数据结构。客户端代码涉及的主要数据结构。
参考
《NESSUS基本原理及其关键技术分析》,
文章地址https://www.docin.com/p-775482246.html
以上是关于漏洞扫描器和Nessus分析的主要内容,如果未能解决你的问题,请参考以下文章