[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: crypto@sikurezza.org
Soggetto: Re: Algoritmo il Javascript
Mittente: Mr86
Data: 26 Sep 2000 19:59:39 -0000
Ho messo insieme tutte le vostre risposte e vi ri-rispondo:

#Risposte a Raistlin:
____________________

>> Otterrebbe qualche migliaio di
>> "secure.htm" da controllare a mano, e ci metterebbe qualche mese a
trovare
>> tutte le combinazioni.
>
>E perche' mai ?
>
>Se sa che c'e' contenuto del testo, gli basta scremare le pagine non
>contenenti parole sensate...
>Idem se si tratta di altri dati che seguano una qualche pattern
>predicibile...

Ho fatto uno sbaglio a considerare il bruteforce. Mettiamo che il
bruteforce passasse a "secure.htm" tutte le combinazioni. Primo, nulla mi
vieta di usare una password di 200 caratteri (esempio). In questo modo ci
impiegerebbe qualche milione di anni. E poi, dato che passando la password
a "secure.htm" la decifratura avviene on-the-fly, se lui salva tutte le
pagine risultanti, apparirebbe sempre il codice cifrato e nulla di più. E
non mi pare sia possibile far leggere a un programma il testo che viene
decifrato nel browser. In questo modo lui si deve per forza controllarsele
a mano. Se erro in qualcosa, mi scuso di me.
____________________

>> Ci ho dato un'occhiata, ma non è che sia molto chiara (forse è una mia
>> impressione)
>
>Oddio, se vuoi ti mando il manuale completo del javascript, e' un mega e
>rotti di zip contenente un PDF... piu' di quello non c'e' :)

Beh.....se hai voglia di mandarmelo un PDF di 1,5 MB (dubito :-) ),
mandamelo pure, ti ringrazio. Oppure dammi un link da cui scaricarlo (se
esiste).
____________________

>> E poi nella chace del browser rimane ancora la pagina cifrata, non il
>> risultato della decifrazione
>
>E su questo...

Cosa intendi per "E su questo......" ?
____________________

>> Quello certamente, ma anche i CGI possono subire il bruteforce
>
>Si', ma in quel caso il bruteforce (per come immagino pensasse il CGI
vecna)
>risulterebbe da un log del server, se sei un minimo oculato.
>
>Il codice javascript essendo client side lo puoi forzare comodamente
mentre
>sei offline.

Ma volendo, se uno ha una shell, gli mette su un bel bruteforcer 24h su 24,
lo fa passare da 800 proxy e me lo buca da li.
____________________

#Risposte a Vecna:
____________________

>> Per l'algoritmo avrei gia una idea che avevo trovato sul web. Era una
>> specie di DES credo, ma aveva qualche problema. Il problema è che di
>> javascript ne so poco, e non riuscirei a fare il porting dal visualbasic
al
>> javascript
>	guarda sotto packetstorm la sezione "crypto" trovi numerosi codici
>	in C, poiche` lo conosci e poiche` il javascript e` simile ti
>	potrebbero essere utili.

Ti ringrazio del suggerimento. Comunque, per esseere più chiaro vi posto
anche il codice in VB che avevo trovato:

Function codifica(testo) As String
   Dim aggiunta As Byte
   Dim chiave As Byte
   Dim L1, L2 As Integer
   Randomize
   aggiunta = Int((255 * Rnd) + 1)
   chiave = Int((255 * Rnd) + 1)
   L1 = chiave
   L2 = 1
   While L2 < Len(testo)
      Mid(testo, L2, 1) = Chr((Asc(Mid(testo, L2, 1)) + L1) And 255)
      L1 = (L1 + aggiunta) Mod 256
      L2 = L2 + 1
   Wend
   testo = Chr(chiave) & testo & Chr(aggiunta)
   codifica = testo
End Function

Function decodifica(testo) As String
   Dim aggiunta As Byte
   Dim chiave As Byte
   Dim L1, L2 As Integer
   aggiunta = Asc(Right(testo, 1))
   chiave = Asc(Left(testo, 1))
   testo = Mid(testo, 2, Len(testo) - 2)
   L1 = chiave
   L2 = 1
   While L2 < Len(testo)
      Mid(testo, L2, 1) = Chr((Asc(Mid(testo, L2, 1)) - L1) And 255)
      L1 = (L1 + aggiunta) Mod 256
      L2 = L2 + 1
   Wend
   decodifica = testo
End Function

Naturalmente gli ho apportato delle modifiche (per adattarlo a un mio
vecchio progetto in VB)
____________________

>> Lo script di cui parli l'ho gia provato, ma ti sbagli. la password non
era
>> in chiaro nel js. Era criptata.
>	magari erano 2 script diversi, cmq una volta visto nel .html o
>	nel .js la pagina esatta, che la password fosse crittata o meno
>	non ti interessa +, vai subito alla pagina scoperta.

Aspe.....mi ricordo che la pagina di login prima leggeva nello script se
c'è un user di questo nome, se c'è confronta la password con quella che era
gia stata criptata prima e inserita nello script. Quando lo guardai, non
andai ad analizzare l'algo, ma magari era un algo irreversibile...non
so.....Comunque la pagina dopo il login cambiava ad ogni user, ma non so
come lo calcolava. Ma sono sicuro che non era scritta da nessuna parte
nello script (almeno non in chiaro).
____________________

>> Oddio, non è che sia il massimo della sicurezza questo metodo. Quello
che
>> volevo implementare io era molto più sicuro. E poi se prima del codice
di
>> decodifica ci metti
>	questo metodo e` il + sicuro.
>	questo metodo inoltre lo puoi applicare in vari modi, puoi
>	usare tue pagine crittare MA che non vengono trovate se
>	si cicca il nome, puoi gestire + utenti e + pagine se
>	usi un algortmo per ricavare il nome del file da
>	login + password, puoi implementare algortimi da cui
>	ricavare il nome se non vuoi che la password sia uguale
>	alla pagina, e` cmq il metodo + sicuro, non c'e` password
>	ne in chiaro ne in scuro ... e l'unica persona che puo` 
>	vedere tutte le pagine e` quello con l'accesso ftp o
>	il sysadmin.

Mi hai fatto venire una idea !!!!
Se nel "login.htm" richiedo 2 password: la prima va cercare il password +
.htm come dici tu, e nel secondo campo chiedo la key per ladecifrazione
della pagina. Naturalmente le 2 pass dovranno essrere diverse. Questo
metodo (credo) sia abbastanza sicuro, dato che per forzalro ci vogliano 2
passaggi. Grazie Vecna !!!!
____________________

#Risposte a cerin0:
____________________

>Per avere un'idea generale dei metodi utilizzati e delle tecniche di
cifratura
>in javascript dai un'occhiata ai seguenti link:
[ Ho tolto i link per ragioni di spazio ]

Grazie 1K cerin0. le ho scaricate tutte e me le sto leggendo con calma
oggi. Grazie anche a te !!!
____________________

#Risposte a James WorK:
____________________

>Aggiungo che considerando che si tratta di pagine web, il parsing di 
>elementi HTML sarebbe + che sufficiente :-)

Fai riferimento alle risposte a Raistlin
____________________

Bene, ho finito il mio post.....
Ringrazio un po tutti per le critiche, i suggeriemnti, i link.....Grazie a
tutti !!!
Comunque aspetto risposte alle mie nuove teorie :-)

PS: {
Di crittografia in generale ne so molto poco
Me ne sto interessando da poco, leggendo un po qua e la
}


--------------------------------------------------------------------------
informazioni sui comandi supportati da questa ml: http://www.sikurezza.org




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005