http_endpoint mit Passwort?

  • Hallo,

    ich schlage mich gerade mit http_endpoints rum.

    In diesem Threat von User @_[Deleted]_ Einfache Script Beispiele

    habe ich den HTTP Endpoint getestet.

    Ich muss aber den Shelly per Passwort ansprechend, weil die alle per Authentifikation geschützt sind.

    Ich bekomme dann aber einen 401er vom shelly.
    Ich habe dann den Shelly Support angeschrieben und der antwortete, dass das auch so gar nicht geht, weil man

    Zitat

    "Grundsätzlich sind aus Sicherheitsgründen nicht alle Endpunkte des Shellys für eine einfache Authentifizierung ausgelegt.
    Ein Relais ein oder ausschalten wäre z.b. darüber möglich.
    Um entsprechend den Endpunkt eines Scriptes aufzurufen müssen Sie sich entsprechend per digest Auth Authentifizieren.
    https://shelly-api-docs.shelly.cloud/gen2/General/Authentication"

    Auf Rückfrage dann spezifischer

    Zitat

    "Wenn die Authentifizierung abgeschaltet ist gibt es entsprechend auch keine Authentifizierungsabfrage und alle Endpunkte sind offen zugänglich.
    Wenn Sie diese aktivieren gibt es einige Endpunkte wie das Schalten eines Relais welches über die unsichere Basic Authenfizierung möglich sind. Alle anderen Endpunkte wie z.b. einen Webserver eines Scriptes sind nicht für die Basic Authentifizierung zugänglich sondern benötigen entsprechenden Aufruf über die Sichere Digest Authentifizierung!"

    Könnte bitte mal einer von Euch das Original Script (aus dem Threat) testen? Mal mit und mal ohne Passwort.
    Ohne PW geht es bei mir.

    Danke

    Jürgen

  • Hallo,

    da das o.g. Script die Basic Auth verwendet, wird es mit den Digest geschützten Shellies nicht funktionieren. In der von dir verlinkten Doku ist ein Beispiel genannt:

    gen2-sample-code/http-digest-auth at main · ALLTERCO/gen2-sample-code
    Sample code for accessing and controlling Shelly Gen2 devices - ALLTERCO/gen2-sample-code
    github.com

    Ich habe das vor Kurzem für Node.js implementiert, grundsätzlich sollte das aber auch im Script funktionieren, frisst dort aber eine Menge Ressourcen.