网络安全风险扫描原理及工具使用

news2024/9/22 9:45:39

课程目标

1.熟悉常见网络安全风险扫描工具

2.了解网络安全风险扫描原理

3.掌握扫描工具使用方法

为什么要做网络安全风险扫描?

什么是网络安全风险扫描?

通过一定的技术手段发现系统和软件存在的安全漏洞、弱口令

网络安全风险扫描的目的:

网络安全风险扫描是一种主动的防范措施,可以及时有效发现网络安全漏洞、弱口令;

在攻击发生之前进行防范,做到防患于未然;

保证业务顺利的开展,维护企业、行业、国家信息资产安全。

网络安全风险扫描的扫描方式&范围

扫描方式:

自动化扫描:不需要投入过多精力,节省人力成本

手动评估:耗时、不全面、技术要求高。

扫描范围包括了:物联网设备、工控系统、网络应用、数据库、云平台软件、企业应用、web组件、服务器、网络设备、网络安全设备。

安全风险分类:

1.弱口令

2.基础网络、操作系统、应用程序、数据库 可通过系统扫描器进行扫描

3.web服务、第三方web组件、web应用 可通过WEB扫描器进行扫描。

安全风险扫描结果示例

系统漏洞包括:

1.Mircorsoft远程桌面协议RDP远程代码可执行漏洞(MS12-020)

2.部分SMB用户存在薄弱口令

3.Oracle tnslsnr没有设置口令

4.目标主机没有安装MS04-011/KB835732补丁

5.Microsoft Windows NT IIS MDAC RDS远程命令执行漏洞

6.IIS 5.0/WebDAV远程缓冲区溢出

web漏洞

1.检测到目标服务器启用了TRACE方法

2.检测到目标主机可能存在缓慢的http拒绝服务攻击

3.检测到目标URL存在链接注入漏洞

4.检测出目标web应用表单存在口令猜测攻击

5.检测到目标URL存在框架注入漏洞

6.检测到目标URL存在存储型跨站脚本漏洞

7.检测到目标URL存在SQL注入漏洞

常见系统漏洞扫描产品

系统扫描器

1.绿盟科技远程安全评估系统(RSAS)

2.迪普慧眼漏洞扫描器

3.启明星辰天境漏洞扫描器

4.四叶草感洞网络资产漏洞风险监测平台

5.网神SecVSS3600漏洞扫描系统

6.Nessus

7.OpenVAS

WEB扫描器

1.绿盟科技WEB应用漏洞扫描系统(WVSS)

2.安恒明鉴

3.知道创宇Websaber

4.安域领创WebRavor

5.AppScan

6.Acunetix WVS

7.BURPSUITE

安全风险扫描原理

工作机制

存活判断

判断目标主机是否存活/在线

  • ARP
  • ICMP ping扫描(ping)
  • TCP ping端口(TCP SYN)
  • UDP ping端口

取消主机存活判断:

  • 扫描器会跳过主机存活判断过程,默认所有主机存活
  • 随后按照端口扫描策略,开展后续扫描流程
  • 会极大增加扫描时间(扫描量更大了),但是会提高扫描精度(存活判断动作可能存在漏报)

存活判断-实操

存活判断原理
  • ARP判断原理:向目标主机发送广播包,访问MAC地址,如目标主机返回一个回复包,包含MAC信息,则认为该主机存活。
  • ICMP ping判断原理:发送ICMP回送请求消息给目的主机,如果在一定时间内收到应答,则认为主机可达。
  • TCP ping判断原理:向目标主机发生TCP协议 SYN/ACK/FIN等数据报文,根据目标主机返回到数据包来判断是否存活,需填写对应的端口。
  • UDP ping判断原理:发生UDP协议报文,对于关闭的UDP端口,目标主机会返回ICMP Port Unreach错误

端口扫描

在存活判断后:对于存活主机,将探测目标主机上开启了哪些端口。

端口扫描常用方式:

  • TCP CONNECT:稳定准确,会在留下连接记录,可以获取服务Bannner信息(常用)
  • TCP SYN:TCP半连接,可能误判,不会留下连接记录,无法获取Banner。
  • UDP:通过超时进行判断,耗时长,不可靠。

端口扫描-实操

TCP CONNECT:

  • 对于开放的端口会建立完整的TCP三次握手;
  • 稳定准确,会留下连接记录,可以获取服务Banner信息。

TCP SYN:

  • 对于开放的端口,建立TCP半连接(不向服务器发送第三步ACK确认)
  • 可能误判,不会留下连接记录,无法获取Banner。

系统及服务识别

基于Banner信息进行服务识别:
  • 与目标端口建立TCP连接,接收返回的“WelcomeBanner”信息;
  • 将接收到的Banner与服务指纹数据库中的数据进行对比;
  • 查找对应的应用程序名字与版本信息;
  • 如果无法准确匹配目标应用程序版本,将尝试发生其他的探测包;
  • 如果反复探测都无法得出具体应用,那么打印出应用返回报文。
基于协议栈行为进行系统识别:
  • 分别挑选一个open和closed的端口
  • 向其发送精心设计的TCP/UDP/ICMP协议数据包;
  • 综合分析目标主机返回到数据包,与系统指纹数据库进行对比;
  • 返回匹配的系统类型,如果无法匹配,以概率形式列举出可能的系统。

安全漏洞识别技术

漏洞扫描的原理基本可以分为三种:

  • 原理扫描

        与目标根据漏洞原理,构造无害poc进行验证;

        根据服务器响应,判断漏洞是否存在;

        真实验证漏洞,误报率低。

  • 版本扫描

        基于端口Banner识别目标应用版本信息;

        基于应用版本信息,返回漏洞清单;

        Banner可能失真,误报率高。

  • 本地扫描:

        登陆到目标主机,本地读取应用版本;

        基于应用版本信息,返回漏洞清单;

        应用版本真实,但是仍有误报可能性。

原理扫描的检测机制

检查机制
  • 原理扫描每个漏洞有单独的检查插件;
  • 检查插件会构造漏洞利用数据包(特定无害行为);
  • 将数据包发送到目标主机,判断主机响应情况;
  • 如果返回数据符合预期结果(实现了此前构造的特殊动作),则报出该漏洞。
哪些漏洞属于这个分类?

互联网上公开了漏洞原理的漏洞;

公开了漏洞概念性证明(PoC,Proof of concept)的漏洞;

甚至是公开了漏洞利用脚本/工具(EXP,Exploit)的漏洞

为什么误报率低?

实际利用漏洞;

只有目标真实存在漏洞,才会返回特定的响应数据.

版本扫描的检测机制

检测机制

通过网络连接目标端口,获取Banner信息;

根据获取到的Banner信息,判断目标应用版本;

查询漏洞数据库,上报该应用版本相关的所有漏洞;

哪些漏洞属于这个分类?

未公开漏洞原理、PoC、EXP的漏洞;

常见漏洞类型包括:Apache、Tomcat、Nginx、Weblogic、Websphere、PHP、openssh、oracle、FTP、NTP、mysql等。

为什么误报率高?

仅通过Banner信息作为输入,上报所有相关漏洞;

Banner信息存在失真的可能。

为什么误报率高,还要用这种方式扫描?

这些漏洞都没有公开漏洞原理和利用方式;

没办法使用原理扫描的方式验证;

为了降低漏报率,牺牲误报率。

本地扫描检测机制

检测机制:

将远程登录账号密码(SMB/SSH等)配置到扫描器中;

扫描时通过预置方式登录目标主机;

本地执行命令,获取应用版本信息;

查询漏洞数据库,上报应用版本相关的所有漏洞。

哪些漏洞属于这个分类;

所有版本扫描漏洞;

不监听网络端口的本地应用漏洞;(Adobe Flash Player、FireFox、IE等)

操作系统本地提取漏洞。

为什么误报率比版本扫描低?

本地命令执行获取的应用版本号更精准、更详细;

本地命令执行可以获取配置和补丁信息,信息量更多。

那都用本地扫描吧?

需要预置登录账号及密码,工作量大

出于保密要求,无法提供账号密码信息。

网络安全风险扫描实践

实现资产目标和扫描策略分级机制,重点目标条件勤扫。多种扫描器交叉扫描,加强扫描结果比对,验证差异结果。做好安全漏洞全量扫描。

分析漏洞扫描结果,评估关键信息,检索加固方案。针对实际网络环境、业务系统情况,选择合适的加固方法。做到安全漏洞改的快。

扫描准备:

  • 同管理员技术交流,沟通扫描原理、网络环境、接入点、风险告知,如占用带宽、触发告警、造成宕机等。
  • 确定扫描范围、时间、方案(按系统扫描漏洞、按网段探测漏洞、全端口扫描等)

扫描实施:

  • 完成扫描环境与网络配置,接入系统中扫描需避免IP地址冲突,遇网络不通需进行设备及网络故障排除
  • 扫描任务下发,实时观察扫描任务

分析报告:

  • 输出报告,整理系统漏洞数据,如常见高危漏洞、高风险主机等。
  • 处理异常扫描任务。

扫描准备
明确扫描范围,收集目标系统资产信息
  • 已知系统漏洞扫描:IP地址、承载的应用、网络拓扑;
  • 按网段存活扫描:涉及到网段;
  • 端口服务探测扫描:涉及到资产,需检查的端口清单。

明确扫描时间及粒度,重点系统勤扫细扫、全量系统常扫。持续开展扫描,缩短漏洞存活周期
  • 系统重要性:依靠资产信息库中定级备案等级、承载业务等信息,对全量系统定级,明确各系统重要性,分值越高,重要性越高;
  • 扫描时间:根据系统承载业务、服务器性能等因素,制定扫描时间;
  • 扫描粒读:重点系统扫描不间断,重点系统以为的全量系统定期扫描,及时分析总结并通报。

扫描准备

收集安全防护产品配备情况

当前已使用的防火墙、安全产品及使用情况,策略情况等(用于确认开展漏洞扫描过程中石化存在被阻断的情况)

收集以往漏洞扫描信息

是否进行过漏洞扫描、是否因扫描而造成设备异常。

其他信息

业务系统的重要程度、业务繁忙时期(重要资产夜间扫描)、网段扫描是否支持长时间挂扫。

扫描设备及接入环境准备

确定漏洞扫描工具;漏洞库升级到最新、证书有效、设备/工具正常使用。确定网络接入点方式和位置,以及电源的接入情况。

扫描实施
  • 依据前期收集到网络拓扑及安全防护信息,安全不同类型的扫描器进行扫描

        接入4A点系统或放开对扫描器地址限制的系统,可利用服务器式扫描器定期扫描

        对于部分未接入4A点系统或存在安全防护的系统,利用便携式扫描器,接入系统中扫描

  • 对于未进行过漏洞扫描的设备或重要系统,可采取以下方式降低扫描风险:

        单个IP逐个扫描、主备机分开扫描;

        同一设备不同IP地址(如浮动地址)分开扫描。

  • 根据前期收集到资产信息,排除因扫描出现异常的设备,以及扫描存在较高风险的设备。

        对于大流量承受能力差设备,避免全端口扫描;扫描器报文造成异常,应屏蔽相关报文;

        确认无法扫描的设备,可登录查看组件版本信息,及时升级打补丁。

扫描实施-实操

启明天境

新建任务-->存活探测-->端口扫描-->性能参数-->口令猜测-->授权扫描-->数据库参数-->查看报表

绿盟WVSS

新建任务-->访问策略-->检测策略-->爬行策略

确认扫描目标

确认扫描范围

--按域名扫描

--扫描当前目录与子目录

--只扫描任务目标链接

并发线程数

--数值越大,扫描速度越快;

--数值的调整要考虑网络带宽以及服务器的处理能力确认扫描范围。

目录猜测范围

--值越大,猜测的范围越广;

目录猜测深度

--敏感目录或文件猜测的链接深度

备份文件检查类型

--检查哪些文件存在备份文件

目录深度

--扫描中爬虫追溯到目录层次深度;

链接总数

--限制扫描链接总个数

扫描异常排查

扫描收尾

  • 扫描结束后需对系统运行状态、业务运行状态进行确认,如有异常按照应急预案处置
  • 服务器式扫描器注意着扫描窗口关闭前停止扫描任务,避免对正常业务造成影响。
  • 便携式扫描需关闭扫描器,断开网线,恢复扫描前的状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2042156.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【AI 绘画】web_ui 搭建(基于gradio)

AI 绘画- web_ui 搭建(基于gradio) 1. 内容介绍 Gradio的优势在于易用性,代码结构相比Streamlit简单,只需简单定义输入和输出接口即可快速构建简单的交互页面,更轻松部署模型。适合场景相对简单,想要快速部署应用的开发者。便于分享:gradio可以在启动应用时设置share=…

QT文件操作实战

QT文件操作实战 页面布局如下 读取文件:文件→界面文本框 采用“浏览”按钮的槽函数,编写的代码如下 void Widget::on_pushButton_clicked() {//读取txt文件,获取要打开的文件名,并将文件名(包含)填入lineEdit中// QString fileName = QFileDialog::getOpenFileName(th…

云HIS平台源码,云医院管理信息系统源码,云HIS医疗卫生管理系统源码

云医院管理信息系统源码,云HIS医疗卫生管理系统源码,医疗云HIS系统源码,自主版权二级医院应用案例 云HIS平台采用SaaS服务模式,软件使用者无需购置额外硬件设备、软件许可证及安装和维护软件系统,通过互联网浏览器在任…

YS9082HP量产工具,支持N38B开卡(ID:89D3AC32C204),解决YS9082HP N38B开卡到87%报错,状态8817,Fail:写表失败

收的固态硬盘,主控是YS9082HP,颗粒是Intel的N38B: 从网上找了个YS9082HP_MPToolV8.00.00.01.025_HPS2704M_release_N38B版本试试,倒是能识别颗粒,到87%就报错,Fail:写表失败,错误状态是8817&…

山东易注册网络科技有限公司:合伙人模式的机遇与创新

在互联网高速发展的今天,合伙人模式成为网络运营的新趋势。山东易注册网络科技有限公司以其创新的合伙人模式,为用户带来了前所未有的机遇。 加入山东易注册的合伙人,可以享受到独立搭建系统和独立服务器的权益。用户可以打造自己的独立域名和…

怎样用python函数画图像

打开Python的shell界面,如图所示。(注意我们需要已经安装了matplotlib库包)。 输入以下代码,导入我们用到的函数库。 >>> import numpy as np >>> import matplotlib.pyplot as plt 产生我们要画的的函数的数据…

数据集的简单制作和使用

数据集的简单制作和使用 参考资料:Labelme分割标注软件使用 使用labelme软件对数据集进行分割 每张图片获得一个json文件 我们看看其中一个文件,内容包含每个点在图片中的位置 我们可以自己写一个脚本(或使用别人的)将上述json…

突破传统看车局限,3DCAT实时云渲染为东风日产奇骏赋能

在当今数字化飞速发展的时代,汽车行业的营销也面临着诸多变革与挑战。线下展示由于受到场地空间的限制,往往无法全面展示所有车型,且建设成本高昂。而一些销售门店可能因位置偏僻等因素,导致客户上门看车、试驾的邀约变得困难重重…

哈工大李治军老师OS课程笔记(4)——内存管理

一 内存使用与分段(实验六) 内存是如何用起来的? 内存使用:将程序放在内存中,PC指向开始地址 重定位:修改程序中的地址(是相对地址) 什么时候完成重定位? 编译时加基址…

航空航天之归零报告

归零报告 1.技术归零报告1.1技术归零报告模板1.2撰写技术归零报告注意事项 2.管理归零报告2.1管理归零报告模板2.2撰写管理归零报告注意事项 归零报告通常指的是将项目、任务或系统的状态重置为初始状态,进行数据清零、状态复位或问题总结的报告文档。 在航空航天、…

spring揭秘02-springbean生命周期(实例化过程)

文章目录 【README】【1】spring构建应用系统分2个阶段【1.1】spring容器启动阶段【1.2】springbean实例化阶段 【2】springbean生命周期概述【3】springbean生命周期过程【3.1】**第1步-实例化bean对象**【3.2】**第2步-设置对象属性**【3.3】 第3步-检查Aware接口并设置相关依…

深入理解计算机系统 CSAPP 实验lab:Attack Lab

资源下载地址:CS:APP3e, Bryant and OHallaron CTARGET objdump -d ctarget >ctarget.txt 反汇编我们下载的ctarget打开看看 touch1: 我们期望的是getbuf执行完之后直接跳到touch1,利用缓存区溢出达到找个目的. 汇编显示call Gets之前 sub $0x28,%rsp,栈指针减小了 0x28 …

JMeter高效管理测试数据-参数化

文章目录 1.什么是参数化2.定义变量3.CSV数据文件设置 1.什么是参数化 在JMeter中,参数化是一种常用的技术,用于使测试场景更加灵活和动态。通过参数化,你可以让JMeter在每次请求中使用不同的值,这在模拟真实用户行为或测试不同输…

【mybatis-plus@Select注解联表查询实现分页】

前言 MybatisPlus对于单表的操作很方便,但是多表查询等复杂的操作还是需要在xml中写sql语句来完成。那么,在MybatisPlus中如何实现多表联查、分页查询呢。 一、数据库表设计 我们模拟一个购物的情况,在数据库创建两个表,一个用户…

MeterSphere接口测试脚本断言

MeterSphere接口测试脚本断言 我们在接口自动化测试过程中,经常遇到无论我们传入什么数据信息,只要响应体报文中某个字段为不固定的特定信息(如:或1或2或3),就符合预期,流程就可以继续&#xf…

通过JPA映射数据库

在 JPA (Java Persistence API) 中,实体类通常通过一系列注解来配置,以便与数据库表进行映射,与Mybatis-plus在功能上,具有一定的相似性,都是持久化框架。 package com.plumcarefree.demo.entity.user; import javax.persistence.*; impor…

用Python爬取高德地图地铁站点数据——Python程序及详解

0. 准备工作 在使用以下Python程序爬取高德地图地铁站点数据前,需要先在“高德开放平台”(网站:高德开放平台 | 高德地图API)申请一个API Key。具体操作为:注册一个“高德开放平台”账号,找到右上角的控制…

ImportError: DLL load failed: 找不到指定的程序的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

mycat读写分离实现、企业架构MySQL读写分离

一、mycat读写分离实现 1. 添加一个新的虚拟主机,设置ip为10.1.1.60,主机名为mycat.yuanyu.zhangmin.关闭防火墙 SELinux NetworkManager 2. 上传jdk和mycat安装包 3. 解压并且添加到指定的位置 [rootmycat ~]# ls anaconda-ks.cfg frp initserver.sh jdk1.8.0_19…

24暑假算法刷题 | Day30 | 贪心算法 IV | LeetCode 452. 用最少数量的箭引爆气球,435. 无重叠区间,763. 划分字母区间

目录 452. 用最少数量的箭引爆气球题目描述题解 435. 无重叠区间题目描述题解 763. 划分字母区间题目描述题解 452. 用最少数量的箭引爆气球 点此跳转题目链接 题目描述 有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points ,其中…