Mike© : Können $_GET Variablen ausspioniert werden?

Moin @ All,

also auf der Page http://www.tagesmutter-gigi.de gibt es ein Verwaltungsmenü, welches aber für den "normalen" Besucher nicht zu sehen ist.
Damit der Besitzer der Page diese auch selbst verwalten kann, habe ich ihm eine URL mit Parametern zu verfügung gestellt.

In etwas so (Nur ein Beispiel) http:www.tagesmutter-gigi.de?Admin=IchbinderChef

Wir groß ist die Wahrscheinlichkeit, das der Parameter Admin=IchbinderChef ausspioniert werden kann, und jemand unbefugtes Zugriff auf die Aministration hat?

Danke & regds
Mike©

--
Freunde kommen und gehen. Feinde sammeln sich an.
  1. Hallo!

    Wir groß ist die Wahrscheinlichkeit, das der Parameter Admin=IchbinderChef ausspioniert werden kann, und jemand unbefugtes Zugriff auf die Aministration hat?

    Solange niemand den Quellcode kennt, nicht sehr hoch.
    Würde ich soetwas in meine Seiten einbauen, könnte ich aber nicht mehr ruhig schlafen.
    Warum baust du kein "echtes" Login ein mit Username und Passwort?
    Ist einmal ein bißchen mehr Aufwand aber dafür wesentlich sicherer.

    Security by obscurity funktioniert einfach nicht.

    mfg
      frafu

    1. Moin FraFu,

      Warum baust du kein "echtes" Login ein mit Username und Passwort?
      Ist einmal ein bißchen mehr Aufwand aber dafür wesentlich sicherer.

      Genau deshalb, ich würde diesen Aufwand für übertrieben halten. Dennoch habe ich ein ungutes Gefühl dabei.

      regds
      Mike©

      --
      Freunde kommen und gehen. Feinde sammeln sich an.
      1. Hi,

        Warum baust du kein "echtes" Login ein mit Username und Passwort?
        Ist einmal ein bißchen mehr Aufwand aber dafür wesentlich sicherer.

        Genau deshalb, ich würde diesen Aufwand für übertrieben halten. Dennoch habe ich ein ungutes Gefühl dabei.

        ein Formular mit User- und Passwortfeld ist praktisch kein Aufwand. Die Überprüfung der Daten geht in einer If-Abfrage. Wo ist das Problem?

        Schöne Grüße
        Julian

        1. Moin Julian,

          ein Formular mit User- und Passwortfeld ist praktisch kein Aufwand. Die Überprüfung der Daten geht in einer If-Abfrage. Wo ist das Problem?

          naja, es liegt am derzeitigen Konzept. Sowohl der "gewöhnliche" User als auch der Admin haben die gleiche index.php.
          Ja, ja. Ich könnte dem Admin eine andere "Login Page" basteln.

          Aber wir ich so mal kurz überfliege, scheint das mit dem übergebenen Parameter solange sicher zu sein, bis er publiziert wird.

          regds
          Mike©

          --
          Freunde kommen und gehen. Feinde sammeln sich an.
          1. Hallo!

            Aber wir ich so mal kurz überfliege, scheint das mit dem übergebenen Parameter solange sicher zu sein, bis er publiziert wird.

            Ein Auto ist auch ein 100% sicheres Verkehrsmittel, solange es nicht benutzt wird. :-)

            mfg
              frafu

            1. Moin FraFu,

              Ein Auto ist auch ein 100% sicheres Verkehrsmittel, solange es nicht benutzt wird. :-)

              Indeed. Ich sehe schon, es war richtig mal nach zu fragen.

              regds
              Mike©

              --
              Freunde kommen und gehen. Feinde sammeln sich an.
          2. Moin!

            Aber wir ich so mal kurz überfliege, scheint das mit dem übergebenen Parameter solange sicher zu sein, bis er publiziert wird.

            Es ist nicht sicher. Punkt.

            Die URL wird vom Browser des Besuchers (also auch des Admins) fast unkontrollierbar an diverse externe Stellen geschickt, wenn man nicht aufpaßt.

            Allein schon der Referrer reicht aus. Ein extern eingebundenes Bild oder eine von der Admin-Seite aus extern aufgerufene Seite, und schon hat ein fremder Webserver Kenntnis von deiner "geheimen" Seite.

            Oder man denke sich die Google-Toolbar im IE. Die fragt bei Google für die angezeigte Seite den Pagerank ab - und sendet dazu auch den Parameter mit. Und Google hat dann die Einstiegsmöglichkeit, die Admin-Seite zu indizieren.

            Insgesamt darf man sagen, dass es fast automatisch sichergestellt ist, dass irgendjemand von der geheimen URL erfährt. Es ist dabei kein qualitativer Unterschied, ob das "Geheimnis" im URL-Parameter oder in einer anderen, nirgends verlinkten Seite besteht (wie z.B. der passwortlos erlaubte Zugriff auf "/admin/index.php").

            Es ist grundsätzlich eine ganz schlechte Idee, Authentifizierungsdaten innerhalb von HTTP in der URL zu platzieren. Ein POST-Formular wäre besser, und HTTP-Authentifizierung natürlich auch.

            Willst du also immer noch mit URL-Parameter arbeiten?

            - Sven Rautenberg

            --
            My sssignature, my preciousssss!
            1. Moin Sven,

              Willst du also immer noch mit URL-Parameter arbeiten?

              Nein. TY

              regds
              Mike©

              --
              Freunde kommen und gehen. Feinde sammeln sich an.
      2. Hallo Mike,

        Genau deshalb, ich würde diesen Aufwand für übertrieben halten. Dennoch habe ich ein ungutes Gefühl dabei.

        Eine .htaccess und schon sollte das Problem gegessen sein, oder nicht?

        Schöne Grüße,

        Johannes

  2. Hallo Mike,

    Wir groß ist die Wahrscheinlichkeit, das der Parameter Admin=IchbinderChef ausspioniert werden kann, und jemand unbefugtes Zugriff auf die Aministration hat?

    wenn der Referer des Clients jedem Webserver angeliefert wird, dann ist die Wahrscheinlichkeit inakzepable hoch. Verwende dehalb Cookies oder HTTP-AUTH (Passwortschutz)! Diese werden explizit nur für _eine_ (die zugehörige) Domain / ein Verzeichnis einer Domain vom Client angeliefert. Andere Domains haben für gewöhnlich keine Möglichkeiten an in Cookies gespeicherte Daten zu gelangen.

    Gruß aus Berlin!
    eddi

  3. Hallo Mike!

    Wir groß ist die Wahrscheinlichkeit, das der Parameter Admin=IchbinderChef ausspioniert werden kann, und jemand unbefugtes Zugriff auf die Aministration hat?

    Ich erinnere mich dunkel, dass ein Forumsteilnehmer vor einiger Zeit schonmal einen "Zwischenfall" aufgrund dieser Variante hatte, vielleicht ganz lesenswert: http://forum.de.selfhtml.org/archiv/2005/8/t112756/

    Kurz zusammengefasst ist es unsicherer als ein Login mit Benutzername ohne Passwort, da die URL in allen möglichen Logfiles auftaucht. Abgesehen davon steht die Lösung auch im Quelltext, ist also doof wenn dann aus Versehen mal ne Sicherheitskopie ohne .php Endung auf dem Server vergessen wird (es gibt auch viele Editoren die automatisch Sicherheitskopien anlegen). Dann gibt es da ja noch nette Tools wie Ethereal, die Browserhistorie...

    Grüße
    Andreas

    1. Hallo!

      Ich erinnere mich dunkel, dass ein Forumsteilnehmer vor einiger Zeit schonmal einen "Zwischenfall" aufgrund dieser Variante hatte, vielleicht ganz lesenswert: http://forum.de.selfhtml.org/archiv/2005/8/t112756/

      An den Thread hab ich auch gerade gedacht. Ich glaub, Mike kennt ihn auch. :-)

      mfg
        frafu

      1. Moin FraFu,

        An den Thread hab ich auch gerade gedacht. Ich glaub, Mike kennt ihn auch. :-)

        Indeed, aber siehe meine Antwort an Andreas

        regds
        Mike©

        --
        Freunde kommen und gehen. Feinde sammeln sich an.
    2. Moin Andreas,

      Ich erinnere mich dunkel, dass ein Forumsteilnehmer vor einiger Zeit schonmal einen "Zwischenfall" aufgrund dieser Variante hatte, vielleicht ganz lesenswert:

      hier wurde der Link intern weiter gegeben. Das sollte ja hier wohl nicht passieren.

      regds
      Mike©

      --
      Freunde kommen und gehen. Feinde sammeln sich an.
      1. Hallo Mike©.

        hier wurde der Link intern weiter gegeben. Das sollte ja hier wohl nicht passieren.

        Kannst du 100%ig ausschließen, dass der Link „intern“ bleibt und niemals an „gute Bekannte“ weitergegeben wird?

        Einen schönen Donnerstag noch.

        Gruß, Ashura

        --
        sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
        mathbr:del.icio.us/ mathbr:w00t/
        1. Moin Ashura,

          Kannst du 100%ig ausschließen, dass der Link „intern“ bleibt und niemals an „gute Bekannte“ weitergegeben wird?

          Nein, kann ich nicht. Aber, von mir wird er nicht weitergegeben. Er ist nur dem Besitzer der Page und mir bekannt. Wenn ihn der Besitzer weiter gibt, dann ist das p.P.

          In diesem Fall könnten aber die übergebenen Parameter ratz fatz geändert werden. Sollte ein "Schaden" enstanden sein, dann hat das der Owner zu verantworten.

          regds
          Mike©

          --
          Freunde kommen und gehen. Feinde sammeln sich an.
          1. Hallo Mike©.

            Sollte ein "Schaden" enstanden sein, dann hat das der Owner zu verantworten.

            Und das ist dir persönlich lieber, als auf Nummer Sicher zu gehen und einen richtigen Loginmechanismus zu erstellen womit präventiv die Angriffsfläche verkleinert würde?

            Einen schönen Donnerstag noch.

            Gruß, Ashura

            --
            sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
            mathbr:del.icio.us/ mathbr:w00t/
            1. Moin Ashura,

              Und das ist dir persönlich lieber, als auf Nummer Sicher zu gehen und einen richtigen Loginmechanismus zu erstellen womit präventiv die Angriffsfläche verkleinert würde?

              OK, ich werde es in Erwähgung ziehen. Danke

              regds
              Mike©

              --
              Freunde kommen und gehen. Feinde sammeln sich an.
      2. Hallo Mike!

        Ich erinnere mich dunkel, dass ein Forumsteilnehmer vor einiger Zeit schonmal einen "Zwischenfall" aufgrund dieser Variante hatte, vielleicht ganz lesenswert:

        hier wurde der Link intern weiter gegeben. Das sollte ja hier wohl nicht passieren.

        Habt Ihr den Übeltäter letztendlich erwischt? Seid Ihr sicher, dass es jemand war an den der Link weitergegeben wurde?

        Es gibt genügend andere Wege so einen Link herauszufinden. Die URL in einem unverschlüsselten HTTP-Paket geht durch viele Netzwerke und Server/Router, über die man alle an die entsprechende URL gelangen kann. Das gilt wie bereits bemerkt wurde auch für komplett fremde Server und Netzwerke, an die diese URL per Referrer übertragen werden kann. URLs und Referrer tauchen außerdem für eine lange Zeit in vielen Logs auf (Browserhistorie, eigener Webserver, Proxies, Referrer-Logs fremder Webserver, evtl. "Firewalls" oder irgendwelche komischen Überwachungs-Systeme...). Bedenke auch, dass Logdaten wie URL und Referrer oft nicht nur Server-Administratoren zugänglich sind, sondern durch Statistik-Tools wie webalizer oder awstats auch der Öffentlichkeit.

        Wenn Du Pech hast legt sich jemand diesen Thread auf Wiedervorlage in ein paar Monaten, und durchsucht mal auf gut Glück google nach der Adresse kombiniert mit entsprechenden URL/Referrer Statistiken. Vielleicht hat er Glück und findet die URL in irgendwelchen fremden Referrer-Logs!

        Grüße
        Andreas

        PS: Ich hätte eigentlich gedacht, dass man aus einer "Mitarbeiter löscht böswillig Daten" Erfahrung lernt ;-)

        1. Moin Andreas,

          Habt Ihr den Übeltäter letztendlich erwischt? Seid Ihr sicher, dass es jemand war an den der Link weitergegeben wurde?

          ein Admin hatte damals die betreffende URL am PC des "Übeltäters" benutzt. Somit war er in der Browser Historie. Dumm gelaufen.

          Ich habe den User zur Rede gestellt, und er tat es damit ab [...]ups, da habe ich wohl was falsches gelickt[..]

          Naja, ich das entsprechende Menü mit einem Passwortschutz belegt.

          regds
          Mike©

          --
          Freunde kommen und gehen. Feinde sammeln sich an.
    3. Moin.

      Dann gibt es da ja noch nette Tools wie Ethereal

      Dagegen schützt aber die Verwendung von $_POST auch nicht.

      Gruß Frank

      1. Hi,

        Dann gibt es da ja noch nette Tools wie Ethereal
        Dagegen schützt aber die Verwendung von $_POST auch nicht.

        $_POST ist aber auch nicht unsicherer, als normale HTP-Authentifizierung. Sicher ist SSL.

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  4. Hi Mike©,

    Wir groß ist die Wahrscheinlichkeit, das der Parameter Admin=IchbinderChef ausspioniert werden kann, und jemand unbefugtes Zugriff auf die Aministration hat?

    Sehr groß - da kann ich dir gleich ein kleines Beispiel erzäheln. Auf meiner Website gibt es so ein paar Sachen zum Downloaden, rein interesse halber zählen ich die Downloads in einer Downloadstatistik. Da ich es aber unhöflich finde jedem User unter die Nase zu reiben, was wie oft gedownloaded wurde und für die Seite auch sonst kein Verwaltungsbereich existiert, habe ich mich damals dafür entschieden, die Download-Zahlen einzublenden, wenn ein weiterer Parameter mit übergeben wird in der URL.

    Dank Copy & Paste hatte ich den Link mit dem Parameter mal kurzzeitig in meiner Forums-Signatur hier, damit war der natürlich auch im Archiv und kurz danach in Google, sodass theoretisch die ganze Welt den Parameter kennt. Auch habe ich mal einem Freund (ebenfalls dank Copy & Paste) die „erweiterte“ URL gegeben.

    Nun brauche ich mir in dem Fall keine Sorgen zu machen, weil der Parameter wirklich nicht mehr macht, als ein paar Zahlen einzublenden - aber es zeigt doch wie schnell ein Parameter gänzlich ungewollt bekannt wird. Deshalb würde ich für sämtliche Sachen, die über ein „zusätzliches Einblenden von nicht-vertraulichen Daten“ hinhausgehen _immer_ einen Login mit Benutzername und Passwort gestalten - und wenn so ein Login-System sogar bereits schon existiert, dann ist es ja ein leichtes, dieses auch für weitere Zwecke zu nutzen.

    MfG, Dennis.

    1. Moin Dennis,

      Dank Copy & Paste hatte ich den Link mit dem Parameter mal kurzzeitig in meiner Forums-Signatur hier

      *ROFL* Ohne Kommentar

      und wenn so ein Login-System sogar bereits schon existiert, dann ist es ja ein leichtes, dieses auch für weitere Zwecke zu nutzen.

      ja schon, aber mir ging es um die Sicherheit, wenn es eben nicht publik ist.

      regds
      Mike©

      --
      Freunde kommen und gehen. Feinde sammeln sich an.
      1. Hallo Mike,

        und wenn so ein Login-System sogar bereits schon existiert, dann ist es ja ein leichtes, dieses auch für weitere Zwecke zu nutzen.

        ja schon, aber mir ging es um die Sicherheit, wenn es eben nicht publik ist.

        anscheinend muß man es Dir wirklich deutliche sagen: Es wird durch aktivierte HTTP-Referer automatisch publik - verstehe es bitte endlich!

        Gruß aus Berlin!
        eddi

        1. Moin eddi,

          anscheinend muß man es Dir wirklich deutliche sagen: Es wird durch aktivierte HTTP-Referer automatisch publik - verstehe es bitte endlich!

          wir kommen der Sache näher. Es geht also darum wer denn den Referrer "abfangen" kann. Suchmaschinen werden ihn nicht zu Gesicht bekommen. Also, kannst Du das bitte näher erläutern?

          regds
          Mike©

          --
          Freunde kommen und gehen. Feinde sammeln sich an.
          1. Hi Mike©,

            wir kommen der Sache näher. Es geht also darum wer denn den Referrer "abfangen" kann. Suchmaschinen werden ihn nicht zu Gesicht bekommen. Also, kannst Du das bitte näher erläutern?

            Stell dir vor auf deiner Seite befindet sich folgender Link: SELFHTML (alternativ irgendein anderer externen Link).

            Nun klickt der Admin auf den Link, der Browser ruft die Seite auf (bleiben wir mal beim Beispiel SELFHTML) und liefert brav den Referer mit: http://www.example.org/?ganzgeheim. Und schwupps findest du in den SELFHTML Statistiken deinen Parameter.

            Was das jetzt deutlich genug?

            MfG, Dennis.

            1. Moin Dennis,

              Nun klickt der Admin auf den Link, der Browser ruft die Seite auf (bleiben wir mal beim Beispiel SELFHTML) und liefert brav den Referer mit:

              besten Dank. Jetzt ist der Groschen gefallen.

              regds
              Mike©

              --
              Freunde kommen und gehen. Feinde sammeln sich an.
            2. Hi,

              Nun klickt der Admin auf den Link, der Browser ruft die Seite auf (bleiben wir mal beim Beispiel SELFHTML) und liefert brav den Referer mit: http://www.example.org/?ganzgeheim. Und schwupps findest du in den SELFHTML Statistiken deinen Parameter.

              Ich sehe es schon kommen: Ein übler Hack durch die "Befreiungfront anarchistischer Nuckelsäuger". Ganz nach dem Kampfmotto: "Befreit die Genossen aus den Laufställen"!

              Gesucht wird das "Crypto-Baby" der "Super-Mario-Nanny" ...

              Gruß, Cy-"wo ist meine Rassel"-baer

              --
              Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
          2. Re:

            wir kommen der Sache näher.

            _Wir_? (vgl.:https://forum.selfhtml.org/?t=126232&m=814022)

            Es geht also darum wer denn den Referrer "abfangen" kann.

            Jeder Webserver!

            Suchmaschinen werden ihn nicht zu Gesicht bekommen.

            Werden die Logfiles publizert, ist diese Annahme nur ein Traum. (vgl.:googleSuche nach Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;)

            Also, kannst Du das bitte näher erläutern?

            Bitte beschäftige Dich mit den Logfiles Deines Webservers und mit HTTP-Referer.

            Gruß aus Berlin!
            eddi

            1. Moin eddi,

              Jeder Webserver!

              OK, i got it. Thanx

              regds
              Mike©

              --
              Freunde kommen und gehen. Feinde sammeln sich an.
      2. Hallo!

        ja schon, aber mir ging es um die Sicherheit, wenn es eben nicht publik ist.

        Das ist aber eine theoretische Frage. In der Praxis wird der Link nicht geheim bleiben.

        mfg
          frafu