SiT! Bugs - SiT! |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0001047 | SiT! | LDAP | public | 2010-01-20 18:47 | 2010-01-27 21:42 |
|
Reporter | ivan | |
Assigned To | paulh | |
Priority | immediate | Severity | block | Reproducibility | have not tried |
Status | closed | Resolution | fixed | |
Platform | | OS | | OS Version | |
Product Version | 3.50 | |
Target Version | 3.51 | Fixed in Version | 3.51 | |
|
Summary | 0001047: Possible to login with blank password when LDAP is enabled |
Description | can login without password on any user accept for admin... With password I can login on the SIT system, wrong password isn't accepted, but leave the password blank I can login in every user (accept admin) on the SIT system. |
Steps To Reproduce | |
Additional Information | See this forum post for discussion:
http://sitracker.org/forum/viewtopic.php?f=4&t=1416979&p=2292 [^] |
Tags | security |
Relationships | |
Attached Files | bug1047.patch (10,155) 2010-01-20 20:55 http://bugs.sitracker.org/file_download.php?file_id=75&type=bug
functions.inc.php (286,368) 2010-01-20 20:56 http://bugs.sitracker.org/file_download.php?file_id=76&type=bug |
|
Issue History |
Date Modified | Username | Field | Change |
2010-01-20 18:47 | ivan | New Issue | |
2010-01-20 18:47 | ivan | Tag Attached: security | |
2010-01-20 18:56 | ivan | Note Added: 0002295 | |
2010-01-20 18:56 | ivan | Product Version | => 3.50 |
2010-01-20 18:56 | ivan | Target Version | => 3.51 |
2010-01-20 18:57 | ivan | Note Edited: 0002295 | bug_revision_view_page.php?bugnote_id=2295#r60 |
2010-01-20 19:21 | paulh | Note Added: 0002296 | |
2010-01-20 19:21 | paulh | Status | new => confirmed |
2010-01-20 19:28 | kieran | Note Added: 0002297 | |
2010-01-20 19:42 | paulh | Note Added: 0002298 | |
2010-01-20 19:56 | kieran | Note Deleted: 0002297 | |
2010-01-20 20:00 | ivan | Sticky Issue | No => Yes |
2010-01-20 20:42 | paulh | Status | confirmed => assigned |
2010-01-20 20:42 | paulh | Assigned To | => paulh |
2010-01-20 20:55 | paulh | File Added: bug1047.patch | |
2010-01-20 20:56 | paulh | File Added: functions.inc.php | |
2010-01-20 21:01 | paulh | Note Added: 0002299 | |
2010-01-20 21:01 | paulh | Status | assigned => resolved |
2010-01-20 21:01 | paulh | Resolution | open => fixed |
2010-01-20 21:01 | paulh | Fixed in Version | => Current SVN |
2010-01-23 19:01 | ivan | Fixed in Version | Current SVN => 3.51 |
2010-01-23 19:02 | ivan | Note Added: 0002302 | |
2010-01-23 19:02 | ivan | Status | resolved => closed |
2010-01-27 21:42 | ivan | Sticky Issue | Yes => No |
Notes |
|
(0002295)
|
ivan
|
2010-01-20 18:56
(edited on: 2010-01-20 18:57) |
|
Since this is so serious, if you want an immediate work-around to make your systems safe you can insert the following line of code into your lib/functions.inc.php file at line 152 (assuming you're running v3.50)
if (empty($password)) return false;
This will ensure it's never possible to login with an empty password. A proper fix will be included with 3.51 after we've had time to investigate this properly.
|
|
|
(0002296)
|
paulh
|
2010-01-20 19:21
|
|
|
|
(0002298)
|
paulh
|
2010-01-20 19:42
|
|
Having worked though the code I've identified the source of this problem to be that eDirectory treats binds without a oassword as anonymous binds:
02:02:29 3E248950 LDAP: DoBind on connection 0xfb5a040
02:02:29 3E248950 LDAP: Treating simple bind with no password as anonymous
02:02:29 3E248950 LDAP: Bind name:NULL, version:3, authentication:simple
02:02:29 3E248950 LDAP: Sending operation result 0:"":"" to connection 0xfb5a040
Which in eDirectory isn't an issue as anonymous bound users are only able to see a limited set of attributes though SiT gets a status of 0 back (login successful) hence why we let the user in.
Not sure of the best fix though suspecting the workaround Ivan posted is the best |
|
|
(0002299)
|
paulh
|
2010-01-20 21:01
|
|
r6021 resolves this issue in 3.x and trunk also a patch and a patched functions.inc.php is available in this bug |
|
|
(0002302)
|
ivan
|
2010-01-23 19:02
|
|
Fix released in v3.51 which is now available |
|