|
@@ -44,23 +44,23 @@ discard block |
|
|
block discarded – undo |
|
44
|
44
|
throw new Exception("Error file '/includes/config/tp.config.php' not exists", 1); |
|
45
|
45
|
} |
|
46
|
46
|
|
|
47
|
|
-if (! isset($SETTINGS['cpassman_dir']) || empty($SETTINGS['cpassman_dir']) === true || $SETTINGS['cpassman_dir'] === '.') { |
|
|
47
|
+if (!isset($SETTINGS['cpassman_dir']) || empty($SETTINGS['cpassman_dir']) === true || $SETTINGS['cpassman_dir'] === '.') { |
|
48
|
48
|
$SETTINGS = []; |
|
49
|
49
|
$SETTINGS['cpassman_dir'] = '..'; |
|
50
|
50
|
} |
|
51
|
51
|
|
|
52
|
|
-require_once $SETTINGS['cpassman_dir'] . '/sources/main.functions.php'; |
|
53
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/config/include.php'; |
|
54
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/config/settings.php'; |
|
|
52
|
+require_once $SETTINGS['cpassman_dir'].'/sources/main.functions.php'; |
|
|
53
|
+require_once $SETTINGS['cpassman_dir'].'/includes/config/include.php'; |
|
|
54
|
+require_once $SETTINGS['cpassman_dir'].'/includes/config/settings.php'; |
|
55
|
55
|
|
|
56
|
56
|
// If Debug then clean the files |
|
57
|
57
|
if (DEBUGLDAP === true) { |
|
58
|
|
- define('DEBUGLDAPFILE', $SETTINGS['path_to_files_folder'] . '/ldap.debug.txt'); |
|
|
58
|
+ define('DEBUGLDAPFILE', $SETTINGS['path_to_files_folder'].'/ldap.debug.txt'); |
|
59
|
59
|
$fp = fopen(DEBUGLDAPFILE, 'w'); |
|
60
|
60
|
fclose($fp); |
|
61
|
61
|
} |
|
62
|
62
|
if (DEBUGDUO === true) { |
|
63
|
|
- define('DEBUGDUOFILE', $SETTINGS['path_to_files_folder'] . '/duo.debug.txt'); |
|
|
63
|
+ define('DEBUGDUOFILE', $SETTINGS['path_to_files_folder'].'/duo.debug.txt'); |
|
64
|
64
|
$fp = fopen(DEBUGDUOFILE, 'w'); |
|
65
|
65
|
fclose($fp); |
|
66
|
66
|
} |
|
@@ -76,7 +76,7 @@ discard block |
|
|
block discarded – undo |
|
76
|
76
|
if (defined('DB_PASSWD_CLEAR') === false) { |
|
77
|
77
|
define('DB_PASSWD_CLEAR', defuseReturnDecrypted(DB_PASSWD, $SETTINGS)); |
|
78
|
78
|
} |
|
79
|
|
-require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Database/Meekrodb/db.class.php'; |
|
|
79
|
+require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Database/Meekrodb/db.class.php'; |
|
80
|
80
|
if (defined('DB_PASSWD_CLEAR') === false) { |
|
81
|
81
|
define('DB_PASSWD_CLEAR', defuseReturnDecrypted(DB_PASSWD, $SETTINGS)); |
|
82
|
82
|
} |
|
@@ -95,7 +95,7 @@ discard block |
|
|
block discarded – undo |
|
95
|
95
|
// Get DUO keys |
|
96
|
96
|
$duoData = DB::query( |
|
97
|
97
|
'SELECT intitule, valeur |
|
98
|
|
- FROM ' . prefixTable('misc') . ' |
|
|
98
|
+ FROM ' . prefixTable('misc').' |
|
99
|
99
|
WHERE type = %s', |
|
100
|
100
|
'duoSecurity' |
|
101
|
101
|
); |
|
@@ -105,7 +105,7 @@ discard block |
|
|
block discarded – undo |
|
105
|
105
|
} |
|
106
|
106
|
|
|
107
|
107
|
// load library |
|
108
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Authentication/DuoSecurity/Duo.php'; |
|
|
108
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/Authentication/DuoSecurity/Duo.php'; |
|
109
|
109
|
$sig_request = Duo::signRequest( |
|
110
|
110
|
$_GLOBALS['IKEY'], |
|
111
|
111
|
$_GLOBALS['SKEY'], |
|
@@ -116,16 +116,16 @@ discard block |
|
|
block discarded – undo |
|
116
|
116
|
debugIdentify( |
|
117
|
117
|
DEBUGDUO, |
|
118
|
118
|
DEBUGDUOFILE, |
|
119
|
|
- "\n\n-----\n\n" . |
|
120
|
|
- 'sig request : ' . $post_login . "\n" . |
|
121
|
|
- 'resp : ' . $sig_request . "\n" |
|
|
119
|
+ "\n\n-----\n\n". |
|
|
120
|
+ 'sig request : '.$post_login."\n". |
|
|
121
|
+ 'resp : '.$sig_request."\n" |
|
122
|
122
|
); |
|
123
|
123
|
} |
|
124
|
124
|
|
|
125
|
125
|
// load csrfprotector |
|
126
|
|
- $csrfp_config = include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/csrfp/libs/csrfp.config.php'; |
|
|
126
|
+ $csrfp_config = include_once $SETTINGS['cpassman_dir'].'/includes/libraries/csrfp/libs/csrfp.config.php'; |
|
127
|
127
|
// return result |
|
128
|
|
- echo '[{"sig_request" : "' . $sig_request . '" , "csrfp_token" : "' . $csrfp_config['CSRFP_TOKEN'] . '" , "csrfp_key" : "' . filter_var($_COOKIE[$csrfp_config['CSRFP_TOKEN']], FILTER_SANITIZE_STRING) . '"}]'; |
|
|
128
|
+ echo '[{"sig_request" : "'.$sig_request.'" , "csrfp_token" : "'.$csrfp_config['CSRFP_TOKEN'].'" , "csrfp_key" : "'.filter_var($_COOKIE[$csrfp_config['CSRFP_TOKEN']], FILTER_SANITIZE_STRING).'"}]'; |
|
129
|
129
|
// --- |
|
130
|
130
|
// --- |
|
131
|
131
|
} elseif ($post_type === 'identify_duo_user_check') { |
|
@@ -135,7 +135,7 @@ discard block |
|
|
block discarded – undo |
|
135
|
135
|
//-------- |
|
136
|
136
|
|
|
137
|
137
|
// load library |
|
138
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Authentication/DuoSecurity/Duo.php'; |
|
|
138
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/Authentication/DuoSecurity/Duo.php'; |
|
139
|
139
|
$authenticated_username = Duo::verifyResponse( |
|
140
|
140
|
$SETTINGS['duo_ikey'], |
|
141
|
141
|
$SETTINGS['duo_skey'], |
|
@@ -146,9 +146,9 @@ discard block |
|
|
block discarded – undo |
|
146
|
146
|
debugIdentify( |
|
147
|
147
|
DEBUGDUO, |
|
148
|
148
|
DEBUGDUOFILE, |
|
149
|
|
- "\n\n-----\n\n" . |
|
150
|
|
- 'sig response : ' . $post_sig_response . "\n" . |
|
151
|
|
- 'resp : ' . $authenticated_username . "\n" |
|
|
149
|
+ "\n\n-----\n\n". |
|
|
150
|
+ 'sig response : '.$post_sig_response."\n". |
|
|
151
|
+ 'resp : '.$authenticated_username."\n" |
|
152
|
152
|
); |
|
153
|
153
|
} |
|
154
|
154
|
|
|
@@ -159,7 +159,7 @@ discard block |
|
|
block discarded – undo |
|
159
|
159
|
// is user in Teampass? |
|
160
|
160
|
DB::queryfirstrow( |
|
161
|
161
|
'SELECT id |
|
162
|
|
- FROM ' . prefixTable('users') . ' |
|
|
162
|
+ FROM ' . prefixTable('users').' |
|
163
|
163
|
WHERE login = %s', |
|
164
|
164
|
$post_login |
|
165
|
165
|
); |
|
@@ -169,9 +169,9 @@ discard block |
|
|
block discarded – undo |
|
169
|
169
|
} |
|
170
|
170
|
} |
|
171
|
171
|
|
|
172
|
|
- echo '[{"authenticated_username" : "' . $authenticated_username . '"}]'; |
|
|
172
|
+ echo '[{"authenticated_username" : "'.$authenticated_username.'"}]'; |
|
173
|
173
|
} else { |
|
174
|
|
- echo '[{"authenticated_username" : "' . $authenticated_username . '"}]'; |
|
|
174
|
+ echo '[{"authenticated_username" : "'.$authenticated_username.'"}]'; |
|
175
|
175
|
} |
|
176
|
176
|
// --- |
|
177
|
177
|
// --- |
|
@@ -181,7 +181,7 @@ discard block |
|
|
block discarded – undo |
|
181
|
181
|
//-------- |
|
182
|
182
|
|
|
183
|
183
|
// Load superGlobals |
|
184
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
|
184
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
185
|
185
|
$superGlobal = new protect\SuperGlobal\SuperGlobal(); |
|
186
|
186
|
// Prepare GET variables |
|
187
|
187
|
$sessionPwdAttempts = $superGlobal->get('pwd_attempts', 'SESSION'); |
|
@@ -284,19 +284,19 @@ discard block |
|
|
block discarded – undo |
|
284
|
284
|
} else { |
|
285
|
285
|
throw new Exception("Error file '/includes/config/tp.config.php' not exists", 1); |
|
286
|
286
|
} |
|
287
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/config/settings.php'; |
|
288
|
|
- include_once $SETTINGS['cpassman_dir'] . '/sources/main.functions.php'; |
|
289
|
|
- include_once $SETTINGS['cpassman_dir'] . '/sources/SplClassLoader.php'; |
|
|
287
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/config/settings.php'; |
|
|
288
|
+ include_once $SETTINGS['cpassman_dir'].'/sources/main.functions.php'; |
|
|
289
|
+ include_once $SETTINGS['cpassman_dir'].'/sources/SplClassLoader.php'; |
|
290
|
290
|
|
|
291
|
291
|
header('Content-type: text/html; charset=utf-8'); |
|
292
|
292
|
error_reporting(E_ERROR); |
|
293
|
293
|
|
|
294
|
294
|
// Load AntiXSS |
|
295
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/voku/helper/AntiXSS.php'; |
|
|
295
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/voku/helper/AntiXSS.php'; |
|
296
|
296
|
$antiXss = new voku\helper\AntiXSS(); |
|
297
|
297
|
|
|
298
|
298
|
// Load superGlobals |
|
299
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
|
299
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
300
|
300
|
$superGlobal = new protect\SuperGlobal\SuperGlobal(); |
|
301
|
301
|
|
|
302
|
302
|
// Prepare GET variables |
|
@@ -310,7 +310,7 @@ discard block |
|
|
block discarded – undo |
|
310
|
310
|
$server['PHP_AUTH_PW'] = $superGlobal->get('PHP_AUTH_PW', 'SERVER'); |
|
311
|
311
|
|
|
312
|
312
|
// connect to the server |
|
313
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Database/Meekrodb/db.class.php'; |
|
|
313
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/Database/Meekrodb/db.class.php'; |
|
314
|
314
|
DB::$host = DB_HOST; |
|
315
|
315
|
DB::$user = DB_USER; |
|
316
|
316
|
DB::$password = defined('DB_PASSWD_CLEAR') === false ? defuseReturnDecrypted(DB_PASSWD, $SETTINGS) : DB_PASSWD_CLEAR; |
|
@@ -318,7 +318,7 @@ discard block |
|
|
block discarded – undo |
|
318
|
318
|
DB::$port = DB_PORT; |
|
319
|
319
|
DB::$encoding = DB_ENCODING; |
|
320
|
320
|
// User's language loading |
|
321
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/language/' . $sessionUserLanguage . '.php'; |
|
|
321
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/language/'.$sessionUserLanguage.'.php'; |
|
322
|
322
|
|
|
323
|
323
|
// decrypt and retreive data in JSON format |
|
324
|
324
|
if (empty($sessionKey) === true) { |
|
@@ -443,7 +443,7 @@ discard block |
|
|
block discarded – undo |
|
443
|
443
|
//$arrAttempts = array(); |
|
444
|
444
|
$rows = DB::query( |
|
445
|
445
|
'SELECT date |
|
446
|
|
- FROM ' . prefixTable('log_system') . " |
|
|
446
|
+ FROM ' . prefixTable('log_system')." |
|
447
|
447
|
WHERE field_1 = %s |
|
448
|
448
|
AND type = 'failed_auth' |
|
449
|
449
|
AND label = 'user_password_not_correct' |
|
@@ -459,7 +459,7 @@ discard block |
|
|
block discarded – undo |
|
459
|
459
|
foreach ($rows as $record) { |
|
460
|
460
|
array_push( |
|
461
|
461
|
$arrAttempts, |
|
462
|
|
- date($SETTINGS['date_format'] . ' ' . $SETTINGS['time_format'], (int) $record['date']) |
|
|
462
|
+ date($SETTINGS['date_format'].' '.$SETTINGS['time_format'], (int) $record['date']) |
|
463
|
463
|
); |
|
464
|
464
|
} |
|
465
|
465
|
} |
|
@@ -495,7 +495,7 @@ discard block |
|
|
block discarded – undo |
|
495
|
495
|
$superGlobal->put('user_upgrade_needed', $userInfo['upgrade_needed'], 'SESSION'); |
|
496
|
496
|
$superGlobal->put('user_force_relog', $userInfo['force-relog'], 'SESSION'); |
|
497
|
497
|
// get personal settings |
|
498
|
|
- if (! isset($userInfo['treeloadstrategy']) || empty($userInfo['treeloadstrategy'])) { |
|
|
498
|
+ if (!isset($userInfo['treeloadstrategy']) || empty($userInfo['treeloadstrategy'])) { |
|
499
|
499
|
$userInfo['treeloadstrategy'] = 'full'; |
|
500
|
500
|
} |
|
501
|
501
|
$superGlobal->put('treeloadstrategy', $userInfo['treeloadstrategy'], 'SESSION', 'user'); |
|
@@ -597,7 +597,7 @@ discard block |
|
|
block discarded – undo |
|
597
|
597
|
foreach ($superGlobal->get('user_roles', 'SESSION') as $role) { |
|
598
|
598
|
$resRoles = DB::queryFirstRow( |
|
599
|
599
|
'SELECT title, complexity |
|
600
|
|
- FROM ' . prefixTable('roles_title') . ' |
|
|
600
|
+ FROM ' . prefixTable('roles_title').' |
|
601
|
601
|
WHERE id=%i', |
|
602
|
602
|
$role |
|
603
|
603
|
); |
|
@@ -618,7 +618,7 @@ discard block |
|
|
block discarded – undo |
|
618
|
618
|
|
|
619
|
619
|
// build complete array of roles |
|
620
|
620
|
$superGlobal->put('arr_roles_full', [], 'SESSION'); |
|
621
|
|
- $rows = DB::query('SELECT id, title FROM ' . prefixTable('roles_title') . ' ORDER BY title ASC'); |
|
|
621
|
+ $rows = DB::query('SELECT id, title FROM '.prefixTable('roles_title').' ORDER BY title ASC'); |
|
622
|
622
|
foreach ($rows as $record) { |
|
623
|
623
|
$superGlobal->put( |
|
624
|
624
|
$record['id'], |
|
@@ -708,10 +708,10 @@ discard block |
|
|
block discarded – undo |
|
708
|
708
|
$superGlobal->put('latest_items_tab', [], 'SESSION'); |
|
709
|
709
|
$superGlobal->put('nb_roles', 0, 'SESSION'); |
|
710
|
710
|
foreach ($superGlobal->get('latest_items', 'SESSION') as $item) { |
|
711
|
|
- if (! empty($item)) { |
|
|
711
|
+ if (!empty($item)) { |
|
712
|
712
|
$dataLastItems = DB::queryFirstRow( |
|
713
|
713
|
'SELECT id,label,id_tree |
|
714
|
|
- FROM ' . prefixTable('items') . ' |
|
|
714
|
+ FROM ' . prefixTable('items').' |
|
715
|
715
|
WHERE id=%i', |
|
716
|
716
|
$item |
|
717
|
717
|
); |
|
@@ -720,7 +720,7 @@ discard block |
|
|
block discarded – undo |
|
720
|
720
|
[ |
|
721
|
721
|
'id' => $item, |
|
722
|
722
|
'label' => $dataLastItems['label'], |
|
723
|
|
- 'url' => 'index.php?page=items&group=' . $dataLastItems['id_tree'] . '&id=' . $item, |
|
|
723
|
+ 'url' => 'index.php?page=items&group='.$dataLastItems['id_tree'].'&id='.$item, |
|
724
|
724
|
], |
|
725
|
725
|
'SESSION', |
|
726
|
726
|
'latest_items_tab' |
|
@@ -737,12 +737,12 @@ discard block |
|
|
block discarded – undo |
|
737
|
737
|
) { |
|
738
|
738
|
// get all Admin users |
|
739
|
739
|
$receivers = ''; |
|
740
|
|
- $rows = DB::query('SELECT email FROM ' . prefixTable('users') . " WHERE admin = %i and email != ''", 1); |
|
|
740
|
+ $rows = DB::query('SELECT email FROM '.prefixTable('users')." WHERE admin = %i and email != ''", 1); |
|
741
|
741
|
foreach ($rows as $record) { |
|
742
|
742
|
if (empty($receivers)) { |
|
743
|
743
|
$receivers = $record['email']; |
|
744
|
744
|
} else { |
|
745
|
|
- $receivers = ',' . $record['email']; |
|
|
745
|
+ $receivers = ','.$record['email']; |
|
746
|
746
|
} |
|
747
|
747
|
} |
|
748
|
748
|
// Add email to table |
|
@@ -758,7 +758,7 @@ discard block |
|
|
block discarded – undo |
|
758
|
758
|
'#tp_time#', |
|
759
|
759
|
], |
|
760
|
760
|
[ |
|
761
|
|
- ' ' . $superGlobal->get('login', 'SESSION') . ' (IP: ' . getClientIpServer() . ')', |
|
|
761
|
+ ' '.$superGlobal->get('login', 'SESSION').' (IP: '.getClientIpServer().')', |
|
762
|
762
|
date($SETTINGS['date_format'], (int) $superGlobal->get('last_connection', 'SESSION')), |
|
763
|
763
|
date($SETTINGS['time_format'], (int) $superGlobal->get('last_connection', 'SESSION')), |
|
764
|
764
|
], |
|
@@ -903,8 +903,8 @@ discard block |
|
|
block discarded – undo |
|
903
|
903
|
debugIdentify( |
|
904
|
904
|
DEBUGDUO, |
|
905
|
905
|
DEBUGDUOFILE, |
|
906
|
|
- "\n\n----\n" . |
|
907
|
|
- 'Identified : ' . filter_var($return, FILTER_SANITIZE_STRING) . "\n\n" |
|
|
906
|
+ "\n\n----\n". |
|
|
907
|
+ 'Identified : '.filter_var($return, FILTER_SANITIZE_STRING)."\n\n" |
|
908
|
908
|
); |
|
909
|
909
|
echo prepareExchangedData( |
|
910
|
910
|
[ |
|
@@ -970,44 +970,44 @@ discard block |
|
|
block discarded – undo |
|
970
|
970
|
], |
|
971
|
971
|
]; |
|
972
|
972
|
// Load expected libraries |
|
973
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Illuminate/Contracts/Auth/Authenticatable.php'; |
|
974
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Support/Traits/EnumeratesValues.php'; |
|
975
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Support/Traits/Macroable.php'; |
|
976
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Support/helpers.php'; |
|
977
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Support/Arr.php'; |
|
978
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Contracts/Support/Jsonable.php'; |
|
979
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Contracts/Support/Arrayable.php'; |
|
980
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Support/Enumerable.php'; |
|
981
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Tightenco/Collect/Support/Collection.php'; |
|
982
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/CarbonTimeZone.php'; |
|
983
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Units.php'; |
|
984
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Week.php'; |
|
985
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Timestamp.php'; |
|
986
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Test.php'; |
|
987
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/ObjectInitialisation.php'; |
|
988
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Serialization.php'; |
|
989
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/IntervalRounding.php'; |
|
990
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Rounding.php'; |
|
991
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Localization.php'; |
|
992
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Options.php'; |
|
993
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Cast.php'; |
|
994
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Mutability.php'; |
|
995
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Modifiers.php'; |
|
996
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Mixin.php'; |
|
997
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Macro.php'; |
|
998
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Difference.php'; |
|
999
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Creator.php'; |
|
1000
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Converter.php'; |
|
1001
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Comparison.php'; |
|
1002
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Boundaries.php'; |
|
1003
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Traits/Date.php'; |
|
1004
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/CarbonInterface.php'; |
|
1005
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Carbon/Carbon.php'; |
|
1006
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/LdapRecord/DetectsErrors.php'; |
|
1007
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/LdapRecord/Connection.php'; |
|
1008
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/LdapRecord/LdapInterface.php'; |
|
1009
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/LdapRecord/LdapBase.php'; |
|
1010
|
|
- require_once $SETTINGS['cpassman_dir'] . '/includes/libraries/LdapRecord/Ldap.php'; |
|
|
973
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Illuminate/Contracts/Auth/Authenticatable.php'; |
|
|
974
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Support/Traits/EnumeratesValues.php'; |
|
|
975
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Support/Traits/Macroable.php'; |
|
|
976
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Support/helpers.php'; |
|
|
977
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Support/Arr.php'; |
|
|
978
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Contracts/Support/Jsonable.php'; |
|
|
979
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Contracts/Support/Arrayable.php'; |
|
|
980
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Support/Enumerable.php'; |
|
|
981
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Tightenco/Collect/Support/Collection.php'; |
|
|
982
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/CarbonTimeZone.php'; |
|
|
983
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Units.php'; |
|
|
984
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Week.php'; |
|
|
985
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Timestamp.php'; |
|
|
986
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Test.php'; |
|
|
987
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/ObjectInitialisation.php'; |
|
|
988
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Serialization.php'; |
|
|
989
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/IntervalRounding.php'; |
|
|
990
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Rounding.php'; |
|
|
991
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Localization.php'; |
|
|
992
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Options.php'; |
|
|
993
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Cast.php'; |
|
|
994
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Mutability.php'; |
|
|
995
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Modifiers.php'; |
|
|
996
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Mixin.php'; |
|
|
997
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Macro.php'; |
|
|
998
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Difference.php'; |
|
|
999
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Creator.php'; |
|
|
1000
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Converter.php'; |
|
|
1001
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Comparison.php'; |
|
|
1002
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Boundaries.php'; |
|
|
1003
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Traits/Date.php'; |
|
|
1004
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/CarbonInterface.php'; |
|
|
1005
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/Carbon/Carbon.php'; |
|
|
1006
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/LdapRecord/DetectsErrors.php'; |
|
|
1007
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/LdapRecord/Connection.php'; |
|
|
1008
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/LdapRecord/LdapInterface.php'; |
|
|
1009
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/LdapRecord/LdapBase.php'; |
|
|
1010
|
+ require_once $SETTINGS['cpassman_dir'].'/includes/libraries/LdapRecord/Ldap.php'; |
|
1011
|
1011
|
$ad = new SplClassLoader('LdapRecord', '../includes/libraries'); |
|
1012
|
1012
|
$ad->register(); |
|
1013
|
1013
|
$connection = new Connection($config); |
|
@@ -1019,7 +1019,7 @@ discard block |
|
|
block discarded – undo |
|
1019
|
1019
|
$error = $e->getDetailedError(); |
|
1020
|
1020
|
return [ |
|
1021
|
1021
|
'error' => true, |
|
1022
|
|
- 'message' => langHdl('error').' : '.$error->getErrorCode().' - '.$error->getErrorMessage(). '<br>'.$error->getDiagnosticMessage().' '.$config['username'], |
|
|
1022
|
+ 'message' => langHdl('error').' : '.$error->getErrorCode().' - '.$error->getErrorMessage().'<br>'.$error->getDiagnosticMessage().' '.$config['username'], |
|
1023
|
1023
|
|
|
1024
|
1024
|
]; |
|
1025
|
1025
|
} |
|
@@ -1047,7 +1047,7 @@ discard block |
|
|
block discarded – undo |
|
1047
|
1047
|
} |
|
1048
|
1048
|
|
|
1049
|
1049
|
// load passwordLib library |
|
1050
|
|
- $pwdlib = new SplClassLoader('PasswordLib', $SETTINGS['cpassman_dir'] . '/includes/libraries'); |
|
|
1050
|
+ $pwdlib = new SplClassLoader('PasswordLib', $SETTINGS['cpassman_dir'].'/includes/libraries'); |
|
1051
|
1051
|
$pwdlib->register(); |
|
1052
|
1052
|
$pwdlib = new PasswordLib\PasswordLib(); |
|
1053
|
1053
|
$hashedPassword = $pwdlib->createPasswordHash($passwordClear); |
|
@@ -1112,7 +1112,7 @@ discard block |
|
|
block discarded – undo |
|
1112
|
1112
|
function yubicoMFACheck($dataReceived, string $userInfo, array $SETTINGS): array |
|
1113
|
1113
|
{ |
|
1114
|
1114
|
// Load superGlobals |
|
1115
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
|
1115
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
1116
|
1116
|
$superGlobal = new protect\SuperGlobal\SuperGlobal(); |
|
1117
|
1117
|
$sessionAdmin = $superGlobal->get('user_admin', 'SESSION'); |
|
1118
|
1118
|
$sessionUrl = $superGlobal->get('initial_url', 'SESSION'); |
|
@@ -1151,7 +1151,7 @@ discard block |
|
|
block discarded – undo |
|
1151
|
1151
|
} |
|
1152
|
1152
|
|
|
1153
|
1153
|
// Now check yubico validity |
|
1154
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Authentication/Yubico/Yubico.php'; |
|
|
1154
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/Authentication/Yubico/Yubico.php'; |
|
1155
|
1155
|
$yubi = new Auth_Yubico($yubico_user_id, $yubico_user_key); |
|
1156
|
1156
|
$auth = $yubi->verify($yubico_key); |
|
1157
|
1157
|
//, null, null, null, 60 |
|
@@ -1203,7 +1203,7 @@ discard block |
|
|
block discarded – undo |
|
1203
|
1203
|
'gestionnaire' => '0', |
|
1204
|
1204
|
'can_manage_all_users' => '0', |
|
1205
|
1205
|
'personal_folder' => $SETTINGS['enable_pf_feature'] === '1' ? '1' : '0', |
|
1206
|
|
- 'fonction_id' => (empty($retLDAP['user_info_from_ad'][0]['commonGroupsLdapVsTeampass']) === false ? $retLDAP['user_info_from_ad'][0]['commonGroupsLdapVsTeampass'] . ';' : '') . (isset($SETTINGS['ldap_new_user_role']) === true ? $SETTINGS['ldap_new_user_role'] : '0'), |
|
|
1206
|
+ 'fonction_id' => (empty($retLDAP['user_info_from_ad'][0]['commonGroupsLdapVsTeampass']) === false ? $retLDAP['user_info_from_ad'][0]['commonGroupsLdapVsTeampass'].';' : '').(isset($SETTINGS['ldap_new_user_role']) === true ? $SETTINGS['ldap_new_user_role'] : '0'), |
|
1207
|
1207
|
'groupes_interdits' => '', |
|
1208
|
1208
|
'groupes_visibles' => '', |
|
1209
|
1209
|
'last_pw_change' => (int) time(), |
|
@@ -1228,7 +1228,7 @@ discard block |
|
|
block discarded – undo |
|
1228
|
1228
|
] |
|
1229
|
1229
|
); |
|
1230
|
1230
|
// Rebuild tree |
|
1231
|
|
- $tree = new SplClassLoader('Tree\NestedTree', $SETTINGS['cpassman_dir'] . '/includes/libraries'); |
|
|
1231
|
+ $tree = new SplClassLoader('Tree\NestedTree', $SETTINGS['cpassman_dir'].'/includes/libraries'); |
|
1232
|
1232
|
$tree->register(); |
|
1233
|
1233
|
$tree = new Tree\NestedTree\NestedTree(prefixTable('nested_tree'), 'id', 'parent_id', 'title'); |
|
1234
|
1234
|
$tree->rebuild(); |
|
@@ -1259,13 +1259,13 @@ discard block |
|
|
block discarded – undo |
|
1259
|
1259
|
&& empty($dataReceived['GACode']) === false |
|
1260
|
1260
|
) { |
|
1261
|
1261
|
// Load superGlobals |
|
1262
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
|
1262
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
1263
|
1263
|
$superGlobal = new protect\SuperGlobal\SuperGlobal(); |
|
1264
|
1264
|
$sessionAdmin = $superGlobal->get('user_admin', 'SESSION'); |
|
1265
|
1265
|
$sessionUrl = $superGlobal->get('initial_url', 'SESSION'); |
|
1266
|
1266
|
$sessionPwdAttempts = $superGlobal->get('pwd_attempts', 'SESSION'); |
|
1267
|
1267
|
// load library |
|
1268
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/Authentication/TwoFactorAuth/TwoFactorAuth.php'; |
|
|
1268
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/Authentication/TwoFactorAuth/TwoFactorAuth.php'; |
|
1269
|
1269
|
// create new instance |
|
1270
|
1270
|
$tfa = new Authentication\TwoFactorAuth\TwoFactorAuth($SETTINGS['ga_website_name']); |
|
1271
|
1271
|
// Init |
|
@@ -1287,7 +1287,7 @@ discard block |
|
|
block discarded – undo |
|
1287
|
1287
|
$mfaMessage = langHdl('ga_flash_qr_and_login'); |
|
1288
|
1288
|
// generate new QR |
|
1289
|
1289
|
$new_2fa_qr = $tfa->getQRCodeImageAsDataUri( |
|
1290
|
|
- 'Teampass - ' . $username, |
|
|
1290
|
+ 'Teampass - '.$username, |
|
1291
|
1291
|
$userInfo['ga'] |
|
1292
|
1292
|
); |
|
1293
|
1293
|
// clear temporary code from DB |
|
@@ -1300,7 +1300,7 @@ discard block |
|
|
block discarded – undo |
|
1300
|
1300
|
$userInfo['id'] |
|
1301
|
1301
|
); |
|
1302
|
1302
|
$firstTime = [ |
|
1303
|
|
- 'value' => '<img src="' . $new_2fa_qr . '">', |
|
|
1303
|
+ 'value' => '<img src="'.$new_2fa_qr.'">', |
|
1304
|
1304
|
'user_admin' => isset($sessionAdmin) ? (int) $sessionAdmin : '', |
|
1305
|
1305
|
'initial_url' => isset($sessionUrl) === true ? $sessionUrl : '', |
|
1306
|
1306
|
'pwd_attempts' => (int) $sessionPwdAttempts, |
|
@@ -1352,8 +1352,8 @@ discard block |
|
|
block discarded – undo |
|
1352
|
1352
|
// Set to false |
|
1353
|
1353
|
$userPasswordVerified = false; |
|
1354
|
1354
|
// load passwordLib library |
|
1355
|
|
- include_once $SETTINGS['cpassman_dir'] . '/sources/SplClassLoader.php'; |
|
1356
|
|
- $pwdlib = new SplClassLoader('PasswordLib', $SETTINGS['cpassman_dir'] . '/includes/libraries'); |
|
|
1355
|
+ include_once $SETTINGS['cpassman_dir'].'/sources/SplClassLoader.php'; |
|
|
1356
|
+ $pwdlib = new SplClassLoader('PasswordLib', $SETTINGS['cpassman_dir'].'/includes/libraries'); |
|
1357
|
1357
|
$pwdlib->register(); |
|
1358
|
1358
|
$pwdlib = new PasswordLib\PasswordLib(); |
|
1359
|
1359
|
// Check if old encryption used |
|
@@ -1484,7 +1484,7 @@ discard block |
|
|
block discarded – undo |
|
1484
|
1484
|
// Brute force management |
|
1485
|
1485
|
if ($sessionPwdAttempts > 3) { |
|
1486
|
1486
|
// Load superGlobals |
|
1487
|
|
- include_once $SETTINGS['cpassman_dir'] . '/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
|
1487
|
+ include_once $SETTINGS['cpassman_dir'].'/includes/libraries/protect/SuperGlobal/SuperGlobal.php'; |
|
1488
|
1488
|
$superGlobal = new protect\SuperGlobal\SuperGlobal(); |
|
1489
|
1489
|
$superGlobal->put('next_possible_pwd_attempts', time() + 10, 'SESSION'); |
|
1490
|
1490
|
$superGlobal->put('pwd_attempts', 0, 'SESSION'); |
|
@@ -1526,7 +1526,7 @@ discard block |
|
|
block discarded – undo |
|
1526
|
1526
|
// Check if user exists |
|
1527
|
1527
|
$userInfo = DB::queryFirstRow( |
|
1528
|
1528
|
'SELECT * |
|
1529
|
|
- FROM ' . prefixTable('users') . ' WHERE login=%s', |
|
|
1529
|
+ FROM ' . prefixTable('users').' WHERE login=%s', |
|
1530
|
1530
|
$username |
|
1531
|
1531
|
); |
|
1532
|
1532
|
|