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.

Typo3 - Konfiguration

Blogged under plesk von admin on Donnerstag 28 Februar 2008 at 19:13

Sofern Sie für Ihre Domain eine Installation von TYPO3 planen, deaktivieren Sie als Reseller für die Kundendomain bitte den Safe Mode. Standardmäßig wird php5 angeboten. Benennen sie die .htaccess in den Ordnern /httpdocs und /httpsdocs um.  Dann wird php 4.x ausgeführt.

ImageMagick und GD sind vorinstalliert. Um auf Imagemagick zugreifen zu können, wird - auf Wunsch - eine besondere vhosts.conf bereitgestellt.

Wenn Sie weitere Fragen zur Installation von TYPO3 haben, sprechen Sie uns an. Nutzen Sie am besten unser Kontaktformular.

Anmeldungen unter PLESK 8.x

Blogged under plesk von admin on Donnerstag 28 Februar 2008 at 18:47

An dieser Stelle erfahren Sie, wie Sie sich einfach bei der Verwaltungsoberfläche PLESK anmelden können.  Beachten Sie für die Anmeldung als Reseller und als Administrator der Domain den speziellen Port. xxx steht für die IP, die Ihrer Domain zugeordnet wurde.

Als Administrator anmelden

http://xxx.xxx.xxx.xxx:8443 + ENTER

Hinweis zum Zertifikat akzeptieren [OK]

Anmeldename + Kennwort eingeben + ENTER

Im Hauptmenü auf START klicken.

Als Domainenbenutzer anmelden

http://xxx.xxx.xxx.xxx:8443 + ENTER

Hinweis zum Zertifikat akzeptieren [OK]

Anmeldename (= Domainname) + Kennwort eingeben + ENTER

Im Hauptmenü auf START klicken.

Als Webmailbenutzer anmelden

http://webmail.xxx.xxx.xxx.xxx/ + ENTER

Anmeldename (= Haupt-Mailadresse) + Kennwort eingeben + ENTER

Installation von Apache 2.x und MySql 5.x unter Debian Etch

Blogged under bash von admin on Mittwoch 26 Dezember 2007 at 20:40

Auch die Standardinstallation von Debian Etch enthält nicht die aktuellen stable Versionen von Apache und MySQL.

~#su
~#apt-get -y install apache2
~#apt-get -y install libapache2-mod-php5 php5-cgi php5-common php5-cli
~#apt-get -y install php5-gd
~#apt-get -y install phpmyadmin
~#/etc/init.d/apache2 stop
~#/etc/init.d/apache2 start
~#apt-get install mysql-common mysql-server mysql-server-5.0
~#mysqladmin -u [root] -p [password] 'MysqlRootPasswort'
~#/etc/init.d/apache2 restart
~#cat > /var/www/test.php
~#<? phpinfo(); ?> [^D]
~#ifconfig

Der letzte Befehl dient der Vergewisserung, unter welcher IP - Adresse der Apache-Server ansprechbar sein wird. Im Browser dann [http://meineserverip/test.php eingeben]. PhpMyAdmin ist unter [http://meineserverip/phpmyadmin] zu erreichen (hier Groß-/Kleinschreibung beachten). Bei den meisten Hostern ist stattdessen phpMyAdmin einzugeben.
[^D] steht für CRTL + D (um die Umlenkung der Konsole in die Datei zu beenden und die Datei zu schließen.

Zeit syncronisieren unter Debian Etch

Blogged under bash von admin on Mittwoch 26 Dezember 2007 at 19:34

Aus verschiedenen Gründen ist es sinnvoll, die Serverzeiten im Netz syncron zu halten. Treten Fehler auf und müssen Logfiles geprüft werden, ist eine zuverlässige Zeitangabe die Basis jeder Auswertung.
Zuerst ist zu prüfen, ob der Client schon installiert ist:

~#su
~#type ntp
~#type ntpdate

In der Out-of-The-Box-Installation ist der entsprechende Client nicht enthalten. Man kann ihn aber leicht nachinstallieren.

~#su
~#apt-get -y install ntp ntpdate

Danach ist ein direkter Aufruf über die Konsole möglich:

~#su
~#ntpdate ptbtime1.ptb.de

Liegt der zu syncronisierende Server hinter einer Firewall, ist die Verwendung eines nichtpriveligierten Ports zu empfehlen.

~#su
~#ntpdate -u ptbtime1.ptb.de

Sollte bereits der ntpd - Dämon laufen, ist die Verwendung des Clients nicht möglich. Um das herauszufinden, schaut man am besten in der Prozesstabelle nach:

~#su
~# ps -A | grep ntpd

Der öffentliche Zeitserver aus dem oben stehenden Beispiel ist stark frequentiert. Besser ist es einen der zahlreichen Zeitserver ( von Providern und großen Universitäten ) zu nutzen.

Midnight Commander unter Debian Etch installieren

Blogged under bash von admin on Mittwoch 26 Dezember 2007 at 18:54

Unter Debian Linux (Etch) ist der Midnight Commander (inkl. Editor) nicht automatisch installiert. Wer ohne vi auskommen möchte, sollte sich mc installieren. Darin enthalten ist der Editor mcedit.

~#su
~#apt-get -y install mc

Der Editor ist danach mit

~#su
~#mcedit dateiname

zu starten.

Debian Etch nach Installation aktualisieren

Blogged under bash von admin on Mittwoch 26 Dezember 2007 at 17:49

Nach einer Installation von Debian Etch - insbesondere von einem Datenträger out-of-the-box - sollte man zuerst einmal für ein aktuelles und sicheres Fundament sorgen.

~#su
~#apt-get update
~#apt-get upgrade

Der erste Befehl soll daran erinnern, nicht ständig als root unterwegs zu sein. Zur Verwendung von apt-get sind allerdings root-Rechte notwendig.

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