Otsimootorid loodi sisu indekseerimiseks. Ründajad kasutavad neid aga teie vigade indekseerimiseks. Päring kogu tekst:login failitüüp:log võib tunduda kahjutu. Tegelikkuses on see üks lihtsamaid viise autentimisvooge, volitusi, märke ja sisemise infrastruktuuri andmeid sisaldavate avalike logifailide avastamiseks.
Kui Google näeb neid logisid, saavad seda teha ka ründajad. Kui andmed on indekseeritud, muutub kokkupuude vältimatuks. Lisaks, kui avalikult ligipääsetavas failis ilmuvad volitused, on rikkumine juba käimas.
1. Miks kõik tekstis:login filetype:log on ohtlikum, kui paistab
Google'i dork on otsingupäring, mis kasutab täiustatud operaatoreid otsingumootorite indekseeritud tundliku või valesti konfigureeritud sisu leidmiseks. See ei kasuta Google'it ära, vaid hoopis teie nähtavust.
See päring ühendab kaks operaatorit:
- kogu tekst: tagastab lehed, kus kõik terminid esinevad põhitekstis
- failitüüp:log piirab tulemusi
.logfailid
Seetõttu:
See tähendab: “Näita mulle logifaile, mis sisaldavad sõna login. "
Esmapilgul tundub see tühine. Praktikas aga annab see sageli tulemuseks:
- Avalikult avaldatud veebiserveri logid
- CI/CD logid laaditi üles artefaktidena
- Logide kogemata silumine commitrepositooriumidesse lisatud
- Rakenduslogid lihttekstiga mandaatidega
See ei ole otsingumootori viga. Selle asemel on see andmetega kokkupuute haavatavus põhjustatud valest konfiguratsioonist. Google indekseeris lihtsalt selle, mis oli avalikult kättesaadav.
2. Mida ründajad tegelikult paljastatud logifailidest leiavad
Kui ründajad jooksevad kogu tekst:login failitüüp:log, nad ei sirvi suvaliselt. Nad otsivad autentimisjälgi.
2.1 Lihtteksti vormis volitused
Logid sisaldavad sageli selliseid kirjeid nagu:
or
Või isegi SMTP-volitused:
Autentimisandmete logimine on üks kiiremaid viise tootmiskeskkonna volituste lekkimiseks. Seetõttu võib üksainus avalikustatud logifail muuta kehtetuks kogu teie juurdepääsukontrolli mudeli.
2.2 Seansi märgid ja JWT-d
Isegi kui paroole ei logita, logitakse sageli tokeneid.
Näiteks:
Kehtiv JWT või seansiküpsis faili sees .log fail saab lubada:
- Seansi kaaperdamine
- Privileegi eskaleerumine
- Külgmine liikumine sisemiste süsteemide vahel
Teisisõnu, logides olevad märgid muudavad silumisväljundi autentimise möödaviiguvektoriks.
2.3 CI/CD Esemeid
Ehituslogid on eriti ohtlikud. Tegelikult CI/CD süsteemid prindivad keskkonnamuutujaid sageli ehitusetappide ajal.
Ründajad avastavad sageli:
Sisaldab selliseid ridu nagu:
If CI/CD Kui esemed on avalikud, siis on saladused avalikud. Google'i tobuke lihtsalt kiirendab avastamist.
2.4 Pilve- ja infrastruktuuriandmed
Paljastatud logid näitavad sageli:
- AWS-i juurdepääsuklahvid
- Azure'i salvestusruumi ühendusstringid
- Sisemised teenuse URL-id
- Andmebaasi volitused
- Redise lõpp-punktid
Isegi kui volitusi hiljem vahetatakse, on ründajal nüüd:
- Taristu kaardistamine
- Nimetamise kokkulepped
- Sihtmärkluure tulevaste rünnakute jaoks
Seega pakuvad paljastatud logid nii juurdepääsu kui ka luureandmeid.
3. Kuidas need logid üldse avalikuks saavad
Logid ei ilmu Google'isse maagiliselt. Need indekseeritakse, kuna need olid avalikult kättesaadavad.
3.1 Valesti konfigureeritud veebiserverid
Levinud mustrid on järgmised:
/logs/kataloogid, millele pääseb ligi ilma autentimiseta- Kataloogiloend on lubatud
- Nginx või Apache serveerib toorelt
.logfailid
Kui logi on HTTP kaudu kättesaadav, on see indekseeritav.
3.2 CI/CD Artefaktide kokkupuude
Tüüpilised vead:
- Avalikud artefaktid on lubatud GitHubi toimingud
- S3 ämbrite avamiseks üles laaditud logid
- Pipeline jäljed on ligipääsetavad ilma autentimiseta
A pipeline mis salvestab logisid avalikku ämbrisse, avaldab sisuliselt oma saladusi.
3.3 Silumisrežiim tootmiskeskkonnas
Raamistiku vaikesätted võivad olla ohtlikud:
Lisaks võib liigne päringute logimine kuvada järgmist:
- Päised
- märgid
- Täielikud päringu sisud
Tootmiskeskkonnas silumislogimine muudab teie rakenduse mandaatide eksportijaks.
3.4 Dockeri ja konteineri logid
Konteinerkeskkonnad toovad kaasa uusi kokkupuuteteid:
- Jagatud köidetesse paigaldatud logid
- Kõrvalkorvide logide eksportimine ebaturvalistesse lõpp-punktidesse
- Logi dashboardavaliku juurdepääsuga
Kui konteineri logid avaldatakse HTTP või avatud salvestusruumi kaudu, on need otsitavad. Lõpuks need indekseeritakse.
4. Realistlik rünnakuvoog: nohikust sissetungini
Tüüpiline rünnakuahel näeb välja selline:
Ründaja jookseb:
- Leiud paljastatud
.logfail - Väljavõtted:
- JWT-token
- Põhiline autentimispäis
- Andmebaasi ühendusstring
Autentimiskatsed:
- API lõpp-punktid
- Administraatori paneelid
- Sisemised teenused
Kui autentimine õnnestub, saab ründaja:
- Eskaleeri privileege
- Liigu külgsuunas
- juurdepääs CI/CD
- Tarneahela kahjustamine
See, mis algas otsingupäringuna, muutub järgmiseks:
- Seansi kaaperdamine
- Sisemine volituste täitmine
- Pipeline ülevõtmine
- Artefaktide mürgistus
Kõik avalikult indekseeritud logifailist.
5. Miks on „liiga palju” logimist rakenduste turvalisuse probleem
Metsaraie ei ole neutraalne. Selle asemel loob see teisene andmehoidla.
Kui logite tundlikke andmeid, loote oma saladustest sisuliselt teise koopia.
Siiski jäetakse logid ohtude modelleerimisest sageli välja. STRIDE-i puhul on see selgelt seotud järgmisega:
Teabe avalikustamine
Seega, turvaline SDLC tavades tuleks logisid käsitleda järgmiselt:
- Turvalisusega seotud artefaktid
- Tundlikud varad
- Kaitset vajavad infrastruktuuri komponendid
Kui teie ohumudel ignoreerib logisid, on see mittetäielik.
6. Kuidas vältida mandaadi lekkimist logifailides
6.1 Lõpeta saladuste logimine
Ära kunagi logi:
- paroolid
- märgid
- API võtmed
- Seansi ID-d
- Autoriseerimispäised
Isegi silumisrežiimis.
Võimaluse korral rakendage automaatset redigeerimist.
6.2 Struktureeritud ja turvaline logimine
Kasutage struktureeritud logimist koos maskeerimise ja filtreerimisega.
Näide (Node.js):
Näide (Python):
Põhiprintsiip on lihtne: saladused ei tohi kunagi palgipõhja jõuda.
6.3 Logide hoiustamise lukustamine
Turvakontrollid peaksid hõlmama järgmist:
- Keela kataloogiloend
- Kaitsma
/logs/autentimisega teed - Piira ämbrile juurdepääsu
- Rakenda säilituspoliitikaid
- Krüpteerige logid puhkeolekus
Logid ei tohi kunagi olla HTTP kaudu avalikult kättesaadavad.
6.4 CI/CD Guardrails
Manuaalsed ülevaatused ei ole piisavad. Selle asemel rakendage automatiseeritud kontrollimeetmeid:
- Logide salajane skaneerimine enne artefaktide avaldamist
- Ehitamise ebaõnnestumine, kui tuvastatakse tokeneid
- Tunnistusi sisaldavate artefaktide üleslaadimise takistamine
- Artefaktide räsi valideerimine
CI/CD peaks enne indekseerimist kokkupuute blokeerima.
7. Kuidas Xygeni takistab allintexti:login failitüüp:logi intsidendid
Probleem ei ole Google'i tobukuses. Probleem on avalikuks tulemises. Seetõttu tuleb enne indekseerimist tegutseda ennetavalt.
7.1 Salajane tuvastamine logides ja artefaktides
Xygeni skaneeringud:
- Rakenduste logid
- CI/CD tööjäljed
- Ehita esemeid
- Dockeri kihid
- Serialiseeritud väljundid
Kui volikirjad, märgid või tundlikud väärtused ilmuvad .log failid, märgistab Xygeni need kohe.
7.2 CI/CD Guardrails See blokeerib kokkupuudet
Selle asemel, et loota käsitsi tehtud ülevaatustele, Xygeni tagab turvalisuse kohapeal. pipeline tase:
See:
- Kui logidesse ilmuvad saladused, siis ehitus ebaõnnestub
- Blocks artefakti avaldamine
- Hoiab ära juhusliku avaliku kokkupuute
- Peatab ohtlikud ühinemised enne peamisele teele jõudmist
Kui CI-töö prindib märgi, siis pipeline ebaõnnestub.
Indekseerimist pole.
Kokkupuude puudub.
Ei mingit intsidenti.
7.3 Shift-Left kaitse enne, kui Google seda näeb
Ajastus on oluline.
Selle asemel, et reageerida järgmisele:
Xygeni peatab probleemi:
- At commit aeg
- Ajal pull request kinnitamine
- Ajal pipeline täitmine
- Enne artefakti avaldamist
Kui logi ei avalikustata, siis Google seda ka ei indekseeri.
Lõppsõna: kui Google suudab seda indekseerida, siis ründajad on seda juba teinud
Logid ei ole ohutud. Tegelikult on need harva ajutised. Vaikimisi ei ole need privaatsed. Seetõttu tuleks iga logifaili käsitleda turvalisusega seotud ressursina, mitte ainult silumisväljundina.
Kui tundlikud andmed jõuavad .log faili ja see muutub avalikult kättesaadavaks, see muutub kohe rünnakupinnaks. Lisaks, kui otsingumootor on selle indekseerinud, skaleerub nähtavus teie kontrolli alt välja.
Lahendus ei ole logimise lõpetamine, vaid pigem vastutustundlik logimine ja range kontrolli kehtestamine salvestamise ja levitamise osas. Teisisõnu, turvalisus peab ulatuma rakendusest endast kaugemale ja hõlmama ka jälgitavuskihti.
Selle asemel:
- Lõpeta saladuste logimine
- Lukusta palkide hoiustamine
- jõustama pipeline guardrails
- Automatiseeri tuvastamine ja poliitika jõustamine
lõpuks, Ennetamine on ajastuses. Sest kui kogu tekst:login failitüüp:log domeeni tagastab, on intsident juba alanud.




