漏洞发现-操作系统之漏洞探针类型利用修复
一、操作系统漏洞思维导图
相关名词解释:
CVSS(Common Vulnerability Scoring System,即“通用漏洞评分系统”)
- CVSS是安全内容自动化协议(SCAP)的一部分
- 通常CVSS与CVE一同由每个国家漏洞库(NVD)发布并保持数据的更新
- 分值范围:0-10
- 不同机构按CVSS分值定义威胁的中、高、低威胁级别
- CVSS体现弱点的风险,威胁级别(severity)表现弱点风险对企业的影响程度
- CVSS分值是工业标准,但威胁级别不是
CVE(Common Vulnerabilities & Exposures,即“通用漏洞披露”)
- 已公开的信息安全漏洞字典,统一的漏洞编号标准
- MITRE公司负责维护(非盈利机构)
- 扫描器的大部分扫描项都对应一个CVE编号
- 实现不同厂商之间信息交换的统一标准
- CVE发布流程
- 发现漏洞
- CAN负责指定CVE ID
- 发布到CVE List——CVE-2008-4250
exp:利用
poc:验证
二、探针-漏洞扫描工具演示
简要概述:
1.角色扮演:操作系统权限的获取会造成服务器上安全问题
人为发现操作系统探测比较麻烦,因此一般都是使用工具来探测。
2.漏扫工具:Goby,Nmap,Nessus,Openvas,Nexpose等
工具有些不支持操作系统linux
1、工具Goby
可以到官网下载,下载地址:https://gobies.org
这里使用忍者系统虚拟机里的。
优点:界面舒适,速度快。缺点:漏洞库不够强大
通过更换port可以选择扫描对应的端口:
填写IP地址,开启扫描
如:192.168.64.0/24
扫描结果:
2、工具Namp
nmap 默认nse插件(扫描常规漏洞)
语法:
- nmap --script=vuln 192.168.33.1
默认nse插件所在目录路径:
调用第三方库探针 加入拓展扫描模块:
链接:https://cnblogs.com/shwang/p/12623669.html
扫描:
默认扫描
nmap -script=vuln ip
3、工具Nessus
nessus漏洞库比较强大,所以推荐使用。
安装 nessus 执行命令的时候一定要管理员运行执行
说明文档:https://www.cnblogs.com/shwang/p/12623669.html
1、先进行登录
添加一个扫描网段:
直接默认配置,其他情况自行选择
扫描结果:
转载详细使用教程:
(33条消息) 渗透测试技术----工具使用(二)–Nessus工具下载及使用(安装在Kali上)_想走安全的小白的博客-CSDN博客
一、Nessus简单介绍
Nessus是全球使用人数最多的系统漏洞扫描与分析软件,这是一个免费、威力强大、更新频繁并简易使用的远端系统安全扫描程序,功能十分强大。
二、Nessus安装
下载软件包的时候一定要找一个网速很好并且稳定的地方,最好不要使用热点,这是前人之鉴。
(1):下载软件包
方法一
进入官网下载
https://www.tenable.com/downloads/nessus
方法二
链接:https://pan.baidu.com/s/1hErN9T_UEUXC2fL38zCmTg
提取码:74bs
(2):选择I agree
(3):将下载的软件包拖到Kali中
(4):安装Nessus
dpkg -i Nessus-8.5.1-debian6_amd64.deb
(5):启动Nessus
/etc/init.d/nessusd start
(6):查看Kali的IP
(7):在物理机上进行连接
https://kali的IP地址:8834
(8):获取激活码(邮箱一定写正确,否则收不到激活码)
或者输入这个网址查询激活码
http://www.tenable.com/products/nessus/nessus-plugins/obtain-an-activation-code
(9):输入激活码
(10):注册一个账号
(11):开始读条
(12):提示下载失败
(13):回到kali上输入下面这条命令
/opt/nessus/sbin/nessuscli update
开始下载插件
网速一定要好!网速一定要好!网速一定要好!重要的话说三遍!!!
然后开启漫长的等待
(14):重新安装Nessus
(15):重新启动Nessus
/etc/init.d/nessusd start
(16):又开始读条
第一次读条特别特别慢,请耐心等待。
(17):然后进入用户名密码进入Nessus,查看是否有插件
三、Nessus配置
1.常规设置介绍
四、Nessus使用
1.扫描Windows主机
选择好要扫描的内容及插件后,点击save,然后点击开始扫描
查看扫描结果
查看详情
2.扫描Linux主机
选择好要扫描的内容及插件后,点击save,然后点击开始扫描
查看扫描结果
查看详情
三、漏洞类型区分讲解
常见类型:
权限提升,缓冲器溢出,远程代码执行,未知Bug等
四、漏洞如何利用:
工具框架集成类,漏洞公布平台库类,复现文章参考等
0day交易网https://mrxn.net/share/0day-today.html
百度搜索漏洞编号:
搜索漏洞公布平台,寻找单点EXP
- https://www.cnvd.org.cn/
- https://www.seebug.org/
- https://fr.0day.today/
- https://www.exploit-db.com/
- https://packetstormsecurity.com/
利用工具框架搜索:
1.Metasploit
启动:
msfconsole
搜索漏洞关键字
search 12-020
开启利用:
use 刚刚搜索的漏洞名字
查看需要配置的:
show options
开始配置
set rhosts 目标ip
开启攻击:
效果:
2.Searchploit使用方法
.1searchsploit简介
Exploit Database(https://github.com/offensive-security/exploit-database)这是Offensive
Security(https://www.offensive-security.com/)赞助的一个项目。存储了大量的漏洞利用程序,可以帮助安全研究者和渗透测试工程师更好的进行安全测试工作,目前是世界上公开收集漏洞最全的数据库,该仓库每天都会更新,exploit-db提供searchsploit利用files.csv进行搜索离线漏洞库文件的位置。
下载
https://codeload.github.com/offensive-security/exploit-database/zip/master
忍者系统已经安装
教程链接:searchsploit使用攻略 - 简书 (jianshu.com)
使用实例
(1)查看帮助
searchsploit -h
(2)搜索漏洞关键字afd的Windows本地利用漏洞
searchsploit afd windows local
(3)搜索标题中包含oracle windows的漏洞
searchsploit -t oracle windows
(4)搜索漏洞号为39446的漏洞在文件的完整路径
searchsploit -p 39446
(5)排除dos以及PoC值的包含linux
kernel 3.2的漏洞
searchsploit linux kernel 3.2–exclude=“(PoC)|/dos/”
(6)查找mssql的漏洞
searchsploit mssql
(7)查找和window XP有关的漏洞
searchsploit /xp
(8)查找apple的漏洞
searchsploit apple
例如:直接搜索关键字
权限漏洞:
有时候攻击失败要配置操作系统
结果:
漏洞发现-WEB应用之漏洞探针类型利用修复
一、思维导图
二、站点判断
已知CMS:
常见的dedecms,discuz,wordpress等源码结构,这种般采用非框架类开发,但是也有少部分采用框架类开发,针对此类源码程序的安全检测,我们要利用公开的漏洞进行测试,如不存在可采用白盒代码审计自行挖掘。
1、搜索漏洞公布平台,寻找单点EXP:
- https://www.cnvd.org.cn/
- https://www.seebug.org/
- https://fr.0day.today/
- https://www.exploit-db.com/
- https://packetstormsecurity.com/
2、使用工具框架进行有针对性的扫描:
- CMSScan:综合类,一款适用于WordPress、Drupal、Joomla、vBulletin的安全扫描工具
- https://github.com/ajinabraham/CMSScan
- wpscan:WordPress扫描工具
- https://github.com/wpscanteam/wpscan
- kali系统,忍者系统自带
- 使用时需要在官方(https://wpscan.com)申请一个账号(谷歌人机身份验证,必须FQ),登录后得到一个token,使用wpscan时需要带着这个token。
- 用法:wpscan --url --api-token
- joomscan:Joomla扫描工具
- https://github.com/OWASP/joomscan
- DrupalScan:Drupal扫描工具
- https://github.com/rverton/DrupalScan
其他:先识别CMS,然后网上搜索针对该CMS的漏扫工具
3、代码审计:
-
函数点挖掘
-
功能点挖掘
-
框架类挖掘
未知CMS
如常见的企业和个人内部程序源码,也可以是某CMS二次开发的源码结构,针对此类的程序源码测试思路:能识别二次开发就按已知CMS思路进行,不能确定二次开发的话可以采用常规综合类扫描工具或脚本进行探针,也可以采用人工探针(功能点,参数,盲猜),同样在有源码的情况下也可以进行代码审计自行挖掘。
开发框架
如常见的thinkphp,spring,flask等开发的源码程序,这种源码程序正常的安全测试思路:先获取对应的开发框架信息(名字,版本),通过公开的框架类安全问题进行测试,如不存在可采用白盒代码审计自行挖掘。
- 常见的PHP开发框架:Yii、Laravel、Thinkphp
- 常见的Java开发框架:Shiro、Struts、Spring、Maven
- 常见的Python开发框架:Flask、Django、Tornado
三、开发框架类源码渗透测试-咨讯-thinkphp
1、fofa搜索"index/login/login",寻找测试网站。
2、输入错误url,报错显示Thinkphp版本
3、使用专门工具对thinkphp进行漏洞挖掘,比如
- TPScan(jar文件):一键ThinkPHP漏洞检测工具(参考:https://www.jeeinn.com/2021/03/1493/)
- https://github.com/tangxiaofeng7/TPScan
- TPScan(基于Python3):一键ThinkPHP漏洞检测工具:
- https://github.com/Lucifer1993/TPscan
- thinkPHP5.x远程命令执行(getshell)测试工具
- 地址:https://pan.baidu.com/s/17UOif8XD_-V_IMVAHXVlcw 提取码: 31x2
或者通过网站搜索:
漏洞平台搜索:seebug,vulhub等
四、开发框架类源码渗透测试-咨讯-spring
复现过程:
https://vulhub.org/
1、使用Vulhub一键搭建漏洞测试靶场
2、按照步骤,启动环境,漏洞复现。
抓取流量包
修改流量包:
payload
username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("touch /tmp/success")]=&password=&repeatedPassword=
执行效果成功创建文件:
五、已知CMS非框架类测试–WordPress
1、环境准备:墨者靶场:
2、CMS识别:进入首页,根据底部版权信息得知,该网站CMS使用的是WordPress。
3.使用wpscan工具扫描漏洞是否有。
(1)wpscan官网注册并登录账号,得到token。
没有验证可能是没有开启代理,会导致无法注册
(2)kali下启动扫描:语法
$ wpscan --url 目标ip:端口 --api-token <mytoken>里面写入刚刚注册得到的token
<mytoken>里面写入刚刚注册得到的token
扫描结果如下:
wpscan-result.txt
发现一个插件漏洞:大概为数据库注入
上面还有一个漏洞
搜索漏洞:
构造链接
http://ip/wp-content/plugins/comment-rating/ck-processkarma.php?id=2&action=add&path=a
使用sqlmap工具注入:
六、已知CMS非框架类渗透测试-代码审计-qqyewu_php
网址:
**七、未知CMS非框架类渗透测试-**真实案例
外挂类网站
扫描目录:中发现存在以下特殊目录
通过在线网站识别cms为dedecms
下面地址还可以看到其版本号:
通过网站找寻漏洞:
得到一个下载地址:搜索关键字login,
发现地址
进去:
各种漏洞都不行
nmap扫描端口:
发现888端口,是宝塔的
通过各种方法找到了压缩包的文件源码:
发现有数据库的链接文件
尝试使用数据库软件进行链接:
出现连接不上:
原因是宝塔拒绝连接.
重新回去找文件:
再次尝试·连接,连接成功。