当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-082371

漏洞标题:南大尚城内容管理系统任意用户密码重置漏洞

相关厂商:南大尚城

漏洞作者: 小马

提交时间:2014-11-07 17:51

修复时间:2015-02-05 17:52

公开时间:2015-02-05 17:52

漏洞类型:非授权访问/权限绕过

危害等级:高

自评Rank:15

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-11-07: 积极联系厂商并且等待厂商认领中,细节不对外公开
2015-02-05: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

南大尚城内容管理系统密码重置漏洞

详细说明:

南大尚城内容管理系统 JCMS 刚开始以为是大汉的呢,结果不是....
以下内容摘自官网:
江苏南大尚诚高科技集团成立于2006年11月,是一家以自主科技创新为动力、以科技创新型产业为核心 的高科技企业。尚诚集团以国内外知名高校和知名企业为依托,引进吸纳香港上市公司环康集团(股票代码: 8169.HK)、苏高新集团(股票代码:600736)等优质海内外企业成为投资方,具备丰富的文化、技术、市场、 人才、品牌、管理等优质资源,主要从事软件开发......

漏洞证明:

/jcms/User/ResetPass.jsp代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<jsp:directive.page import="java.sql.*"/>
<jsp:directive.page import="com.jcms.beans.DBconnection"/>
<jsp:directive.page import="com.jcms.beans.Currency"/>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>ResetPass.jsp</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link href="../Css/base.css" rel="stylesheet" type="text/css" />
</head>
<body>
<%
String userName = request.getParameter("Name");
String userID = request.getParameter("ID");
if(!"".equals(userName)&&!"".equals(userID)){ //只判断是否为空
DBconnection link=new DBconnection("jscms");
Connection db=link.getCon();//初始化数据库连接
String md5Passed=Currency.getMD5Code("111111");//对密码进行加密
String sql = "update Admin set PassWord = '"+md5Passed+"' where ID=? and UserName=?";
try{
PreparedStatement stmt = db.prepareStatement(link.getSql(sql));
stmt.setInt(1,Integer.parseInt(userID));
stmt.setString(2,userName);
stmt.executeUpdate();
stmt.close();
}catch(Exception e){
e.printStackTrace();
}finally{
link.closeDB();
}
}
%>
<script language="javascript">
alert('初始化密码成功!');
history.back();
</script>


if(!"".equals(userName)&&!"".equals(userID)){
只判断了是否为空,不为空的话就update,程序员在坑爹吗....
重置后密码为 111111
这个由于测试了一个站,莫怪莫怪

2.jpg


3.jpg


修复方案:

你们更专业

版权声明:转载请注明来源 小马@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝