安全测试 – 恶意文件执行
安全测试 – 恶意文件执行
开发人员通常直接使用或将潜在易受攻击的输入与文件连接起来,或者假设输入文件是真实的。如果未正确检查数据,这可能会导致 Web 服务器处理或调用易受攻击的内容。
例子
一些经典的例子包括 –
- 将 .jsp 文件上传到网络树中。
- 上传要调整大小的 .gif。
- 上传大文件。
- 上传包含标签的文件。
- 将 .exe 文件上传到网络树中。
动手
步骤 1 – 启动 WebGoat 并导航到恶意文件执行部分。该场景的快照如下 –
第 2 步– 为了完成本课,我们需要在上述位置上传 guest.txt。
第 3 步– 让我们创建一个 jsp 文件,以便在执行 jsp 时创建 guest.txt 文件。在我们执行 jsp 文件的内容时,jsp 的命名在此上下文中没有任何作用。
<HTML> <% java.io.File file = new java.io.File("C:\\Users\\username$\\.extract\\webapps\\WebGoat\\mfe_target\\guest.txt"); file.createNewFile(); %> </HTML>
Step 4 – 现在上传jsp文件并在上传后复制相同的链接位置。上传需要一个图像,但我们正在上传一个jsp。
第 5 步– 通过导航到 jsp 文件,将不会向用户发送任何消息。
第 6 步– 现在刷新您上传 jsp 文件的会话,您将收到消息,“* 恭喜。您已成功完成课程”。
预防机制
- 使用网站权限保护网站。
- 采取应对 Web 应用程序安全的措施。
- 了解 IIS 7.0 中的内置用户和组帐户。