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.