allintextlogin failų tipų žurnalas

allintext:login filetype:log – Kaip iš atskleistų žurnalų nutekėja kredencialai

Paieškos sistemos buvo sukurtos turiniui indeksuoti. Tačiau užpuolikai jas naudoja jūsų klaidoms indeksuoti. Užklausa allintext:login failo tipas: žurnalas gali atrodyti nekenksminga. Iš tikrųjų tai vienas iš paprasčiausių būdų aptikti paviešintus žurnalų failus, kuriuose yra autentifikavimo srautai, kredencialai, prieigos raktai ir vidinės infrastruktūros duomenys.

Jei „Google“ gali matyti tuos žurnalus, tai gali padaryti ir užpuolikai. Kai duomenys indeksuojami, jų atskleidimas neišvengiamas. Be to, kai prisijungimo duomenys atsiranda viešai prieinamame faile, pažeidimas jau vyksta.

1. Kodėl viskas tekste:login filetype:log yra pavojingesnis nei atrodo

„Google dork“ – tai paieškos užklausa, kuri naudoja pažangius operatorius, kad surastų jautrų arba netinkamai sukonfigūruotą turinį, indeksuotą paieškos sistemų. Ji neišnaudoja „Google“. Vietoj to, ji išnaudoja jūsų matomumą.

Ši užklausa sujungia du operatorius:

  • allintext: grąžina puslapius, kuriuose visi terminai yra tekste
  • failo tipas: žurnalas apriboja rezultatus iki .log failai

Todėl:

Reiškia: „Rodyti žurnalo failus, kuriuose yra žodis login"

Iš pirmo žvilgsnio tai atrodo nereikšminga. Tačiau praktikoje dažnai gaunama:

  • Viešai prieinami žiniatinklio serverio žurnalai
  • CI/CD žurnalai įkelti kaip artefaktai
  • Netyčia derinkite žurnalus commitį saugyklas
  • Programų žurnalai su paprasto teksto prisijungimo duomenimis

Tai ne paieškos sistemos klaida. Tai yra duomenų atskleidimo pažeidžiamumas dėl netinkamos konfigūracijos. „Google“ tiesiog indeksavo tai, kas buvo viešai prieinama.

2. Ką užpuolikai iš tikrųjų randa paviešintuose žurnalų failuose

Kai užpuolikai bėga allintext:login failo tipas: žurnalasJie nenaršo atsitiktinai. Jie ieško autentifikavimo pėdsakų.

2.1 Paprastojo teksto prisijungimo duomenys

Žurnaluose dažnai yra tokių įrašų:

or

Arba net SMTP kredencialai:

Autentifikavimo duomenų registravimas yra vienas greičiausių būdų nutekinti gamybinius prisijungimo duomenis. Todėl vienas atviras žurnalo failas gali panaikinti visą prieigos kontrolės modelį.

2.2 Sesijos žetonai ir JWT

Net kai slaptažodžiai neregistruojami, žetonai dažnai registruojami.

Pavyzdžiui:

Galiojantis JWT arba seanso slapukas viduje .log failas gali įgalinti:

  • Sesijos užgrobimas
  • Privilegijų eskalavimas
  • Šoninis judėjimas per vidines sistemas

Kitaip tariant, žurnaluose esantys žetonai derinimo išvestį paverčia autentifikavimo apėjimo vektoriumi.

2.3 CI/CD Daiktai

Statybos žurnalai yra ypač pavojingi. Tiesą sakant, CI/CD Sistemos dažnai spausdina aplinkos kintamuosius kūrimo etapų metu.

Užpuolikai dažnai aptinka:

Turinčios tokias eilutes kaip:

If CI/CD Jei artefaktai yra vieši, tai ir paslaptys yra viešos. „Google“ kvailys tiesiog paspartina atradimą.

2.4 Debesijos ir infrastruktūros duomenys

Atviri rąstai dažnai atskleidžia:

  • AWS prieigos raktai
  • „Azure“ saugyklos ryšio eilutės
  • Vidiniai paslaugų URL
  • Duomenų bazės prisijungimo duomenys
  • „Redis“ galiniai taškai

Net jei prisijungimo duomenys vėliau bus pakeisti, užpuolikas dabar turės:

  • Infrastruktūros žemėlapių sudarymas
  • Vardų suteikimo sutartys
  • Tikslinė žvalgyba būsimoms atakoms

Todėl atviri rąstai suteikia ir prieigą, ir žvalgybą.

3. Kaip šie žurnalai iš pradžių tampa vieši

Žurnalai „Google“ paieškos sistemoje neatsiranda stebuklingai. Jie indeksuojami, nes buvo viešai pasiekiami.

3.1 Neteisingai sukonfigūruoti žiniatinklio serveriai

Įprasti modeliai apima:

  • /logs/ katalogai, pasiekiami be autentifikacijos
  • Katalogo įrašas įjungtas
  • „Nginx“ arba „Apache“ patiekiami neapdoroti .log failai

Jei žurnalas pasiekiamas per HTTP, jis yra indeksuojamas.

3.2 CI/CD Artefaktų ekspozicija

Tipiškos klaidos:

  • Vieši artefaktai įgalinti „GitHub“ veiksmai
  • Į atvirus S3 segmentus įkelti žurnalai
  • Pipeline pėdsakai prieinami be autentifikavimo

A pipeline kuris saugo žurnalus viešame saugyklos aplanke, efektyviai skelbia savo paslaptis.

3.3 Derinimo režimas gamybinėje aplinkoje

Sistemos numatytieji nustatymai gali būti pavojingi:

Be to, per didelis užklausų registravimas gali rodyti:

  • Antraštės
  • Dovanėlės
  • Išsamios užklausos tekstas

Derinimo registravimas gamybinėje aplinkoje paverčia jūsų programą kredencialų eksportuotoju.

3.4 Docker ir konteinerių žurnalai

Konteinerinėje aplinkoje atsiranda naujų poveikio būdų:

  • Žurnalai, prijungti prie bendrinamų tomų
  • Šalutinės mašinos eksportuoja žurnalus į neapsaugotus galinius taškus
  • Žurnalas dashboardsu vieša prieiga

Jei konteinerio žurnalai pateikiami per HTTP arba atvirą saugyklą, juos galima ieškoti. Galiausiai jie indeksuojami.

4. Realistinis atakų srautas: nuo kvailumo iki prasiveržimo

Įprasta atakos grandinė atrodo taip:

  • Puolėjas bėga:

  • Radiniai apdengti .log failas
  • Ištraukos:
    • JWT prieigos raktas
    • Pagrindinė autentifikavimo antraštė
    • Duomenų bazės ryšio eilutė
  • Bandoma autentifikuoti prieš:

    • API galiniai taškai
    • Administratoriaus skydai
    • Vidinės paslaugos

Jei autentifikavimas sėkmingas, užpuolikas gali:

  • Eskaluoti privilegijas
  • Judėti į šoną
  • Prisijunkite CI/CD
  • Pažeisti tiekimo grandinę

Tai, kas prasidėjo kaip paieškos užklausa, tampa:

  • Sesijos užgrobimas
  • Vidinis kredencialų įterpimas
  • Pipeline perėmimo
  • Artefaktų apsinuodijimas

Visa tai iš viešai indeksuoto žurnalo failo.

5. Kodėl „per didelis“ registravimas yra „AppSec“ problema

Medienos kirtimas nėra neutralus. Jis sukuria antrinė duomenų saugykla.

Jei registruojate slaptus duomenis, iš esmės sukuriate antrą savo paslapčių kopiją.

Tačiau žurnalai dažnai neįtraukiami į grėsmių modeliavimą. Pagal STRIDE tai aiškiai atitinka:

Informacijos atskleidimas

Todėl saugu SDLC praktikoje žurnalus reikėtų traktuoti taip:

  • Su saugumu susiję artefaktai
  • Jautrus turtas
  • Infrastruktūros komponentai, kuriems reikalinga apsauga

Jei jūsų grėsmės modelis ignoruoja žurnalus, jis yra nepilnas.

6. Kaip išvengti kredencialų nutekėjimo žurnalų failuose

6.1 Nustokite registruoti paslaptis

Niekada neregistruoti:

  • Slaptažodžiai
  • Dovanėlės
  • API raktai
  • Seansų ID
  • Autorizacijos antraštės

Net ir derinimo režimu.

Kai tik įmanoma, įdiekite automatinį redagavimą.

6.2 Struktūrizuotas ir saugus registravimas

Naudokite struktūrizuotą registravimą su maskavimu ir filtravimu.

Pavyzdys (Node.js):

Pavyzdys (Python):

Pagrindinis principas paprastas: paslaptys niekada neturi pasiekti rąstų kriauklės.

6.3 Užrakinti žurnalų saugyklą

Saugumo kontrolė turėtų apimti:

  • Išjungti katalogų sąrašą
  • Apsauga /logs/ keliai su autentifikavimu
  • Apriboti prieigą prie kibirų
  • Taikyti saugojimo politikas
  • Šifruoti žurnalus ramybės būsenoje

Žurnalai niekada neturi būti viešai pasiekiami per HTTP.

6.4 CI/CD Guardrails

Rankinių peržiūrų nepakanka. Vietoj to įdiekite automatines kontrolės priemones:

  • Slaptas žurnalų nuskaitymas prieš artefaktų publikavimą
  • Nepavyksta sukurti, jei aptinkami žetonai
  • Neleisti įkelti artefaktų su prisijungimo duomenimis
  • Maišos patvirtinimas artefaktams

CI/CD turėtų blokuoti poveikį prieš indeksavimą.

7. Kaip „Xygeni“ apsaugo nuo viso teksto:login failo tipas: žurnalo incidentai

Problema ne „Google“ kvailumas. Problema – matomumas. Todėl prieš indeksuojant reikia imtis prevencinių priemonių.

7.1 Slaptų elementų aptikimas žurnaluose ir artefaktuose

„Xygeni“ skenavimas:

  • Programų žurnalai
  • CI/CD darbo pėdsakai
  • Sukurkite artefaktus
  • Dockerio sluoksniai
  • Serializuoti išėjimai

Jei kredencialai, prieigos raktai arba neskelbtinos vertės rodomos .log failus, „Xygeni“ juos nedelsdama pažymi.

7.2 CI/CD Guardrails Tas blokuoja ekspoziciją

Užuot pasikliavę rankinėmis peržiūromis, „Xygeni“ užtikrina saugumą pipeline lygis:

Tai:

  • Sukūrimo klaida, kai žurnaluose atsiranda slaptų duomenų
  • Blokuoja artefaktų publikavimą
  • Apsaugo nuo atsitiktinio viešo poveikio
  • Sustabdo nesaugius sujungimus prieš pasiekiant pagrindinį

Jei CI užduotis atspausdina prieigos raktą, pipeline nepavyksta.

Nėra indeksavimo.
Nėra ekspozicijos.
Jokių incidentų.

7.3 Apsauga nuo „Shift-Left“ prieš „Google“ tai pamatant

Laikas svarbus.

Užuot reagavęs į:

„Xygeni“ išsprendžia problemą:

  • At commit laikas
  • metu pull request patvirtinimas
  • metu pipeline vykdymas
  • Prieš artefakto publikavimą

Jei žurnalas niekada netampa viešas, „Google“ jo niekada neindeksuoja.

Galutinė išvada: jei „Google“ gali indeksuoti, užpuolikai jau tai padarė

Žurnalai nėra nekenksmingi. Tiesą sakant, jie retai būna laikini. Pagal numatytuosius nustatymus jie nėra privatūs. Todėl kiekvienas žurnalų failas turėtų būti laikomas su saugumu susijusiu turtu, o ne tik derinimo išvestimi.

Jei neskelbtini duomenys pasiekia .log byla ir tampa viešai prieinama, jis iš karto virsta atakos paviršiumi. Be to, kai paieškos sistema indeksuoja svetainę, jos matomumas padidėja ne jūsų valioje.

Sprendimas nėra nutraukti registravimą. Greičiau tai yra atsakingas registravimas ir griežtos saugojimo bei platinimo kontrolės vykdymas. Kitaip tariant, saugumas turi apimti ne tik pačią programą, bet ir stebimumo lygmenį.

Vietoj to:

  • Nustokite registruoti paslaptis
  • Užrakinti rąstų saugyklą
  • vykdyti pipeline guardrails
  • Automatizuoti aptikimą ir politikos vykdymą

Galų gale, prevencija yra susijusi su laiku. Nes kartą allintext:login failo tipas: žurnalas grąžina jūsų domeną, incidentas jau prasidėjo.

sca-tools-software-composition-analyses-tools
Prioritetizuoti, pašalinti ir apsaugoti savo programinės įrangos rizikas
Gaukite nemokamą paskyrą.
Nebūtina kreditinės kortelės.

Apsaugokite savo programinės įrangos kūrimą ir tiekimą

su „Xygeni“ produktų rinkiniu