LFCA: Perusturvavinkkejä Linux-järjestelmän suojaamiseen – Osa 17


Elämme nyt enemmän kuin koskaan maailmassa, jossa organisaatioita pommitetaan jatkuvasti tietoturvaloukkauksilla, jotka johtuvat erittäin arkaluontoisten ja luottamuksellisten tietojen hankkimisesta, mikä on erittäin arvokasta ja ansaitsee valtavan taloudellisen palkkion.

On melko yllättävää, että vaikka niillä on suuri riski joutua mahdollisesti tuhoisasta kyberhyökkäyksestä, useimmat yritykset eivät ole hyvin valmistautuneita tai yksinkertaisesti jättävät huomiotta punaiset liput, usein tuhoisilla seurauksilla.

Vuonna 2016 Equifax joutui katastrofaaliseen tietoturvaloukkaukseen, jossa miljoonia erittäin luottamuksellisia asiakastietoja varastettiin useiden tietoturvapoikkeamien seurauksena. Yksityiskohtainen raportti osoitti, että tietomurto oli estettävissä, jos Equifaxin turvallisuustiimi olisi toteuttanut oikeat turvatoimenpiteet.

Itse asiassa kuukausia ennen rikkomista Equifaxia varoitettiin heidän verkkoportaalinsa mahdollisesta haavoittuvuudesta, joka vaarantaisi heidän turvallisuutensa, mutta valitettavasti varoitus jäi huomiotta, ja sillä oli vakavia seurauksia. Monet muut suuret yritykset ovat joutuneet hyökkäysten uhriksi, ja ne monimutkaistuvat jatkuvasti.

Emme voi tarpeeksi korostaa, kuinka tärkeää Linux-järjestelmäsi turvallisuus on. Et ehkä ole korkean profiilin rahoituslaitos, joka on mahdollinen rikkomusten kohde, mutta se ei tarkoita, että sinun pitäisi antaa vartioillesi.

Tietoturvan tulee olla mielessäsi, kun määrität Linux-palvelinta, varsinkin jos se on yhteydessä Internetiin ja sitä käytetään etänä. Perustietoturvataidot ovat välttämättömiä Linux-palvelimesi suojaamisessa.

Tässä oppaassa keskitymme joihinkin perusturvatoimenpiteisiin, joilla voit suojata järjestelmääsi tunkeilijoilta.

Kyberhyökkäysvektorit

Tunkeilijat käyttävät erilaisia hyökkäystekniikoita päästäkseen Linux-palvelimellesi. Ennen kuin sukeltaamme joihinkin toimenpiteisiin, joita voit toteuttaa järjestelmän suojaamiseksi, hyödynnetään joitain yleisiä hyökkäysvektoreita, joita hakkerit voivat käyttää tunkeutuessaan järjestelmiin.

1. Raaka voimahyökkäykset

Raakavoima-hyökkäys on hyökkäys, jossa hakkeri arvaa käyttäjän kirjautumistiedot yrityksen ja erehdyksen avulla. Yleensä tunkeilija käyttää automaattisia komentosarjoja päästäkseen sisään jatkuvasti, kunnes oikea käyttäjätunnuksen ja salasanan yhdistelmä on saatu. Tällainen hyökkäys on tehokkain, kun käytetään heikkoja ja helposti arvattavia salasanoja.

2. Heikot valtuustiedot

Kuten aiemmin mainittiin, heikot tunnistetiedot, kuten lyhyet ja helposti arvattavat salasanat, kuten password1234, voivat vaarantaa järjestelmäsi. Mitä lyhyempi ja vähemmän monimutkainen salasana on, sitä suurempi on mahdollisuus, että järjestelmäsi vaarantuu.

3. Tietojenkalastelu

Tietojenkalastelu on manipulointitekniikka, jossa hyökkääjä lähettää uhrille sähköpostin, joka näyttää tulevan lailliselta laitokselta tai henkilöltä, jonka tunnet tai jonka kanssa olet kauppaa tekevä.

Yleensä sähköposti sisältää ohjeita, jotka kehottavat uhria paljastamaan arkaluontoisia tietoja tai voivat sisältää linkin, joka ohjaa hänet väärennetylle sivustolle, joka esiintyy yrityksen sivustona. Kun uhri yrittää kirjautua sisään, hyökkääjä vangitsee hänen kirjautumistietonsa.

4. Haittaohjelmat

Haittaohjelmat on lyhenne sanoista haittaohjelmat. Se kattaa laajan valikoiman ilkeitä sovelluksia, kuten viruksia, troijalaisia, matoja ja kiristysohjelmia, jotka on suunniteltu leviämään nopeasti ja pitämään uhrin järjestelmä panttivankina vastineeksi lunnaista.

Tällaiset hyökkäykset voivat olla heikentäviä ja voivat lamauttaa organisaation liiketoiminnan. Jotkut haittaohjelmat voidaan ruiskuttaa asiakirjoihin, kuten kuviin, videoihin, Word- tai PowerPoint-asiakirjoihin, ja pakata tietojenkalasteluviestiin.

5. Palvelunestohyökkäykset (DoS)

DoS-hyökkäys on hyökkäys, joka rajoittaa palvelimen tai tietokonejärjestelmän saatavuutta tai vaikuttaa siihen. Hakkeri tulvii palvelimeen liikenteellä tai ping-paketteja, jotka tekevät palvelimesta käyttäjien ulottumattomissa pitkiä aikoja.

DDoS-hyökkäys (Distributed Denial of Service) on eräänlainen DoS-hyökkäys, joka käyttää useita järjestelmiä, jotka täyttävät kohteen liikenteellä, jolloin se ei ole käytettävissä.

6. SQL-injektiohyökkäys

Lyhenne sanoista Structured Query Language, SQL on kieli, jota käytetään viestintään tietokantojen kanssa. Sen avulla käyttäjät voivat luoda, poistaa ja päivittää tietueita tietokannassa. Monet palvelimet tallentavat tietoja relaatiotietokantoihin, jotka käyttävät SQL:ää vuorovaikutukseen tietokannan kanssa.

SQL-injektiohyökkäys hyödyntää tunnettua SQL-haavoittuvuutta, joka saa palvelimen paljastamaan arkaluontoisia tietokantatietoja, joita se ei muutoin tekisi lisäämällä haitallista SQL-koodia. Tämä aiheuttaa valtavan riskin, jos tietokanta tallentaa henkilökohtaisia tunnistetietoja, kuten luottokorttien numeroita, sosiaaliturvatunnuksia ja salasanoja.

7. Mies-keskellä-hyökkäys

Yleisesti lyhennettynä MITM, mies-in-the-middle -hyökkäys tarkoittaa, että hyökkääjä sieppaa tietoja kahden pisteen välillä tarkoituksenaan salakuunnella tai muuttaa osapuolten välistä liikennettä. Tavoitteena on vakoilla uhria, korruptoida tietoja tai varastaa arkaluonteisia tietoja.

Perusvinkkejä Linux-palvelimesi suojaamiseen

Tarkasteltuamme mahdollisia yhdyskäytäviä, joita hyökkääjä voi käyttää järjestelmän murtamiseen, käydään läpi joitakin perustoimenpiteitä, joilla voit suojata järjestelmäsi.

1. Fyysinen turvallisuus

Palvelimesi fyysistä sijaintia ja turvallisuutta ei juurikaan mietitä, mutta jos aiot sijoittaa palvelimesi paikalliseen ympäristöön, aloitat yleensä tästä.

On tärkeää varmistaa, että palvelimesi on turvallisesti suojattu datakeskuksessa, jossa on varavirta, redundantti Internet-yhteys ja riittävä jäähdytys. Pääsy tietokeskukseen tulisi rajoittaa vain valtuutetuille henkilöille.

2. Päivitä järjestelmätietovarastot ja -paketit

Kun palvelin on asennettu, ensimmäinen askel on päivittää arkistot ja sovellusohjelmistopaketit seuraavasti. Paketin päivittäminen korjaa kaikki porsaanreiät, joita saattaa esiintyä sovellusten olemassa olevissa versioissa.

Ubuntu/Debian-jakeluille:

sudo apt update -y
sudo apt upgrade -y

RHEL/ CentOS-jakeluille:

sudo yum upgrade -y

3. Ota palomuuri käyttöön

Palomuuri on sovellus, joka suodattaa saapuvan ja lähtevän liikenteen. Sinun on asennettava kestävä palomuuri, kuten UFW-palomuuri, ja otettava se käyttöön sallimaan vain vaaditut palvelut ja niitä vastaavat portit.

Voit esimerkiksi asentaa sen Ubuntuun komennolla:

sudo apt install ufw

Kun se on asennettu, ota se käyttöön seuraavasti:

sudo ufw enable

Jos haluat sallia palvelun, kuten HTTPS, suorita komento;

sudo ufw allow https

Vaihtoehtoisesti voit sallia sitä vastaavan portin, joka on 443.

sudo ufw allow 443/tcp

Lataa sitten uudelleen, jotta muutokset tulevat voimaan.

sudo ufw reload

Tarkista palomuurisi tila, mukaan lukien sallitut palvelut ja avoimet portit, suorittamalla

sudo ufw status

4. Sammuta kaikki tarpeettomat palvelut/portit

Harkitse lisäksi kaikkien käyttämättömien tai tarpeettomien palvelujen ja porttien sammuttamista palomuurista. Useiden käyttämättömien porttien käyttö vain lisää hyökkäysmaisemaa.

5. Suojattu SSH-protokolla

SSH-oletusasetukset eivät ole suojattuja, joten joitain säätöjä tarvitaan. Varmista, että seuraavat asetukset ovat voimassa:

  • Poista root-käyttäjän etäkirjautuminen käytöstä.
  • Ota käyttöön salasanaton SSH-todennus käyttämällä julkisia/yksityisiä SSH-avaimia.

Muokkaa ensimmäistä kohtaa /etc/ssh/sshd_config-tiedostoa ja muokkaa seuraavia parametreja näyttämään kuvan mukaisilta.

PermitRootLogin no

Kun olet estänyt pääkäyttäjää kirjautumasta sisään etänä, luo tavallinen käyttäjä ja määritä sudo-oikeudet. Esimerkiksi.

sudo adduser user 
sudo usermod -aG sudo user 

Ota salasanaton todennus käyttöön siirtymällä ensin toiseen Linux-tietokoneeseen – mieluiten tietokoneellesi ja luomalla SSH-avainpari.

ssh-keygen

Kopioi sitten julkinen avain palvelimellesi

ssh-copy-id user@server-IP

Kun olet kirjautunut sisään, muista poistaa salasanatodennus käytöstä muokkaamalla /etc/ssh/sshd_config-tiedostoa ja muokkaamalla näkyvää parametria.

PasswordAuthentication no

Varo hukkaamasta yksityistä ssh-avaintasi, sillä se on ainoa tie, jolla voit kirjautua sisään. Pidä se turvassa ja mieluiten varmuuskopioi se pilveen.

Käynnistä lopuksi SSH uudelleen tehdäksesi muutokset

sudo systemctl restart sshd
Yhteenveto

Maailmassa, jossa kyberuhat kehittyvät, turvallisuuden tulisi olla etusijalla, kun aloitat Linux-palvelimen asentamisen. Tässä oppaassa olemme korostaneet joitain perusturvatoimenpiteitä, joilla voit vahvistaa palvelimesi. Seuraavassa aiheessa menemme syvemmälle ja tarkastelemme lisävaiheita, joilla voit koventaa palvelimesi.