BetaMao

系统弱点扫描

字数统计: 1.8k阅读时长: 6 min
2016/09/17 Share

乱七八糟的简单记录一下系统弱点扫描知识~

发现漏洞

基于端口服务扫描结果版本信息(速度慢)
搜索已公开的漏洞数据库(数量大)
使用弱点扫描器实现漏洞管理

从信息的维度定义漏洞管理

之前:扫描发现网络IP、OS、服务、配置、漏洞、定义扫描方式内容和目标
之后:格式化信息,并进行筛选、分组、定义优先级、生成报告、导出数据、与SIEM集成、向不同层级的人群展示足够的信息量、资产分组、指定所有者、向所有者报告漏洞

弱点扫描类型

  • 主动扫描
  • 有身份验证
  • 无身份验证
  • 被动扫描
  • 镜像端口抓包
  • 其他来源输入
  • 基于Agent的扫描
  • 支持平台有限

漏洞基本概念

CVSS(Common Vulnerability Scoring System)

  • 通用漏洞评分系统——工业标准
  • 描述安全漏洞严重程度的统一评分方案
  • Basic Metric:基础的恒定不变的弱点权重
  • Temporal Metric:依赖时间因素的弱点权重
  • Enviromental Metric:利用弱点的环境要求和实施难度的权重
  • CVSS是安全内容自动化协议(SCAP)的一部分
  • 通常CVSS与CVE一同由美国国家漏洞库(NVD)发布并保持数据的更新
  • 分值范围:0 —— 10
  • 不同机构按CVSS分值定义威胁的中、高、低威胁级别
  • CVSS体现弱点的风险,威胁级别(severity)表示弱点风险对企业的影响程度
  • CVSS分值是工业标准,但威胁级别不是

CVE( Common Vulnerabilities and Exposures )

  • 已公开的信息安全漏洞字典,统一的漏洞编号标准
  • MITRE公司负责维护(非盈利机构)
  • 扫描器的大部分扫描项都对应一个CVE编号
  • 实现不同厂商之间信息交换的统一标准
  • CVE发布流程 : 发现漏洞-> CAN负责指定CVE ID->发布到CVE List —— CVE-2008-4250
  • MITRE负责对内容进行编辑维护

微软的Vulnerability Reference

  • MS 微软漏洞
  • MSKB 微软漏洞补丁

OVAL(Open Vulnerability and Assessment Language)

  • 描述漏洞检测方法的机器可识别语言
  • 详细的描述漏洞检测的技术细节,可导入自动化检测工具中实施漏洞检测工作
  • OVAL使用XML语言描述,包含了严密的语法逻辑

CCE

  • 描述软件配置缺陷的一种标准化格式
  • 在信息安全风险评估中,配置缺陷的检测是一项重要内容,使用CCE可以让配置缺陷以标准的方式 展现出来,便于配置缺陷评估的可量化操作。

CPE(Common Product Enumeration)

  • 信息技术产品、系统、软件包的结构化命名规范,分类命名

CWE(Common Weakness Enumeration)

  • 常见漏洞类型的字典,描述不同类型漏洞的特征(访问控制、信息泄露、拒绝服务)

Security Content Automation Protocol (SCAP)

  • SCAP 是一个集合了多种安全标准框架
  • 六个元素:CVE、OVAL、CCE、CPE、 CVSS、XCCDF
  • 目的是以标准的方法展示和操作安全数据
  • 由NIST负责维护
  • SCAP主要解决三个问题
  • 实现高层政策法规等到底层实施的落地(如FISMA,ISO27000系列)
  • 将信息安全所涉及的各个要素标准化(如统一漏洞的命名及严重性度量)
  • 将复杂的系统配置核查工作自动化
  • SCAP是当前美国比较成熟的一套信息安全评估标准体系,其标准化、自动化的思想对信息安 全行业产生了深远的影响。

NVD(National Vulnerability Database)

  • 美国政府的漏洞管理标准数据
  • 完全基于SCAP框架
  • 实现自动化漏洞管理、安全测量、合规要求
  • 包含以下库 :
    安全检查列表
    软件安全漏洞
    配置错误
    产品名称
    影响度量

漏洞管理

  • 周期性扫描跟踪漏洞
  • 高危漏洞优先处理
  • 扫描注意事项 :对正常服务的影响
  • 漏洞管理三要素 : 准确性 时间 资源

扫描结果确认

  • 目标系统版本
  • 补丁是否安装
  • 是否可被入侵
  • 有时很难说什么才是准确的扫描结果
  • 应综合的看待漏洞威胁

OPENVAS

Openvas 是Nessus项目分支,用于管理目标系统的漏洞,它免费开源,Kali默认安装,但未配置和启动(所以相当于没安装)
它的总体结构:

OpenVAS Manager

  • 控制scanner和其他manager的中心组件
  • 控制中心数据库,保存用户配置及扫描结果
  • 客户端使用基于XML的无状态OMP协议与其通信
  • 集中排序筛选,使客户端获得一致展现

OpenVAS Scanner

  • 具体执行Network Vulnerability Tests (NVTs)
  • NVTs 每天通过 Feed 更新
  • 受 Manager 控制

OSP Scanner

  • 可以统一管理多个scanner
  • 将一组 scanner 作为一个对象交给manager管理

Greenbone Security Assistant (GSA)

  • 提供 Web service

OpenVAS CLI

  • omp 命令行工具,可实现批处理控制 manager

安装

  • 初始化安装
    1
    openvas-setup
  • 检查安装结果
    1
    openvas-check-setup 	#如果有错误,显示了fix,请重新执行上面的操纵
  • 查看当前账号
    1
    openvasmd --list-users
  • 修改账号密码
    1
    openvasmd --user=admin --new-password=Passw0rd
  • 升级
    1
    openvas-feed-update

使用

启动服务:

1
openvas-start

很常见的一个错误如下:

猜测是没有正常关闭服务,若出现,可使用openvas-setup修复,启动成功后:

3个端口都监听才是正常的,第一个是manager端口,msf里面命令行就是连接此端口,第三个是web界面端口。
打开页面:

主要使用这两项配置,其他的自己摸索:

配置目标:
选择target后,如图:1为添加目标,2为对已有的目标执行删除,编辑,复制,下载操作:

使用添加,出现下图:

键入目标名称,主机可以直接输入也可以从文件读取,要扫描的端口有几种配置,也可以自定义,存活测试也有很多种方法,自己选择,然后就配置完成了。
扫描策略:
这是默认存在的:

依然是选择新建,然后点击小扳手进行配置:对特定的目标,选择合适的NVTs即可:

如下图可以看到两个地方都出现了水平箭头和斜向上箭头,代表更新NVT后是策略也跟着更新还是保持原有的,

下面部分是扫描器设置:

新建任务:
如图,添加扫描任务,指定要扫描的目标,指定扫描策略,设置扫描线程,然后创建并点击开始按钮:

查看结果:
扫描完成点result查看结果:

1:导出结果,有多种格式可选
2:判断的准确度
3:威胁等级
4:漏洞名称
5:。。。突然发现数学不过关,,,,假比是应用端口呗
6:可以对漏洞做些操作,例如写备注和修改结果

CATALOG
  1. 1. 发现漏洞
  2. 2. 从信息的维度定义漏洞管理
  3. 3. 弱点扫描类型
  4. 4. 漏洞基本概念
    1. 4.1. CVSS(Common Vulnerability Scoring System)
    2. 4.2. CVE( Common Vulnerabilities and Exposures )
    3. 4.3. 微软的Vulnerability Reference
    4. 4.4. OVAL(Open Vulnerability and Assessment Language)
    5. 4.5. CCE
    6. 4.6. CPE(Common Product Enumeration)
    7. 4.7. CWE(Common Weakness Enumeration)
    8. 4.8. Security Content Automation Protocol (SCAP)
    9. 4.9. NVD(National Vulnerability Database)
  5. 5. 漏洞管理
  6. 6. 扫描结果确认
  7. 7. OPENVAS
    1. 7.1. OpenVAS Manager
    2. 7.2. OpenVAS Scanner
    3. 7.3. OSP Scanner
    4. 7.4. Greenbone Security Assistant (GSA)
    5. 7.5. OpenVAS CLI
    6. 7.6. 安装
    7. 7.7. 使用