Gå til innhold

Mer enn hvert tredje nettsted laster sårbare JavaScript-biblioteker


Anbefalte innlegg

Videoannonse
Annonse

Det holder liksom ikke bare å si at alle disse nettsidene laster "..utdaterte og usikre JavaScript-biblioteker", man må jo vise til konkrete sikkherhetsproblemer, ellers er alle disse automatiserte "testene" diverse ymse tullinger foretar med ujevne mellomrom totalt verdiløse.

 

For de fleste javascript-bibliotek så vil det være XSS som er nærmest den eneste risikoen ettersom de kjører kun på klientsiden, og ikke har noe med serveren å gjøre.

 

Ser man for eksempel på jQuery, ettersom det biblioteket trekkes frem, så finnes det vel bare en enkelt kjent sårbarhet i "core" jQuery.

 

Denne besto av noe slikt som at dersom man benyttet hashen fra URL'en som selektor, så kunne man injisere XSS i lenker som ble kjørt av jQuery i nettleseren.

 

For det første så krever dette altså ganske spesifikk bruk av "location.hash" i selektorer for å skape en sårbarhet, for det andre så ble feilen fikset for mange år siden.

Problemet ble faktisk først oppdaget i 2013, men jQuery 1.6.4 fra 2011 hadde allerede patchet problemet

 

Nettsider som benytter en jQuery versjon fra 1.6.4 eller høyere, er altså sikre, en versjon som er seks år gammel, og de aller fleste nettsider som benytter eldre versjoner er også sikre, så fremt de ikke benytter deler av URL'en direkte som selektor, noe de færreste nettsteder gjør.

  • Liker 4
Lenke til kommentar

Er det virkelig mulig å glemme at Java er et eneste stort hull når det gjelder sikkerhet?

 

Java i browseren var det, men dette er så godt som dødt nå.

 

JavaScript har overhodet ingenting med Java å gjøre i det hele tatt, og Java på serversiden er fortsatt blant de mest brukte språkene og er knakende godt til det.

  • Liker 1
Lenke til kommentar

Det holder liksom ikke bare å si at alle disse nettsidene laster "..utdaterte og usikre JavaScript-biblioteker", man må jo vise til konkrete sikkherhetsproblemer...

 

 

Hvorfor det? Hvis man må poste en fullstendig oversikt over hvilke kjente feil som fins i hvilke versjoner av alle kjente javascriptrammeverk som en del av en enkel påminnelse om at det er lurt å holde ting oppdatert, så ... vel ...

Lenke til kommentar

Det er ikke korrekt. Ordet carpet ble ikke laget for at folk skulle forveksle det med car. Men JavaScript fikk faktisk det navnet for at Javas stjernestøv skulle drysse på det.

 

Nja, både ja og nei! Javascript het opprinnelig Mocha, derav alle "kaffevariantene", slik som CoffeeScript etc.

Ved lansering i Netscape Navigator valgte man dog å markedsføre det som LiveScript, men senere byttet man navn til JavaScript, nettopp fordi Java var populært, og det hele var nok et markedsføringsstunt.

 

Litt mer forvirrende blir det når MicroSoft valgte å kalle sin variant JScript for å ikke komme i konflikt med Sun, og at under standariseringen av språket ble det vedtatt å benytte "EcmaScript" som et kompromiss.

 

Kjært barn har mange navn !

 

Hvorfor det? Hvis man må poste en fullstendig oversikt over hvilke kjente feil som fins i hvilke versjoner av alle kjente javascriptrammeverk som en del av en enkel påminnelse om at det er lurt å holde ting oppdatert, så ... vel ...

Når forskere vet et universitet hevder at mange nettsider laster sårbare javascript-bibliotek, så bør de samme forskerne i aller høyeste grad dokumentere hvilke sårbarheter og hvilke bibliotek det dreier seg om.

 

Nå gjør jo forsåvidt også forskerne det, dersom man gidder å lese rapporten. De har altså undersøkt 133 000 nettsteder, og kommet til at 37 prosent av disse laster javascript-bibliotek med kjente sårbarheter, noe som altså ikke nødvendigvis betyr at selve implementasjonen er sårbar.

 

Her har man i bunn grunn laget seg en liste over de 72 mest brukte bibliotekene, samt deres versjoner, og deretter sett på CVE'er, altså kjente sårbarheter for disse bibliotekene. Deretter har man skannet 133 000 nettsider for å se hvilke versjoner som er i bruk, og kommet til at 37% benytter ett eller flere bibliotek med en kjent sårbarhet, men altså uten å ta høyde for om det faktisk er en sårbarhet på nettsiden som benytter biblioteket, noe som absolutt ikke er sikkert.

 

Så er vel spørsmålet om man bør bruke den siste versjonen eller ikke? Det oppdages jo stadig nye hull, mens gamle versjoner ofte er bedre "utprøvd", og så lenge man tar høyde for sårbarhetene er de ikke nødvendigvis noe dårligere valg.

 

Det er også verdt å merke seg at nettopp jQuery ligger i den lavere enden, mens i et "per-bibliotek" perpektiv så benyttes det langt mer sårbare versjoner av ting som Angular, Handlebars og YUI, de to sistnevnte er oppe i godt over 80%, altså 8 av 10 ganger benyttes det en versjon som er sårbar.

Lenke til kommentar

For de fleste javascript-bibliotek så vil det være XSS som er nærmest den eneste risikoen ettersom de kjører kun på klientsiden, og ikke har noe med serveren å gjøre.

 

Det stemmer. Vi snakker hovedsaklig om XSS. I noen tilfeller er det også DOS-muligheter (typ ReDOS).

 

Ser man for eksempel på jQuery, ettersom det biblioteket trekkes frem, så finnes det vel bare en enkelt kjent sårbarhet i "core" jQuery.

 

Denne besto av noe slikt som at dersom man benyttet hashen fra URL'en som selektor, så kunne man injisere XSS i lenker som ble kjørt av jQuery i nettleseren.

 

For det første så krever dette altså ganske spesifikk bruk av "location.hash" i selektorer for å skape en sårbarhet, for det andre så ble feilen fikset for mange år siden.

Problemet ble faktisk først oppdaget i 2013, men jQuery 1.6.4 fra 2011 hadde allerede patchet problemet

 

Nettsider som benytter en jQuery versjon fra 1.6.4 eller høyere, er altså sikre, en versjon som er seks år gammel, og de aller fleste nettsider som benytter eldre versjoner er også sikre, så fremt de ikke benytter deler av URL'en direkte som selektor, noe de færreste nettsteder gjør.

 

Det å putte hash eller lignende i selektorer er faktisk vanligere enn man skulle tro. Det finnes tre forskjellige sårbarheter i jQuery. Den første ble patchet i 1.6.4, men en tilsvarende finnes i versjoner frem til 1.9.0b1. I tillegg er det slik at jQuery-migrate gjeninnfører denne sårbarheten i senere 1.x versjoner. Se gjerne:

http://research.insecurelabs.org/jquery/test/

Der er også den tredje svakheten i jQuery vist. Denne er litt mer søkt enn de to andre, og det skal enda mer til at nettsiden er sårbar.

 

1.6.4 fra 2011 høres kanskje gammelt ut, men av 340,000 norske domener, kjører over 25,000 versjoner lavere enn 1.6, og 79,000 lavere enn 1.9.0.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...