DVWA File Inclusion——Writeup

文件包含:
即File Inclusion,意思是文件包含(漏洞),是指当服务器开启allow_url_include选项时,就可以通过php的某些特性函数(include(),require()和include_once(),require_once())利用url去动态包含文件,此时如果没有对文件来源进行严格审查,就会导致任意文件读取或者任意命令执行。文件包含漏洞分为本地文件包含漏洞与远程文件包含漏洞,远程文件包含漏洞是因为开启了php配置中的allow_url_fopen选项(选项开启之后,服务器允许包含一个远程的文件)。服务器通过php的特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件,而我们可以构造这个恶意文件来达到自己的目的。
文件包含漏洞:
攻击者利用了包含的特性,再加上了应用本身对文件控制不严,对include进来的文件不可控,最终造成了攻击者进行任意文件包含。包含进来的文件都以当前脚本文件解析,比如,我们当前测试系统是Apache加php环境,那么被include进来的文件,不管是什么类型,比如说图片,文本文档,这些文件被包含以后,都会被当做php脚本来解析。

LOW

源码:
在这里插入图片描述

测试:本地文件包含,在目录中加一个test.txt
在这里插入图片描述

在这里插入图片描述
执行成功:
在这里插入图片描述

注意:无论文件后缀名是什么,只要文件内容为php脚本都会正确解析并且执行

漏洞利用:
实际利用需要利用文件上传漏洞,上传木马,
fputs函数:为php函数,功能和fwrite函数一样,表示创建一个新文件,这样上传成功以后就会在当前平台文件所在目录下面创建一个含有木马的dvwainclusion.php文件


蚁剑连接,这个就很恐怖了,可以打开我电脑下所有文件
在这里插入图片描述

medium:

源码
在这里插入图片描述
str_replace函数将 “http://” “https:\” “…/” “…” 替换成空
绕过 :
所有 “http://” 用 “htthttp://p://” 代替
"…/“用”…/./"代替
以此类推

远程文件包含:
在这里插入图片描述
后面的漏洞利用就与low操作相同了

high:

在这里插入图片描述
High级别的代码使用了fnmatch函数检查page参数,要求page参数的开头必须是file,服务器才会去包含相应的文件。
High级别的代码规定只能包含file开头的文件,看似安全,不幸的是我们依然可以利用file协议绕过防护策略。
使用file:///协议可以成功访问,其余的步骤就和前面一样了

impossible

在这里插入图片描述
可以看到,Impossible级别的代码使用了白名单机制进行防护,简单粗暴,page参数必须为“include.php”、“file1.php”、“file2.php”、“file3.php”之一,彻底杜绝了文件包含漏洞。

强行总结

防御从低到高依次:
无防护无过滤
str_replace函数过滤 “http://” “https:\” “…/” “…”(str_replace 函数具有危险性,比较容易绕过,例如双写)
fnmatch函数检查参数开头
白名单限制(简单有效)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/532602.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DVWA Cross Site Request Forgery (CSRF) -------WP

CSRF: 介绍 CSRF跨站点请求伪造(Cross—Site Request Forgery),跟XSS攻击一样,存在巨大的危害性,你可以这样来理解: 攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的&…

DVWA upload

LOW medium high impossible

sqlilab--writeup (5~6) 布尔盲注

1.# 和 – (有个空格)表示注释,可以使它们后面的语句不被执行。在url中,如果是get请求**(记住是get请求,也就是我们在浏览器中输入的url)** ,解释执行的时候,url中#号是用来指导浏览器动作的&am…

PyTorch导出JIT模型并用C++ API libtorch调用

PyTorch导出JIT模型并用C API libtorch调用 本文将介绍如何将一个 PyTorch 模型导出为 JIT 模型并用 PyTorch 的 CAPI libtorch运行这个模型。 Step1:导出模型 首先我们进行第一步,用 Python API 来导出模型,由于本文的重点是在后面的部署…

sqli-lab--writeup(7~10)文件输出,时间布尔盲注

前置知识点: 1、outfile是将检索到的数据,保存到服务器的文件内: 格式:select * into outfile “文件地址” 示例: mysql> select * into outfile ‘f:/mysql/test/one’ from teacher_class; 2、文件是自动创建…

sqli-lab———writeup(11~17)

less11 用户名提交单引号显示sql语法错误,故存在sql注入 根据单引号报错,在用户名和密码任意行输入 万能密码:‘ or 11# 输入后username语句为:SELECT username, password FROM users WHERE username or 11; 双引号 password语…

深入理解Python中的全局解释锁GIL

深入理解Python中的全局解释锁GIL 转自:https://zhuanlan.zhihu.com/p/75780308 注:本文为蜗牛学院资深讲师卿淳俊老师原创,首发自公众号https://mp.weixin.qq.com/s/TBiqbSCsjIbNIk8ATky-tg,如需转载请私聊我处获得授权并注明出处…

sqli-lab————Writeup(18~20)各种头部注入

less18 基于错误的用户代理,头部POST注入 admin admin 登入成功(进不去重置数据库) 显示如下 有user agent参数,可能存在注入点 显示版本号: 爆库:User-Agent:and extractvalue(1,concat(0x7e,(select …

Python GIL

转自:https://blog.csdn.net/weixin_41594007/article/details/79485847 Python GIL 在进行GIL讲解之前,我们可以先回顾一下并行和并发的区别: 并行:多个CPU同时执行多个任务,就好像有两个程序,这两个程序…

sqli-lab——Writeup21~38(各种过滤绕过WAF和)

Less-21 Cookie Injection- Error Based- complex - string ( 基于错误的复杂的字符型Cookie注入) base64编码,单引号,报错型,cookie型注入。 本关和less-20相似,只是cookie的uname值经过base64编码了。 登录后页面:…

sqli-lab——Writeup(38~over)堆叠等......

知识点: 1.堆叠注入原理(stacked injection) 在SQL中,分号(;)是用来表示一条sql语句的结束。试想一下我们在 ; 结束一个sql语句后继续构造下一条语句,会不会一起执行?因此这个想法…

mysql常规使用(建立,增删改查,视图索引)

目录 1.数据库建立 2.增删改查 3.视图建立: 1.数据库建立 mysql> mysql> show databases; ----------------------------------- | Database | ----------------------------------- | information_schema | | ch…

Xctf练习sql注入--supersqli

三种方法 方法一 1 回显正常 1’回显不正常,报sql语法错误 1’ -- 回显正常,说明有sql注入点,应该是字符型注入(# 不能用) 1’ order by 3 -- 回显失败,说明有2个注入点 1’ union select 1,2 -- 回显显示过滤语句: 1’; show databases -- 爆数据库名 -1’; show tables …

深拷贝与浅拷贝、值语义与引用语义对象语义 ——以C++和Python为例

深拷贝与浅拷贝、值语义与引用语义/对象语义 ——以C和Python为例 值语义与引用语义(对象语义) 本小节参考自:https://www.cnblogs.com/Solstice/archive/2011/08/16/2141515.html 概念 在任何编程语言中,区分深浅拷贝的关键都…

一次打卡软件的实战渗透测试

直接打卡抓包, 发现有疑似企业网站,查ip直接显示以下页面 直接显示了后台安装界面…就很有意思 探针和phpinfo存在 尝试连接mysql失败 fofa扫描为阿里云服务器 找到公司官网使用nmap扫描,存在端口使用onethink 查询onethink OneThink是一个开源的内容管理框架,…

centos7ubuntu搭建Vulhub靶场(推荐Ubuntu)

这里写目录标题一.前言总结二.成功操作:三.出现报错:四.vulhub使用正文:一.前言总结二.成功操作:三.出现报错:四.vulhub使用看完点赞关注不迷路!!!! 后续继续更新优质安全内容!!!!!一.前言总结 二.成功操作&#xff1…

Yapi Mock 远程代码执行漏洞

跟风一波复现Yapi 漏洞描述: YApi接口管理平台远程代码执行0day漏洞,攻击者可通过平台注册用户添加接口,设置mock脚本从而执行任意代码。鉴于该漏洞目前处于0day漏洞利用状态,强烈建议客户尽快采取缓解措施以避免受此漏洞影响 …

CVE-2017-10271 WebLogic XMLDecoder反序列化漏洞

漏洞产生原因: CVE-2017-10271漏洞产生的原因大致是Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。攻击者发送精心构造的…

树莓派摄像头 C++ OpenCV YoloV3 实现实时目标检测

树莓派摄像头 C OpenCV YoloV3 实现实时目标检测 本文将实现树莓派摄像头 C OpenCV YoloV3 实现实时目标检测,我们会先实现树莓派对视频文件的逐帧检测来验证算法流程,成功后,再接入摄像头进行实时目标检测。 先声明一下笔者的主要软硬件配…

【实战】记录一次服务器挖矿病毒处理

信息收集及kill: 查看监控显示长期CPU利用率超高,怀疑中了病毒 top 命令查看进程资源占用: netstat -lntupa 命令查看有无ip进行发包 netstat -antp 然而并没有找到对应的进程名 查看java进程和solr进程 ps aux :查看所有进程…