Mysql Pass & Salt IPboard

05/14/2020 10:26 -=-Killha-=-#1
Hallo, ich habe ein externen Login für IPboard was aber nicht mehr geht seit der Umstellung auf 4.4, nun habe ich schon alles auf mysqli umgestellt und PHP 7

Code:
$result=$mysqli->query("SELECT * FROM ".$pf."core_members WHERE member_id='" . $id . "'");
while($rows=$result->fetch_array()){
	$checkpass=$rows['members_pass_hash'];
	$salt=$rows['members_pass_salt'];
	}
Code:
$password = md5( md5( $salt ) . md5( $password ) );
IPboard sagt folgendes :

Code:
static public function authenticateMember( $member_key, $md5_once_password )
	{
		/* Load member */
		$member = self::load( $member_key );

		if ( ! $member['member_id'] )
		{
			return FALSE;
		}

		if ( $member['members_pass_hash'] == self::generateCompiledPasshash( $member['members_pass_salt'], $md5_once_password ) )
		{
			return true;
		}
		else
		{
			return false;
		}
	}



static public function generateCompiledPasshash( $salt, $md5_once_password )
	{
		return md5( md5( $salt ) . $md5_once_password );
	}


static public function generatePasswordSalt($len=5)
	{
		$salt = '';

		for ( $i = 0; $i < $len; $i++ )
		{
			$num   = mt_rand(33, 126);

			if ( $num == '92' )
			{
				$num = 93;
			}

			$salt .= chr( $num );
		}

		return $salt;
	}



	static public function generateAutoLoginKey( $len=60 )
	{
		$pass = self::generatePasswordSalt( $len );

		return md5($pass);
	}

Wie muss ich das Verstehen ? das Passwort ist der 60VCHAR generierte Code als md5?
05/14/2020 14:03 Devsome#2
Ich habe damals für das IPBoard ein externen Login mit oAuth gelöst. Dafür braucht man die clientId und clientSecret. Kann dann mit curl an das Forum eine Abfrage starten und erhält einen Token oder eine Fehlermeldung.

Da ich davon nicht viel Online gesehen habe, oder meistens Code Schnippsel die nicht Funktionierten würde ich dich an die Dokumentation weiterleiten.

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]
05/15/2020 14:34 Baaaawz ヅ#3
PHP Code:
$password md5md5$salt ) . md5$password ) );

static public function 
generateCompiledPasshash$salt$md5_once_password )
    {
        return 
md5md5$salt ) . $md5_once_password );
    } 
Ist $md5 once password bereits md5 drüber?

Allgemein finde ich es fürchterlich wenn jemand

1. MD5 nutzt (SHA-512 finde ich besser)
2. Keine prepare Statements gemacht werden (SQL Injections)