Studiuesi i sigurisë Legal Hackers Dawid Golunski ka publikuar detajet e një cenueshmërie të paautorizuar të rivendosjes së fjalëkalimit në thelbin e WordPress. Golunski demonstroi se si, në rrethana të caktuara, një sulmues mund të kapte emailin e rivendosjes së fjalëkalimit dhe të fitonte hyrjen në llogarinë e një përdoruesi.

Prova e tij koncept merr avantazhin e WordPress duke përdorur ndryshore SERVER_NAME për të marrë emrin e hostit të serverit për të krijuar një kokë Nga / Kthim-Path rivendosja e postës elektronike për fjalëkalimin.

Serverat kryesorë të uebit si Apache vendosin ndryshoren SERVER_NAME si parazgjedhje duke përdorur emrin e hostit të dhënë nga klienti (në kokën HTTP_HOST):

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

Për shkak se SERVER_NAME mund të modifikohet, një sulmues mund ta konfigurojë atë në një fushë arbitrare të zgjedhjes së tij, për shembull:

Attackers-mxserver.com

Cila do t'i jepte WordPress konfigurimin e $ from_email te

[email mbrojtur]

Dhe kështu shkakton një email në dalje me rrugën Return / Return-Path në atë adresë me qëllim të keq.

Rezultatet e këtij sulmi të veçantë do të vareshin nga mjedisi i serverit, konfigurimi specifik i serverit të postës, dhe në disa raste, do të kërkonte ndërveprimin e përdoruesit. Raporti i Golunski përfshin një ndarje më specifike të metodave të mundshme që mund të përdoren.

Pas raportimit të problemit te ekipi i sigurisë së WordPress në korrik 2016 dhe gjithashtu përmes Site Web HackerOne, Golunski nuk pa asnjë përparim dhe vendosi ta bëjë publikoj detajet e cenueshmërisë ndaj publikut.

Ndërsa nuk ka ende një copë toke zyrtare, ylli i sigurisë në WordPress Aaron Campbell ka thënë se çështja nuk është aq serioze sa mund të jetë.

« Ashtë një çështje me përparësi më të ulët, por ne jemi të vetëdijshëm për këtë dhe është në radhë“Tha Campbell. Ai shpjegoi grupin unik të kushteve që do të kërkoheshin që kjo të ishte një dobësi serioze.

« Që problemi të ketë një ndikim në sigurinë, një server duhet të lejojë që një header i furnizuar nga përdoruesi të anashkalojë $ _SERVER ['SERVER_NAME']“Tha Campbell. "Ne e konsiderojmë konfigurimin e serverit si të pamjaftueshëm (të tilla si" gabimet e shfaqjes ", kur është e zbatueshme në një server prodhimi), gjë që fatkeqësisht është përtej kontrollit tonë."

Campbell ka testuar serverat e tij personal Apache dhe nginx dhe askush prej tyre nuk është licencuar për këtë. Përveç që ka një server të konfiguruar gabimisht, Campbell tha se duhet të ndodhë edhe një nga veprimet e mëposhtme:

  • Një përdorues duhet të përgjigjet në një email për rivendosjen e fjalëkalimit
  • Një përgjigje automatike duhet t'i përgjigjet emailit dhe të përfshijë origjinalin
  • Një server emaili duhet të komprometohet ose të mbingarkohet dhe mesazhi t'i kthehet dërguesit me përmbajtje i paprekur

« Nëse serveri juaj është i prekshëm dhe nuk keni aftësinë për të rregulluar konfigurimin e serverit, përsëri nuk keni pse të bëni ndonjë ndryshim në skedarët WordPress për të lehtësuar problemin.“Tha Campbell. "Një grimë PHP si kjo në një shtojcë do të përcaktojë një adresë e-mail statike të zgjedhjes suaj:"

add_filter ('wp_mail_from', funksioni ($ nga_email) {kthimi '[email mbrojtur]'; });

Campbell tha se çdo ndryshim që WordPress bën në kernel ka të ngjarë të vijë përmes një bilete që aktualisht ndjek çështjen pa perspektivë sigurie. Ai tha se një rregullim vështirë se do të vijë në njoftimin e ardhshëm të sigurisë, por ekipi po punon në mënyrë aktive për të. Nëse ata gjejnë një zbutje të mirë për problemin, Campbell tha se ata do ta ndajnë atë pasi të punojnë me ndonjë degëzim të mundshëm.

Dhe ti ? Çfarë mendoni për këtë dobësi?