《Kali渗透基础》07. 弱点扫描(一)
@
本系列侧重方法论,各工具只是实现目标的载体。
命令与工具只做简单介绍,其使用另见《安全工具录》。
本文以 kali-linux-2023.2-vmware-amd64 为例。
1:漏洞发现
如果手工的去发现漏洞:
- 基于端口服务扫描结果、版本信息等(速度慢)
- 搜索已公开的漏洞数据库(数量大)
所以需要使用弱点扫描器实现漏洞管理。
知名的弱点扫描器:
- OpenVAS / GVM
- Nessus
- Nexpose
对于手工的发现漏洞,包括但不限于以下方式:
- Exploit-DB
- searchsploit
- Nmap
1.1:Exploit-DB
Exploit-DB(www.exploit-db.com)是一个漏洞利用数据库平台。包含大量漏洞利用代码、Shellcode、漏洞报告和技术文章的在线数据库。
1.2:searchsploit
SearchSploit 用于搜索和定位已知的漏洞及相关利用代码。
漏洞信息保存在 /usr/share/exploitdb/exploits/ 目录中。
基本语法:
searchsploit 选项
部分选项:
参数 | 说明 |
---|---|
服务名 |
查看与服务相关的漏洞。 |
示例01:
searchsploit tomcat
1.3:nmap
基本语法:
nmap 选项
部分选项:
参数 | 说明 |
---|---|
--script=<Lua scripts> |
Lua scripts is a comma separated list of directories, script-files or script-categories |
--script-args=<n1=v1,[n2=v2,...]> |
provide arguments to scripts |
nmap 提供了多种脚本。但不是所有脚本都是漏洞扫描脚本。
所有脚本在 /usr/share/nmap/scripts/script.db 文件都有记录。
大致搜索与漏洞扫描相关的脚本:
grep vuln /usr/share/nmap/scripts/script.db | cut -d "\"" -f 2
部分脚本:
参数 | 说明 |
---|---|
smb-vuln-ms10-061.nse | Stuxnet(震网)蠕虫利用的4个漏洞之一。 Print Spooler 权限不当,打印请求可在系统目录可创建文件、执行任意代码。 LANMAN API枚举共享打印机. |
smb-enum-shares.nse | 共享枚举。 身份认证参数:smbuser、smbpassword。 |
示例01:枚举发现目标的共享设备。
nmap -p 445 --script=smb-enum-shares.nse --script-args=smbuser=admin,smbpassword=pass 1.1.1.1
2:漏洞管理
从信息的维度定义漏洞管理:
信息收集
- 扫描发现 IP、OS、服务、配置、漏洞等
- 能力需求:定义扫描方式、内容和目标
信息管理
- 格式化信息,并进行筛选、分组、定义优先级
- 能力需求:资产分组、指定所有者、向所有者报告漏洞
信息输出
- 向不同层级的人群展示足够的信息量
- 能力需求:生成报告、导出数据、SIEM 集成
SIEM(Security Information and Event Management),安全信息与事件管理系统,结合了安全信息管理(SIM)和安全事件管理(SEM)的功能,旨在帮助组织监视、识别和应对网络和信息系统中的安全事件和威胁。
3:弱点扫描类型
主动扫描
- 有身份验证
- 无身份验证
被动扫描
- 镜像端口抓包
- 其他来源输入
基于 Agent 的扫描
- 需要先在目标上安装相应软件
- 支持平台有限
4:漏洞基本概念
4.1:CVSS
CVSS(Common Vulnerability Scoring System),通用漏洞评分系统,描述安全漏洞严重程度的统一评分方案。
是安全内容自动化协议(SCAP)的一部分,也是工业标准。通常 CVSS 与 CVE 一同由美国国家漏洞库(NVD)发布并保持数据的更新。
- 评分参考:
- Basic Metric:基础的恒定不变的弱点权重
- Temporal Metric:依赖时间因素的弱点权重
- Enviromental Metric:利用弱点的环境要求和实施难度的权重
分值范围:0 - 10
不同机构按 CVSS 分值定义漏洞威胁级别(中、高、低)
CVSS 体现弱点的风险,威胁级别(severity)表示弱点风险对企业的影响程度
CVSS 分值是工业标准,但威胁级别不是
4.2:CVE
CVE(Common Vulnerabilities and Exposures)是用于标识和跟踪计算机系统中公开的安全漏洞的字典。以唯一的标识符(称为 CVE 编号)来标识每个已知的漏洞。
- MITRE 公司负责维护(非盈利机构)
- 扫描器的大部分扫描项都对应一个 CVE 编号
- 实现不同厂商之间信息交换的统一标准
CVE 发布流程:
- 发现漏洞
- CAN 负责指定 CVE ID
- 发布到 CVE List。(例如:CVE-2008-4250)
- MITRE 负责对内容进行编辑维护
4.3:OVAL
OVAL(Open Vulnerability and Assessment Language),描述漏洞检测方法的机器可识别语言。
- 详细的描述漏洞检测的技术细节,可导入自动化检测工具中实施漏洞检测工作
- OVAL 使用 XML 语言描述,包含了严密的语法逻辑
4.4:CCE
CCE(Common Configuration Enumeration),用于标准化和描述系统配置的框架和规范。
- 描述软件配置缺陷的一种标准化格式
- 在信息安全风险评估中,配置缺陷的检测是一项重要内容,使用 CCE 可以让配置缺陷以标准的方式展现出来,便于配置缺陷评估的可量化操作。
4.5:CPE
CPE(Common Product Enumeration),用于标准化描述计算机系统、操作系统、应用程序和硬件设备等信息的命名规范和分类。
4.6:CWE
CWE(Common Weakness Enumeration),用于标准化描述常见软件和系统弱点的分类。
常见漏洞类型的字典,描述不同类型漏洞的特征(访问控制、信息泄露、拒绝服务等)。
4.7:SCAP
SCAP(Security Content Automation Protocol),安全内容自动化协议,旨在帮助组织自动化执行安全管理任务和操作。
- SCAP 是一个集合了多种安全标准框架
- 六个元素:CVE、OVAL、CCE、CPE、 CVSS、XCCDF
- 目的是以标准的方法展示和操作安全数据
- 由 NIST 负责维护
NIST(National Institute of Standards and Technology,美国国家漏洞数据库)
SCAP 主要解决三个问题:
- 实现高层政策法规等到底层实施的落地(如 FISMA,ISO27000 系列)
- 将信息安全所涉及的各个要素标准化(如统一漏洞的命名及严重性度量)
- 将复杂的系统配置核查工作自动化
SCAP 是美国比较成熟的一套信息安全评估标准体系,其标准化、自动化的思想对信息安全行业产生了深远的影响。
4.8:NVD
NVD(National Vulnerability Database)是一个全球性的公开安全漏洞数据库。
- 美国政府的漏洞管理标准数据
- 完全基于 SCAP 框架
- 实现自动化漏洞管理、安全测量、合规要求
- 包含以下内容:
- 安全检查列表
- 软件安全漏洞
- 配置错误
- 产品名称
- 影响度量
5:漏洞管理
漏洞管理的要点如下:
- 周期性扫描跟踪漏洞
- 高危漏洞优先处理
- 扫描注意事项
- 漏洞管理三要素(准确性、时间、资源)
6:扫描结果分析
- 要根据目标系统版本进行筛选。
- 补丁是否安装。
- 是否可被入侵。
- False positive(误报)
- False negative(漏报)
有时很难说什么才是准确的扫描结果。应该综合的看待漏洞威胁。
阴生古苔绿,色染秋烟碧。
——《南轩松》(唐)李白
《Kali渗透基础》07. 弱点扫描(一)的更多相关文章
- kali渗透-基础篇
渗透之meterpreter 模拟场景:小明是我室友,整天游戏人生,浑浑噩噩,前途迷茫,每次上课交作业都要看我的,于是我开启了apche服务器,给他下载作业(别问我为什么不用QQ传,因为要装逼!),他 ...
- Kali Linux渗透基础知识整理(二)漏洞扫描
Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网 ...
- Kali Linux渗透基础知识整理(四):维持访问
Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...
- kali渗透测试之缓冲区溢出实例-windows,POP3,SLmail
kali渗透测试之缓冲区溢出实例-windows,POP3,SLmail 相关链接:https://www.bbsmax.com/A/xl569l20Jr/ http://4hou.win/wordp ...
- kali一些基础工具
目录 netcat netcat https://blog.csdn.net/fageweiketang/article/details/82833193 网络工具当中的瑞士军刀 -nc指令,nc可以 ...
- kali渗透综合靶机(七)--Super-Mario-Host靶机
kali渗透综合靶机(七)--Super-Mario-Host靶机 靶机百度云下载 链接:https://pan.baidu.com/s/13l1FUgJjXArfoTOfcmPsbA 提取码:a8 ...
- Metasploit Framework(5)弱点扫描
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 当我们发现了目标机器开放的端口,开启的服务等等之后 就 ...
- kali渗透综合靶机(一)--Lazysysadmin靶机
kali渗透综合靶机(一)--Lazysysadmin靶机 Lazysysadmin靶机百度云下载链接:https://pan.baidu.com/s/1pTg38wf3oWQlKNUaT-s7qQ提 ...
- kali渗透综合靶机(十八)--FourAndSix2靶机
kali渗透综合靶机(十八)--FourAndSix2靶机 靶机下载地址:https://download.vulnhub.com/fourandsix/FourAndSix2.ova 一.主机发现 ...
- kali渗透综合靶机(十七)--HackInOS靶机
kali渗透综合靶机(十七)--HackInOS靶机 靶机下载地址:https://www.vulnhub.com/hackinos/HackInOS.ova 一.主机发现 1.netdiscover ...
随机推荐
- gitlab-runner 中的 Docker-in-Docker
笔者个人理解:gitlab-runner 安装后就是一个监听状态的 runner,而通过 gitlab-runner register 注册的"实例"其实只是预定义的配置节,当消息 ...
- OpenAI 官宣首个 ChatGPT iOS 应用
最近,OpenAI 宣布推出官方 iOS 应用,允许用户随时随地访问其高人气 AI 聊天机器人,此举也打破了近几个月内苹果 App Store 上充斥似是而非的山寨服务的窘境. 该应用程序是 Chat ...
- Experimental support for decorators is a feature that is subject to change in a future release. Set
错误提示Experimental support for decorators is a feature that is subject to change in a future release. ...
- 2023-05-29:给你一个由 n 个正整数组成的数组 nums 你可以对数组的任意元素执行任意次数的两类操作 如果元素是 偶数 ,除以 2 例如,如果数组是 [1,2,3,4] 那么你可以对最后一
七.设计算法,仅使用三次实数乘法即可完成复数 a+bi和c+di 相乘.算法需接收a.b.c和d 为输入,分别生成实部 ac-bd 和虚部ad+bc. 文心一言: 可以使用如下算法来计算复数 a+bi ...
- 发布自己的项目到Maven中央仓库中
注册账号和生成GPG生成密钥教程 主要看注册账号和生成GPG密匙部分就行了,出现问题可以先在这两个地方找 gpg加密发布jar包到maven中央仓库详细过程以及踩的坑_佛系猿秦大昊的博客-CSDN博客 ...
- 华为防火墙NAT技术
---我是陈小瓜,一个普通的路人,和大家一起交流学习,完善自己. 源NAT NAT-no-pat 安全策略写法: 源NAT,写安全策略,写转换前的私网IP,因为先匹配安全策略.再匹配NAT策略 NAT ...
- Java使用joml计算机图形学库,将3D坐标旋转正交投影转为2D坐标
最近遇到了一个困扰我许久的难题,现将解决方案分享出来 由于我们的项目侧重点在前端绘图,导致了前后端工作量不协调,我后端接口很快就能写完,而前端一个图要画好久,领导见状将前端的任务分到后端一部分用Jav ...
- 1.4 编写简易ShellCode弹窗
在前面的章节中相信读者已经学会了使用Metasploit工具生成自己的ShellCode代码片段了,本章将继续深入探索关于ShellCode的相关知识体系,ShellCode 通常是指一个原始的可执行 ...
- Spring MVC 前后台传递json格式数据 Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported
若使用默认的json转换器,则需要如下包: <mvc:annotation-driven /> 报错如下: Content type 'application/x-www-form-url ...
- Kotlin 常用语法糖记录
原文地址: Kotlin 常用语法糖记录 - Stars-One的杂货小窝 当使用 Kotlin 编程时,有一些常用的函数可以帮助我们简化代码并提高开发效率. 稍微列举下常用的方法 runCatchi ...