Avatar billede cbadk Novice
03. september 2004 - 22:48 Der er 5 kommentarer og
1 løsning

Sikkerheds spørgsmål vedr. aspcookies

Hej

Er der nogle der ved, hvor sikker en ASPsession cookie er ?

/ cbadk
Avatar billede cbadk Novice
03. september 2004 - 22:48 #1
response.cookies("")="" ....altså denne kommado !!!
Avatar billede bufferzone Praktikant
04. september 2004 - 00:03 #2
sikker mod hvad???
Sikker i hvilken sammenhæng????
Avatar billede cbadk Novice
04. september 2004 - 00:06 #3
...i forbindelse med bruger id ! og bruger informationer...!!!
Avatar billede bufferzone Praktikant
04. september 2004 - 00:12 #4
Så er den ikke sikker i sin rå form, alle informationer der ikke krypteres eller sendes gennem krypterede tunneler kan opfanges, aflæses. Hvad enten du opbevare dem hos klienten i en cookie eller på serveren, kan de stjæles, hijackes, aflæses eller opfanges.

response.cookies("")="" er jo bare en asp kommande og hvis de oplysninger den håndtere er krypterede, så afhænger sikkerheden af krypteringen.

Svaret på dit spørgsmål bliver derfor, så sikker som du programmere funktionaliteten. Cookies er ikke et sikkert sted at opbevare personlige of følsomme oplysninger i klart sprog
Avatar billede cbadk Novice
04. september 2004 - 00:15 #5
mit problem er at jeg bruger subdomains...

og derved kan jeg ikke bruge sessions...fordi de kun virker på 1 domæne !

Cokkies er jo giniale..fordi de kan bruges til subdomains også ...men må da bare finde en anden løsning så !

Har du evt et forslag ?
Avatar billede karsten_larsen Praktikant
04. september 2004 - 06:38 #6
Du kan jo kigge på disse svar om kryptering:

http://eksperten.dk/spm/459358

Et andet eksempel er dette:

<%@ Language=VBScript %>
<%
Dim i, sValid, sInvalid
sInvalid = "bcdfghijklopqruvwxyz0134678BCEFGHIJKLMOQSVWXYZ"
sValid  = "2RDPsANtame95nUT"
randomize

function int2hex(iNum)
    Dim sHex
    sHex = mid(sValid,cint(iNum \ 16)+1,1) & mid(sValid,cint(iNum mod 16)+1,1)
    int2hex = sHex
End Function

function hex2int(sHex)
    Dim iNum
    iNum = (instr(1,sValid,left(sHex,1))-1)*16 + instr(1,sValid,right(sHex,1))-1
    hex2int = iNum
End Function

Function fCrypt(sClave,sTmp)
  Dim iKeyChar, iStringChar, i, ii, sEncrypted, iCryptChar
  sEncrypted = ""
  ii = 1
  for i = 1 to Len(sTmp)
    iKeyChar    = Asc(mid(sClave,ii,1))
    iStringChar = Asc(mid(sTmp,i,1))
    iCryptChar  = iKeyChar Xor iStringChar
    sEncrypted  = sEncrypted & int2hex(iCryptChar)
    ii = ii + 1
    if ii > len(sClave) then ii = 1 end if
  next
  for i=1 to len(sEncrypted)
        ii = cint(rnd*(len(sEncrypted)))+1
        sEncrypted = left(sEncrypted,ii-1) & mid(sInvalid,cint(rnd*(len(sInvalid)))+1,1) & right(sEncrypted,len(sEncrypted)-(ii-1))
  next
  fCrypt = sEncrypted
End Function

Function fDecrypt(sClave, sTmp)
  Dim iKeyChar, iStringChar, i, ii, sEncrypted, iCryptChar, sTmp2
  sEncrypted = ""
  sTmp2 = ""
  for i = 1 to Len(sTmp)
        if instr(1,sValid,mid(sTmp,i,1)) > 0 then
              sTmp2 = sTmp2 & mid(sTmp,i,1)
        end if
  next
  ii = 1
  for i = 1 to Len(sTmp2)/2
    iKeyChar    = Asc(mid(sClave,ii,1))
    iStringChar = hex2int(mid(sTmp2,((i-1)*2)+1,2))
    iCryptChar  = iKeyChar Xor iStringChar
    sEncrypted  = sEncrypted & chr(iCryptChar)
    ii = ii + 1
    if ii > len(sClave) then ii = 1 end if
  next
  fDecrypt = sEncrypted
End Function
%>
<HTML>
<HEAD>
</head>
<html>
<%
response.write(fCrypt("this is my key","This is what i want to encrypt") & "<br>")
Response.Write(fDecrypt("this is my key",fCrypt("this is my key","This is what i want to encrypt")))

'sUser = "John"
'response.cookies("User") = fCrypt("This is the KEY", sUser)

sUser = fDecrypt("This is the KEY", request.cookies("User"))
response.write sUser
%>

:-) karsten_larsen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester