lists.openwall.net   lists  /  announce  john-users  owl-users  popa3d-users  /  xvendor  oss-security  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4 
Open Source and information security mailing list archives
 
Order Openwall GNU/*/Linux 2.0 on a CD with delivery worldwide
[<prev] [next>] [month] [year] [list]
Date: 5 May 2007 17:36:06 -0000
From: admin@...orsecurity.de
To: bugtraq@...urityfocus.com
Subject: [MajorSecurity Advisory #47]Simple Machines Forum (SMF) - Session
 fixation Issue

[MajorSecurity Advisory #47]Simple Machines Forum (SMF) - Session fixation Issue

Details
=======
Product: Simple Machines Forum (SMF)
Affected version: 1.1.2 and prior
Remote-Exploit: yes
Vendor-URL: http://www.simplemachines.org
Vendor-Status: informed
Advisory-Status: published

Credits
============
Discovered by: David Vieira-Kurz
http://www.majorsecurity.de

Original Advisory:
============
http://www.majorsecurity.de/index_2.php?major_rls=major_rls47

Introduction
============
"Simple Machines Forum . SMF in short . is a free, professional grade software package
that allows you to set up your own online community within minutes." -from simplemachines.org

More Details
============
1. Session fixation:
The "PHPSESSID" parameter can be set to a malicious and arbitrary value.

1.1 Description:
In a session fixation attack, the attacker fixes the user's session ID before the user even logs into the target server.
After a user's session ID has been fixed, the attacker will wait for them to login.
Once the user does so, the attacker uses the predefined session ID value to assume their online identity.

Workaround:
============
1. Do not accept session identifiers from GET / POST variables.

2.Regenerate SID on each request.

3. Accept only server generated SID:
One way to improve security is to not accept session identifiers not generated by server.

if ( ! isset( $_SESSION['SERVER_GENERATED_SID'] ) ) {
session_destroy(); // destroy all data in session
}
session_regenerate_id(); // generate a new session identifier
$_SESSION['SERVER_GENERATED_SID'] = true;


History/Timeline
================
30.04.2007 discovery of the vulnerability
03.04.2007 contacted the vendor
04.04.2007 working patch sent to the vendor
05.04.2007 advisory is written
05.04.2007 advisory released

MajorSecurity
=======
MajorSecurity is a non-profit German penetration testing and security research project
which consists of only one person at the present time.
http://www.majorsecurity.de/

Hosted by DataForce ISP - Powered by Openwall GNU/*/Linux