首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

神秘的.user.ini文件

LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置 LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。 .user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini 可以使用winscp文件管理、vim编辑器或nano编辑器进行修改。 删除的话rm -f /网站目录/.user.ini 就可以。 修改完成后再执行:chattr +i /网站目录/.user.ini .user.ini不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。 如果要更改网站目录必须要按上述方法修改防跨目录的设置,否则肯定报错!! LNMP 1.4或更高版本如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。 LNMP 1.4或更高版本也可以直接使用lnmp安装包 tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除。 在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。 LNMPA或LAMP 模式1.2版本或更高版本的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir参数进行设置。如果不需要防跨目录设置可以在 php_admin_value open_basedir 该行前面加 # 进行注释,或自行修改参数后面的目录。 重启apache生效。

02

从phpinfo中能获取哪些敏感信息

phpinfo()想必的最熟悉的了,在搭建环境之后都会随后写一个 phpinfo()来测试环境是否正常,很多人测试完毕忘记删除就开始部署环境了,这就造成了一些敏感信息的泄漏。那么我们能从 phpinfo()中获得哪些敏感信息呢?php 版本这种就不用说了,来看一下泄漏了哪些比较敏感的信息。  一、绝对路径(_SERVER[“SCRIPT_FILENAME”]) 这个是最常用,也是最有效的一个办法,找到 phpinfo()页面可以直接找到网站的绝对路径,对于写 shell 和信息搜集是必不可少的。 二、支持的程序 可以通过 phpinfo()查看一些特殊的程序服务,比如 redis、memcache、mysql、SMTP、curl 等等如果服务器装了 redis 或者 memcache 可以通过 ssrf 来 getshell 了,在 discuz 中都出现过此类问题。如果确定装了 redis 或 memcache 的话,在没有思路的情况下,可以着重找一下 ssrf 三、泄漏真实 ip(_SERVER[“SERVER_ADDR”]或 SERVER_ADDR) 有时候通过 phpinfo()泄漏的 ip 可以查查旁站、c 段什么的,直接无视 cdn,百事不灵。 四、GOPHER 也算是 ssrf 一部分吧,或者说主要靠 ssrf 利用起来,如果支持 gopher,ssrf 便没有压力咯 五、fastcgi 查看是否开启 fastcgi 和 fastcgi 的版本,可能导致解析漏洞、远程命令执行、任意文件读取等问题 六、泄漏缓存文件地址(_FILES[“file1”])

05
领券