Sekuriteit

Klein oppervlak, gepubliseerde hersiening

Missivus hou 'n legitimasie wat e-pos namens jou maatskappy kan stuur. Dit is presies die soort kode wat reël vir reël hersien en in die openbaar gedokumenteer behoort te word — en so is dit gedoen.

Die sekuriteitsmodel in een paragraaf

Die Exchange-toepassingstoegangsbeleid is wat die skadestraal begrens. Elke bevinding hieronder word daardeur ingeperk — selfs 'n heeltemal gekompromitteerde legitimasie kan as een gedeelde posbus stuur en niks anders doen nie. Daarom behandel die installasiegids die beleid as 'n verpligte stap met 'n verifbevel, nie as opsionele verharding nie.

Wat die hersiening gedek het

Die v0.1.1-boom is ná die eerste lewendige ontplooiing geoudit — die Graph-vervoer, die instellingsmodel, die toetse-pos-API-metode en die Vue-komponent, nagegaan vir geheimlekkasie deur logs, API-antwoorde, HTML-bron en die blaaierkonsole; verifikasie en CSRF op die API-oppervlak; insetvalidering op elke instelling; en of Graph-foutliggame iemand anders as 'n supergebruiker kan bereik. Bewerings oor Matomo se gedrag is teen Matomo se bronkode geverifieer, nie uit die geheue nie.

Bevindings, eerlik gestel

Reggestel voor vrystelling

  • 'n Basis-URL-oorskrywing kon die kliëntgeheim op 'n aanvaller se gasheer gemik het — URL's word nou as kaal https-oorspronge gevalideer voordat enige versoek gebou word.
  • 'n Netwerkmislukking midde-in 'n oplaai kon 'n vooraf-geverifieerde oplaai-URL in die log laat lek — dit word nou omgeskakel en geredigeer soos elke ander mislukking.
  • Instellings het enige string aanvaar — elke veld valideer nou sy vorm, sodat 'n geplakte Geheim-ID by stoortyd misluk, nie later as 'n ondeursigtige Microsoft-fout nie.
  • Die toetse-pos-API-metode het enige ontvanger aanvaar en op GET geantwoord — dit is nou slegs POST met 'n gevalideerde adres, en word uit bediener-toegangslogs gehou.

Skoon geverifieer

  • Geheime bereik nooit die HTML-bron, die API-antwoord of die blaaierkonsole nie — wagwoordvelde word deur Matomo se kern gemasker, en die inprop voeg twee eie wagte daarbo by.
  • Die toetsoproep is CSRF-beskerm deur Matomo se tekenmodel, met 'n slegs-POST-reël bygevoeg as verdediging in diepte.
  • Alles wat gelog of gegooi word, gaan deur 'n redigeerder wat bekende geheime volgens waarde en legitimasies volgens vorm uitwis — tekens, bewerings, bearer-kopstukke, oplaai-URL's — en misluk toe.

Aanvaarde afruilings, gedokumenteer

  • Die korttermyn-toegangsteken word in Matomo se lêergerugsteunde kas gestoor — enigiemand wat dit kan lees, kan reeds Matomo se konfigurasie lees, wat dalk die geheim self bevat. Versag deur die 55-minute-leeftyd en die toegangsbeleid.
  • 'n Supergebruiker kan ongekeerde toetse-posse stuur — 'n oorlasvektor, nie 'n voorregvektor nie; 'n supergebruiker kon in elk geval pos heeltemal herkonfigureer.
  • 'n Geheim wat in die instellingskoppelvlak ingevoer word, word ongeënkripteer in Matomo se databasis gestoor — die konfigurasielêer- en omgewingsveranderlike-vlakke bestaan juis sodat dit nooit hoef te gebeur nie, en hulle geniet voorkeur.

Lees die volledige hersiening met al elf bevindings op GitHub

Meld 'n kwesbaarheid aan

Stuur 'n e-pos na die adres hieronder met die besonderhede. Gee ons asseblief die kans om 'n probleem reg te stel voordat dit openbaar word — en sluit nooit 'n kliëntgeheim, sertifikaat of PEM-lêer by 'n verslag in nie.

Sekuriteitskontak: