[Kitetoa, les pizzaïolos du Ouèb

Tegam versus Guillermito: combien d'octets faut-il copier pour devenir un contrefacteur et non pas un chercheur de bugs?

Le rapport de l'expert sur la base duquel la cour s'est appuyé pour condamner Guillermito en première instance indique clairement que celui-ci s'est livré « au désassemblage, puis au réassemblage de parties du logiciel Viguard ». La cour a condamné guillermito pour contrefaçon et diffusion.

Dans notre précédent article à propos des répercussions de cette décision sur la recherche de bugs et sur le full disclosure, nous terminions sur une interrogation:

« Enfin, à la suite de la lecture du très bon papier de Maître Eolas et dans l'attente des motivations du jugement, il est permis -pour des experts informatiques- de s'interroger sur la taille du code reproduit qui peut constituer une contrefaçon d'un logiciel. Disons (au pif) que viguard représente quelques mégabytes de données . A partir de combien d'octets reproduits tombe-t-on dans la contrefaçon si l'on a pas la licence? Dans un autre cas de figure, si l'on dispose d'une licence valable, à partir de combien d'octets reproduits tombe-t-on dans la contrefaçon? »

Tentons d'y répondre en détaillant le contenu des recheches de Guillermito sur le logiciel Viguard.

Le rapport de l'expert parle clairement de « d'utilisation et d'adaptation du logiciel source Viguard ».

Interrogeons-nous sur le nombre de lignes de code de Viguard utilisées ou adaptées par Guillermito...

Zéro selon l'intéressé. Il affirme n'avoir jamais décompilé ni publié de code source. Ni, à fortiori publié de désassemblage.

Qu'a-t-il publié? Quelques signatures de virus boot, la routine de vérification du boot expliquée de A à Z, mais sans code, la liste des mots-clés dangereux que Viguard détecte dans les scripts, tirée de la mémoire.

Pendant l'instruction, il semble que l'attention se soit focalisée autour d'un P.O.C nommé VGNaked.

Ce programme s'intéresse au fichier database original de viguard et permet d'obtenir deux fichiers: certify.dec, qui est le même sauf qu'il est décrypté, et certify.dmp, qui est un dump, une version lisible de ce que contient le fichier original dans lequel Viguard conserve les informations sur les programmes sains. Guillermito avait besoin de savoir ce qu'il gardait pour trouver des vulnérabilités. Par exemple, comme il ne stocke que les 16 premiers octets de code, tout virus qui remplace plus de 16 octets est irréparable par Viguard. Il lui fallait en apporter la preuve, d'où VGNaked.

Ces fichiers sont cryptés par une clé XOR fixe, tirée de la mémoire de Viguard. Guillermito a donc récupéré ces octets de la mémoire pour décrypter les databases. Ce qui lui a permis de trouver d'autres vulnérabilités (par exemple de faire des fichiers databases sur mesure, certifiant un trojan).

Dans la source assembleur de son programme, "VGNaked.asm", vous pouvez voir, tout le code. Et notamment, vers le début, la fameuse clef (tellement importante que les fichiers certify.bvd ne sont même plus cryptés dans la dernière version de Viguard).

Cela ressemble à ça (le contenu exact a été changé, je ne voudrais pas que Tegam en profite pour m'accuser de recel de contrefaçon ;) ) :

stupid_xor:
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0

stupid_xor_for_docs:
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0, 0, 0, 0, 0, 0
db 0, 0, 0

Il y en a deux , une pour les exécutables, et une pour les .doc.

35 et 30 octets (plus 15 octets d'une autre clef de ce type dans un troisième petit P.O.C).

Voilà, en tout et pour tout, ce que Guillermito a « pris » de Viguard. Grosso modo 80 octets tirés de sa mémoire, même pas du code exécuté.

A la louche, Viguard faisant dans les 8 Mo, Guillermito a cité 1/100.000 ème de ce programme. Ou dix millionièmes.

Si ce n'est pas de la belle contrefaçon ça madame? Les experts informatiques qui nous lisent savent maintenant à quoi tient la requalification de leurs recherches en « contrefaçon » pouvant les mener devant un tribunal.

Vous pouvez vérifier ce qui figure ci-dessus en consultant l'archive de la page de Guillermito qui détaillait ses recherches.

Tegam a porté plainte le 6 juin 2002. Voici la page de guillermito le 1er juin.

Vous pouvez également jouer à "Contrefaçon, le jeu" en cliquant ici, pour vous détendre un peu...

Kitetoa

Retour au sommaire de l'affaire Tegam contre Guillermito

k-version: 5.0

jouer à "Contrefaçon, je jeu" en cliquant ici