Raphaël Jacquot a écrit :
> Marc TERRIER wrote:
>
>> Tu dis : "si tu découvres un logiciel libre dans ..." Ma question est
>> donc : le cas échéant, comment fait-on, dans la pratique ? N.B. : mes
>> compétences en développement Unix/Linux sont longtemps restées au
>> niveau des exercices simplistes qu'on fait en T.P. de langage C et
>> dépassaient à peine l'archi-classique "Hello World !" :-). Je ne viens
>> de découvrir le développement d'applis *graphiques* sous Linux que
>> récemment ( j'ai découvert l'existence de Qt il y a en gros un an ).
>> Je me considère donc comme tout sauf expert en développement Linux, et
>> il y a sans doute des outils pour regarder l'intérieur d'un binaire,
>> dont j'ignore l'existence. Auriez-vous des pistes, des liens, dans ce
>> sens ?
>>
>> P.S. : je n'ai pas de soupçons, dans l'immédiat, sur tel ou tel
>> logiciel particulier. C'est juste que la question m'intéresse.
>>
>> --
>> Marc
>>
>
> la plupart des cas, c'est du logiciel libre qui se retrouve dans les
> firmwares de gadgets que l'on trouve un peu partout, comme par exemple
> linux et busybox dans les gps & co
> ce genre de trucs peut se trouver en analysant les chaines de caracteres
> dans les exécutables, par exemple, qui composent les fichiers de
> firmware de mise a jours posés sur les sites des fabriquants
OK. Si je comprends bien, il faut donc faire de la rétro-ingéniérie, et
espérer trouver dans l'exécutable ou le fichier objet une ou plusieurs
chaînes de caractères qui permettront de lever le doute et de prouver
l'indélicatesse.
En fait, mes doutes au sujet de la rétro-ingéniérie portaient surtout
sur la reconstitution des *instructions* proprement dites : il me semble
difficile de prouver, sans l'aide des chaînes de caractères, que le code
obtenu par désassemblage correspond bien à celui d'un programme source
(libre) dont on pense qu'il a été incorporé de façon indélicate dans le
soft proprio.
Déjà qu'à partir d'une omelette, il n'est pas facile de reconstituer les
oeufs, alors si en plus, il faut identifier les poules qui ont pondu ces
oeufs, on n'est pas rendus... :-)
P.S. : je viens de trouver ceci :
http://en.wikipedia.org/wiki/Objdump,
et cela me fournit un point de départ intéressant. Yapuka trouver des
outils similaires pour Windows et/ou MacOS X, et à creuser le tout...
Merci de ta réponse, Raphaël.
--
Marc