序言
登入某一中文网站并下载其网页时,注意到了许多看上去不太著急的地方性。那些征兆可能将是该中文网站存有安全漏洞或被骇客侵略的象征。为的是保证那个中文网站的可靠性,须要展开标识符审计工作,这是几项专门针对特别针对应用软件标识符展开检查预测的技术。在责任编辑中,他们将研讨标识符审计工作的必要性和怎样展开有效率的标识符审计工作。
1.产品目录结点安全漏洞
步入模版机能-模版管理工作机能处。
这儿说句Chavanges,以后有许多爸爸妈妈朋友圈我要信息安全有关的天然资源,我这儿都重新整理好了,须要的朋友圈我皮先卡 《骇客&信息安全进阶&高阶自学天然资源包》完全免费申领
辨认出该处的机能点能结点产品目录下的文档,接下去他们Tourbe查阅现阶段机能点的标识符。

透过路由器找出有关联的文档 template.php ,接着接著透过 mudi=manage 展开组成部分优先选择步入到有关联的表达式中。

步入template.php文档。

在 manage() 表达式中,首先传入了两个参数, dirStr 参数则是控制路径的参数,而 sel 参数则是控制是否步入标识符的if,而最后将路径传入到File类下的 GetDirList() 表达式中。跟进GetDirList() 表达式

辨认出使用 opendir() 表达式列出产品目录下的文档

安全漏洞复现:
步入模版管理工作机能处,接着展开Tourbe。

Tourbe之后,展开测试。

接着在dirStr使用…/../来测试产品目录穿越。

2.任意文档读取安全漏洞
全局fread() 表达式,辨认出Read()表达式中调用了 fread() 表达式。

接着搜索 Read() 表达式的调用情况。

步入classFile.php文档。

接着搜索fread()表达式的用法。

辨认出在 sysCheckFile_deal.php 文档中调用了 File::read() 表达式,跟进该表达式。

安全漏洞复现:
根据路由器,去构造url路径,接着访问。

接著Tourbe,配合../展开产品目录穿越读取文档。

3.任意文档删除安全漏洞
在测试模版管理工作机能点处,辨认出该处存有一个删除的机能点,辨认出存有任意文档删除安全漏洞。

首先他们透过路由器找对相应的源标识符 template_deal.php 文档,且这儿的路由器指向为 DelFile() 表达式,该表达式中接收了三个参数,其中filePath参数为主要控制路径的参数,将filePath参数带入到File::Del()中展开删除。跟进 del() 表达式


该表达式很简单,首先判断路径是否为空,不为空修改权限最后展开文档的删除操作。

安全漏洞复现:
步入机能点处。接着点击X号。

接着在根路径写入一个xxx.txt文档。

接着在filepath参数后配合../来删除文档。

4.msql_getshell
在 黑盒 测试中中存有一个 SQL语句调试 的机能点,该处没有对SQL语句关键字的过滤而造成SQL语句的任意执行,导致getshell。
步入机能点处。

接着执行简单的SQL语句展开测试。

接着使用Tourbe工具来定位路由器。

接着看一下标识符,辨认出文档的开头以条件组成部分来优先选择有关联要执行的机能点,由于上述 mudi=sql ,所以他们找出该处要执行的sql所有关联的表达式


透过 OT::PostStr 方法传入五个参数,其中 sqlContent 中是须要传入的SQL语句,而下面对
into_outfile 、 global general_log 等SQL关键字展开了过滤


在下面检测你填入的后台密码是否正确,如果正确继续执行下面标识符,在标识符中执行了他们输入
的SQL语句。未对其展开过滤完全,导致他们能绕过过滤,来执行SQL语句。

安全漏洞复现:
首先去开启数据库日志机能,辨认出有过滤。

接着他们构造payload成功绕过过滤。

接着他们写入phpinfp文档。

构造payload,成功写入。

访问之后,成功getshell。

5.xss安全漏洞
步入users_deal.php

检测type是否为数组中的固定值,不是则带入AlertEnd方法中 跟进AlertEnd方法

辨认出type被带<script>标签,使用AlertFilter表达式处理后直接alert,跟进AlertFilter表达式

安全漏洞复现:
构造payload,成功实现弹窗。

6.xss安全漏洞2
步入read.php

辨认出在GetCityData表达式中,idName参数没有做任何处理,带入GetCituOptionJs表达式中跟进该方法

该方法中idName参数被直接带入DOM方法中输出

安全漏洞复现:
要调用GetCityData表达式需mudi参数,接着在idName处输入XSS的payload。
成功实现弹框。

7.ssrf安全漏洞
在下载标识符过程中,辨认出该处使用curl_exec()表达式来执行命令。
在表达式UseCurl中,调用curl_exec表达式执行了一个curl会话,只有$url参数可控,即可造成ssrf安全漏洞

步入info_deal.php

跟进AddOrRev表达式

接著跟进PostStr表达式,辨认出其调用了post表达式。

跟进post表达式。

$img参数透过POST方式传入,并且无过滤措施 继续跟进SaveRemoteFile表达式

第二个参数被带入GetUrlContent表达式,跟进GetUrlContent表达式

根据可控参数的带入,跟进UseAuto表达式,并且该处传入3个参数 0,GET,$url

根据传入第一个参数$seMode为0,会调用UseCurl表达式,即步入安全漏洞关键表达式
目前已知安全漏洞触发链条,接下去只须要根据步入表达式的条件,构造poc即可
首先须要步入AddOrRev表达式,只需$mudi值为add

接着须要满足步入SaveRemoteFile表达式的条件


辨认出输入的参数为http://,接著来复现安全漏洞。

安全漏洞复现:
访问url地址,使用post方式,在img参数后面输入dnslog地址。

成功收到监听。

总结
标识符审计工作能帮助辨认出各种类型的安全漏洞。那些安全漏洞可能将包括输入验证问题、授权问题、会话管理工作问题、跨站点脚本安全漏洞、SQL注入安全漏洞等。
以后有许多爸爸妈妈朋友圈我要信息安全有关的天然资源,我这儿500G
#php是最好的编程语言#