Legal Hackers sikkerhedsforsker Dawid Golunski har offentliggjort detaljer om en uautoriseret sårbarhed med nulstilling af adgangskode i WordPress-kernen. Golunski demonstrerede, hvordan en angriber under visse omstændigheder kunne opfange e-mail med nulstilling af adgangskode og få adgang til en brugers konto.

Dens bevis på konceptet udnytter WordPress ved hjælp af variablen SERVER_NAME for at få servernavnet til at oprette et header Fra / Return-Path udgående e-mail til nulstil adgangskode.

Store webservere som Apache indstiller variablen SERVER_NAME som standard ved hjælp af værtsnavnet leveret af klienten (i HTTP_HOST-overskriften):

Https://httpd.apache.org/docs/2.4/mod/core.html#usecanonicalname

Da SERVER_NAME kan ændres, kan en hacker angive det i et vilkårligt domæne efter eget valg, for eksempel:

Attackers-mxserver.com

Hvilket ville give WordPress $ from_email-konfigurationen til

[e-mail beskyttet]

Og forårsager således en udgående e-mail med stien Return / Return-Path på den ondsindede adresse.

Resultaterne af dette særlige angreb vil afhænge af servermiljøet, den specifikke konfiguration af mailserveren og i nogle tilfælde vil det kræve interaktion fra den pågældende bruger. Golunskis rapport indeholder en mere specifik oversigt over mulige metoder, der kan bruges.

Efter at have rapporteret problemet til WordPress-sikkerhedsteamet i juli 2016 og også gennem Websted HackerOne, Golunski så ingen fremskridt og besluttede at udgive detaljer om sårbarheden over for offentligheden.

Mens der endnu ikke er nogen officiel programrettelse, har WordPress-sikkerhedsstjernen Aaron Campbell sagt, at problemet ikke er så alvorligt som det kan være.

« Det er et problem med lavere prioritet, men vi er opmærksomme på det, og det er i vores kø”Sagde Campbell. Han forklarede det unikke sæt betingelser, der kræves for at være en alvorlig sårbarhed.

« For at problemet skal have indflydelse på sikkerheden, skal en server tillade, at en brugerleveret header tilsidesættes $ _SERVER ['SERVER_NAME']”Sagde Campbell. "Vi mener, at serverkonfigurationen er utilstrækkelig (såsom 'display_errors', hvor det er relevant på en produktionsserver), hvilket desværre er uden for vores kontrol."

Campbell har testet sine personlige Apache- og nginx-servere, og ingen af ​​dem har fået licens til dette. Ud over at have en forkert konfigureret server sagde Campbell, at en af ​​følgende handlinger også skulle forekomme:

  • En bruger skal svare på en e-mail til nulstilling af adgangskode
  • Et automatisk svar skal svare på e-mailen og medtage originalen
  • En e-mail-server skal være kompromitteret eller overbelastet, og meddelelsen skal returneres til afsenderen med indhold intakt

« Hvis din server er sårbar, og du ikke har mulighed for at rette serverkonfigurationen, behøver du stadig ikke foretage ændringer i WordPress-filerne for at afhjælpe problemet.”Sagde Campbell. "En smule PHP som dette i et plugin vil definere en statisk e-mail-adresse efter eget valg:"

add_filter ('wp_mail_from', funktion ($ from_email) {return '[e-mail beskyttet]'; });

Campbell sagde, at ændringer WordPress foretager i kernen sandsynligvis vil ske via en billet, der i øjeblikket sporer problemet uden sikkerhedsperspektiv. Han sagde, at en løsning sandsynligvis ikke kommer i den næste sikkerhedsudgivelse, men holdet arbejder aktivt på det. Hvis de finder en god afbødning af problemet, sagde Campbell, at de vil dele det, når de har fundet ud af alle de potentielle konsekvenser.

Og dig ? Hvad synes du om denne sårbarhed?