Haavoittuvuuden lieventäminen

Tiedostojärjestelmän käyttöoikeudet

Jos käytät WP Toolkitia, helpoin tapa lieventää haavoittuvuutta WordPress-instansseissasi on käyttää Toolkitia:

  1. Siirry WordPressiin.

  2. Valitse kaikki WordPress-instanssit ja napsauta Tarkista suojaus.

  3. Varmista, että “Tiedostojen ja hakemistojen käyttöoikeudet” on merkitty tilaan OK.

  4. Jos ei ole, napsauta Suojaa.

Jos et käytä WP Toolkitia tai jos sinun täytyy suojata jotakin muuta CMS-järjestelmää kuin WordPressiä, sinun täytyy korjata käyttöoikeudet manuaalisesti kaikille suojattaville tiedostoille estämällä kaikki käyttöoikeudet “Other”-ryhmältä suorittamalla seuraava komento:

chmod o-rwx <file_name>

Muista: Ei ole olemassa “yhtä sopivaa kaikille” listaa tiedostoista, jotka pitää suojata tällä tavalla ja jotka sopisivat mihin tahansa web-sovellukseen tai CMS-järjestelmään. Tarkat tiedostot, joiden käyttöoikeuksia on muutettava web-sovelluksen suojaamiseksi, riippuvat kyseisestä sovelluksesta.

Apache-määritys

Tämä tapa lieventää haavoittuvuutta sopii tilauksille, jotka käyttävät Apachea WWW-palvelimenaan (tilaus käyttää Apachea, jos “Välityspalvelintila” on päällä kohdassa Isännöinti ja DNS > Apache- ja nginx-asetukset).

Muista: Plesk Obsidian 18.0.30 ja myöhemmissä versioissa tämä ratkaisu otetaan käyttöön oletuksena. Aiemmissa Plesk-versioissa noudata alla olevia ohjeita haavoittuvuuden lieventämiseksi.

Lieventääksesi haavoittuvuutta, toimi seuraavasti:

  1. Siirry kohtaan Palvelusuunnitelmat > oma palvelusuunnitelmasi > “WWW-palvelin”-välilehti (tai tilauksesi > Verkkosivustot ja toimialueet > Isännöinti ja DNS > Apache- ja nginx-asetukset).

  2. Valitse “Rajoita symbolisten linkkien seuraamista” -valintaruutu.

Tekemällä tämän palvelusuunnitelmalle lievennät haavoittuvuutta kaikilla kyseiseen palvelusuunnitelmaan perustuvilla tilauksilla (eli hyökkääjä, joka saa pääsyn tilaukseen, ei pysty hyökkäämään muita tilauksia vastaan). Tekemällä tämän tilaukselle lievennät haavoittuvuutta vain kyseisessä tilauksessa.

Muista: Verkkosivusto, joka käyttää symbolisia linkkejä omiin tiedostoihinsa, toimii edelleen, jos se ei käytä “FollowSymLinks”-asetusta .htaccess-tiedostossa, koska “SymLinksIfOwnerMatch”-asetus on oletuksena käytössä. Jos tällainen verkkosivusto käyttää “FollowSymLinks”-asetusta .htaccess-tiedostossa, se lakkaa toimimasta.

Varoitus: Tämän ratkaisun käyttöönotto ei silti jätä sinua alttiiksi “time-of-check to time-of-use” -kilpailutilanteelle (race condition), joka liittyy Apachen “SymLinksIfOwnerMatch”-asetukseen. Haavoittuvuuden lieventämiseksi voit myös soveltaa tätä korjausta Apacheen (Plesk ei ole testannut korjausta, käytä sitä omalla vastuullasi) tai käyttää jotakin tässä artikkelissa myöhemmin kuvatuista ytimeen perustuvista symlink-suojausvaihtoehdoista.

Nginx-määritys

Tämä tapa lieventää haavoittuvuutta sopii tilauksille, jotka käyttävät nginxiä staattisten tiedostojen suoraan tarjoamiseen (tilaus käyttää nginxiä, jos joko “Välityspalvelintila” on pois päältä tai “Välityspalvelintila” on päällä ja “Tarjoa staattiset tiedostot suoraan nginxin kautta” on päällä kohdassa Isännöinti ja DNS > Apache- ja nginx-asetukset).

Lieventääksesi haavoittuvuutta, toimi seuraavasti:

  1. Siirry kohtaan Palvelusuunnitelmat > oma palvelusuunnitelmasi > WWW-palvelin (tai tilauksesi > Verkkosivustot ja toimialueet > Isännöinti ja DNS > Apache- ja nginx-asetukset).

  2. Valitse “Rajoita symbolisten linkkien seuraamista” -valintaruutu.

Tekemällä tämän palvelusuunnitelmalle lievennät haavoittuvuutta kaikilla kyseiseen palvelusuunnitelmaan perustuvilla tilauksilla (eli hyökkääjä, joka saa pääsyn tilaukseen, ei pysty hyökkäämään muita tilauksia vastaan). Tekemällä tämän tilaukselle lievennät haavoittuvuutta vain kyseisessä tilauksessa.

Muista: Tämä vaihtoehto ei sovellu tietokoneisiin, joissa on Linux-ytimen versio 2.6.39 tai vanhempi. Jotta haavoittuvuus lieventyy tällaisilla koneilla, suosittelemme, että joko päivität käyttöjärjestelmän uusimpaan vakaaseen versioon tai käytät jotakin alla luetelluista ytimeen perustuvista symlink-suojausmekanismeista.

Grsecurity (joukko Linux-ytimelle tarkoitettuja tietoturvaa parantavia korjauksia, vaatii maksullisen tilauksen)

Jos mikään edellä mainituista tavoista haavoittuvuuden lieventämiseen ei sovellu tilanteeseesi, voit asentaa Linux-ytimelle tarkoitetun grsecurity-joukon tietoturvan vahvistavia korjauksia ja sen jälkeen määrittää GRKERNSEC_SYMLINKOWN-ominaisuuden. Huomaa, että grsecurityn käyttö ei ole ilmaista, ja se edellyttää vuotuisen tilauksen ostamista.