重邮毕业实习-day7

任务

        1.文件上传防御手段及绕过手段总结
        2.文件上传常用一句话木马
        3.课中所讲的三种webshell管理工具的使用方法(演示使用该工具连接webshell及抓取流量包进行分析特征)
        4.文件上传无回显如何查找webshell地址
        5.upload-labs靶场通关第6-第10关

一、文件上传防御手段及绕过手段总结

        1)文件上传防御手段

  1. 文件类型检查

    • 扩展名检查:限制上传文件的扩展名,如仅允许.jpg、.png等常见图片格式。
    • MIME类型检查:检查文件的MIME类型,确保其与扩展名一致。
    • 文件签名验证:检查文件的头部信息,确保文件的真实类型与声称的一致。
  2. 文件大小限制:设置合理的文件大小上限,防止大文件上传导致的服务器资源耗尽。

  3. 病毒扫描:使用反病毒软件扫描上传的文件,防止上传带有恶意代码的文件。

  4. 文件名处理

    • 规范化文件名:对上传的文件名进行规范化处理,去除非法字符或特殊字符。
    • 重命名文件:上传后自动更改文件名为随机字符串,防止利用文件名中的漏洞。
  5. 文件存储安全

    • 将上传的文件存储在网站根目录之外,避免通过分配的路径URL执行该文件。
    • 确保上传的文件没有执行权限,避免被直接执行的风险。
  6. 服务器端校验:在服务器端进行严格的校验,确保上传文件符合预期的格式和安全标准。客户端校验仅作为用户体验的补充,不应作为安全的主要手段。

  7. 日志记录:记录文件上传的详细日志,以便在发生安全事件时进行审计和追踪。

        2)文件上传绕过手段

  1. 文件类型绕过
    • 修改文件的扩展名或MIME类型,使其伪装成允许的文件类型。
    • 使用特殊技术(如双写扩展名、添加空格等)绕过文件类型校验。
  2. 文件大小绕过
    • 上传一个较小的文件,然后在服务器上进行文件合并或解压缩等操作,绕过文件大小限制。
  3. 目录遍历绕过
    • 利用目录遍历漏洞,通过修改文件路径中的特殊字符或使用相对路径,将文件上传到系统的其他目录中。
  4. 文件包含漏洞
    • 某些系统在处理上传文件时,可能存在文件包含漏洞,攻击者可以通过上传一个包含恶意代码的文件来执行任意代码。
  5. 绕过安全设置
    • 利用系统或应用程序的安全配置不当,如未启用HTTPS、未设置强密码策略等,绕过安全限制。
  6. 利用WebShell
    • 即使文件上传后被设置为不可执行,攻击者也可能尝试通过其他方式(如通过WebShell)利用系统漏洞执行文件。

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

        webshell

        Webshell是一种黑客用于非法控制网站服务器的恶意脚本,它以ASP、PHP、JSP或者CGI等网页文件形式存在,也可以被称作为网页后门。Webshell通过持久化远程访问、权限提升和隐蔽性极强的特性,使黑客能够执行系统命令、窃取数据等。

        一句话木马

        一句话木马是一种短小精悍但功能强大的恶意代码,通常只有一行或几行代码,能够在目标服务器上执行任意命令。这种木马因其隐蔽性好、易于传播和利用的特点,在黑客攻击中非常常见。

        常见一句话木马

        php: <?php @eval($_POST['pass']);?>、<?php system($_GET['cmd']);?>

        asp: <%eval request ("pass")%>

        aspx: <%@ Page Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%>

        Godzilla(哥斯拉)

        1.下载Godzilla:
        访问Godzilla的GitHub发布页面(下载链接),点击页面右侧的“releases”进入版本下载页面。
        下载适合你操作系统的jar包版本。
       2.准备Java环境:
        确保你的系统已安装Java环境(JDK 1.8或更高版本推荐)。
        3.启动Godzilla:
        在终端或命令行中,使用java -jar godzilla.jar命令启动Godzilla(假设godzilla.jar是你下载的jar包文件名)。

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

        1. 使用目录扫描工具

  • 工具选择:可以利用如DirBuster、Gobuster等目录扫描工具来扫描服务器上的目录和文件。这些工具可以自动化地遍历服务器的URL空间,尝试找到隐藏的文件和目录。
  • 操作步骤:设置扫描的目标URL和可能的文件扩展名(如.php、.jsp等),然后启动扫描。扫描完成后,分析扫描结果,查找可能的webshell文件。

        2. 源代码审计

  • 方法描述:如果有可能获取到网站的源代码,那么通过源代码审计来查找webshell文件是一种直接且有效的方法。
  • 操作步骤:审查与文件上传相关的代码,特别是文件处理和存储逻辑。检查是否存在潜在的漏洞,如未经验证的文件重命名、不安全的文件存储位置等。

        3. 异常检测

  • 方法描述:webshell在运行时可能会抛出错误或异常,通过监控网站的服务器错误页面或日志,可以寻找这些异常报告。
  • 操作步骤:查看服务器日志,特别是错误日志,寻找与文件上传或执行相关的异常信息。同时,可以配置网站以显示详细的错误信息,以便更容易地发现潜在问题。

        4. 文件名检测

  • 方法描述:如果webshell使用了特定的命名规则(如包含特定字符组合的文件名),可以在服务器目录下搜索这些文件。
  • 操作步骤:使用文件搜索工具(如find、grep等)在服务器目录下搜索具有特定命名规则的文件。

        5. 网络扫描

  • 方法描述:利用安全审计工具在网络流量中查找未授权访问或命令执行的行为,这些行为可能与webshell的存在有关。
  • 操作步骤:配置网络扫描工具(如Nmap、Wireshark等)来监控和分析网络流量。注意查找任何异常的数据包或连接,特别是那些指向未知或未授权端口的连接。

        6. 黑盒测试

  • 方法描述:尝试向服务器发送各种文件上传请求,观察服务器的响应。通过修改请求参数(如文件名、MIME类型等),看是否能触发服务器的异常响应,从而暴露webshell的位置。
  • 操作步骤:使用工具(如Burp Suite)来修改和发送文件上传请求。观察服务器的响应,特别是那些包含错误信息的响应。

        7. 权限验证

  • 方法描述:分析文件上传功能的权限设置,看是否存在权限不足但仍能访问敏感目录的情况。这些敏感目录可能包含webshell文件。
  • 操作步骤:审查与文件上传相关的权限设置,确保它们符合安全最佳实践。同时,尝试以不同权限级别的用户身份访问网站,观察是否能访问到不应该被访问的目录或文件。

四、upload-labs靶场

        Upload-labs靶场第六关

  1. 本关禁止上传.htaccess .user.ini 
  2. 没有禁止phP 、Php 所以将文件名字大小写就绕过了限制

        3.完成关卡

        Upload-labs靶场第七关

  1. 阅读代码发现  缺少了首尾去除空格的代码过滤
  2. 利用PHP 和 Windows环境的叠加特性  windows系统自动删除文件名后缀的空格  绕过黑名单

        3.使用bp抓包,对php后缀加上空格

        4.完成关卡

Upload-labs靶场第八关

  1. 阅读代码发现缺少了deldot函数
  2. 那么就和第七关同理 获取的最终文件后缀为“.” 不在黑名单里面

        3.利用Windows系统保存文件的特性  会删除文件后缀名的xxx.php. 最后上传的文件还是xxx.php

        4.抓包完成后对后缀进行修改,最后完成关卡

Upload-labs靶场第九关

  1. 这一关黑名单,没有对::$DATA 进 行 处 理  使用::$DATA 进行处理,可以使用::$DATA绕过黑名单

        2.php在window的时候如果文件名+"::$DATA"会把::$DATA之后的数据当成文件流处理,不会检测后缀名,且保持"::$DATA"之前的文件名 

        3.完成抓包后,进行修改,并完成关卡

Upload-labs靶场第十关

  1. 尝试 Apache的未知后缀名解析漏洞 和 4.php:.jpg 即第四关的思路

        2.代码运行最后得到的后缀为"." 不在黑名单中 然而又用原来的10.php. .来保存文件 由于windows在文件命名中会自动删除.和空格 所以最终得到的是10.php 因此绕过了黑名单限制

        3.完成抓包后,对后缀进行修改,最后完成关卡

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值