Ymmärtäminen, että hyökkäysvektori on pyörinyt verkossasi aivan nenäsi alla, voi olla järkyttävää. Teit osuutesi toteuttamalla tehokkailta vaikuttavia suojakeinoja, mutta hyökkääjä onnistui kuitenkin ohittamaan ne. Miten se oli mahdollista?
He olisivat voineet ottaa käyttöön prosessin lisäyksen lisäämällä haitallisia koodeja laillisiin prosesseihisi. Miten prosessiinjektio toimii ja miten voit estää sen?
Mikä on prosessiinjektio?
Prosessin lisäys on prosessi, jossa hyökkääjä lisää haitallisia koodeja verkon lailliseen ja toimivaan prosessiin. Yleistä haittaohjelmahyökkäysten yhteydessä, sen avulla kybertoimijat voivat tartuttaa järjestelmiä mitä vaatimattomimmilla tavoilla. Kehittynyt kyberhyökkäystekniikka, tunkeilija lisää haittaohjelmia kelvollisiin prosesseihisi ja nauttii näiden prosessien etuoikeuksista.
Kuinka prosessiinjektio toimii?
Tehokkaimpia hyökkäyksiä ovat sellaiset, jotka voivat toimia taustalla ilman epäilyksiä. Normaalisti voit havaita haittaohjelmauhan hahmottelemalla ja tutkimalla kaikki verkossasi olevat prosessit. Mutta prosessin lisäyksen havaitseminen ei ole niin helppoa, koska koodit piiloutuvat laillisten prosessiesi varjoon.
Koska olet lisännyt valtuutetut prosessisi sallittujen luetteloon, tunnistusjärjestelmäsi varmentaa ne kelvollisiksi ilman merkkejä siitä, että jokin on vialla. Injektoidut prosessit ohittavat myös levyn rikostekniset tiedot, koska haitalliset koodit toimivat laillisen prosessin muistissa.
Hyökkääjä käyttää koodien näkymättömyyttä päästäkseen kaikkiin verkkosi osiin, joihin hänen piilossa olevilla laillisilla prosesseilla on pääsy. Tämä sisältää tiettyjä järjestelmänvalvojan oikeuksia, joita et myöntäisi juuri kenellekään.
Vaikka prosessiinjektio voi helposti jäädä huomaamatta, edistyneet turvajärjestelmät voivat havaita ne. Joten kyberrikolliset nostavat rimaa suorittamalla sen kaikkein vaatimattomimmilla tavoilla, joita tällaiset järjestelmät eivät huomaa. He käyttävät Windowsin perusprosesseja, kuten cmd.exe, msbuild.exe, explorer.exe jne. käynnistää tällaisia hyökkäyksiä.
3 Prosessiruiskutustekniikat
On olemassa erilaisia prosessiinjektiotekniikoita eri tarkoituksiin. Koska kyberuhkien toimijat ovat hyvin perillä eri järjestelmistä ja niiden turvallisuustilanteesta, he käyttävät sopivinta tekniikkaa onnistumisprosenttinsa lisäämiseksi. Katsotaanpa joitain niistä.
1. DLL-injektio
DLL (Dynamic Link Library) -injektio on prosessiinjektiotekniikka, jossa hakkeri käyttää a dynaaminen linkkikirjasto vaikuttaa suoritettavaan prosessiin ja pakottaa sen käyttäytymään tavalla, jota et aikonut tai odottaa.
Hyökkäys syöttää koodin tarkoituksenaan ohittaa alkuperäinen koodi järjestelmässäsi ja ohjata sitä etänä.
Yhteensopiva useiden ohjelmien kanssa, DLL-injektio antaa ohjelmille mahdollisuuden käyttää koodia useita kertoja menettämättä sen voimassaoloa. Jotta DLL-injektioprosessi onnistuisi, haittaohjelman on sisällettävä tiedot verkossasi olevasta saastuneesta DLL-tiedostosta.
2. PE-ruiskutus
Portable Execution (PE) on prosessin lisäysmenetelmä, jossa hyökkääjä saastuttaa verkossasi kelvollisen ja aktiivisen prosessin haitallisella PE-kuvalla. Se on yksinkertaisempaa kuin muut prosessiinjektiotekniikat, koska se ei vaadi shell-koodaustaitoja. Hyökkääjät voivat kirjoittaa PE-koodin helposti C++:n peruskielellä.
PE-injektio on levytön. Haittaohjelman ei tarvitse kopioida tietojaan millekään levylle ennen kuin injektio alkaa.
3. Prosessi Hollowing
Process Hollowing on prosessin lisäystekniikka, jossa hyökkääjä luo uuden prosessin sen sijaan, että käyttäisi olemassa olevaa laillista prosessia, mutta saastuttaa sen haitallisella koodilla. Hyökkääjä kehittää uuden prosessin svchost.exe-tiedostona tai muistilehtiönä. Tällä tavalla et pidä sitä epäilyttävänä, vaikka löytäisit sen prosessiluettelostasi.
Uusi haitallinen prosessi ei käynnisty heti. Kyberrikollinen tekee siitä passiivisen, yhdistää sen lailliseen prosessiin ja luo sille tilaa järjestelmän muistiin.
Kuinka voit estää prosessiinjektion?
Prosessin lisäys voi tuhota koko verkkosi, koska hyökkääjällä voi olla korkein pääsyoikeus. Teet heidän työstään paljon helpompaa, jos lisätyt prosessit ovat arvokkaimman omaisuutesi tiedossa. Tämä on yksi hyökkäys, joka sinun on pyrittävä estämään, jos et ole valmis menettämään järjestelmän hallintaa.
Tässä on joitain tehokkaimpia tapoja estää prosessiinjektio.
1. Hyväksy sallittujen luettelo
Sallittujen listalle lisääminen on prosessi listaamalla joukko sovelluksia jotka voivat päästä verkkoosi tietoturvaarviosi perusteella. Sinun on täytynyt pitää sallittujen luettelossasi olevia kohteita vaarattomina, ja ellei saapuva liikenne kuulu sallittujen luettelosi kattavuuteen, ne eivät pääse läpi.
Jotta voit estää prosessin lisäämisen sallittujen luetteloon, sinun on myös lisättävä käyttäjän syöte sallittujen luetteloon. On oltava joukko syötteitä, jotka voivat läpäistä turvatarkastukset. Joten jos hyökkääjä syöttää tietoja lainkäyttöalueesi ulkopuolella, järjestelmä estää hänet.
2. Valvo prosesseja
Sikäli kuin prosessiinjektio voi ohittaa jotkin turvatarkastukset, voit kääntää sen ympäri kiinnittämällä erityistä huomiota prosessin käyttäytymiseen. Tätä varten sinun on ensin hahmoteltava tietyn prosessin odotettu suorituskyky ja verrattava sitä sen nykyiseen suorituskykyyn.
Haitallisten koodien esiintyminen prosessissa aiheuttaa joitain muutoksia riippumatta siitä, kuinka vähäisiä ne prosessissa ovat. Normaalisti unohdat nämä muutokset, koska ne ovat merkityksettömiä. Mutta kun haluat löytää eroja odotetun ja nykyisen suorituskyvyn välillä prosessivalvonnan avulla, huomaat poikkeaman.
3. Koodauslähtö
Kyberuhkien toimijat käyttävät usein Cross-Site Scripting (XSS) lisätä vaarallisia koodit prosessiinjektiossa. Nämä koodit muuttuvat komentosarjoiksi, jotka toimivat verkon taustalla tietämättäsi. Voit estää sen tapahtumasta tarkistamalla ja puhdistamalla kaikki epäilyttävät syötteet. Ne puolestaan näytetään datana eivätkä haitallisina koodeina, kuten on tarkoitettu.
Tulosten koodaus toimii parhaiten HTML-koodauksen kanssa – tekniikan, jonka avulla voit koodata muuttuvia lähtöjä. Tunnistat joitain erikoismerkkejä ja korvaat ne vaihtoehdoilla.
Estä prosessin ruiskuttaminen älykkäällä suojauksella
Prosessin injektio luo savuverhon, joka peittää haitalliset koodit kelvollisen ja toimivan prosessin sisällä. Se, mitä näet, ei ole sitä, mitä saat. Hyökkääjät ymmärtävät tämän tekniikan tehokkuuden ja käyttävät sitä jatkuvasti käyttäjien hyväksikäyttöön.
Prosessiruiskeiden torjumiseksi sinun on ylitettävä hyökkääjän viisaus olemalla niin selvä puolustuksissasi. Ota käyttöön turvatoimenpiteitä, jotka ovat näkymättömiä pinnalla. He luulevat pelaavansa sinua, mutta heidän tietämättään pelaat heitä.