学习漏洞挖掘,
需要多阅读别人挖的漏洞;
学习代码审计,
同样也需要多看漏洞说明。
静态代码扫描工具(系统)不少,比较出名的可能有fortify、coverity...无论是公司购买或是网上论坛捡到的破解版,相比不少人都已经尝过fortify的鲜。其强大与误报不再做讨论,本文就fortify扫描出的漏洞进行学习说明,为想学习代码审计(尤其是java代码审计)的童鞋提供些许思路。
Fortify的扫描结果为英文,对于开发而言一般不成问题,但对于其他岗位查阅却不是很友好。例如:在Details中可以看到漏洞的细节(漏洞摘要、说明、示例)
如果对漏洞不了解或理解不到位,就可能造成漏洞修复存在再次成为漏洞的风险。上网查询Privacy Violation(隐私泄露)漏洞详情时,发现:
http://old.sebug.net/paper/books/vulncat/java/privacy_violation.html
完全是按照fortify软件中的内容进行翻译,访问上一级目录显示更多Java代码审计的漏洞说明:
http://old.sebug.net/paper/books/vulncat/java/
再往上一级路径,显示更多语言中的漏洞:
总是上外网且在该网站中搜索并不是很方便,于是乎,将这些漏洞下载到本地查阅便成为当前的需求。
系统环境:win10
语言环境:python 2.7.13
所需模块:re, urllib2
使用urllib2库,实现文件下载:
print 'downloading with urllib2'url = 'http://www.xxx.com/demo.zip'f = urllib2.urlopen(url)data = f.read()with open('demo.zip', 'wb') as code: code.write(data) |
---|
将http://old.sebug.net/paper/books/vulncat/作为下载的根目录,
先遍历获取当前的文件夹名:均在标签<ahref="APIA.html">APIA.html</a> 中
在获取第一级文件夹名之后(依据是否有/判断,若有则为文件夹,反之则为html文件),继续获取文件名称,删除存在../的URL地址即每个文件夹下的第一行,并进行下载:
访问目标URL并获取一级目录名;
访问一级目录名,通过正则匹配获取文件名;
效果如下:
效果如下:
效果如下:
从fortify漏洞.html中提取出想要的字段入库,将其加入漏洞系统中,便可实现便捷的任意查询。仍旧以PrivacyViolation(隐私泄露)为例:
点击查看漏洞说明详情:
最后附上漏洞说明打包:链接:
https://pan.baidu.com/s/14rJCuAWnyLniWYJTXiKjyw密码: gsq3
解压缩密码:我的安全视界观
若有共鸣或其他想法与经验交流,请不吝赐教~ |
---|
往期回顾
【1】【安全测试】Android APP安全测试之敏感信息本地存储
【2】【渗透技巧】搜集SRC信息中的“技术活儿”
【3】【渗透技巧】浅谈常规渗透瓶颈,实例发散思维突破
【4】【漏洞赏析】安全运维那些洞
【5】【漏洞赏析】安全业务那些洞
【6】【应急响应】redis未授权访问致远程植入挖矿脚本(防御篇)
【7】【应急响应】redis未授权访问致远程植入挖矿脚本(攻击篇)
【8】【应急响应】redis未授权访问致远程植入挖矿脚本(完结篇)
【9】【企业安全】企业安全建设需求
【10】【企业安全】企业安全威胁简述
【11】【企业安全】企业安全架构建设
【12】【企业安全】企业安全项目-测试环境内网化
【13】【企业安全】企业安全项目-Github信息泄露专项
【14】【企业安全】企业安全项目-短信验证码安全
【15】【企业安全】企业安全项目-前端绕过专项整改
【16】【一起玩蛇】python武器库的打开方式
【17】【一起玩蛇】那些漏洞扫描器中的资产处理
【18】【一起玩蛇】python代码审计中的那些器I
【19】【挖洞技巧】那个简单的威胁情报
【20】【一起玩蛇】Nodejs代码审计中的器
【21】【一起玩蛇】python代码审计中的那些器II
【22】【参会有感】C3安全峰会参后感
【23】【企业安全】甲方眼里的安全测试