ITPub博客

首页 > 数据库 > 数据库开发技术 > 浅谈phpinfo在渗透测试中的利用

浅谈phpinfo在渗透测试中的利用

原创 数据库开发技术 作者:逍遥子 时间:2024-05-09 08:00:00 0 删除 编辑

现在很多的站点都采用了PHP 随之针对PHP站点的攻击也越来越多。HP中提供了PHPInfo()函数,该函数返回 PHP 的所有信息。我们我们能在此函数中得到那些信息呢?

接下来,我们新建一个php探针文件,写入内容如下:

<?php
phpinfo();
?>

放入站点后访问,效果如下:

那么,我们能具体得到哪些有用的信息呢?不妨一条条进行分析!

基础信息

如下图,我们得到以下信息。

  • php版本(8.2.12)
  • 操作系统(Linux kali 6.6.15-amd64)
  • 中间件(Apache)
  • php配置文件位置(/etc/php/8.2/apache2)主要是php.ini文件。

上图中,我们可以可到一些模块和ipv6状态的开启状态。重点强调下Registered PHP Streams 和Registered Stream Filters在文件包含,反序列化还有一些关键的bypass的时候非常有用的。

上图中,我们可以得到中间件Apache的相关信息。

  • Apache版本(2.4.58)
  • 所属用户和用户组 (www-data)

在上面的信息中,我们可以得到一个非常关键的信息。即DOCUMENT_ROOT 他告诉了我们站点的根目录为/var/www/html。这在sqlmap中上传Shell中是至关重要的。

如果allow_url_fopen和allow_url_include都为On的时候,则文件包含函数是可以加载远程文件的,可以利用远程文件包含漏洞直接执行任意命令。

display_errors 和 display_startup_errors调试过程中经常使用的错误提示在没有关闭的情况下放入生产环境是非常严重的。

short_open_tag判断服务器是否支持短标签,方便写入shell。

查看session的相关配置,在文件包含和反序列化的时候需要。

也可以通过phpinfo()查看一些特殊的程序服务,比如redis,memcache,mysql等等。如果服务器装了redis或者memcache,可以尝试寻找SSRF来getshell

更多精彩文章 欢迎关注我们


原文作者:Kali笔记;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2021-01-22

  • 博文量
    760
  • 访问量
    444246