Newsgroup: it.comp.lang.visual-basic
Titolo: Sicurezza di Visula Basic

Sto sviluppando un programma che prevede l'accesso ad un server FTP tramite
WININET.
Ho notato che, una volta compilato il programma, nel .EXE sono presenti in
chiaro sia il nome utente che la password (parametri che io passo alla
funzione FTP read).
Mi sembra che non sia possibile in alcun modo criptare l'eseguibile in modo
da rendere più protetta questa informazione.
E' possibile secondo voi rimediare a questa spiacevole mancanza del
compilatore?

 compilatore?
Cripta la password all'interno dell'istruzione
pass="ciccio"
e scrivigli il codice ascii diviso da punti o che ne so.
Poi riconverti al volo quando leggi :)
Ciao

 ha scritto nel messaggio
news:a4umg1$130$1...@newsreader.mailgate.org...


 Su Access è possible per esempio criptare l'intero database.
Cavolo sembra più una chat che un NG, complimenti per la velocità :)
Non saprei darti altri suggerimenti, prova a vedere se compilando
l'eseguibile in P-Code cambia qlcosa :)

 ha scritto nel messaggio
news:a4umsp$18c$1...@newsreader.mailgate.org...


 Su Access č possible per esempio criptare l'intero database.
aaaaah... beh, lo sanno tutti che la "criptazione" di Access č veramente
uno dei sistemi piů sicuri per avere i dati in una botte di ferro  <g>
--
Faber

 ha scritto nel messaggio
news:a4unm1$3cm9q$1...@ID-66268.news.dfncis.de...

Grazie per l'aiuto, ah, se fossero tutti come te ;)

 Grazie per l'aiuto, ah, se fossero tutti come te ;)
dai, scherzavo  :P
il metodo piů banale per non rendere 'palesemente' visibili le stringhe
nel file exe, č fare una cosa del tipo
Dim strPassWord As String
strPassWord = Chr$(67) & Chr$(105) & Chr$(97) & Chr$(111)
ci sono infinite soluzioni per evitare il problema che hai citato, e
molte saranno piů sicure di questa. l'algoritmo da adottare dipende da
quanto č importante la password  ;)
Ciao
--
Faber


Credo che meglio di così non serva neanche!  ...basta "sniffare" il
TCP per vedere la password in un FTP no?
Bye, Clod.


Hai ragione, purtroppo. L'unica cosa che si puň fare a parere mio, č rendere
la vita un po' piů difficile ai malintenzionati con soluzioni come quella
proposta da Faber. Nulla piů.
Se qualcuno conosce qualche metodo per rendere piů sicuri i dati trasmessi
tramite FTP, si faccia avanti!

 ha scritto nel messaggio
news:jOBc8.3065$E33....@twister1.libero.it...

...mmmhh, *non* usare FTP ? :-)
Scherzi a parte, bisogna capire a cosa serve.  Se devi fare un servizio
simil-FTP
potresti istituire un server apposta che usa password e comandi arbitrari,
non noti.
So che questa č teoria della "sicurezza sull'ignoranza" ma in fondo
(filosofeggiando un po') non č mica su questo che si basano le password?
Bye, Clod.

Guarda che il tuo problema esiste da quando esistono i .exe, si sa che
negli eseguibili le stringhe rimangono tali, perchè non sono codice
binario. Non è un problema di visual basic, la stessa cosa succederebbe
se lo facessi in assembly
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

> Possibile che la Microsoft, cosě attenta alla sicurezza, 
Questa č proprio una ca....
una vera cazza...
una grande, gigantesca,strepitosa CAZZATA!!!
-------------------------------------------------------
Messaggio inviato da 
http://www.sandlab.org/newsgroup/
Accesso gratuito via web ai Newsgroup

I metodi con il chr non vanno molto bene... ti conviene scrivere la
password convertendola in numerico aggiungendo un numero variabile, poi
riconvertendola al momento dell'uso.
es. password "CIAO"
C=67
I=73
A=65
O=79
sorgente:
private sub GeneraPwd
dim intPwd(4) as long
dim strpwd as string
dim i as long 
intpwd(1)=67+(5*1) 'C 
intpwd(2)=73+(5*2) 'I
intpwd(3)=65+(5*3) 'A
intpwd(4)=79+(5*4) 'O
strpwd=""
for i=1 to 4 
    mid(strpwd,i,1)=chr(intpwd(i))-(5*i)
next i
end sub
in questo modo avrai un campo strpwd dove avrai la stringa CIAO creata a
runtime.
ciao


Puoi criptare ciņ che vuoi, ma con uno sniffer o un debugger le
variabili sono 'in chiaro'...
Puoi inserire la stringa della psw, criptata, in un file res, e
decriptarla al volo quando ti serve...
Oppure scriverla in un file ini, sempre criptata...
Oppure criptarla ed inserirla in una variabile, sempre decodificandola
al volo...
Ma con l'FTP č un disastro...
-> GbC
http://www.gbcweb.com

 tramite FTP, si faccia avanti!
www.openssh.org
hth
Alfonso

Attenzione al reverse engineering in ogni caso, poichè con strumenti
tipo smartcheck o con una semplice dll-proxy possono essere letti
tutti i dati! MA anche uno sniffer tipo tcpdump permette una cosa del
genere, catturando i vari pacchetti ( ameno che non utilizzi
un'autenticazione cifrata, e però resterebbe il problema dello
smartcheck!)

 ha scritto nel messaggio
news:a55nu0$gqa$5...@lacerta.tiscalinet.it...

quello che mi piace dei post di Roal, č la pacatezza che ne traspare  :P
--
Faber

 ha scritto nel messaggio
news:a55nu0$gqa$5...@lacerta.tiscalinet.it...

Stai calmo, glen voleva solo fare una battuta...
Davide