关于在真实环境下面,这个漏洞该如何发现
这里老师把它分成了三块第一类是
#已知cms
如常见的dedecms,discuz,wordpress等源码结构,这些都是网上比较知名的php源码的cms的名称,这是我们在国内常见的几个程序,论坛discuz,博客wordpress是很常见的;他们都有个特性,他们的源码是在网上可以下载到的,我们都可以去用他的源码去搭建网站,我称之为cms;他们使用网上公开的源码搭建的网站。
针对这种网站我们用什么方法进行检测,一般采用公开漏洞进行攻击,如果没有就可以采用白盒代码审计来自行挖掘漏洞,
#开发框架
如常见的thinkphp(php),spring(java),flask(python)等开发的源码程序,这个thinkphp开发框架比较知名就是很多php网站都采用这个框架开发的;这种源码程序的测试思路:先获取对方开发框架的信息(例如名字和版本),通过公开的框架类漏洞进行安全测试,如果漏洞没有就进行白盒代码审计,这些框架在网上都可以下载到。
开发框架是对面程序的整体或者核心是用这个框架支撑的,框架以及提前给写好了,框架就跟开发引用的模块一样,比如一个文件上传,不用框架就一个一个代码写,用框架就直接引用框架,框架就是封装好的功能代码,
#未知cms
他分位两种一种可能是公司内部的,网上识别并不出来,第二种是对某cms进行了二次开发,对部分源码修改一下,但还是保留了一部分之前的;还有一种完全没有引用框架是自己一点点开发的,一般是大企业才会这样,或者个人内部;针对此类的先判断他是不是二次开发的,如果是还是cms的整体架构,用已知cms进行测试;不能确定的,我们可以用常规类综合工具和脚本去探侦扫描,也可以进行人工探针(功能点,参数,盲猜)。
功能点:比如想测试文件上传漏洞,就去找有文件上传的功能点操作。
#详解已知cms
既然是已知cms,我们可以先去漏洞平台寻找有没有公开的漏洞,
工具框架,就是针对的特定的一些已知cms的东西,比如wpscan就是针对wordpress的扫描工具,上面刚刚提到的三个已知cms都有直接特定的扫描工具,
代码审计主要分为三中,从函数点挖掘,从功能点挖掘,从框架类挖掘,
#详解开发框架
主流个的三个开发语言,php里面比较知名的框架yii,laravel,thinkphp。java框架shiro,struts,spring,maven。python框架,flask,django,tornado。
#详解未知cms
工具框架,我们不知道他是什么情况,就使用工具帮我们去扫描,例如xray,awvs。还有人工探针手工的去分析他有没有漏洞,我们要分析应用功能来判断它会产生什么漏洞,例如跨站,他的有参数传递输入的东西才会在页面中显示,才会产生跨站, 这个漏洞对应要在那种地方会产生,就要去对应的地方去找。
url参数:是我们利用抓包工具或者爬虫工具,抓到地址或者网站的请求信息,我们就可以尝试修改参数,提交方法来看对方的回显,就直接盲猜比如有参数漏洞就直接试试sql注入。
##案列:开发框架类源码渗透测试报告-资讯-thinkphp,spring
在fofa搜索了一个
打开靶场
输入个错误的url
看这里的回显错误信息,里面就写着thinkphp,
这时候就可以直接去利用thinkphp利用工具,
这个就没有漏洞,但是没有问题,我们还可以去网上搜素thinkphp5.024的漏洞利用
这些文章都可以帮助我们去测试,
还可以在漏洞平搜索公开漏洞
xs
s