r2324 - forward-port the last fix into trunk
authorDenis Ovsienko <infrastation@yandex.ru>
Mon, 12 Jan 2009 13:10:37 +0000 (13:10 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Mon, 12 Jan 2009 13:10:37 +0000 (13:10 +0000)
ChangeLog
inc/auth.php

index f2fd5ba00eda4e23c45744f72db5082e4d61669e..6fd8720890c662e2a826ee6d864a20093da5bdf7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -15,6 +15,8 @@
        update: introduce icons for routers and SLB
        bugfix: show error message if snmp module isn't loaded.  closes ticket 43 (by Aaron)
        bugfix: show error message for duplicate IPv4 network record
+       bugfix: it was possible to access the system as any existing
+               LDAP user w/o his password (reported by Igor Shishkin)
 0.16.4 2008-11-04
        bugfix: display VS/RS config block in RS pool view
        bugfix: resolve tabindex issues in many forms
index 71ea5f7de78a367ee74a91b9a076cf283b445fa2..192f21abf2a0305b53f8738c03a03586e2f4c51d 100644 (file)
@@ -6,13 +6,17 @@ Authentication library for RackTables.
 */
 
 // This function ensures that we don't continue without a legitimate
-// username and password.
+// username and password (also make sure, that both are present, this
+// is especially useful for LDAP auth code to not deceive itself with
+// anonymous binding).
 function authenticate ()
 {
        if
        (
                !isset ($_SERVER['PHP_AUTH_USER']) or
+               !strlen ($_SERVER['PHP_AUTH_USER']) or
                !isset ($_SERVER['PHP_AUTH_PW']) or
+               !strlen ($_SERVER['PHP_AUTH_PW']) or
                !authenticated ($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) or
                isset ($_REQUEST['logout'])
        )