7
Annexe 2 Installation et configuration de Monkey-Spider 2.0 Cette annexe décrit toutes les étapes d'installation et de configuration du client Honeypot Monkey-Spider sur une plateforme GNU/Linux. 1. INTRODUCTION Monkey-Spider est un client Honeypot à faible interaction, il permet d'explorer les sites internet afin de détecter les menaces existantes dans ces sites. Initialement développé dans un cadre universitaire par M. Ali Ikinci et est poursuivi et publié comme Logiciel Libre, il viens de publier dernièrement sa nouvelle version (version 2.0) le 24 Mars 2009 sous la licence GPLv3. Monkey-Spider est un client de détection de Malwares rapide et facilement extensible avec d'autres outils de détection, il est basé sur deux grands mécanismes : l'exploration et le téléchargement des sites internet, ensuite ces sites seront scannés par un anti-virus pour détecter les logiciels malveillants qui seront par la suite stockés dans une base de données. 2. ENVIRONNEMENT Dernière version de Ubuntu : 9.04 Dernière version de JDK : 1.6.0_13-b03 Dernière version de Python 2.6 Dernière version de Heritrix : 1.14.3 Dernière version de ClamAV : 4.08 Dernière version de PostGreSQL : 8.3.7-1 Dernière version de Monkey-Spider : 2.0

Installation Et Configuration De Monkey Spider

Embed Size (px)

DESCRIPTION

Installation Et Configuration De Monkey Spider sous ubuntu

Citation preview

Page 1: Installation Et Configuration De Monkey Spider

Annexe 2

Installation et configuration

de Monkey-Spider 2.0

Cette annexe décrit toutes les étapes d'installation et de configuration du client Honeypot

Monkey-Spider sur une plateforme GNU/Linux.

1. INTRODUCTION

Monkey-Spider est un client Honeypot à faible interaction, il permet d'explorer les sites

internet afin de détecter les menaces existantes dans ces sites. Initialement développé dans un cadre

universitaire par M. Ali Ikinci et est poursuivi et publié comme Logiciel Libre, il viens de publier

dernièrement sa nouvelle version (version 2.0) le 24 Mars 2009 sous la licence GPLv3.

Monkey-Spider est un client de détection de Malwares rapide et facilement extensible avec

d'autres outils de détection, il est basé sur deux grands mécanismes : l'exploration et le

téléchargement des sites internet, ensuite ces sites seront scannés par un anti-virus pour détecter les

logiciels malveillants qui seront par la suite stockés dans une base de données.

2. ENVIRONNEMENT

• Dernière version de Ubuntu : 9.04

• Dernière version de JDK : 1.6.0_13-b03

• Dernière version de Python 2.6

• Dernière version de Heritrix : 1.14.3

• Dernière version de ClamAV : 4.08

• Dernière version de PostGreSQL : 8.3.7-1

• Dernière version de Monkey-Spider : 2.0

Page 2: Installation Et Configuration De Monkey Spider

3. PRÉ-REQUIS

Pour l'installation de Monkey-Spider, nous supposant que Ubuntu est bien installé, et que

l'administrateur à tous les droits du compte super-utilisateur (root), et qu'un minimum de

connaissance des commandes Shell et de l'environnement Lunix (Ubuntu) est acquis.

Nous supposons aussi que les outils suivants sont installés : sed 4.1.5-8, mawk 1.3.3, wget

1.11.4, grep 2.5.3, unzip 2.25, Python 2.6 et Java 1.6 (JVM).

Notons aussi qu'il faut installer Heritrix, PostgreSQL et ClamAV ainsi que toutes leurs

composantes nécessaires (PyGreSQL, SOAPpy, pYsearch) pour faire tourner Monkey-Spider. Pour

cela, nous allons commencer par l'installation de ces outils, puis on va détailler l'installation et

l'utilisation de Monkey-Spider.

4. INSTALLATION ET CONFIGURATION DE HERITRIX

Heritrix est un robot d'exploration Open Source développé en Java par Internet Archive et

les Bibliothèques Nationales Nordiques en 2003. Il permet d'aspirer les sites internet et de les

archiver sous format ARC.

Afin d'éviter d'avoir la gestion d'un grand nombre de petits fichiers, le format ARC, permet

de stoker de multiples ressources (texte, images, vidéo, etc) dans un seul fichier. Un fichier consiste

en une séquence d'enregistrements d'URL, chacun étant accompagné d'un en-tête contenant des

métadonnées à propos de la manière dont la ressource a été demandée, de l'en-tête HTTP, et du

code de la réponse. La taille d'un fichier Arc est comprise entre 1 et 600 mégaoctets.

Dans cette partie nous essayons de détailler l'installation de Heritrix 1.14.3 disponible depuis

le 03 Mars 2009, pour cela :

• Commencez par télécharger le fichier heritrix-1.14.3.tar.gz à partir de ce site :

http://sourceforge.net/project/showfiles.php?group_id=73833&package_id=73980

• décompressez le dans votre dossier Home:

tar -xfz heritrix-1.14.3.tar.gz

• Définition de HERITRIX_HOME pour le système: pour cela éditez le fichier bashrc : $sudo gedit /etc/bash.bashrc

• À la fin du fichier, tapez : export HERITRIX_HOME=~/heritrix-1.14.3/export PATH=$HERITRIX_HOME/bin:$PATH

• Vérifiez avec : mbb@mbb-laptop:~$ echo $HERITRIX_HOME /home/mbb/heritrix-1.14.3/

Page 3: Installation Et Configuration De Monkey Spider

• Donnez ensuite le droit d'exécution des fichier Heritrix à votre utilisateur:% cd $HERITRIX_HOME% chmod u+x $HERITRIX_HOME/bin/heritrix

• Testez ensuite Heritrix avec:% $HERITRIX_HOME/bin/heritrix helpUsage: heritrix --helpUsage: heritrix --nowui ORDER.XMLUsage: heritrix [--port=#] [--run] [--bind=IP,IP...] --admin=LOGIN:PASSWORD \

[ORDER.XML]Usage: heritrix [--port=#] --selftest[=TESTNAME]Version: @VERSION@Options:-b,--bind Comma-separated list of IP addresses or hostnames for web server to listen on. Set to / to listen on all available network interfaces. Default is 127.0.0.1.-a,--admin Login and password for web user interface administration. Required (unless passed via the 'heritrix.cmdline.admin' system property). Pass value of the form 'LOGIN:PASSWORD'.-h,--help Prints this message and exits.-n,--nowui Put heritrix into run mode and begin crawl using ORDER.XML.Do not put up web user interface.-p,--port Port to run web user interface on. Default: 8080.-r,--run Put heritrix into run mode. If ORDER.XML begin crawl.-s,--selftest Run the integrated selftests. Pass test name to test it only (Case sensitive: E.g. pass 'Charset' to run charset selftest)Arguments:ORDER.XML Crawl order to run.

• Lancez ensuite Heritrix avec un utilisateur et son mot de passe:

% $HERITRIX_HOME/bin/heritrix --admin=LOGIN:PASSWORD[b116-dyn-60 619] heritrix-0.4.0 > ./bin/heritrixTue Feb 10 17:03:01 PST 2004 Starting heritrix...Tue Feb 10 17:03:05 PST 2004 Heritrix 0.4.0 is running.Web UI is at: http://b116-dyn-60.archive.org:8080/adminLogin and password: admin/admin

• Nous passons maintenant à la configuration et le création d'un Job avec Heritrix, pour cela

rendez vous à l'adresse http://localhost:8080/ :

a) Pour cela allez à la Job, et choisissez la création d'un job avec les paramètres par défaut

(With defaults), dans le champ « seeds » donner la liste des sites à crawler (un site par ligne).

b) Allez ensuite à la configuration d'un profil pour ce job: (Jobs > Settings): par défaut, il

existe un profil prédéfini, donc nous allons le modifier pour qu'il puisse être opérationnel,

pour cela cherchez le paramètre http-headers et modifier ces propriétés:

user-agent: Mozilla/5.0 (compatible; heritrix/1.14.3 + http://mbubuntu.freehostia.com)from: [email protected]

c) Dans Jobs > Modules allez vers le paramètre Select Crawl Scope et modifiez le pour

qu'il puisse faire seulement le crawling seulement dans les domaines des hyperliens fournis

dans le job (choisir la valeur org.archive.crawler.scope.DomainScope), n'oubliez pas surtout

d'enregistrer.

Page 4: Installation Et Configuration De Monkey Spider

d) Avant, de lancer le crawling des Jobs créés, assurez vous que la configuration à était

bien saisie (ce n'est pas toujours le cas), allez vers le dossier ~/heritrix-1.14.3/jobs/ et

choisissez le job que vous avez créé, dans ce répertoire ouvrez le fichier de configuration du

Job order.xml vérifiez maintenant que la configuration est bien celle que vous avez saisi, en

particulier la ligne de configuration du domaine de recherche du crawling : <newObject

name="scope" class="org.archive.crawler.scope.DomainScope"> puis le fichier seeds.txt

qui contient la liste des sites à crawler.

e) Voilà, maintenant que le job est bien configuré, il ne vous reste plus qu'allez à Console

et démarrer votre Job (pensez à rafraichir la fenêtre pour vérifier que votre job est en cour de

fonctionnement).

5. INSTALLATION DE KLAMAV

ClamAV est un antivirus Open Source (Licence GPL) Gratuit et très puissant, il est

disponible sur les systèmes GNU/Linux mais également sur Windows (ClamWin) et Mac OS X

(ClamXav). Il peut tout aussi bien être utilisé sur des serveurs que sur des postes de travail.

ClamAV est principalement utilisé pour détecter les virus attaquant les systèmes Windows

qui sont de loin les plus menacés, les systèmes GNU/Linux l’étant peu. En décembre 2008,

ClamAV possède dans sa base de données plus de 450 000 logiciels malveillants reconnus1.

Il est très utilisé dans le domaine professionnel par plusieurs sociétés comme « NGX VPN-1

Edge Embedded », « Barracuda Network », « Netasq » et « Sysun Secure ».

Dans notre projet, ClamAV nous sert à scanner tout les fichiers téléchargés pat Heritrix pour

détecter tous les malwares cachés dans les sites internet. Son installation est très facile via apt, en

effet, il fait partie des dépôts de Ubuntu, pour cela, il suffit de taper dans un terminal:

$ sudo apt-get install clamav

si ClamAV ne se trouve pas par défaut dans la liste des miroirs de Ubuntu, dans le menu

général de Ubuntu, allez à Système>Administration>Sources de mise à jour et crochez la case des

dépôts multiverse, puis recharger la liste, et réessayez la commande apt.

1 Source : http://fr.wikipedia.org/wiki/ClamTkhttp://www.clamav.net/http://doc.ubuntu-fr.org/clamav

Page 5: Installation Et Configuration De Monkey Spider

6. INSTALLATION ET CONFIGURATION DE POSTGRESQL

Initié par Michael Stonebraker en 1985, PostgreSQL est un gestionnaire de base de données

relationnel et d'objet très puissant sous licence BSD dont les performances sont comparables à

Oracle ou SQL server de Microsoft. Très riche en fonctionnalités et facile à utiliser, il reste le

SGBD le plus rapide et le plus utilisé en entreprise de nos jours2

PostgreSQL est disponible dans les dépôts de ubuntu, donc pour l'installer, il suffit de taper

dans un terminal :

$ sudo apt-get install postgresql

Nous passons ensuite à sa configuration, et nous commençons par activer l'utilisateur par

défaut postgres :

$ sudo -s -u postgres Password:

vérifier ensuite que PostgreSQL fonctionne parfaitement avec la commande psql

Maintenant, nous allons ajouter un utilisateur-administrateur (avec une méthode très

sécurisée pour que l'utilisateur ait un mot de passe crypté), donc éditez le fichier suivant :

sudo gedit /etc/postgresql/8.3/main/pg_hba.conf

# TYPE DATABASE USER CIDR-ADDRESS METHOD# Database administrative login by UNIX socketslocal all postgres md5# "local" is for Unix domain socket connections onlylocal all all md5# IPv4 local connections:host all all 127.0.0.1/32 md5# IPv6 local connections:host all all ::1/128 md5

On peut ensuite créer notre utilisateur :

$ sudo -s -u postgres$ createuser admin

Le nouvel rôle est-il superutilisateur ? (o/n) nLe nouvel rôle est-il autorisé à créer des bases de données ?(o/n) oLe nouvel rôle est-il autorisé à créer de nouveaux rôles ? (o/n) n

$ psql -d template1 -c "alter user admin with password 'admin'"$ sudo /etc/init.d/postgresql-8.3 restart

Enfin selon votre choix, on vous invite à installer l'un de ces outils de gestion graphique de

PostgreSQL:

$ sudo apt-get install pgadmin3ou

$ sudo apt-get install phppgadmin

2 Source : http://www.postgresql.org/http://fr.wikipedia.org/wiki/PostgreSQLhttp://doc.ubuntu-fr.org/postgresql

Page 6: Installation Et Configuration De Monkey Spider

Nous passons maintenant à la création une base de données qui sera utiliser par la suite avec

Monkey-Spider pour stoquer toutes les informations relatives aux malwares trouvés, pour cela,

rendez-vous à la page http://localhost/phppgadmin/ (nous supposons que phppgadmin est le client

graphique choisi et installé) et connectez vous avec le compte utilisateur créé précédemment, créez

ensuite une nouvelle base de données malwaredb et exécutez le code SQL déjà récupéré du fichier

monkey-spider-0.2/examples/mw-db-scheme.sql

Autre méthode avec les lignes de commande (dans le dossier ~/monkey-spider-

0.2/examples/) :

psql -f mw-db-scheme.sql malwaredb

voilà, maintenant que notre base de données est configurée, nous passons à l'installation et la

configuration de Monkey-Spider

7. INSTALLATION ET CONFIGURATION DE MONKEY-SPIDER

Nous commençons par télécharger l'archive de Monkey-Spider à partir du site :

http://sourceforge.net/project/showfiles.php?group_id=211520 puis décompressez le dans votre

dossier Home.

Ensuite, nous devons installer les plugins manquants de Python et nécessaires pour que

Monkey-Spider puisse fonctionner :

$ sudo apt-get install python-pYsearch $ sudo apt-get install python-soappy

Enfin, rendez vous au dossier de Monkey-Spider et lancez le script install.sh:

sudo ~/monkey-spider-0.2/install.sh

Nous passons maintenant à la configuration de Monkey-Spider pour qu'il puisse

communiquer avec PostgreSQL, pour cela éditez le fichier de configuration :

sudo gedit /etc/monkey-spider.conf

#$Id: monkey-spider.conf 40 2009-02-26 13:23:29Z riker2000 $# Configuration file for the Monkey-Spider system[ms-database]# Database configuration hostname=localhostdatabasename=malwaredbusername=adminpassword=admin[ms-scanner]# where the found malware should be storedmwattic=../found-malwareusername=adminpassword=admin[ms-scanner]# where the found malware should be storedmwattic=../found-malware

Page 7: Installation Et Configuration De Monkey Spider

Maintenant que Monkey-Spider est configuré pour qu'il puisse communiquer avec

PostgreSQL, et que Heritrix a déjà commencé à faire des Jobs, nous passons à l'analyse des

fichiers .arc.gz par l'anti-virus pour cela, il suffit de lancer le script ms-processfolder de Monkey-

Spider :

sudo /usr/bin/ms-processfolder.py ~/heritrix-1.14.3/jobs/<FolderARC>/arcs

Et voilà, les virus trouvés seront mis dans un dossier ../found-malware et des informations

relatives à ces virus seront ajoutés automatiquement à la base de données malwaredb.