Project

General

Profile

action #75337

Portal: Anmeldung fehlgeschlagen

Added by EDV_Lotse 9 months ago. Updated 9 months ago.

Status:
Closed
Priority:
High
Assignee:
Category:
Bug
Target version:
Start date:
2020-10-26
Due date:
2020-11-06
% Done:

100%

Estimated time:

Description

Beim Versuch sich anzumelden als Administrator kommt die Meldung "Anmeldung fehlgeschlagen".

In der Log-Datei vh-intern-ssl-error.log bzw. vh-extern-error.log kommen folgende Fehlermeldungen:

[Mon Oct 26 13:59:01.941757 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to access array offset on value of type null in /srv/www/htdocs/portal/script/login.php on line 50, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941805 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to access array offset on value of type null in /srv/www/htdocs/portal/script/login.php on line 53, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941814 2020] [php7:warn] [pid 5538] [client 192.168.101.111:61345] PHP Warning: Illegal string offset 'expiryts' in /srv/www/htdocs/portal/script/login.php on line 55, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941831 2020] [php7:warn] [pid 5538] [client 192.168.101.111:61345] PHP Warning: A non-numeric value encountered in /srv/www/htdocs/portal/script/login.php on line 55, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941843 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to get property 'samaccountname' of non-object in /srv/www/htdocs/portal/script/login.php on line 70, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941856 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to get property 'displayname' of non-object in /srv/www/htdocs/portal/script/login.php on line 71, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941863 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to get property 'sn' of non-object in /srv/www/htdocs/portal/script/login.php on line 72, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941875 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to get property 'givenname' of non-object in /srv/www/htdocs/portal/script/login.php on line 73, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941882 2020] [php7:warn] [pid 5538] [client 192.168.101.111:61345] PHP Warning: Illegal string offset 'expiryformat' in /srv/www/htdocs/portal/script/login.php on line 74, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941895 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to get property 'objectsid' of non-object in /srv/www/htdocs/portal/script/login.php on line 76, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941911 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Undefined offset: 4 in /srv/www/htdocs/portal/inc/functions.inc.php on line 47, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941925 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to access array offset on value of type null in /srv/www/htdocs/portal/script/login.php on line 78, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941932 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to access array offset on value of type null in /srv/www/htdocs/portal/script/login.php on line 78, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941946 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] PHP Notice: Trying to access array offset on value of type null in /srv/www/htdocs/portal/script/login.php on line 86, referer: https://inviz.domain.lan/
[Mon Oct 26 13:59:01.941954 2020] [php7:notice] [pid 5538] [client 192.168.101.111:61345] Unauthorized access: User "" password check failed (4, login.php)., referer: https://inviz.domain.lan/

History

#1 Updated by flacco 9 months ago

  • Due date set to 2020-11-06
  • Status changed from New to In Progress
  • % Done changed from 0 to 40

Ich habe in login.php aus:

$data = json_decode($_COOKIE['invis-login'], true);

folgendes gemacht:

$data = json_decode(urldecode($_COOKIE['invis-login']), true);

Das scheint mit PHP 7.4 erforderlich zu sein und tut bei 7.2 nicht weh. Funktioniert auch bei meiner Installation.

Ich gehe davon aus, dass wir das auch in den anderen PHP-Scripts des Portals machen müssen wenn der Inhalt von Cookies durch die Funktion json_decode() läuft.

#2 Updated by flacco 9 months ago

  • Status changed from In Progress to Resolved
  • % Done changed from 40 to 80

Das Problem basiert auf dem PHP Patch für die Schwachstelle CVE-2020-7070. Der zugehörige Patch wurde in PHP 7.4.6 unter Leap 15.2 bereits integriert. Für PHP 7.2.5 unter Leap 15.1 steht das noch aus. Daher konnte das Portal nicht pauschal an diesen Patch angepasst werden. Daher habe ich, basierend auf einer Idee von Ingo, das Ganze konfigurierbar gemacht.

In /etc/invis/portal/config.php muss folgende Zeile eingefügt werden:

$CVE20207070 = false;

Der Wert muss unter Leap 15.2 immer auf "true" gesetzt werden. Unter Leap 15.1 erst, wenn der Patch in PHP7 eingebaut wurde. Merkt man daran, dass man sich eben nicht mehr am Portal anmelden kann. ;-)

#3 Updated by flacco 9 months ago

  • Status changed from Resolved to Closed
  • % Done changed from 80 to 100

Scheint alles zu funktionieren.

Also available in: Atom PDF