Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:

Autor Thema: Sicherheitscheck, Shop gehackt, Datenbank fort  (Gelesen 1435 mal)

Offline AGI

  • modified Team
  • *****
  • Beiträge: 212
  • Geschlecht: Männlich
    • Teile Beitrag
Sicherheitscheck, Shop gehackt, Datenbank fort
« am: 11. April 2019, 14:40:07 »
Aus gegeben Anlass:

Bitte schaut doch gelegentlich per FTP in eure Shops.
Prüft ob ihr in den folgenden Verzeichnissen admin/includes/ und includes/
"configure.php"-Dateien findet, die nicht die Endung .php haben.
Beispielsweise: configure.php_old, configure.php.old, configure.php.org, configure.php.bak, configure.old
Gerade in alten Shopversionen, oder bei Shopupdates und Umzügen werden die configure.php-Dateien gern kopiert und umbenannt und bleiben dann auf dem Server liegen.

Das Problem: die Dateien ohne .php-Endung sind von außen einsehbar.
Da darin die Datenbank-Zugangsdaten gespeichert sind, kann der Leser diese problemlos auslesen.
Wer die Dateien findet, hat somit den Datenbankzugang und kann diesen nutzen, wenn die Datenbank den Zugriff von außen erlaubt.

Und ja, es gibt Bots, die gezielt nach diesen Dateien suchen.
Das Ergebnis: Kundendaten, Bestellungen, PayPal-Zugangsdaten und alles andere, was in der Datenbank steht, kann ausgelesen werden, die Datenbank kann komplett gelöscht werden. Vielleicht findet ihr dann auch eine letzte Verbleibende Tabelle mit dem Satz: "To recover your lost data : Send 0.3 BTC to our BitCoin Address and Contact[...]"

Wenn ihr diese Dateien auf dem Server habt:
a) entfernt die Datenbank-Zugangsdaten daraus
b) gebt denen die Endung .php
c) löscht sie

Also, einfach die Augen offen halten.

Viele Grüße
Andreas

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

600x250

Offline fishnet

  • Fördermitglied
  • *****
  • Beiträge: 4.725
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #1 am: 11. April 2019, 17:17:20 »
[...]
Das Problem: die Dateien ohne .php-Endung sind von außen einsehbar.
[...]

Das gilt übrigens für alle Dateien (auch wenn es bei den configure Dateien am dramatischsten ist).

Wenn Ihr eine PHP Datei unbedingt behalten wollt (als online-Backup oder so), dann könnt Ihr da so machen:

beispiel.php
umbenennen in beispiel.php_
(kann man auch sinnvoll erweitern mit Datum und/oder Name, also  beispiel.php_2019.04.11_kg

in die .htaccess das hier setzen

Code: PHP  [Auswählen]
# Keinen Zugriff auf auskommentierte PHP Dateien zulassen
<FilesMatch ".*\.(php_)">
  <IfModule mod_authz_core.c>
    # Apache 2.4
   <RequireAll>
      Require all denied
    </RequireAll>
  </IfModule>
  <IfModule !mod_authz_core.c>
    # Apache 2.2
   Order Deny,Allow
    Deny from all
  </IfModule>
</FilesMatch>

Offline woeppel

  • Mitglied
  • ***
  • Beiträge: 166
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #2 am: 11. April 2019, 17:58:20 »
Dieser .htaccess Eintrag sollte zur Pflicht werden.

Vielen Dank
Markus

Offline Whiteflash

  • Fördermitglied
  • *****
  • Beiträge: 193
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #3 am: 11. April 2019, 18:51:43 »
Man könnte natürlich seine Datei auch in
Zitat
beispiel.bak.php
umbenennen - dann muss ich keinen .htaccess-Eintrag setzen. Nur mal so... :mhhh:

Offline longchuan

  • Viel Schreiber
  • *****
  • Beiträge: 633
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #4 am: 11. April 2019, 20:42:36 »
Ist es ein Nachtei in die .htaccess den Eintrag zu machen?
Danke für die Antwort

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 3.167
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #5 am: 12. April 2019, 11:20:07 »
Das Szenario welches der TE Andreas beschreibt halte ich für realistisch und das damit verbundene Sicherheitsrisiko für ziemlich gross. Um das Sicherheitsrisiko einzudämmen und dabei die im Ordner includes enthaltenen JavaScript Dateien vor einem direkten Browserzugriff nicht auszuschliessen, könnte man in die Datei includes/.htaccess anstatt folgender Direktiven

<Files *.php>
  <IfModule mod_authz_core.c>
    # Apache 2.4
    <RequireAll>
      Require all denied
    </RequireAll>
  </IfModule>
  <IfModule !mod_authz_core.c>
    # Apache 2.2
    Order Deny,Allow
    Deny from all
  </IfModule>
</Files>

diese Direktiven eintragen.

<FilesMatch "(?<!\.js)$">
  <IfModule mod_authz_core.c>
    # Apache 2.4
    <RequireAll>
      Require all denied
    </RequireAll>
  </IfModule>
  <IfModule !mod_authz_core.c>
    # Apache 2.2
    Order Deny,Allow
    Deny from all
  </IfModule>
</FilesMatch>

Gruss
Hanspeter


Offline hpzeller

  • Experte
  • *****
  • Beiträge: 3.167
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #7 am: 12. April 2019, 11:44:52 »
da fehlen noch die CSS Dateien
[...]

Welche?

Gruss
Hanspeter

Offline GTB

  • modified Team
  • *****
  • Gravatar
  • Beiträge: 5.346
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #8 am: 12. April 2019, 11:48:24 »
<FilesMatch "!\.(js|css)$">
für zB CSS Dateien aus dem PayPal Modul.

Gruss Gerhard

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 3.167
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #9 am: 12. April 2019, 12:00:33 »
<FilesMatch "!\.(js|css)$">
für zB CSS Dateien aus dem PayPal Modul.
[...]

ok

Gruss
Hanspeter

Offline noRiddle

  • Experte
  • *****
  • Beiträge: 10.176
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #10 am: 12. April 2019, 12:55:26 »
Sehr guter Hinweis, AGI, vielen Dank dafür.

Dazu noch folgender Gedanke:
Es wird sicherlich schwerlich für alle Server-Umgebungen vorausbestimmbar und somit nicht für alle modified-Installationen in der Installations-Anleitung erklärbar sein, aber gehört die configure.php nicht ohnehin eigentlich oberhalb des vom Web aus erreichbaren Roots positioniert, und somit also oberhalb public_html oder httpdocs oder wie immer das Web-Root benannt ist ?
Das würde jedenfalls eine zusätzliche und wichtige Sicherheit bzgl. der Informationen über Serverpfade und DB-Zugänge bedeuten.

Gruß,
noRiddle

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 3.167
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #11 am: 12. April 2019, 13:16:12 »
Jetzt habe ich aber noch ein Problem.

Bei mir, Apache mit Nginx als Reverse Proxy, funktioniert folgender Code in der .htaccess nicht, z.B. wird .old nicht verboten,

<FilesMatch "!\.(js|css)$">

folgender Code von hier -> https://stackoverflow.com/questions/12926604/inverted-filesmatc aber schon.

<FilesMatch "(?<!\.css|\.js)$">

Gruss
Hanspeter

Offline GTB

  • modified Team
  • *****
  • Gravatar
  • Beiträge: 5.346
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #12 am: 12. April 2019, 13:52:51 »
kannst du bitte das hier probieren ?

<FilesMatch "^\.(css|js)$">
Gruss Gerhard

Offline hpzeller

  • Experte
  • *****
  • Beiträge: 3.167
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #13 am: 12. April 2019, 14:10:15 »
Nein leider funktioniert dieser Code auch nicht.

Was ist aber bei folgendem Code nicht in Ordnung, bei mir funktioniert er, will heissen nur Dateien mit den Endungen .css und .js werden an den Browser ausgeliefert, alle anderen sind mit Status 403 Forbidden gesperrt.

<FilesMatch "(?<!\.css|\.js)$">

Gruss
Hanspeter

Offline GTB

  • modified Team
  • *****
  • Gravatar
  • Beiträge: 5.346
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #14 am: 12. April 2019, 15:06:04 »
Ich überlege gerade das ins SVN zu übernehmen und ausweiten auf andere Ordner.
Micht sört eigentlich nur, dass \. für jede Endung notwendig ist.

Gruss Gerhard

Nachtrag:

mein aktuells Konstrukt sieht so aus, denn es kommen auch Bilddateien aus dem external Ordner:

<FilesMatch "(?<!\.css|\.js|\.jpg|\.jpeg|\.png|\.gif|\.webp|\.ico|\.svg)$">

Offline noRiddle

  • Experte
  • *****
  • Beiträge: 10.176
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #15 am: 12. April 2019, 17:54:12 »
[...]
Micht sört eigentlich nur, dass \. für jede Endung notwendig ist.
[...]

Lass' den Punkt vor der File-Extension doch einfach weg. Das $ am Ende sagt ja, daß der Filename dort endet, es können also keine Files matchen die nicht enden wie die aufgezählten Extensions.
(jpeg und jpg zusammengefasst)
<FilesMatch "(?<!css|js|jpe?g|png|gif|webp|ico|svg)$">
Zwar würden dann alle Files die mit den aufgeführten Extensions enden accessible, also auch z.B. .BLOEDSINNcss oder .QUATSCHjs oder was immer, aber das ist doch egal, oder ?

Gruß,
noRiddle

Offline GTB

  • modified Team
  • *****
  • Gravatar
  • Beiträge: 5.346
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #16 am: 12. April 2019, 18:54:06 »
Ich habe meine letzte Variante in r11767 ins SVN übertragen. Mit dem Punkt ist einfach sicherer.

Gruss Gerhard

Offline longchuan

  • Viel Schreiber
  • *****
  • Beiträge: 633
  • Geschlecht: Männlich
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #17 am: 12. April 2019, 19:25:33 »
Können Dateien mit der ENDUNG # auch ausgelesen werden?

Danke für eine Antwort

Offline hbauer

  • Experte
  • *****
  • Beiträge: 973
    • Teile Beitrag
Re: Sicherheitscheck, Shop gehackt, Datenbank fort
« Antwort #18 am: 12. April 2019, 19:44:10 »
einfach ausprobieren. Ich würde vermuten ja


Teile per facebook Teile per linkedin Teile per twitter