At 12:08 PM 5/15/2002 +0200, you wrote:
>Salut,
>je pense que m�me avec un offuscateur ton client (avec plus de mal) 
>arrivera encore � acc�der � l'application.
>Les codes offusqu�s peuvent �tre d�compiler surtout si c'est juste une 
>classe qui est en cause et au pire il peut remplacer la classe par une autre.
>
>Je pense que tu as plus un probl�me de conception de ta securit� pour le 
>d�marrage. Si j'ai bien compris tu rentres un mot de passe au d�marrage 
>qui est valid� par ta base et l'appli se lance.
>Ton client a fait sauter cette validation et l'appli c'est lanc�.  Ce qui 
>m'�tonne c'est que la connection � la base se r�alise sans 
>authentification ou si elle a lieu cette authentification est en dur dans 
>le code.
>Le mieux est de prot�ger toutes les donn�es de connection � la base dans 
>un fichier encrypt� prot�g� par un mot de passe qui est founit au 
>d�marrage. Ainsi si le mot de passe n'est pas fourni aucune connexion � la 
>base ne peut �tre r�alis�e. Pour cela regarde JCE et JSSE. Il te permette 
>de cr�er des espaces de stokage de cl� et de certificat qui seront 
>utilis�s pour encrypter et d�crypter. Si tu utilises des certificats 
>regarde OpenSSL pour g�n�rer tes certificats sans passer par un 
>fournisseur qui est payant.
>La d�marche a suivre en g�n�ral est de r�aliser un certificat/cl�e priv�e 
>qui fait autorit�, de g�n�rer un certificat/cl� priv� sign� par l'authori�.
>De g�n�rer un cl� temporaire utilisant un algo s�re (utilisant des cl�s 
>tr�s tr�s longue) et rapide comme Blowfish par exemple. D'encrypter ton 
>ficher de donn�es secr�te avec cette cl�e, d'encrypter la cl� avec la cl� 
>public du dernier certificat et d'ecrire cette cl�e encrypt�e dans le 
>fichier contenant les donn�es encrypt�e.
>Pour la lecture tu demande le mot de passe de la cl� priv�e, tu utilise la 
>cl� priv� pour d�cript� la cl� Blowfish (par exemple), tu utilise la cl� 
>blowfish pour d�cripter les donn�es que tu utilises
>pour r�aliser la connexion � la base de donn�es. Ainsi sans mot de passe 
>de la cl� priv� tu ne peux pas te connecter � la base.
>De temps en temps tu peux reg�n�rer la cl� blowfish et r�encripter tes 
>donn�es.
>
>Tu n'est pas oblig� de passer par des certificats et juste utilis� un algo 
>d'encryptage comme Blowfish mais la proc�dure normal pour prot�ger des 
>donn�es par mot de passe est de les utiliser.
>
>De plus de temps en temps il est bon de changer les mots de passe de la 
>connexion � la base de donn�es
t'as raison sur le principe philippe, mais le middleware (protocole) 
importe peu puisque le probleme fondamental vient du fait que tu peux 
desactiver purement et simplement la couche d'authentification...


Jerome

Répondre à