自从接触网络安全也有一段时间了,自己根据自己的经验总结一下文件上传漏洞的方法及本地测试结果,希望能够帮助到大家,同时也是一个很好的学习记录过程。
0x00 文件上传漏洞原理
一般文件上传漏洞会有文件上传的地方,我们只要通过文件上传,将一句话木马传上去,并找到一种能够执行一句话木马文件的方法即可。所以,综上所述文件上传漏洞的原理就是,服务器执行了你上传的木马文件。
这里有两个步骤,其一通过某种方法将木马文件上传,其二通过某种途径将木马执行。
文件上传代码
<!DOCTYPE html>
<html>
<head>
<title>文件信息</title>
</head>
<meta charset="utf-8">
<body>
<form action="" enctype="multipart/form-data" method="POST" name="uploadfile">
上传文件: <input type="file" name="upfile" />
<input type="submit" value="http://dearch.blog.51cto.com/10423918/上传" name="submit">
</form>
</body>
</html>
<!-- 完全没有过滤,任意文件上传 -->
<?php
if (isset($_POST['submit'])) {
var_dump($_FILES['upfile']);
echo "文件名:".$_FILES['upfile']['name']."<br />";
echo "文件大小:".$_FILES['upfile']['size']."<br />";
echo "文件类型:".$_FILES['upfile']['type']."<br />";
echo "临时路径:".$_FILES['upfile']['tmp_name']."<br />";