jens-maus / RaspberryMatic

:house: A feature-rich but lightweight, buildroot-based Linux operating system alternative for your CloudFree CCU3/ELV-Charly 'homematicIP CCU' IoT smarthome central. Running as a pure virtual appliance (ProxmoxVE, Home Assistant, LXC, Docker/OCI, Kubernetes/K8s, etc.) on a dedicated embedded device (RaspberryPi, etc.) or generic x86/ARM hardware.
https://raspberrymatic.de
Apache License 2.0
1.53k stars 187 forks source link

Nach WebUI-Abmeldung Zugriff auf Firewall-Einstellung #875

Closed mbhomie007 closed 4 years ago

mbhomie007 commented 4 years ago

Hallo zusammen,

mir ist aufgefallen, wenn ich mich in der WebUI abmelde (Abmeldebutton oben rechts) und ich die Browser-Zurücktaste benutze, ich zur RaspberryMatic Firewall-Einstellung gelange, obwohl ich in der WebUI abgemeldet bin. :roll:

Ist das ein Bug? :oops:

Browser: Microsoft Edge RaspberryMatic Version: 3.51.6.20200621

P.S. Ich weiß, das man nicht die Browser-Zurücktaste benutzen soll...

Viele Grüße Marco

846

image image

jens-maus commented 4 years ago

Das kann schon sein bzw passieren und lässt sich ggf auch nur schwer verhindern weil der Browser das aus dem Cache zieht. Was aber definitv dann nicht gehen sollte und ansonsten ein Bug wäre ist, das man dann trotzdem änderungen vornehmen kann. Also bitte mal überprüfen.

TinkyWonky commented 4 years ago

Wie in #846 beschrieben: Wird nach langer Zeit der Inaktivität (mehrere Stunden) der Browser (Chrome) eines Android Smartphones erneut geöffnet, erscheint gelegentlich diese Seite (meist erscheint erwartungskonform die zuletzt besuchte und dargestellte Seite, meist die Geräteübersicht, ein Gerät oder ein Diagramm, und nach Betätigung eines Buttons erscheint der Hinweis auf den Session Timeout mit Link zu einer neuen Session). Diese sollte nicht aus dem Cache geladen worden sein, da die Sicherheitseinstellungen per Smartphone mWn nie explizit aufgerufen wurden.

Und ja, wenn ich dort Einstellungen verändere, werden diese gespeichert.

Das suggeriert: es wird eine neue Session eröffnet die Sicherheitseinstellungen werden geladen.

Wie kann ich das Problem noch gezielter eingrenzen?

jens-maus commented 4 years ago

Und ja, wenn ich dort Einstellungen verändere, werden diese gespeichert.

Darf ich noch einmal nachhaken?!? Ist es wirklich so, das trotz abgemeldeter/automatisch beendeter session bei fälschlicherweisem auftauchen der Firewall/Sicherheitseinstellungen man dann modifizikationen trotz beendeter session vornehmen kann?!? Das sollte natürlich definitiv nicht der Fall sein und bedeutet natürlich dann das das win Sicherheitsproblem/Bug wäre.

Dann fehlt nur noch eine kurze Anleitung wie man das reproduzierbar wiederholen kann damit ich mir das dann anschauen und entsprechend beheben kann.

mbhomie007 commented 4 years ago

"Und ja, wenn ich dort Einstellungen verändere, werden diese gespeichert."

Das kann ich so nicht bestätigen. Ich habe es nochmal getestet.

Wenn die Firewall-Sicherheitseinstellungen nach Abmeldung in der WebUI erscheinen, kann man zwar auf die Einstellungen klicken, aber Sie werden nicht übernommen und es erscheint ein komplett blauer Screen. Wenn man dann nochmal die Seite aktualisiert erscheint die Meldung "Sitzung abgelaufen".

Aber natürlich ist es verwirrend, dass man trotz WebUI Abmeldung plötzlich bei den Firewall-Einstellungen landet...

TinkyWonky commented 4 years ago

Ist es wirklich so, das trotz abgemeldeter/automatisch beendeter session bei fälschlicherweisem auftauchen der Firewall/Sicherheitseinstellungen man dann modifizikationen trotz beendeter session vornehmen kann?!?

Ja, es scheint in der Tat so zu sein. Es ist, wie beschrieben, knifflig, den Fehler zu reproduzieren, daher die späte Antwort. Habe den Fehler erst gerade eben wieder gefangen.

Bilder sagen mehr als Worte. Als der Sicherheitseinstellungendialog kam, wählte ich nicht "Express" sondern "Benutzerdefiniert aus" und erhielt diesen Screen:

Anmerkenswert ist vllt die Leere in Freigabe- und IP-Adressen-Textboxen. Ich änderte die Portfreigaben und den Mediola-Service in die Zustände Ports := offen und Mediola := kein Zugriff:

Ich bestätigte mit "OK" und erhielt einen blauen Screen ohne Inhalt (oder ich habe ihn wg. Zoom nicht gesehen). Ich lud die Seite neu und erhielt den Hinweis auf die nicht mehr gültige Session.

Mit neuer Session rief ich den Sicherheitseinstellungendialog auf und erhielt die Bestätigung, dass die eben veränderten Werte persistiert wurden:

jens-maus commented 4 years ago

Danke. Dann fehlt nur noch eine reproduzierbare Anleitung wie man diesen Case produzieren kann. Bisher scheint es ja recht zufällig/schwer reproduzierbar zu sein. Wäre hilfreich für die Fehlersuche wenn man eine Anleitung hätte wie man den Fehler erzwingen kann...

mbhomie007 commented 4 years ago

Hallo, das geht ziemlich simpel. Wenn man sich in der WebUI abmeldet (Abmeldebutton oben rechts) und dann die Browser-Zurücktaste benutzt, kommt man zur RaspberryMatic Firewall-Einstellung, obwohl man in der WebUI abgemeldet ist. Grüße Marco

TinkyWonky commented 4 years ago

Das von mir beschriebene Szenario ist ein anderes. Kein Abnmelden, kein Back-Button.

Ich bin nach wie vor leider nicht schlauer, was das Reproduzieren des Fehlverhalten angeht. Es scheint jedoch phasenweise Häufungspunkte zu geben. Wenn es passiert, passiert es häufig. Dann wieder tagelang nicht. :-(

Kryzon commented 4 years ago

Ich konnte das bei mir auch nachvollziehen.

Nach dem Abmelden einfach im Browser auf zurück (Mac OS X, Google Chrome) und man kommt in die Setup Einstellungen wie @mbhomie007 es beschrieben hat.

Die Sitzungs-ID bleibt natürlich gleich, als würde Sie soweit abgemeldet werden aber noch irgendwo temporär drin steht.

Das Wichtige ist aber, die Einstellungen die man dort vornimmt werden nicht übernommen.

jens-maus commented 4 years ago

Das Wichtige ist aber, die Einstellungen die man dort vornimmt werden nicht übernommen.

Genau darum geht es ja. In vorherigen Aussagen wurde gesagt man kann trotz abmelden Einstellungen abändern. Wenn das aber definitiv nicht der Fall ist, dann ist diese problem IMHO auch nicht kritisch und lässt sich ehrlich gesagt auch nicht unterbinden weil die Seiten beim "Browser zurück" eben die Daten aus dem Cache holen.

Kryzon commented 4 years ago

IMHO auch nicht kritisch und lässt sich ehrlich gesagt auch nicht unterbinden weil die Seiten beim "Browser zurück" eben die Daten aus dem Cache holen.

Aus dem Cache holen würde ich nicht sagen, ich kann das Problem auch im Icognito-Modus nachvollziehen. In diesem verwendet er ja i.d.r. keinen Cache. Es sei den beim Aufruf der Systemsteuerung wird das Firewall-Fenster bereits in den Cache geschrieben.

jens-maus commented 4 years ago

@Kryzon Wer sagt denn das im Igognito-Modus der Cache komplett deaktiviert ist? Er speichert nur keine Cookies, nichts im Verlauf und hinterlässt auch nichts im Disk-Cache. Der Memory-Cache wird aber sicherlich aktiv sein und das führt dann genau zu diesen Effekten. Ansonsten müsstest du ja nur mal die URL nehmen die er da zeigt und in einem frisch gestarteten Fenster die URL eingeben und du solltest nicht bei den WebUI Einstellungen landen.

TinkyWonky commented 4 years ago

Nach Upgrade auf Firmware 3.51.6.20200621 kann ich das Problem seit 2 Wochen nicht mehr reproduzieren. Es wird zwar nach wie vor sporadisch die Config-Seite angezeigt, doch eine Veränderung der Einstellungen wird nicht mehr persistiert. Zuvor wurden Änderungen immer persistiert, nun nicht mehr. Merkwürdig, aber nun gut.

Ich empfehle, das Ticket zu schließen.