某系统Getshell

admin 2025年6月13日22:01:25评论21 views字数 1506阅读5分1秒阅读模式
免责声明  由于传播利用WK安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,WK安全及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉谢谢!
背景

本次系统的审计挖掘过程,借助了阿呆安全的审计辅助插件CodeAuditAssistant
项目地址我贴在了文末,如果不想下载的,可以直接后台回复"插件"获取,我也是第一次使用也是借助这个插件快速出货了,文章如有分析不当的地方,欢迎斧正!(漏洞还未上交相关平台,厚码勿怪!)
某系统Getshell
挖掘过程

    拿到该源码之后,查看下项目结构,经典的Jsp+Servlet,路由访问是通过注解实现的,然后登录认证部分采用的是Shiro,既然是使用Shiro,肯定先查看排除认证部分的路由啦!
某系统Getshell
从文件名搜索:shiro
从内容搜索:anon (如果是class文件,建议先进行反编译再搜索)
经过搜索,也是成功定位到了配置文件
某系统Getshell
这个系统的代码量、功能点也是蛮多的,anon对应的路径也非常多,一个一个看的话太耗时间,直接上插件
某系统Getshell
快速定位了几个漏洞点(sink)
某系统Getshell
文件上传

结合扫描出的漏洞点,我们再结合刚才shiro的排除认证的路由,定位到了一处
某系统Getshell
这个控制器实现的功能就一个,处理(批量)文件上传的功能
for(int var10 = 0; var10 < var9; ++var10) {    MultipartFile file = var8[var10];    String fileName = file.getOriginalFilename();    String suffix = fileName.substring(fileName.lastIndexOf("."));    int num = (int)(Math.random() * 1000.0);    String fileNewName = fileName.substring(0, fileName.lastIndexOf(".")) + "_" + num + suffix.toLowerCase();    String dataFormat = (new SimpleDateFormat("yyyyMMdd")).format(new Date());    String savePath = uploadPath + File.separator + dir + File.separator + dataFormat + File.separator + "lab_report";    File destDir = new File(savePath);    if (!destDir.exists() || !destDir.isDirectory()) {        destDir.mkdirs();    }    File f;    for(f = new File(savePath + File.separator + fileNewName); f.exists(); f = new File(savePath + File.separator + fileNewName)) {        num = (int)(Math.random() * 1000.0);        fileNewName = fileName.substring(0, fileName.lastIndexOf(".")) + "_" + num + suffix;    }    file.transferTo(f);
设置上传的路径
某系统Getshell
设置个新的文件名
某系统Getshell
然后调用
file.transferTo(f);
进行上传
构造数据包发起请求
某系统Getshell
访问上传文件,成功解析
 

原文始发于微信公众号(迪哥讲事):某系统Getshell

 

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月13日22:01:25
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   某系统Getshellhttps://cn-sec.com/archives/4159775.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息