Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Sicherheitslücke - Bugfix: Kunden werden zu Admin

    fishnet

    • Fördermitglied
    • Beiträge: 4.821
    • Geschlecht:
    Sicherheitslücke - Bugfix: Kunden werden zu Admin
    am: 17. Dezember 2014, 11:41:23
    Durch einen Bug können unter bestimmten Umständen Kunden zu Admins ohne Berechtigung werden. Das bedeutet in der Praxis, das sie nach bisherigen Erkenntnissen keinen Zugang zum Adminbereich bekommen können, jedoch die Adminbox sehen - und somit wertvolle Zahlen wie Kundenanzahl, Bestellanzahl etc.
    Die Programmier werden es einen Bug nennen, die BWLer eine Sicherheitslücke  :-P

    Hier der Bugfix.
    Suche in includes/write_customers_status.php

    Code: PHP  [Auswählen]
      if (isset($_SESSION['customer_id'])) {
        $customers_status_query_1 = xtc_db_query("SELECT customers_status FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $_SESSION['customer_id'] . "'");

    Füge danach ein:

    Code: PHP  [Auswählen]
     if (xtc_db_num_rows($customers_status_query_1) == 0) {
        unset($_SESSION['customer_id']);
        xtc_redirect(xtc_href_link(FILENAME_LOGOFF, '', 'SSL'));
      }

    Wir haben schon mehrere Anfragen erhalten, wie genau man diesen Bug nachstellen kann. Ich bitte um Verständnis, das wir das nicht veröffentlicht sehen möchten, da wirklich jeder Laie sonst auf Wirtschaftsspionage gehen könnte. Es war uns jedoch wichtig, den Fix jetzt zu veröffentlichen und nicht auf die 2.0 zu warten.

    [EDIT Tomcraft 17.12.2014: Code korrigiert.]

    [EDIT h-h-h 17.12.2014: Sicherheitsproblem im Sicherheitsfix behoben (header/exit)]

    Linkback: https://www.modified-shop.org/forum/index.php?topic=31789.0

    mrheat

    • Frisch an Board
    • Beiträge: 68
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #1 am: 17. Dezember 2014, 12:14:24
    vielen Dank für den Fix !!!

    Haustier-Laden

    • Mitglied
    • Beiträge: 116
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #2 am: 17. Dezember 2014, 12:21:20
    Danke auch von mir.

    mit freundlichen Gruß
    Rene

    Phantom

    • Fördermitglied
    • Beiträge: 429
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #3 am: 17. Dezember 2014, 12:21:47
    Danke.

    Ceciro

    • Fördermitglied
    • Beiträge: 449
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #4 am: 17. Dezember 2014, 12:37:47
    Danke fishnet,

    Gruß Cicero

    hendrik

    • Experte
    • Beiträge: 2.038
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #5 am: 17. Dezember 2014, 12:41:43
    Ne. Ist korrekt so.

    Hast dus ausprobiert?

    Gruß
    Hen

    Kneumi

    • Fördermitglied
    • Beiträge: 134
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #6 am: 17. Dezember 2014, 12:44:17
    Kann Ciceros Fehlermeldung bestätigen.  unexpected error in line 27, das ist die mit dem header(“location: “.FILENAME_LOGOFF);

    So sieht bei mir die nicht funktionierende Codestelle aus:

    Code: PHP  [Auswählen]
     // write customers status in session
      if (isset($_SESSION['customer_id'])) {
        $customers_status_query_1 = xtc_db_query("SELECT customers_status FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $_SESSION['customer_id'] . "'");
        // BOF – Fishnet Services – Nicolas Gemsjäger
        if (xtc_db_num_rows($customers_status_query_1) == 0) {
       header(“location:.FILENAME_LOGOFF);
        }
        // EOF – Fishnet Services – Nicolas Gemsjäger
        $customers_status_value_1 = xtc_db_fetch_array($customers_status_query_1);

    fishnet

    • Fördermitglied
    • Beiträge: 4.821
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #7 am: 17. Dezember 2014, 12:44:26
    Keine Sorge, der Bugfix wurde schon mehrfach eingebaut und Fehler gab es nirgends.

    #EDIT: korrigiert wegen Copy+Paste Fehler
    Suche in includes/write_customers_status.php

    Code: PHP  [Auswählen]
      if (isset($_SESSION['customer_id'])) {
        $customers_status_query_1 = xtc_db_query("SELECT customers_status FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $_SESSION['customer_id'] . "'");

    Füge danach ein:

    Code: PHP  [Auswählen]
     if (xtc_db_num_rows($customers_status_query_1) == 0) {
          unset($_SESSION['customer_id']);
          xtc_redirect(xtc_href_link(FILENAME_LOGOFF, '', 'SSL'));
       }

    [EDIT Tomcraft 17.12.2014: Korrektur in Beitrag 1 übernommen.]
    [EDIT h-h-h 17.12.2014: Korrektur eines gravierenden Fehlers im Sicherheitsfix (header/exit)]

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #8 am: 17. Dezember 2014, 12:45:17
    1. Danke
    2. Das ist aber nur ein Workaround und behebt das ursächliche Problem nicht.
    3. evtl. Alternativ-Lösung: Admingruppe im Standard eine andere ID ungleich 0 zuweisen. Ich bin dann bei solchen Standrdwerten immer für Werte die nicht automatisch erstellte werden, wie negative Zahlen bei Autoinkrement-Spalten. Das könnte aber Programmierarbeit in verschiedenen Dateien nach sich ziehen.

    Ceciro

    • Fördermitglied
    • Beiträge: 449
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #9 am: 17. Dezember 2014, 12:55:17
    Ja, natürlich hatte ich das eingebaut...

    Der Code von fishnet (Antwort #7) ist richtig.
    Im ersten Beitrag werden die "Gänsefüßchen" um location: falsch dargestellt, so dass sich beim Copy und Paste der Fehler einschleicht.

    Also noch einmal vielen Dank.

    Gruß Cicero

    fishnet

    • Fördermitglied
    • Beiträge: 4.821
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #10 am: 17. Dezember 2014, 12:57:34
    ah verstehe. Bitte ein Mod mal zum Korrigieren, danke  :whistle:

    innuXTC

    • Viel Schreiber
    • Beiträge: 508
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #11 am: 17. Dezember 2014, 13:00:15
    Danke!

    Wie kann ich denn testen, ob der Einbau erfolgreich war und der Kunde keine Fehlermeldung erhält? Einfach nur als Admin oder User einloggen?

    PS: Ja, hatte auch Probleme beim C&P mit dem " und den - (in den Kommentaren).

    fishnet

    • Fördermitglied
    • Beiträge: 4.821
    • Geschlecht:
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #12 am: 17. Dezember 2014, 13:01:38
    Logge dich als Kunde ein und schau ob du eine Fehlermeldung erhälst bzw ob der Shop dich wieder rauswirft (wird aber definitiv nicht geschehen).

    baalze

    • Neu im Forum
    • Beiträge: 40
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #13 am: 17. Dezember 2014, 14:04:30
    Der Fix scheint mir nicht ausreichend. Ich würde xtc_redirect() verwenden.

    Kneumi

    • Fördermitglied
    • Beiträge: 134
    Re: Sicherheitslücke - Bugfix: Kunden werden zu Admin
    Antwort #14 am: 17. Dezember 2014, 14:09:13
    Der Code von fishnet (Antwort #7) ist richtig.
    Im ersten Beitrag werden die "Gänsefüßchen" um location: falsch dargestellt, so dass sich beim Copy und Paste der Fehler einschleicht.

    Jup, das wars bei mir auch. Im Editor die kopierten Gänsefüsschen ersetzt und die Fehlermeldung tritt nicht mehr auf. Danke
    Shop Hosting
    7 Antworten
    5807 Aufrufe
    18. Juni 2009, 19:33:41 von speedy
    2 Antworten
    4956 Aufrufe
    18. Juli 2009, 13:02:28 von Tomcraft
               
    anything