PHP 原生类的利用小结

您所在的位置:网站首页 php常见报错 PHP 原生类的利用小结

PHP 原生类的利用小结

2023-12-30 02:31| 来源: 网络整理| 查看: 265

PHP 原生类的利用小结

Marcus_Holloway / 2021-03-29 17:57:40 / 浏览数 11984 社区板块 WEB安全 顶(1) 踩(0)

前言

在CTF题目中,好几次都遇到了利用 PHP 原生类进行XSS、反序列化、SSRF以及XXE的思路,一直想好好看一下 PHP 原生类在 CTF 中的利用,迫于生活xx拖了好久。今天终于有机会好好总结总结了。常遇到的几个 PHP 原生类有如下几个:

Error Exception SoapClient DirectoryIterator SimpleXMLElement

下面我们根据这几个原生类的利用方式分别进行讲解。

文中若有不足之处,还请各位大佬多多点评。

我的博客:https://whoamianony.top/

使用 Error/Exception 内置类进行 XSS Error 内置类 适用于php7版本 在开启报错的情况下

Error类是php的一个内置类,用于自动自定义一个Error,在php7的环境下可能会造成一个xss漏洞,因为它内置有一个 __toString() 的方法,常用于PHP 反序列化中。如果有个POP链走到一半就走不通了,不如尝试利用这个来做一个xss,其实我看到的还是有好一些cms会选择直接使用 echo 的写法,当 PHP 对象被当作一个字符串输出或使用时候(如echo的时候)会触发__toString 方法,这是一种挖洞的新思路。

下面演示如何使用 Error 内置类来构造 XSS。

测试代码:

(这里可以看到是一个反序列化函数,但是没有让我们进行反序列化的类啊,这就遇到了一个反序列化但没有POP链的情况,所以只能找到PHP内置类来进行反序列化)

给出POC:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3