• 记一次略微曲折的上传


    0x00  前言

    上面给了个任务,一看,地图系统,懵逼了,这种的系统一般就是调个百度地图的api,无交互,想要挖洞简直难上加难...

    一波信息收集后,发现该主站一个功能可以跳转到该单位的微信公众号,且存在上传点,因此有了本文。

    0x01  FUZZ

    有了上传点,废话不多说先看看后缀能不能过
    先传一个图片,更改后缀尝试上传

    直接没了,难道是白名单吗,尝试随意后缀上传

    发现可以上传,可能是存在waf?
    直接传内容为一句话,看看会不会被拦截

    结果没被拦截,应该是代码对后缀做了一些操作,
    接下来就是一顿fuzz,搞了半天发现后缀名这边是过不去了,换行大法直接报错

    拿出之前过安全狗的方法试了一下,溢出Content-Disposition:字段,

    竟然就这么成功了...

    0x02  又一个问题

    现在传是传上去了,但是没有返回完整路径,也不知道传哪儿去了,这咋整
    扫当前目录啥也没扫到
    然后扫了波一级目录,发现存在upload目录,

    尝试拼接,成功getshell

    0x03  总结

    1.通过目标站点的公众号处存在一处附件上传,那么可能存在任意文件上传漏洞
    2.通过bp的intruder功能对后缀名进行批量fuzz,发现都被拦截,这里又测试上传test.aaa,内容为this is  a test,发现可以上传,那么猜测目标站点存在WAF,拦截了后缀名
    3.接着测试上传的内容为一句话木马,可成功上传,并没有对内容进行拦截
    3.通过Content-Disposition:拦截字段填充可绕过waf成功上传,并返回上传的文件名,但是并不知道上传的路径
    如:
    Content-Disposition:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(大概超过128个字符);name="file" ;filename="www.aspx"
    4.通过目录扫描工具对目标站点进行扫描,发现在upload目录时状态为http200,尝试拼凑链接访问,可成功链接。
    5.最后通过冰蝎成功链接一句话

  • 相关阅读:
    面向对象之补充
    继续面向对象之成员与组合
    面向对象初阶
    模块和包
    异常处理
    [Array]448. Find All Numbers Disappeared in an Array
    [Array]485. Max Consecutive Ones
    [Array] 561. Array Partition I
    [Array] 566. Reshape the Matrix
    opencv3.1线性可分svm例子及函数分析
  • 原文地址:https://www.cnblogs.com/backlion/p/15824571.html
Copyright © 2020-2023  润新知