Forums Développement Multimédia

Aller au contenu

- - - - -

L'obfuscation au centre de toutes mes questions !

CODE SECURITE OBFUSCATION

1 réponse à ce sujet

#1 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 24 April 2015 - 21:28 PM

Coucou tout le monde !

Apres avoir deja aborde le sujet de l'obfuscation du code deux ou trois fois dans le forum, il est temps pour moi de m'y frotter pour de vrai ! Et comme vous devez commencer a me connaitre un peu et savoir que j'aime bien essayer de comprendre et faire moi meme les choses plutôt que d'utiliser des outils crees par d'autre devellopeurs, vous vous doutez que je me frotte de nouveau a des petits problemes :P

Apres avoir fait une recherche sur internet et sur le forum, je suis tombe sur plusieurs liens qui expliquent les principes généraux de l'obfuscation, ses avantages et ses défauts, mais rien qui ne reponde a toutes mes questions ou qui offre un tutoriel "pas a pas" concernant cette tache qui me permettrais d'y voir plus clair.

Voici donc quelques questions que je me pose, et j'espere trouver auprès de vous les réponses qui me manquent.


1 : Selon la methode d'obfuscation utilisée, il semble que la structure du code change. Par exemple

if(i = 30)
{
//do something;
}
 

Deviendrais quelquechose comme

chr(99)+chr(108)+chr(97)+chr(115)+chr(115)+chr(32)+chr(95)+chr(40)+chr(41)+chr(58)+chr(1)+chr(1)+chr(32)
 

Ma premiere question sera donc de savoir comment le lecteur arrive a lire ce code si la structure meme du language a ete modifie.


2 : Je comprends qu'on puisse changer le nom des variables, et les variables de type String par exemple. Mais peut-on vraiment obfusquer une valeur de type int ou boolean ?


3 : Plusieurs liens mentionnent que l'obfuscation devrait dans le meilleur des cas etre faite pendant l'ecriture du programme. Cela me semble pas mal illogique dans le sens ou si l'on obfusque le code avant de faire la release, cela permet de conserver une version du code privee, non obfusque, ce qui est plus facile a maintenir, et une version du code public, obfusque, ce qui permet d'ajouter de la securite. Il me semblerais donc plus interressant de pratiquer l'obfuscation a la fin du devellopement.
Partant de ce principe, je commence a chercher un angle d'attaque pour creer un petit programme qui ouvrirait chaque fichier de mon code et modifierait les nom des variables et leur valeur pour les rendre illisibles.


Bref je ne sais pas trop comment m'y prendre ni par quel bout prendre tout ca, auriez vous des idees ou des reponses pour moi?

Merci !

#2 draad

  • Members
  • PipPipPipPipPipPipPipPip
  • 653 messages

Posté 27 April 2015 - 17:00 PM

Bon, ca n'a pas l'air d'inspirer grand monde :P
J'imagine que je vais utiliser l'outil de base ProGuard en attendant de trouver plus d'infos sur ce sujet.




Répondre à ce sujet



  

1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP