Sicherheitslücke bei OSCommerce

Blogged under Howtos, Service, php von admin on Samstag 10 Mai 2008 at 10:57

Sehr viele Shopbetreiber setzen die freie Shoplösung OSCommerce ein. Unter den angebotenen Bezahlarten findet sich auch oft die Bezahlung per Keditkarte. Weil die Anforderungen dafür sehr hoch sind, setzen viele Shopbetreiber auf externe zertifizierte ASP-Partner (ipayment, DirectPOS…).

Wird die Zahlungsweise ausgewählt um die Transaktion fortzuführen, werden die Daten vom Browser des Kunden direkt zum ASP-Partner umgeleitet und dort verarbeitet. Nach der Transaktion liefert der Partner eine “Quittung” zurück an das Shopsystem. Diese nimmt den Weg über den Browser des Kunden. Und damit sind der Manipulation Tür und Tür geöffnet.

Systeme wie jenes von ipayment lassen sich auf vielfältige Weise in den eigenen Webshop einbinden. Dazu gehört auch eine recht sichere Methode mit einem “Security-Hash”, der die Transaktionsdaten zusätzlich verschlüsselt. Leider setzen viele Shopbetreiber diese sicheren Verfahren nicht ein, da sie einen höheren Integrationsaufwand erzeugen.

Werden über den Shop MP3s oder Softwareprodukte direkt per Download vertrieben, kann dies zum unberechtigten Einkauf genutzt werden. Speziell für ipayment liegt ein Patch zum Download bereit.

Besteht Handlungsbedarf? Um diese Frage beantworten zu können, müssen Sie erst einmal prüfen, welche Zahlungsarten in Ihrem Shop angeboten werden, ob Sie OSCommerce oder eines der vielen Derivate einsetzen und ob der Patch bei Ihnen schon eingespielt ist.

So können Sie direkt prüfen, ob der Patch bei Ihrem System eingespielt wurde…

Öffnen Sie die Datei checkout_confirmation.php und suchen Sie die Zeichenfolge if ($_POST[’conditions’] == false) . Sollte diese nicht gefunden werden oder auskommentiert sein, ist der Patch möglicherweise installiert. Suchen Sie dann nach if ($_REQUEST[’conditions’] == false) . Erhalten Sie keinen Treffer, deutet dies darauf hin, daß der Patch nicht installiert ist.

Der folgende Code muss in Zeile 202 (ff) enthalten sein, wenn der Patch installiert ist:

if (isset($_GET[’payment_error’]) && is_object(${$_GET[’payment_error’]}) && ($error = ${$_GET[’payment_error’]}->get_error()))
$smarty->assign(’error’, $error[’title’].’<br />’.htmlspecialchars($error[’error’]));

Benötigen Sie Unterstützung? Wir helfen Ihnen gerne. Nutzen Sie unser Kontaktformular oder rufen Sie uns an unter +49 2243 912976 (24/24). 

Vorsicht! Die Kartenherausgeber haben sich in einem verbindlichen Standard auf die Verarbeitung und Speicherung von Kreditkarteninformationen geeinigt. Der Payment Card Industry Data Security Standard (PCI DSS) schreibt in 12 Regeln vor, wie Sie mit den sensiblen Daten umgehen müssen.

Einige ASP-ePayment-Lösungen liefern sehr wohl die Kreditkartennummern an den Shop zurück. Damit fallen diese Shops unter PCI DSS. Aber längst nicht alle hielten einer Prüfung auf Einhaltung dieser Regelungen stand.

PLESK und INDEX.???

Blogged under php, plesk von admin on Freitag 29 Februar 2008 at 14:32

Standardmäßig installiert Plesk mehrere Dateien zum Austesten der neuen Domain in das Root-Verzeichnis der neuen Domain. Wird der Webspace mit eigenen Inhalten gefüllt, gilt weiterhin zu beachten, daß Apache als Server im Rootverzeichnis die nachfolgende Reihenfolge einhält, wenn keine Datei explizit angegeben wurde:

1. Wahl - index.html
2. Wahl - index.htm
3. Wahl - index.php

Aus Sicherheitsgründen empfiehlt es sich, die vorinstallierten Dateien nach dem ersten Testen zu löschen oder zumindest zu verschieben bzw. umzubenennen.

Plesk Konfiguration für Wordpress

Blogged under php, plesk von admin on Freitag 29 Februar 2008 at 13:30

Die Triologic GmbH bietet auch im Bereich Shared Hosting Webspace mit php4 und php5 an. Um Plesk hinsichtlich der gewählten PHP - Version und der Unterstützung von Permalinks von Wordpress zu konfigurieren, sind die folgenden Zeilen in einer .htaccess - Datei notwendig.

php_flag engine off
Options +Includes +ExecCGI
Action php5-script /cgi-bin/php
AddHandler php5-script .php .php5


RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

Sofern für die Wordpress - Installation ausdrücklich php4 gewünscht ist, ist der obere Block zu entfernen.

Es ist zu beachten, daß je Verzeichnis einzeln entschieden werden kann, ob php4 oder 5 zum Einsatz kommt. Anweisungen in einer .htaccess - Datei haben Gültigkeit im aktuellen Verzeichnis und allen Unterverzeichnissen (die nicht selbst eine eigene .htaccess-Datei beinhalten). Dieses Apache-Verhalten kann genutzt werden, im bei php5 - inkompatibler Software dennoch in ausgewählten Situationen (XML-Verarbeitung) php5 - Code auszuführen.

TRIOLOGIC GmbH - Netzwerken für Menschen - Internet Provider - Application Service Provider