Valider ff3e89c3 rédigé par marcimat's avatar marcimat Validation de Gitea
Parcourir les fichiers

security: Cacher des fonctions debug certaines valeurs de paramètres (PHP 8.2+)

Refs: #5465
parent c42604e1
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+4 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -53,7 +53,7 @@ if (!isset($GLOBALS['ldap_attributes']) or !is_array($GLOBALS['ldap_attributes']
 * @param bool $phpauth
 * @return array|bool
 */
function auth_ldap_dist($login, $pass, $serveur = '', $phpauth = false) {
function auth_ldap_dist($login, #[\SensitiveParameter] $pass, $serveur = '', $phpauth = false) {

	#spip_log("ldap $login " . ($pass ? "mdp fourni" : "mdp absent"));

@@ -154,7 +154,7 @@ function auth_ldap_connect($serveur = '') {
 * @return string
 *    Le login trouvé ou chaine vide si non trouvé
 */
function auth_ldap_search($login, $pass, $checkpass = true, $serveur = '') {
function auth_ldap_search($login, #[\SensitiveParameter] $pass, $checkpass = true, $serveur = '') {
	// Securite anti-injection et contre un serveur LDAP laxiste
	$login_search = preg_replace('/[^-@._\s\d\w]/', '', $login);
	if (!strlen($login_search) or ($checkpass and !strlen($pass))) {
@@ -276,7 +276,7 @@ function auth_ldap_retrouver_login($login, $serveur = '') {
 * @return string
 *   Message d'erreur si login non valide, chaîne vide sinon
 */
function auth_ldap_verifier_pass($login, $new_pass, $id_auteur = 0, $serveur = '') {
function auth_ldap_verifier_pass($login, #[\SensitiveParameter] $new_pass, $id_auteur = 0, $serveur = '') {
	include_spip('auth/spip');

	return auth_spip_verifier_pass($login, $new_pass, $id_auteur, $serveur);
@@ -317,7 +317,7 @@ function auth_ldap_autoriser_modifier_pass($serveur = '') {
 * @return bool
 *    Informe du succès ou de l'echec du changement du mot de passe
 */
function auth_ldap_modifier_pass($login, $new_pass, $id_auteur, $serveur = '') {
function auth_ldap_modifier_pass($login, #[\SensitiveParameter] $new_pass, $id_auteur, $serveur = '') {
	if (is_null($new_pass) or auth_ldap_verifier_pass($login, $new_pass, $id_auteur, $serveur) != '') {
		return false;
	}
+3 −3
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -31,7 +31,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
 * @param bool $phpauth
 * @return array|bool
 */
function auth_spip_dist($login, $pass, $serveur = '', $phpauth = false) {
function auth_spip_dist($login, #[\SensitiveParameter] $pass, $serveur = '', $phpauth = false) {

	// retrouver le login
	$login = auth_spip_retrouver_login($login);
@@ -439,7 +439,7 @@ function auth_spip_autoriser_modifier_pass(string $serveur = ''): bool {
 * @return string
 *  message d'erreur si login non valide, chaine vide sinon
 */
function auth_spip_verifier_pass($login, $new_pass, $id_auteur = 0, $serveur = '') {
function auth_spip_verifier_pass($login, #[\SensitiveParameter] $new_pass, $id_auteur = 0, $serveur = '') {
	// login et mot de passe
	if (strlen($new_pass) < _PASS_LONGUEUR_MINI) {
		return _T('info_passe_trop_court_car_pluriel', ['nb' => _PASS_LONGUEUR_MINI]);
@@ -458,7 +458,7 @@ function auth_spip_verifier_pass($login, $new_pass, $id_auteur = 0, $serveur = '
 * @param string $serveur
 * @return bool
 */
function auth_spip_modifier_pass($login, $new_pass, $id_auteur, $serveur = '') {
function auth_spip_modifier_pass($login, #[\SensitiveParameter] $new_pass, $id_auteur, $serveur = '') {
	if (is_null($new_pass) or auth_spip_verifier_pass($login, $new_pass, $id_auteur, $serveur) != '') {
		return false;
	}
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -243,7 +243,7 @@ function spip_connect_db(
	$host,
	$port,
	$login,
	$pass,
	#[\SensitiveParameter] $pass,
	$db = '',
	$type = 'mysql',
	$prefixe = '',
+3 −3
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -206,7 +206,7 @@ function low_sec($id_auteur) {
 *
 * @filtre
 */
function securiser_acces_low_sec($id_auteur, $cle, $dir, $op = '', $args = '') {
function securiser_acces_low_sec($id_auteur, #[\SensitiveParameter] $cle, $dir, $op = '', $args = '') {
	if ($op) {
		$dir .= " $op $args";
	}
@@ -301,7 +301,7 @@ function afficher_low_sec($id_auteur, $action = '') {
 * @return bool
 *     true si les clés corresponde, false sinon
 **/
function verifier_low_sec($id_auteur, $cle, $action = '') {
function verifier_low_sec($id_auteur, #[\SensitiveParameter] $cle, $action = '') {
	return ($cle == afficher_low_sec($id_auteur, $action));
}

@@ -401,7 +401,7 @@ function generer_htpasswd_files($htpasswd, $htpasswd_admin) {
 * @return void|string
 *  La chaîne hachée si fonction crypt présente, rien sinon.
 */
function generer_htpass($pass) {
function generer_htpass(#[\SensitiveParameter] $pass) {
	if ($generer_htpass = charger_fonction('generer_htpass', 'inc', true)) {
		return $generer_htpass($pass);
	}
+6 −6
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -68,7 +68,7 @@ function inc_auth_dist() {
 * @param string $password
 * @return bool
 */
function auth_controler_password_auteur_connecte(string $password): bool {
function auth_controler_password_auteur_connecte(#[\SensitiveParameter] string $password): bool {

	if (
		empty($GLOBALS['visiteur_session']['id_auteur'])
@@ -508,7 +508,7 @@ function auth_informer_login($login, $serveur = '') {
 * @param string $serveur
 * @return mixed
 */
function auth_identifier_login($login, $password, $serveur = '', bool $phpauth = false) {
function auth_identifier_login($login, #[\SensitiveParameter] $password, $serveur = '', bool $phpauth = false) {
	$erreur = '';
	foreach ($GLOBALS['liste_des_authentifications'] as $methode) {
		if ($auth = charger_fonction($methode, 'auth', true)) {
@@ -673,7 +673,7 @@ function auth_autoriser_modifier_pass($auth_methode, $serveur = '') {
 * @return string
 *  message d'erreur ou chaine vide si pas d'erreur
 */
function auth_verifier_pass($auth_methode, $login, $new_pass, $id_auteur = 0, $serveur = '') {
function auth_verifier_pass($auth_methode, $login, #[\SensitiveParameter] $new_pass, $id_auteur = 0, $serveur = '') {
	$args = func_get_args();
	return auth_administrer('verifier_pass', $args, '');
}
@@ -690,7 +690,7 @@ function auth_verifier_pass($auth_methode, $login, $new_pass, $id_auteur = 0, $s
 * @return bool
 *  succes ou echec
 */
function auth_modifier_pass($auth_methode, $login, $new_pass, $id_auteur, $serveur = '') {
function auth_modifier_pass($auth_methode, $login, #[\SensitiveParameter] $new_pass, $id_auteur, $serveur = '') {
	$args = func_get_args();
	return auth_administrer('modifier_pass', $args);
}
@@ -737,7 +737,7 @@ function auth_synchroniser_distant(
 * @param string $serveur
 * @return array|bool
 */
function lire_php_auth($login, $pw, $serveur = '') {
function lire_php_auth($login, #[\SensitiveParameter] $pw, $serveur = '') {
	if (
		!$login
		or !$login_base = auth_retrouver_login($login, $serveur)
Chargement en cours