Haavoittuvuuden vakavuuden vuoksi WordPress.org otti käyttöön pakotetut automaattiset päivitykset vaikutuksen alaisille sivustoille . Päivityksen asentuminen kannattaa silti varmistaa itse, sillä kaikki palvelinympäristöt eivät välttämättä tue automaattipäivityksiä ongelmitta.
wp2shell ei ole yksi yksittäinen ohjelmointivirhe, vaan kahden haavoittuvuuden ketju :
WP_Query-kyselyn author__not_in-parametrissa. Se on luokiteltu vakavaksi haavoittuvuudeksi .Korjatut versiot ovat siis 6.9.5, 7.0.2 ja 6.8-haaran osalta 6.8.6.
Hyökkäys yhdistää kaksi toisistaan riippuvaa ongelmaa .
SQL-injektio: Hyökkääjä lähettää tarkasti muotoiltuja HTTP-pyyntöjä author__not_in-parametriin. Näin WordPressin tietokantakyselyyn voidaan yrittää lisätä haitallista SQL-koodia ilman kirjautumista.
REST API:n reittien sekoittuminen: WordPressin REST API:n eräajopiste, /wp-json/batch/v1, käsittelee useita alikutsuja yhdessä pyynnössä. Jäsentämiseen liittyvä virhe voi saada sisäiset taulukot poikkeamaan toisistaan, jolloin hyökkääjä voi ohittaa reittirajoituksia ja yhdistää API-kutsuja tavalla, jota ei normaalisti sallita .
Kun nämä ongelmat ketjutetaan, hyökkääjä voi käyttää eräajopistettä SQL-injektion väärinkäyttöön. Tämän jälkeen hyökkäys voi edetä täydelliseen etäkoodin suoritukseen esimerkiksi:
INTO OUTFILE -toiminnolla; taiHyökkäys ei vaadi lisäosia, tunnuksia tai erityistä kokoonpanoa, vaan kohdistuu myös oletusarvoiseen WordPress-asennukseen . Heinäkuun 18. päivään mennessä julkinen haavoittuvuustarkistin oli julkaistu osoitteessa wp2shell.com, ja toimivaa proof-of-concept-hyökkäyskoodia kiersi julkisuudessa .
Persistentti objektivälimuisti, kuten Redis tai Memcached, voi osassa ympäristöjä muuttaa hyökkäyspolkua tai rajoittaa sen etenemistä. Se ei kuitenkaan poista itse haavoittuvuutta .
wp-includes/version.php.wp-content/uploads/, tuntemattomat ylläpitäjätilit ja poikkeavat tietokantamerkinnät. Laajamittaisesta hyväksikäytöstä ei ollut vahvistettua tietoa, mutta julkinen proof-of-concept madaltaa skannauksen kynnystä.FILE-oikeutta, joka mahdollistaa INTO OUTFILE -toiminnon. Tämä voi rajoittaa RCE-hyökkäyksen etenemistä, vaikka se ei korvaa päivitystä.WordPressin avoimuus on monessa tilanteessa vahvuus: koodi on tarkasteltavissa ja korjaukset voidaan julkaista nopeasti. Tämän tapauksen yhteydessä se kuitenkin lyhentää puolustajien reagointiaikaa merkittävästi.
Toisin sanoen wp2shellin riski ei perustu vain haavoittuvuuden vakavuuteen. Avoin lähdekoodi, WordPressin valtava asennuskanta ja julkisuuteen tullut hyökkäystieto muodostavat yhdistelmän, jossa suojaamaton sivusto voi muuttua helpoksi kohteeksi nopeasti — vaikka aktiivisesta massahyökkäyksestä ei olisi vielä vahvistettua näyttöä.