【PHP代码审计】跨站及文件包含


0x001 跨站相关知识

如何审计相关漏洞???

搜索关键字

print print_r echo sprintf die var_dump var_export等

查看功能点

类似留言板,这种有输入输出的地方

xss跨站:https://blog.csdn.net/weixin_44032232/article/details/113550551

0x002 跨站审计

搜索echo
在这里插入图片描述
在这里插入图片描述
直接通过路径访问该页面出现报错
在这里插入图片描述
怀疑是路由原因,查看index.php

在这里插入图片描述

对应的路由应为:http://127.0.0.1/xhcms/index.php?r=contact

上面可以分析到我们传递page参数由echo输出,即构造payload

http://127.0.0.1/xhcms/index.php?r=contact&page=<script>alert(/xss/)</script>

在这里插入图片描述

0x003 文件包含相关知识

如何审计相关漏洞???

扫描二维码关注公众号,回复: 12889904 查看本文章

搜索关键字

include include_once require require_once

查看更多:https://blog.csdn.net/weixin_44032232/article/details/113551240

0x004 文件包含审计

搜索include
在这里插入图片描述
在这里插入图片描述

http://127.0.0.1/xhcms/index.php?r=contact参数r等于什么就包含什么,在前面拼接files/,在后面拼接上.php,意思是限于包含files目录内的.php文件。

如何突破限制???

在文件包含中,被包含的文件都会以php文件执行

站点目录结构如下:
在这里插入图片描述
在这里插入图片描述
如何包含www目录下的1.txt ???

对于这种有限制的文件

#本地包含-有限制
跨目录使用:../或..\

后缀限制:%00截断或长度截断  【php版本<5.3.4】
%00截断:条件:magic_quotes_gpc = Off  filename=../../../www.txt%00
长度截断:条件:windows  加点号,点号需要长于256;linux 长于4096
http://127.0.0.1/xhcms/index.php?r=../../1.txt............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44032232/article/details/113989613
今日推荐