实验室:通过 web shell 上传远程执行代码
实验说明:本实验室包含易受攻击的图片上传功能。在将用户上传的文件存储在服务器的文件系统之前,它不会对它们执行任何验证。 为了解决这个实验,上传一个基本的 PHP web shell 并使用它来泄露文件的内容/home/carlos/secret。使用实验室横幅中提供的按钮提交此密钥。 您可以使用以下凭据登录到您自己的帐户:wiener:peter
第一步:登录自己的账号
第二步:点击上传文件,查看效果
网页显示The file avatars/1.jpg has been uploaded.说明文件上传成功。
第三步:打开Burp,按照下面图文,设置过滤器。
第四步:我们在过滤框里的“按搜索字词过滤”,输入我们刚才上传的文件名,找到那个历史记录,发送到“重发器”。
第五步:创建一个文件名为:exploit.php,其中包含一个用于获取 Carlos 秘密文件内容“<?php echo file_get_contents('/home/carlos/secret'); ?>
”的脚本。并将它上传。
第六步:接下来,修改路径,上传刚才创建的文件。
将原来的第一行修改为:GET /files/avatars/exploit.php HTTP/1.1,发送请求,观察页面返回的密码。
然后我们将密码提交,实验完成!
我也是小白,文中可能会出现一些术语和技术上的错误,希望多多保函。