在一次偶尔的时机发现公司某个网站存在thinkphp的长途指令履行缝隙,自此对这个缝隙爱不释手。这究竟是为什么呢?首要原因有2点:榜首,假如网站存在这个缝隙,咱们可以去履行各式各样的体系指令来进行测验调查,特别要是还有办理员权限就更舒服了;第二点,只需发现对应版其他thinkphp,缝隙运用过程较为简略。(首要仍是笔者太懒,hhh!!!)关于这个缝隙剖析笔者就不在这儿献丑了,首要是介绍下怎么往来不断发掘这个缝隙,以及笔者相关的一些思路。期望能给刚入安全圈的新人一点创意。
0×01 缝隙简介
在2019年12月9日,thinkphp官方发布了一个重要的安全更新,修正了一个严峻的长途指令履行缝隙。此次更新首要涉及到一个安全更新,因为结构对控制器名没有进行满足的检测会导致在没有敞开强制路由的情况下或许的getshell缝隙,受影响的版别儿包含5.0(
0×02 缝隙特性
这个特性可以说是大部分thinkphp结构的特性,在其网站url后输入一个不存在的途径,页面会报错,显现该网站一些装备信息以及thinkphp的版别儿,如图:
输入该网站一个不存在的途径11,或许是一些不存在的文件也可例如:11.php,11.txt。此刻页面会报错,抛出反常,如图:
此刻咱们可以看到该网站的一些灵敏装备信息比方网站途径,当然我比较感兴趣的仍是这个thinkphp结构的版别,如图所示thinkphp版别儿清楚可见,看到这儿或许大佬们就知道我接下来干啥了。
0×03 缝隙复现
笔者感觉自己这个缝隙运用的办法仍是比较简略粗犷的,初始也是抱着试一试的主意,也没想到就成功了。
首要翻开百度,然后搜索引擎内输入 “thinkphp5.0缝隙”,看到许多大佬的剖析,随意点开一个链接,拿走大佬写好的payload。(当然这个paylaod自己也要依据实际情况做一点小改动,依据页面多调查几回来进行改动。假如网站缝隙现已修正了再去测验必定不会成功了。)
开端缝隙复现:
运用system函数长途指令履行
payload:http://xxx.com/index.php?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami 如图
咱们不难看出当时网站的确存在并且可以履行体系指令,后边的测验办法就比较群众化了,容笔者略微说下,各位看官一看就懂:
1、首要看下自己当时权限是否是办理员权限,假如是再好不过,否则后边还得想办法进行提权。(emm呈现thinkphp缝隙现已很不应该了,假如这儿再是办理员权限的话,网站的办理员老哥应该好好检讨下了)
2、然后再上传一句话木马,菜刀链接,根本到这就差不多了。(不要随意操作哦)
3、经过相关渠道将此缝隙告知相关厂商。(xx不标准,牢底坐到穿)
0×04 缝隙剖析
这儿不是原理剖析哈,仅仅笔者一点浅陋的观念和经历。
笔者发现thinkphp结构搭好今后,页面有如下图所示的一些字体。
然后又经过调查之前所结构的payload : http://xxx.com/index.php?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
想到谷歌搜索引擎强壮的搜索功用 ,所以结构句子“ thinkphp十年磨一剑 inurl:index.php”(说实话成果我也是吓了一跳,)
搜到许多运用该结构的网站,并且经过钟馗之眼一类的搜索引擎经过搜索 “十年磨一剑 – 为API开发规划的高性能结构 [ V5.0+版别由+七牛云+独家资助发布+]”也能搜索到许多此类网站。
据此可见有许多网站再运用thinkphp 5.0这一版别儿结构,或许搜到的这些网站有一些办理员现已修正该版别儿缝隙,可是应当还会有一大部分办理员仍未曾修正该缝隙。(想必这点咱们都会想到,并且会有黑客用此类办法批量拿站)
0×05 观念
经过thinkphp 这一版别儿缝隙,笔者想到其实蛮多的。
1、一些cms网站的缝隙发掘办法其实和笔者所说到的thinkphp缝隙发掘的办法仍是比较共同的,都有某些方面的特征,比方版别号,url组成等等。这类通用型缝隙在运用其来技能门槛相对较低,比方笔者经过信息搜集发现许多相似网站,一旦迸发损害蛮大,之前许多的事情儿都说明晰这个问题。(这个缝隙发掘指的是他人现已发布过的缝隙,而不是去发掘还未曾发现的缝隙)
2、许多网站的办理者(中小型网站)都不具有安全意识,比及安全问题一旦迸发悔之晚矣。往往呈现这类缝隙(呈现很长时刻却没修正的缝隙)的网站一般是中小型网站,当然大点儿的网站或许也有,可是相较于这类网站就少了。
3、人是安全的标准这句话不假,办理网站的是人,可是往往安全和可用性又是相对的,无法去寻求过度的安全,这就造成了一些缝隙的存在其实是在所难免的。即使这个网站的办理者可以想到许多许多问题,可是或许某一天他也会犯一些失误,或许装备失误或许删库,不要认为删库这种骚操作不会呈现在自己身上。
emm期望有一天呈现一个啥肯定的安全,这样咱们就能愉快的转行,各位大佬和同僚也能完成自己的愿望,开超市的开超市,卖煎饼果子的卖煎饼果子 。。。。。若干年后又是一段传奇啊hhhh!!!
0×06 主张
缝隙修正主张:该版别儿thinkphp缝隙(大部分缝隙修正办法)修正最简略的修正办法便是升级到最新版别,打补丁,或许进行手动修正等等。
当然还有一个问题也需求进行修正,便是笔者前面所说输入一个不存在的途径或文件页面会抛出许多体系相关信息以及途径,一旦和该网站其他缝隙相结合后患无穷。
关于相关搜索引擎网站应该加以约束。
期望以上东西可以帮到咱们。
序 这儿有必要得说一下==和===这俩货的重要性。==是比较运算,它不会去查看条件式的表达式的类型===是恒等,它会查看查表达式的值与类型是否持平NULL,0,”0″,array()运用==和fals...
Google能够给用户供给定制化的搜索成果,即便在匿名形式下也是相同。但DuckDuckGo的研讨人员标明,Google的搜索成果不只依据用户的地理位置数据以及之前搜索过的内容,并且还会依据用户的登录...
0x01 开发Exploit 许多的模板引擎都会企图约束模板程序履行恣意代码才能,来防止应用层逻辑对表达式引擎的进犯。还有一些模板引擎则测验经过沙盒等手法来安全处理不可信的用户输入。在这些办法之下,开...
几周前我对某个手机银行使用进行测验。这个app用了一个结构,这个结构能够混杂、加密app与服务器进行的TLS衔接。我用Frida截获了加密环节之前的明文恳求/呼应。我期望能够修正截获的API调用,然后...
在本系列连载的第一节中,笔者谈到了关于burp对非webapp的功用测验。原本我只想写点东西共享出来,并没想到会扯出那么多。现在嘛,我还会持续写下去。 在这一节中,我会讲一讲: Target >...
近年来,网络进犯越来越无孔不入,看似往常的活动在进犯者眼中也成为了潜在的进犯时机,作为这一趋势的最新事例,本文将展现进犯者是怎么经过人们日常的阅读行为来装置AZORult的。AZORult是一类特务软...