fsfe-france
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Reverse engineering was Re: [Fsfe-france] EUCD synthèse (draft 1)


From: Alexandre Dulaunoy
Subject: Reverse engineering was Re: [Fsfe-france] EUCD synthèse (draft 1)
Date: Fri, 27 Dec 2002 16:10:40 +0100 (CET)

On Fri, 27 Dec 2002, Yannick Roehlly wrote:


> > Je te répondrais par une question : comment peux-tu faire de
> > l'ingéniérie inverse sans contourner une mesure de protection ?
> 
> Je ne suis pas programmeur, je  ne pourrais donc pas te répondre. Mais
> pour moi l'ingénierie inverse s'apparente à l'analyse de systèmes : on
> prend  un logiciel  et  on regarde  comment  il se  comporte dans  des
> situations données.

Cela  me  semble  impossible.  Faire du  reverse-engineering  peut  se
réaliser de plusieurs manières mais il me semble (IMHO) que toutes les
méthodes  peuvent être  considérées comme  du contournement  de mesure
technique. 

Quelques exemples de techniques de RE possibles : 

- A l'exécution - remplacement d'un syscall (p.ex. remplacer un appel
  système  par  un autre...   vous  connaissez  tous  les méthodes  du
  LD_PRELOAD  ou   même  un  simple  LKM  pour   modifier  un  syscall
  (cf. http://syscalltrack.sf.net/). 

   -> On peut dire que  c'est un contournement puisque l'on intercepte
   ces appels systèmes par d'autre. 

- A l'exécution -  donnée non conforme (Fonctionner en  tant que boite
  noire  et  estimer  le  fonctionnement  interne  par  les  résultats
  externes) (difficile  avec certains systèmes mais  courant p.ex. sur
  les attaques de timing sur les smartcards)

   -> Peut-être  plus  dure   à  classifier  comme  contournment  mais
      probable   puisque  l'on   perturbe   l'execution  courante   du
      programme. (p.ex. un buffer overflow)

- A l'exécution -  Analyser le  programme (strace  et  autre profiler
  run-time comme fenris ou autre ou même gdb)

   -> On  ne  contourne pas  de  façon  direct  mais on  analyse  dans
      (peut-être?) le  but de contourner  la protection. Donc  ce sont
      des dispositifs (cf. article 6 de la Directive 2001/29/CE)

- Désassemblage  du  programme facilite  le  contournement de  mesures
  techniques. 

En gros, l'article 6 couvre la vaste majorité des méthodes de RE. Donc
il me semble clair que faire du RE sans pour autant ne pas tomber sous
le coup de l'article 6 est impossible.

Pour   information,   le   RE    est   autorisé   pour   des   raisons
d'interopérabilité entre les systèmes. (1991/250/CE)

Je ne  connais les problèmes légaux concernant  les intéractions entre
les deux directives. 

> 
> De  plus, le  désassemblage fait-il  sauter une  quelconque protection
> d'un programme ?

Le désassemblage facilite le countournement..

N'hésitez pas  à faire des commentaires,  le RE est  une nécessaire en
Informatique, si  il n'existe plus,  nous risquons un  paquet d'autres
problèmes. 

see ya

adulau


-- 
--                            Alexandre Dulaunoy -- http://www.foo.be/
--         http://pgp.ael.be:11371/pks/lookup?op=get&search=0x44E6CBCD
"People who fight may lose.People who do not fight have already lost." 
                                                        Bertolt Brecht







reply via email to

[Prev in Thread] Current Thread [Next in Thread]