Sommaire

Obfuscation des chaînes de caractères

1. Introduction

Cette section traite des techniques permettant de cacher les chaînes de caractères présentes dans un binaire. Sans chaîne de caractères lisible, l’analyse d’un binaire peut se compliquer : il devient impossible de lire les noms des fichiers ouverts, des clés de registre accédées, ou des sites Internet contactés... Nous allons voir cinq procédés pour cacher des chaînes de caractères. Ces techniques ont été classées de la plus simple à appréhender à la plus compliquée.

2. Cas de l’utilisation de ROT13 ROT13

Le ROT13 est un algorithme simple de chiffrement de texte. Il consiste à décaler de 13 chaque lettre de l’alphabet. Voici le tableau de conversion :

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

La première ligne du tableau correspond à la lettre de départ et la deuxième ligne à la nouvelle lettre après avoir appliqué la fonction ROT13. En suivant notre tableau, l’adresse http://www.google.fr devient uggc://jjj.tbbtyr.se. Il est encore possible de deviner que la chaîne de caractères correspond à une URL. Le malware HerpesNet (md5 : db6779d497cb5e22697106e26eebfaa8) utilise ce type d’encodage pour stocker ses chaînes de caractères.

Voici la sortie de la commande strings ...