Allvarlig säkerhetsbrist i PHPMailer

från har upptäckt en ny allvarlig säkerhetsbrist i det populära biblioteket som används av miljontals mjukvaror såsom , , 1CRM, , och .

Samtliga versioner innan 5.2.18 är sårbara för denna RCE (remote code execution). I dagsläget har Dawid ej släppt några detaljer om denna brist men troligtvis så rör det sig bara om timmar innan sårbarheten börjar att utnyttjas på internet.

En förmildrande faktor är att du måste ha ett kontaktformulär som använder sig av biblioteket. Samt så får angriparen samma behörigheter som användaren som webbservern körs som.

Denna sårbarhet har fått , läs mer här.

Uppdatering: Tittar jag närmare på den commit som åtgärdar säkerhetsproblemet så ser den ut så här:

if (!empty($this->Sender) and $this->validateAddress($this->Sender)) {
    $params = sprintf('-f%s', escapeshellarg($this->Sender));
}

Dvs escapeshellarg()-funktionen läggs till. Troligtvis för att avsändaremail -f skickas med  ut till sendmail i commandline och gör det då möjligt att köra kommandon.

Uppdatering 2: Nu har Legal Hackers släppt en proof-of-concept exploit samt förklaring till sårbarheten. Och det är precis som vi anade ovan att extra data kan skickas vidare, dock inte helt enkelt som förklarat ovan:

Genom att skicka följande som avsändarepost:

”Attacker \” -Param2 -Param3″@test.com

Och detta skickas vidare till  PHPMailer (och även mail()) så exekveras sendmail lokalt med följande argument:

Arg no. 0 == [/usr/sbin/sendmail]
Arg no. 1 == [-t]
Arg no. 2 == [-i]
Arg no. 3 == [-fAttacker\]
Arg no. 4 == [-Param2]
Arg no. 5 == [-Param3"@test.com]

Exempelvis kan följande argument skickas med ovan för att skriva ut bodyn i ett meddelande till en fil som ligger i webbrooten:

-X/var/www/phpcode.php

Jonas Lejon

Om Jonas Lejon

En av sveriges främsta cybersäkerhetsexperter med nästan 20 års erfarenhet inom området och en bakgrund från FRA och Försvarsmakten. Kontakta mig gärna på telefonnummer 010 1889848 eller [email protected] om Er organisation behöver hjälp med cybersäkerhet. LinkedIn Twitter

One comment

  1. Tobias Dokken

    Som tur är verkar det, än så länge, inte vara något större hot.

    Om jag förstått det rätt så är den potentiella faran de formulär där man kan ange avsändarens adress manuellt.

Skriv en kommentar

Du kan använda följande HTML HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>