Security Solutions v1

flippantmewlingΑσφάλεια

19 Ιουν 2012 (πριν από 5 χρόνια και 4 μήνες)

1.011 εμφανίσεις


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 1 / 71



Auteurs
Arnaud Aucher - Ecole Centrale d’Electronique
Cédric François-Elie - Ecole Centrale d’Electronique
Norbert Pelletier - Ecole Centrale d’Electronique
Fabien Vallet - Ecole Centrale d’Electronique
Cédric Zanchetta - Ecole Centrale d’Electronique
Nom du document
Security_Solutions_v1.doc
Version
1
Date
03/04/2007


Rapport Final

Security Solutions


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 2 / 71


SOMMAIRE
SOMMAIRE..........................................................................................................................................................................2
PRESENTATION.................................................................................................................................................................4
LE DOCUMENT.....................................................................................................................................................................4
LE SUJET..............................................................................................................................................................................4
L’EQUIPE.............................................................................................................................................................................4
REMERCIEMENTS.................................................................................................................................................................5
SYSTEME D’EXPLOITATION (OPERATING SYSTEM).............................................................................................6
LE SERVEUR........................................................................................................................................................................6
THE OPERATING SYSTEM....................................................................................................................................................6
SERVEUR WEB...................................................................................................................................................................7
APACHE...............................................................................................................................................................................7
PHPMYADMIN....................................................................................................................................................................7
PHPLDAPADMIN..................................................................................................................................................................7
SERVEUR DE PARTAGE DE FICHIERS........................................................................................................................8
PRESENTATION - SAMBA VERSION 3....................................................................................................................................8
VERS UNE POLITIQUE D'ENTREPRISE....................................................................................................................................8
CONFIGURATION.................................................................................................................................................................8
Paramètres généraux.....................................................................................................................................................8
Répertoires partagés......................................................................................................................................................9
Utilisateurs de Samba....................................................................................................................................................9
CONFIGURATION SYSTEME................................................................................................................................................10
Liste des droits des dossiers « /home/Private » et « /home/Public »...........................................................................10
Liste des utilisateurs du groupe « users »....................................................................................................................10
TESTS................................................................................................................................................................................10
UTILITAIRES DE SAMBA....................................................................................................................................................10
Utilitaires.....................................................................................................................................................................10
PROBLEMES EVENTUELS....................................................................................................................................................11
SWAT...............................................................................................................................................................................11
CONFIGURATION POUR INETD............................................................................................................................................12
CONFIGURATION POUR LE WEB.........................................................................................................................................12
SERVEUR DE SAUVEGARDES......................................................................................................................................14
FICHE SIGNALETIQUE........................................................................................................................................................14
PRESENTATION..................................................................................................................................................................14
MISE EN PLACE..................................................................................................................................................................15
LE SERVEUR......................................................................................................................................................................15
LE CLIENT.........................................................................................................................................................................19
LES SAUVEGARDES............................................................................................................................................................20
LES RESTAURATIONS.........................................................................................................................................................20
SURVEILLANCE DES FICHIERS DE LOG..................................................................................................................21
PHP-SYSLOG-NG................................................................................................................................................................21
Présentation.................................................................................................................................................................21
Installation...................................................................................................................................................................21
Utilisation....................................................................................................................................................................23
SNORT...............................................................................................................................................................................25
Présentation.................................................................................................................................................................25
Sniffer le réseau...........................................................................................................................................................25
Générer des logs..........................................................................................................................................................26
Détecter des intrusions................................................................................................................................................26
ANALYSE DES FICHIERS DE LOG..............................................................................................................................30
AWSTATS..........................................................................................................................................................................30
Présentation.................................................................................................................................................................30
Configuration...............................................................................................................................................................30

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 3 / 71


Utilisation....................................................................................................................................................................32
REMONTE DES ALERTES..............................................................................................................................................33
NESSUS..............................................................................................................................................................................33
Présentation.................................................................................................................................................................33
Installation...................................................................................................................................................................33
Enregistrement.............................................................................................................................................................33
Mise à jour des plugins................................................................................................................................................33
Configuration de Nessus..............................................................................................................................................34
Le Client distant...........................................................................................................................................................35
Interface Graphique.....................................................................................................................................................36
NMAP..............................................................................................................................................................................40
Présentation.................................................................................................................................................................40
Installation...................................................................................................................................................................40
L'utilisation..................................................................................................................................................................41
Interface Graphique.....................................................................................................................................................45
PARE-FEU (FIREWALL).................................................................................................................................................49
PRESENTATION IPTABLES, VERSION 1.3.5..........................................................................................................................49
VERS UNE POLITIQUE D'ENTREPRISE..................................................................................................................................49
CONFIGURATION...............................................................................................................................................................49
Les options...................................................................................................................................................................49
Exemple d'application..................................................................................................................................................50
GESTION D’ANNUAIRE (LDAP)....................................................................................................................................51
PRÉSENTATION - OPENLDAP............................................................................................................................................51
INSTALLATION...................................................................................................................................................................51
CONFIGURATION...............................................................................................................................................................51
Les fichiers de configuration.......................................................................................................................................51
Les Access Control List................................................................................................................................................52
UTILISATION DE L'ANNUAIRE............................................................................................................................................53
Le mode console..........................................................................................................................................................53
LES CLASSES D'OBJETS......................................................................................................................................................54
DE NOMBREUX OUTILS GRAPHIQUES.................................................................................................................................55
JXplorer.......................................................................................................................................................................55
Connexion à la base.....................................................................................................................................................55
Aperçu de la base.........................................................................................................................................................56
Ajout d'un utilisateur dans l'annuaire..........................................................................................................................56
Informations à propos du nouvel utilisateur (éditeur de table)...................................................................................57
Informations à propos du nouvel utilisateur (vue html)...............................................................................................57
CAS D'UTILISATION DE L'ANNUAIRE..................................................................................................................................58
Envoi de courriers.......................................................................................................................................................58
Authentification sur un domaine..................................................................................................................................59
LE CAS (CENTRAL AUTHENTICATION SERVICE).................................................................................................60
GENERALITES....................................................................................................................................................................60
URLs utilisées..............................................................................................................................................................60
Tickets utilisés..............................................................................................................................................................60
FONCTIONNEMENT DE BASE (NON PROXY)........................................................................................................................61
FONCTIONNEMENT EN MODE PROXY.................................................................................................................................62
REMARQUES......................................................................................................................................................................63
INSTALLATION BASIQUE....................................................................................................................................................64
CONFIGURATION DU CAS.................................................................................................................................................64
PERSONNALISATION DU CAS............................................................................................................................................65
GENERATION D'UN CERTIFICAT AUTO-SIGNE RSA.............................................................................................................66
INSTALLATION DU CAS.....................................................................................................................................................66
PERSONNALISATION DE TOMCAT......................................................................................................................................67
LANCEMENT DE TOMCAT..................................................................................................................................................67
FIN....................................................................................................................................................................................67
RENDU GRAPHIQUE...........................................................................................................................................................68
BILAN................................................................................................................................................................................70
CONCLUSION....................................................................................................................................................................71

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 4 / 71



PRESENTATION

Le document

Ce document fait suite à notre Projet Technologique du second semestre. Il contient la définition
des rôles de chacun décrite de manière détaillée, et une description des nouvelles technologies que
nous avons décidé d’employer.
Le sujet

Explorer les solutions libres pour mettre en place une solution de sécurité sur le réseau VPN d’une
PME. Nous nous attarderons principalement sur l’aspect Serveur.

Le but de ce projet est de nous permettre d’apprendre à manipuler des applications simples pour
administrer un serveur et un réseau de façon sûre.

L’équipe

Voici l’organigramme de notre équipe :


Arnaud Aucher
(Chef de Projet)

Cédric FE

Norbert Pelletier
Fabien Vallet
Cédric Zanchetta


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 5 / 71



Voici les rôles de chacun d’entre nous :

￿ Arnaud Aucher
o Montage du serveur, mise en place & configuration de l’OS
o Mise en place des services Web (Apache, Tomcat, PhpMyAdmin,
Phpldapadmin, SWAT)
o Administration serveur & réseau
o Installation OpenLDAP
o Mise en place CAS

￿ Cédric François-Elie
o Mise en place Samba
o Configuration LDAP & Jxplorer
o Configuration IPTables

￿ Norbert Pelletier
o Mise en place Nessus
o Mise en place Nmap

￿ Fabien Vallet
o Mise en place Amanda

￿ Cédric Zanchetta
o Mise en place PhpSyslogNg
o Mise en place Snort
o Mise en place Awstats

Remerciements

Nous tenons à remercier tout particulièrement M. Bonnet (Responsable du pôle Hypermédia :
http://www.hypermedia.ece.fr/accueil/accueil.fr.php), qui nous a assisté dans notre projet et ainsi
permis de le mener à bien.




Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 7 / 71


Serveur Web
Apache

Un bon serveur Web Apache sous une Fedora sera HTTPD, ce service gère parfaitement les
applications Web aux formats : html, javascript, css, php, … (Paquet tarball téléchargeable depuis le
Web ou paquet RPM)

Exemple :



PhpMyAdmin

Pour gérer nos bases de données MYSQL, nous avons opté pour le service Web le plus réputé, à
savoir PhpMyAdmin. Il nous permet aisément de créer, gérer, interroger et d’administrer des bases de
données. (Paquet tarball téléchargeable depuis le Web ou paquet RPM)

Exemple :





PhpLdapAdmin

Cette application a été mise en place pour exploiter l’annuaire LDAP, mais face aux aberrations
liées à la sécurité de ce service, nous avons opté pour JXplorer via notre réseau OpenVPN réalisé en
TP Multimédia. En effet, pour utiliser ce service nous avions le choix entre aucune identification ou
bien la rédaction d’un cookie à stocker pour nous identifier. OpenLDAP serait plutôt une application
utile sur un réseau local voir uniquement en localhost. (Paquet tarball téléchargeable depuis le Web)

Exemple :





Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 8 / 71


Serveur de partage de fichiers

Présentation - Samba version 3

Samba est un logiciel libre sous licence GPL qui permet aux utilisateurs de systèmes UNIX
d'accéder à des ressources partagées par des ordinateurs équipés de système d’exploitation de type
Microsoft Windows et inversement.

Vers une politique d'entreprise

Dans l'entreprise, Samba permet donc d'interconnecter des systèmes hétérogènes. Les utilisateurs
Windows et Linux peuvent alors collaborer en partageant leurs fichiers. Samba est utilisé par défaut
en mode « groupe de travail » (« Workgroup ») et ne permet pas dans sa version 3 d'identifier les
utilisateurs du contrôleur de domaine Active Directory. Cependant, on peut configurer Samba en
mode « contrôleur de domaine ».

Configuration

Le fichier de configuration de Samba est « /etc/samba/smb.conf ».

Paramètres généraux

[global]
# workgroup = Nom de domaine NT ou Groupe de Travail, exemple : ADMINISTRATION
workgroup = WORKGROUP

# nom du serveur équivaut au champs de description NT
server string = Samba_Server

# Ceci empêchera nmbd de chercher des noms NETBIOS à partir du DNS
dns proxy = no

# cryptage des mots de passe
encrypt passwords = true

# si vous cryptez les mots de passe, Samba aura besoin de savoir quel type de
# base de données de mots de passe vous utilisez
passdb backend = tdbsam
obey pam restrictions = yes

# ceci dit à Samba d'utiliser un fichier de log différent pour chaque
# machine qui se connecte
log file = /var/log/samba/%m.log

# taille maximale des fichiers de log (Kb)
max log size = 50

# interdit les utilisateurs mentionnés
invalid users = root


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 9 / 71



#options de contrôleur de domaine
socket options = TCP_NODELAY
restrict anonymous = no
domain master = no
preferred master = no
max protocol = NT
ldap ssl = No
server signing = Auto

Répertoires partagés

# permet de parcourir son répertoire personnel qui est disponible dans ce cas en lecture
seule
[homes]
comment = Home Directories
browseable = no

# répertoire de partage public, disponible en lecture, écriture pour l'utilisateur aucher et le
# groupe users (voir configuration système)
[Public]
comment = dossier de partage public
path = /home/Public
public = yes
writeable = yes
create mode = 0755

# répertoire de partage privé, disponible seulement en lecture
[Private]
comment = dossier de partage private
path = /home/Private
public = no
writeable = no

Utilisateurs de Samba

# L'ajout d'un utlisateur se fait avec la commande

smbpasswd –a

# On crée alors les utilisateurs :
login : aucher
passwd : morpion

login : francois
passwd : morpion


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 10 / 71


Configuration système

Liste des droits des dossiers « /home/Private » et « /home/Public »

/home/Private
drwxr-xr-x 2 aucher users 4096 mar 16 01:03 Private

/home/Public
drwxrwxr-x 2 aucher users 4096 mar 16 01:10 Public

Le dossier « /home/Private » a des droits en lecture, écriture, et exécution pour l'utilisateur aucher,
le groupe, lui, va pouvoir lire et parcourir le dossier. Cependant, la configuration de Samba autorisant
seulement la lecture pour ce dossier, aucher et le groupe « users » ne pourront que lire et parcourir ce
dossier lors d'une connexion à Samba.

Le dossier « /home/Public » a des droits en lecture, écriture et exécution pour l'utilisateur aucher et
pour le groupe « users ». La configuration de Samba permettant la lecture et l'écriture pour ce dossier,
l'utilisateur « aucher » et le groupe pourront lire les fichiers de ce dossier et y écrire.

Liste des utilisateurs du groupe « users »

Dans le groupe « users », on trouve :

[root@localhost home]# groups aucher vallet francois zanchetta
aucher : aucher users
vallet : users
francois : users
zanchetta : users

Tests

Le partage samba a été testé en VPN.
Utilisateur aucher OK (tests lecture et écriture)
Utilisateur francois OK (tests lecture et écriture)

Utilitaires de Samba

Utilitaires

￿ smbstatus voir les connexions en cours
￿ smbpasswd modifier/rajouter le mot de passe d’un utilisateur samba
￿ testparm /etc/samba/smb.conf Vérifie le fichier de configuration
￿ smbclient Client pour accéder à des ressources sur un serveur SAMBA
￿ nmblookup Résoudre nom de machine <-> adresse IP
￿ smbmount Monte un système de fichier samba


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 11 / 71


Problèmes éventuels

Samba peut présenter des problèmes lors du partage de fichiers. Ce qui peut conduire à un BSOD
« Blue Screen of Death » sur les systèmes de type Windows. La connexion par login et mot de passe à
Samba est alors valide, les noms des dossiers partagés sont affichés mais on ne peut pas y accéder.
Afin de résoudre ce problème, il faut lancer la commande suivante :

setsebool samba_enable_home_dirs=1

Afin de rentrer cette fonctionnalité active par défaut au démarrage, on ajoute la commande ci-
dessus dans le fichier « /etc/profile ».

SWAT



Nous avons pu tester une interface Web libre nommée Samba Web Administration Tool. Celle-ci
permet de gérer les paramètres du fichier « smb.conf » précédemment étudié, et cela par le biais de
formulaires.

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 12 / 71


Configuration pour inetd

Pour exécuter SWAT en tant que service, il est nécessaire de configurer les fichiers
« /etc/services » et « /etc/inetd.conf ». Il faut ajouter la ligne suivante au premier fichier :

Swat 901/tcp

Ainsi on assigne le port 901 pour TCP au programme SWAT. Ajoutez ensuite la ligne suivante au
second fichier :

swat stream tcp nowait.400 root /usr/local/samba/bin/swat swat

Veillez à ce que « /usr/local/samba/bin/swat » soit le bon chemin d’accès vers le programme
installé. Pour mettre à jour les modifications effectuées, saisir la commande suivante :

Killall –HUP inetd

Pour plus de sécurité demandez au démon tcpd d’engendrer SWAT en plaçant la ligne suivante
dans le fichier « /etc/inetd.conf » :

swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat

Vous pouvez alors accéder à SWAT par votre navigateur à l’adresse : http://localhost:901. SWAT
vous invite à vous identifier, même si n’importe quelle combinaison fonctionne, SWAT n’autorise les
modifications qu’uniquement à root.
Configuration pour le Web

Tout d’abord créez un sous répertoire nommé « swat » dans le répertoire racine du document
Apache. La racine apparaît dans la ligne <Directory /home/httpd/html> du fichier
« /etc/httpd/conf/access.conf ». Ouvrez une session root et tapez :

mkdir /home/httpd/html/swat
cp –R samba/swat /home/httpd/html/swat

Vérifiez que les sous répertoires suivants sont créés dans « /home/httpd/html/swat » :
￿ help
￿ image
￿ include

Ensuite copiez le fichier exécutable « swat » dans le répertoire « cgi-bin », en général :

/etc/httpd/cgi-bin

Nous allons maintenant sécuriser l’accès au répertoire distant d’administration par un fichier
htaccess. Vous allez créer le fichier « .htpassword » de la manière suivante :

vi /home/httpd/html/swat/.htpassword


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 13 / 71


Ajoutez-y les lignes suivantes :

AuthName « Surveillance Accès Swat »
AuthType Basic
AuthUserFile /etc/swat.users
require valid-user

Ensuite créez le mot de passe dans le fichier « .htaccess » :

htpassword –c /etc/swat.users root

Maintenant il vous faut modifier le fichier « /etc/httpd/conf/access.conf », remplacez None par
AuthConfig, voici le résultat :

AllowOverride AuthConfig

Redémarrez le serveur en tapant :

/etc/init.d/httpd restart

Vous pouvez accéder à SWAT depuis le Web à l’adresse http://localhost/swat/cgi-bin/swat.



Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 15 / 71


Mise en place

Voici un tutorial qui va vous montrer les bases du fonctionnement d’AMANDA, ceci par la mise
en place d’un serveur AMANDA et d’un client AMANDA sur la même machine, avec sauvegarde sur
disque dur. Note : nous ne nous penchons pas sur la configuration du firewall dans cette partie, mais il
faut bien sur veiller à ce que les ports soient ouverts. (Ils sont spécifiés plus loin dans cette partie).

Le Serveur

La première étape est l’installation d’AMANDA. Celle-ci peut se faire de deux manières, soit en
utilisant un package, soit en utilisant directement l’archive disponible au téléchargement.

Mais avant tout cela, nous allons créer un nouvel utilisateur sur la machine servant de serveur
(pensez bien à adapter la puissance et la capacité de stockage du serveur en fonction des sauvegardes à
effectuer !). De cette manière nous évitons de devoir faire fonctionner AMANDA avec root, ce qui
pourrait compromettre la sécurité.

$ groupadd amanda
$ useradd -g amanda -G disk amanda

Ensuite vient l’installation proprement dite :

$ yum install amanda-server
Resolving dependencies
.Dependencies resolved
I will do the following:
[install: amanda-server 2.5.1p3.i386]
I will install/upgrade these to satisfy the dependencies:
[deps: amanda 2.5.1p3.i386]
Is this ok [y/N]: y
Installation par package rpm

Ou bien

$ tar zxvf amanda-x.y.z.tar.gz
$ cd amanda-x.y.z
$ ./configure \
> --with-user=amanda \
> --with-group=amanda \
> --with-config=/etc/amanda \
> --with-gnutar=`which tar` \
> --with-amandahosts
> ----with-portrange=50000,50100 \
$ make
$ make check
$ make install
Installation manuelle

Il convient ensuite de créer un répertoire qui regroupera une politique de sauvegarde particulière
(ici nommée save1).

[/etc/amanda]
$ mkdir save1

Il faut ensuite copier les fichiers amanda.conf et disklist (se trouvant dans le répertoire d’exemples
d’AMANDA) dans le répertoire que nous venons de créer, puis les modifier en fonction de nos
attentes :

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 16 / 71


- amanda.conf : il faut modifier les champs suivants :

org "root" # your organization name for reports
dumpcycle 1 weeks # the number of days in the normal dump cycle
runspercycle 7 # the number of amdump runs in dumpcycle days
# (4 weeks * 5 amdump runs per week -- just weekdays)
tapecycle 10 tapes # the number of tapes in rotation
bumpsize 1 Mb # minimum savings (threshold) to bump level 1 -> 2
bumpdays 1 # minimum days at each level
bumpmult 4 # threshold = bumpsize * bumpmult^(level-1)
runtapes 1 # number of tapes to be used in a single run of amdump
tpchanger "chg-multi" # the tape-changer glue script
changerfile "/usr/lib/amanda/chg-multi.conf"
amrecover_changer "/dev/null"
tapetype HARD-DISK # what kind of tape it is (see tapetypes below)
labelstr "^DSK[0-9][0-9]*$" # label constraint regex: all tapes must match
holdingdisk hd1 {
comment "main holding disk"
directory "/holddisk/amanda" # where the holding disk is
use 20 Mb # how much space can we use on it
chunksize 1Mb # size of chunk if you want big dump to be
reserve 20
# This means save at least 20% of the holding disk space for degraded
# mode backups.
infofile "/var/lib/amanda/amanda/curinfo" # database DIRECTORY
logdir "/var/lib/amanda/amanda" # log directory
indexdir "/var/lib/amanda/amanda/index" # index directory
# tapetypes
# Define the type of tape you use here, and use it in "tapetype"
define tapetype HARD-DISK {
comment "HARD DISK"
length 100 mbytes
}
# dumptypes
#
# These are referred to by the disklist file.
define dumptype root-tar {
global
program "GNUTAR"
comment "root partitions dumped with tar"
compress none
index
# exclude list "/usr/local/lib/amanda/exclude.gtar"
priority low
}
define dumptype user-tar {
root-tar
comment "user partitions dumped with tar"
priority medium
}
define dumptype comp-user-tar {
user-tar
compress client fast
}

- - distlist

Le fichier distlist contient les machines qu'il faut sauvegarder. Il est composé du nom de la
machine (FQDN si possible), la racine de la sauvegarde et le type de sauvegarde (voir "define
dumptype ci-dessus").
localhost /home/userxxx/ comp-user-tar


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 17 / 71


Le fichier "/home/amanda/.amandahosts" ou "/etc/amanda/amandahosts" suivant les versions,
contient le couple nom de machine cliente et utilisateur pouvant se connecter au serveur pour faire une
restauration. Ce fichier est unique, il sera utilisé par toutes les configurations.

#machine utilisateur
localhost amanda

Nous allons maintenant définir dans AMANDA la sauvegarde sur disque dur :

$cat /usr/lib/amanda/chg-multi.conf

multieject 0
gravity 0
needeject 0
ejectdelay 0

# Names a status file where the current ``changer'' state is stored.
statefile /etc/amanda/save1/changer-status

# What are the slot numbers used in the tape rack?
firstslot 1
lastslot 10

# Enumerate the device files that go with the particular tape changer
# slots. Don't forget to specify the no-rewind version of the device.
slot 1 file:/var/tmp/bande/t1
slot 2 file:/var/tmp/bande/t2
slot 3 file:/var/tmp/bande/t3
slot 4 file:/var/tmp/bande/t4
slot 5 file:/var/tmp/bande/t5
slot 6 file:/var/tmp/bande/t6
slot 7 file:/var/tmp/bande/t7
slot 8 file:/var/tmp/bande/t8
slot 9 file:/var/tmp/bande/t9
slot 10 file:/var/tmp/bande/t10

Nous allons maintenant créer ces dossiers ainsi que les sous dossiers « data », et le dossier qui
servira en cas de dépassement de taille.
$ls -al /var/tmp/bande/
total 52
drwxr-xr-x 12 amanda root 4096 fév 10 18:01 .
drwxrwxrwt 6 root root 4096 fév 10 18:04 ..
drwxr-xr-x 3 amanda root 4096 fév 10 18:10 t1
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t10
drwxr-xr-x 3 amanda root 4096 fév 10 18:13 t2
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t3
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t4
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t5
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t6
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t7
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t8
drwxr-xr-x 2 amanda root 4096 fév 10 18:13 t9
[/var/tmp/bande]
$for i in 1 2 3 4 5 6 7 8 9 10 ; do mkdir t$i/data; done
$ mkdir /var/lib/amanda/amanda/
[/var/tmp]
$ mkdir -p holddisk/amanda
$ chown -R amanda holddisk


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 18 / 71


On va maintenant “charger” la bande 1

$ amtape save1 reset
amtape: could not load tapelist "/etc/amanda/save1/tapelist"
[root@XXX /etc/amanda/save1]
$ touch tapelist
$ amtape save1 reset
amtape: running as user "root" instead of "amanda"
[amanda@XXX /etc/amanda/save1]
$ amtape save1 reset
amtape: changer is reset, but slot 1 not loaded: chg-multi: slot is empty
$ cd /var/tmp/bande/t1
$ mkdir data
$ amtape save1 reset
amtape: changer is reset, slot 1 is loaded.

Nous allons maintenant labelliser les bandes et vérifier que la labellisation a bien été effectuée.

$ amlabel save1 DSK0 slot 1
labeling tape in slot 1 (file:/var/tmp/bande/t1):
rewinding, reading label, not an amanda tape
rewinding, writing label DSK0, checking label, done.

$amtape save1 slot 2
amtape: changed to slot 2 on file:/var/tmp/bande/t2
$amtape amanda current
amtape: scanning current slot in tape-changer rack:
slot 2: not an amanda tape

$amlabel save1 DSK1 slot 2
labeling tape in slot 2 (file:/var/tmp/bande/t2):
rewinding, reading label, not an amanda tape
rewinding, writing label DSK1, checking label, done.

Vérification :

$amtape save1 show
amtape: scanning all 10 slots in tape-changer rack:
slot 1: date 20050210 label DSK0
slot 2: date X label DSK1
slot 3: not an amanda tape

Passons maintenant à la configuration du démon qui s’occupera d’AMANDA. Nous allons pour
cela utiliser Xinetd et éditer le fichier "/etc/xinetd.conf"

service amanda
{
protocol = udp
socket_type = dgram
wait = yes
user = amanda
group = amanda
groups = yes
server = /usr/local/libexec/amandad
}

service amandaidx
{
protocol = tcp
socket_type = stream
wait = no
user = amanda
group = amanda
groups = yes
server = /usr/local/libexec/amindexd
}

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 19 / 71



service amidxtape
{
protocol = tcp
socket_type = stream
wait = no
user = amanda
group = amanda
groups = yes
server = /usr/local/libexec/amidxtaped
}

Xinetd a besoin de connaître quel port il doit écouter et vers quel programme renvoyer la requête.

Pour cela il faut renseigner le fichier "/etc/services"

amanda 10080/udp
kamanda 10081/udp
kamanda 10081/tcp
amandaidx 10082/tcp
amidxtape 10083/tcp

Ensuite il faut relancer Xinetd avec la commande
$ killall -HUP xinetd

Le Client

Passons maintenant à l’installation du client. Les deux méthodes vues précédemment pour le
serveur restent valables :
[root@calaz ~]
$ yum install amanda-client
I will do the following:
[install: amanda-client 2.4.4p2-3.i386]
Is this ok [y/N]: y

Ou bien :

bash-2.05b$ tar zxvf amanda-x.y.z.tar.gz
bash-2.05b$ cd amanda-x.y.z
bash-2.05b$ ./configure \
> --with-user=amanda \
> --with-group=amanda \
> --with-config=/etc/amanda \
> --with-gnutar=`which tar` \
> --with-amandahosts \
> ----with-portrange=50000,50100 \
> --without-server
bash-2.05b$ make
bash-2.05b$ make check
bash-2.05b$ make install

Amanda va être lancé via Xinetd. Pour cela il faut modifier les fichiers xinetd.conf et services
comme pour le serveur. Dans notre cas, client et serveur sont installés sur une même machine,
l’opération n’est donc pas à refaire.

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 20 / 71


Les sauvegardes

On peut maintenant lancer une sauvegarde manuellement. Exemple de lancement sur tous les
clients déclarés dans disklist.
[amanda@XXX /etc/amanda/save1]
$ amdump save1

Une fois le test réussi, il ne reste plus qu’à automatiser la tâche avec crontab de l’utilisateur
amanda.

Exemple pour lancer une sauvegarde une fois par jour à 2 :05 AM :

$ su amanda -c "crontab -e"
05 02 * * * /usr/local/sbin/amdump save1
$ su amanda -c "crontab -l"

Les restaurations

Nous allons maintenant voir comment effectuer une restauration totale. Sachez que les
restaurations partielles et les restaurations manuelles (sans passer par le serveur amanda) sont
possibles, elles ne seront tout simplement pas expliquées ici.

La restauration devra se faire depuis une machine cliente

Premièrement il faut se placer dans le dossier racine de la sauvegarde soit "/home/userxxx/ "

Ensuite on lance la commande amrecover avec le nom de la sauvegarde

bash-2.05b$ amrecover -c save1

Une fois connecté, il ne reste plus qu’à lancer la commande « extract » qui restaurera les fichiers.

extract


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 21 / 71


Surveillance des fichiers de Log
Php-syslog-ng


Présentation

Syslog-ng est un gestionnaire de journaux système de nouvelle génération (ng), anciennement
syslog. A partir de syslog-ng, on peut centraliser les journaux de l’ordinateur lui-même mais aussi
ceux des postes du réseau sur lequel il est connecté et permet de les trier facilement. Ce paquet est
indispensable pour les administrateurs réseaux qui souhaitent garder un œil sur les performances de
leurs machines. Parmi les avantages on peut citer la portabilité (Linux, FreeBSD, HP-UX, Solaris ou
AIX), la configuration de base très avancée, l’export des logs vers une base de données mysql, la
possibilité de chiffrer les logs envoyés via la technologie SSL, l’utilisation des protocoles UDP et TCP
lors du transport des logs ou bien encore la possibilité de trier les logs suivant les contenus, leur
provenance ou leur facilité, et ce en pouvant utiliser les expressions régulières.

Pour les postes clients sous linux il suffit de configurer syslog-ng pour que la destination soit
l’ordinateur qui centralise les journaux dans le fichier de configuration syslog-ng.conf. Sous Windows
il faut installer le logiciel Snare qui permet d’envoyer des trames syslog à la norme RFC.
Installation

Dans un premier temps il faut configurer mysql :
mysql_install_db
mysql -u root -p mysql

On va pouvoir ensuite installer et configurer php-syslog-ng, on va d’abord télécharger l’archive
contenant les pages php de php-syslog-ng sur le site http://www.phpwizardry.com/php-syslog-
ng/phpsyslogng-2.8.tar.gz .

Pour l’installer on va exécuter les commandes suivantes :

tar -xvzf phpsyslogng-2.8.tar.gz /var/www/html/php-syslog-ng
chown -R apache:apache /var/www/html/php-syslog-ng

On peut maintenant créer les tables permettant de stocker et ordonner les logs. Avant d’exécuter le
script de configuration, il faut l’ouvrir et remplacer toutes les occurrences de PW_HERE par le mot de
passe que l’on souhaite utiliser pour se connecter à l’interface :

mysql -uroot -p < dbsetup.sql
mysql -u root -p
> SET PASSWORD FOR syslogfeeder@localhost = PASSWORD ('syslogfeederpassword');
> SET PASSWORD FOR syslogadmin@localhost = PASSWORD ('syslogadminpassword');
Le script dbsetup.sql fourni avec le paquet php-syslog-ng est bien utile pour faire cela.

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 22 / 71



Ensuite il faut configurer syslog-ng pour qu’il rajoute les informations dans la base de données,
pour cela on va rajouter dans le fichier /etc/syslog-ng/syslog-ng.conf les lignes suivantes :

destination d_mysql {
pipe("/var/log/mysql.pipe"
template("INSERT INTO logs
(host, facility, priority, level, tag, datetime, program, msg)
VALUES ( '$HOST', '$FACILITY', '$PRIORITY', '$LEVEL', '$TAG', '$YEAR-$MONTH-$DAY
$HOUR:$MIN:$SEC',
'$PROGRAM', '$MSG' );\n") template-escape(yes));
};

Il s’agit d’un nouveau champ destination permettant de rediriger les logs vers la base de données
logs. Pour que l’ajout soit fait il faut rajouter un champ log qui va récupérer les données à partir de la
source et les rediriger vers la destination. Nous avons ajouté le champ destination et le champ source
doit déjà être présent dans le fichier de configuration de syslog-ng :

log {
source(s_sys);
destination(d_mysql);
};

Pour Ferdora, il faut remplacer s_all de l’exemple fourni par s_sys.

Pour recevoir les logs des machines distantes sur le réseau, il faut décommenter la ligne « udp(); ».

Le script syslog2mysql.sh qui est fourni dans le paquet php-syslog-ng permet de créer un fichier
pipe FIFO pour remplir la base de données :

#!/bin/bash

if [ ! -e /var/log/mysql.pipe ]
then
mkfifo /var/log/mysql.pipe
fi
while [ -e /var/log/mysql.pipe ]
do
mysql -u syslogfeeder --password=PASS_HERE syslog < /var/log/mysql.pipe >/dev/null
done

Il faut bien sûr modifier l’avant dernière ligne de ce fichier en remplaçant PASS_HERE par le mot
de passe que vous avez spécifié plus haut.

Pour exécuter ce script il faut le copier dans le fichier de démarrage de syslog-ng :

start() {
echo -n $"Starting $prog: "
daemon $exec $SYSLOGNG_OPTIONS
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
# script permettant d’insérer les données dans la base de données mysql
/var/www/html/php-syslog-ng/scripts/syslog2mysql.sh
}

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 23 / 71


Par mesure de sécurité nous allons interdire l’accès aux fichiers scripts, includes et de
configuration à partir d’un navigateur web, pour cela nous allons rajouter dans le fichier de
configuration du serveur web Apache (sous Fedora /etc/httpd/conf/httpd.conf) les lignes suivantes :

<Directory "/var/www/phpsyslogng/scripts">
Deny from all
</Directory>
<Directory "/var/www/phpsyslogng/includes">
Deny from all
</Directory>
<Directory "/var/www/phpsyslogng/config">
Deny from all
</Directory>

Utilisation



La page d’accueil de php-syslog-ng permet de choisir ce que l’on veut afficher. On peut ainsi
sélectionner les postes distants que l’on veut afficher ou non, les types de logs à afficher, en fonction
du niveau d’erreur ou de la date…

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 24 / 71






La capture d’écran si dessus montre comment sont affichées les informations : numéro d’entrée, le
poste, le type de logs avec le niveau d’erreur suivant la couleur, la date et l’heure et enfin le message
associé.

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 25 / 71


Snort

Présentation

Snort est un système de détection d’intrusion à partir d’analyse du trafic en temps réel. Pour cela, il
effectue des analyses de protocole, recherche/correspondance de contenu et peut être utilisé pour détecter
une grande variété d'attaques et de sondes comme des dépassements de buffers, scans, attaques sur des
CGI, sondes SMB, essai d'OS fingerprintings et d’autres. Lorsque Snort détecte une intrusion, il peut soit
prévenir l’administrateur système par un message sms/mail/vocal, soit interdire tout trafic provenant de
l’attaquant, soit interdire tout trafic d’une classe d’adresse.

Toutefois Snort nécessite d’être maintenu à jour régulièrement pour rester efficace. Pour obtenir une
représentation visuelle, on pourra utiliser des paquets tels que SnortSnarf, ACID, sguil ou BASE (Basic
Analysis and Security Engine).

Snort a trois fonctionnalités :
￿ Sniffer le réseau : permet d’observer les paquets qui circulent sur le réseau.
￿ Générer des fichiers logs : génère des fichiers de logs au lieu d’afficher à l’écran les paquets.
￿ Détecter les intrusions : permet de détecter des intrusions suivant des règles contenues dans des
fichiers. Ces fichiers sont téléchargeables sur
http://www.snort.org/pub-bin/downloads.cgi


Snort s’utilise en ligne de commande et possède de nombreuses options…

Sniffer le réseau

Afficher les en-têtes de paquets TCP/IP
snort –v
Afficher les en-têtes de paquets IP, TCP/UDP/ICMP et les données
snort –vd
Pour afficher tous les paquets en transit sur l’interface eth0 :
snort -dvi eth0
03/30-23:01:37.323403 192.168.0.113:22 -> 82.242.68.85:1468
TCP TTL:64 TOS:0x10 ID:43060 IpLen:20 DgmLen:1500 DF
***A**** Seq: 0xC5184FA2 Ack: 0xF09B7CDB Win: 0x53C0 TcpLen: 20
4B 64 58 7C 2D C7 7D 74 22 C9 F2 A0 AF F0 1C 5E KdX|-.}t"......^
10 7F 52 B8 C1 31 75 DF 35 E4 6F 62 C5 D1 48 E1 ..R..1u.5.ob..H.
E3 A0 0C 53 6C C4 8F 2D 55 EA 20 26 7C 6E 90 65 ...Sl..-U. &|n.e
A7 F4 C6 32 3A 35 AB 9B 12 26 81 88 AA 32 E6 31 ...2:5...&...2.1
F1 88 54 69 5C EB 6C 6C 9D 0E 97 F2 A7 A7 93 68 ..Ti\.ll.......h


78 DE 01 E9 BB EC 5D 97 18 1D 1E 37 53 66 66 C9 x.....]....7Sff.
BD 7E 83 F1 37 97 83 DA 75 39 4E C1 F1 0A 93 58 .~..7...u9N....X
93 72 DC 2C F0 77 B0 29 D8 45 D2 A6 AB E7 54 76 .r.,.w.).E....Tv
D2 59 F1 CE .Y..

=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 26 / 71


*** Caught Int-Signal


===============================================================================

Snort received 339 packets
Analyzed: 63(18.584%)
Dropped: 120(35.398%)
Outstanding: 156(46.018%)
===============================================================================
Breakdown by protocol:
TCP: 63 (100.000%)
UDP: 0 (0.000%)
ICMP: 0 (0.000%)
ARP: 0 (0.000%)
EAPOL: 0 (0.000%)
IPv6: 0 (0.000%)
ETHLOOP: 0 (0.000%)
IPX: 0 (0.000%)
FRAG: 0 (0.000%)
OTHER: 0 (0.000%)
DISCARD: 0 (0.000%)
===============================================================================
Action Stats:
ALERTS: 0
LOGGED: 0
PASSED: 0
===============================================================================
Snort exiting

Générer des logs

Renvoie la sortie de la commande dans un fichier log dans le répertoire log
snort -dev -l ./log
Voir le fichier de log
snort -dv -r ./log/snort.log.1175196590
Voir seulement les paquets icmp du fichier de log
snort -dv -r ./log/snort.log.1175196590 icmp
Détecter des intrusions

Permet d’analyser et détecter des intrusions suivant des règles
snort -dev -l ./log -h 192.168.0.0/24 -c /etc/snort/snort.conf

Running in IDS mode

--== Initializing Snort ==--
Initializing Output Plugins!
Var 'tun0_ADDRESS' defined, value len = 24 chars, value = 10.8.0.1/255.255.255.255
Var 'any_ADDRESS' defined, value len = 15 chars, value = 0.0.0.0/0.0.0.0
Var 'lo_ADDRESS' defined, value len = 19 chars, value = 127.0.0.0/255.0.0.0
Initializing Preprocessors!
Initializing Plug-ins!

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 27 / 71


Parsing Rules file /etc/snort/snort.conf

+++++++++++++++++++++++++++++++++++++++++++++++++++
Initializing rule chains...
Var 'HOME_NET' defined, value len = 3 chars, value = any
Var 'EXTERNAL_NET' defined, value len = 3 chars, value = any
Var 'DNS_SERVERS' defined, value len = 3 chars, value = any
Var 'SMTP_SERVERS' defined, value len = 3 chars, value = any
Var 'HTTP_SERVERS' defined, value len = 3 chars, value = any
Var 'SQL_SERVERS' defined, value len = 3 chars, value = any
Var 'TELNET_SERVERS' defined, value len = 3 chars, value = any
Var 'SNMP_SERVERS' defined, value len = 3 chars, value = any
Var 'HTTP_PORTS' defined, value len = 2 chars, value = 80
Var 'SHELLCODE_PORTS' defined, value len = 3 chars, value = !80
Var 'ORACLE_PORTS' defined, value len = 4 chars, value = 1521
Var 'AIM_SERVERS' defined, value len = 185 chars

[64.12.24.0/23,64.12.28.0/23,64.12.161.0/24,64.12.163.0/24,64.12.200.0/24,205.188.3.0
/24,205.188.5.0/24,205.188.7.0/24,205.188.9
.0/24,205.188.153.0/24,205.188.179.0/24,205.188.248.0/24]
Var 'RULE_PATH' defined, value len = 16 chars, value = /etc/snort/rules
,-----------[Flow Config]----------------------
| Stats Interval: 0
| Hash Method: 2
| Memcap: 10485760
| Rows : 4099
| Overhead Bytes: 16400(%0.16)
`----------------------------------------------
Frag3 global config:
Max frags: 65536
Fragment memory cap: 4194304 bytes
Frag3 engine config:
Target-based policy: FIRST
Fragment timeout: 60 seconds
Fragment min_ttl: 1
Fragment ttl_limit: 5
Fragment Problems: 1
Bound Addresses: 0.0.0.0/0.0.0.0
Stream4 config:
Stateful inspection: ACTIVE
Session statistics: INACTIVE
Session timeout: 30 seconds
Session memory cap: 8388608 bytes
Session count max: 8192 sessions
Session cleanup count: 5
State alerts: INACTIVE
Evasion alerts: INACTIVE
Scan alerts: INACTIVE
Log Flushed Streams: INACTIVE
MinTTL: 1
TTL Limit: 5
Async Link: 0
State Protection: 0
Self preservation threshold: 50
Self preservation period: 90
Suspend threshold: 200
Suspend period: 30
Enforce TCP State: INACTIVE
Midstream Drop Alerts: INACTIVE
Allow Blocking of TCP Sessions in Inline: ACTIVE
Server Data Inspection Limit: -1
WARNING /etc/snort/snort.conf(439) => flush_behavior set in config file, using old
static flushpoints (0)

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 28 / 71


Stream4_reassemble config:
Server reassembly: INACTIVE
Client reassembly: ACTIVE
Reassembler alerts: ACTIVE
Zero out flushed packets: INACTIVE
Flush stream on alert: INACTIVE
flush_data_diff_size: 500
Reassembler Packet Preferance : Favor Old
Packet Sequence Overlap Limit: -1
Flush behavior: Small (<255 bytes)
Ports: 21 23 25 42 53 80 110 111 135 136 137 139 143 445 513 1433 1521 3306
Emergency Ports: 21 23 25 42 53 80 110 111 135 136 137 139 143 445 513 1433 1521
3306
HttpInspect Config:
GLOBAL CONFIG
Max Pipeline Requests: 0
Inspection Type: STATELESS
Detect Proxy Usage: NO
IIS Unicode Map Filename: /etc/snort/unicode.map
IIS Unicode Map Codepage: 1252
DEFAULT SERVER CONFIG:
Server profile: All
Ports: 80 8080 8180
Flow Depth: 300
Max Chunk Length: 500000
Inspect Pipeline Requests: YES
URI Discovery Strict Mode: NO
Allow Proxy Usage: NO
Disable Alerting: NO
Oversize Dir Length: 500
Only inspect URI: NO
Ascii: YES alert: NO
Double Decoding: YES alert: YES
%U Encoding: YES alert: YES
Bare Byte: YES alert: YES
Base36: OFF
UTF 8: OFF
IIS Unicode: YES alert: YES
Multiple Slash: YES alert: NO
IIS Backslash: YES alert: NO
Directory Traversal: YES alert: NO
Web Root Traversal: YES alert: YES
Apache WhiteSpace: YES alert: NO
IIS Delimiter: YES alert: NO
IIS Unicode Map: GLOBAL IIS UNICODE MAP CONFIG
Non-RFC Compliant Characters: NONE
Whitespace Characters: 0x09 0x0b 0x0c 0x0d
rpc_decode arguments:
Ports to decode RPC on: 111 32771
alert_fragments: INACTIVE
alert_large_fragments: ACTIVE
alert_incomplete: ACTIVE
alert_multiple_requests: ACTIVE
Portscan Detection Config:
Detect Protocols: TCP UDP ICMP IP
Detect Scan Type: portscan portsweep decoy_portscan distributed_portscan
Sensitivity Level: Low
Memcap (in bytes): 10000000
Number of Nodes: 36900

2833 Snort rules read...
2833 Option Chains linked into 196 Chain Headers
0 Dynamic rules

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 29 / 71


+++++++++++++++++++++++++++++++++++++++++++++++++++

Tagged Packet Limit: 256

+-----------------------[thresholding-config]----------------------------------
| memory-cap : 1048576 bytes
+-----------------------[thresholding-global]----------------------------------
| none
+-----------------------[thresholding-local]-----------------------------------
| gen-id=1 sig-id=2924 type=Threshold tracking=dst count=10 seconds=60
| gen-id=1 sig-id=2496 type=Both tracking=dst count=20 seconds=60
| gen-id=1 sig-id=3542 type=Threshold tracking=src count=5 seconds=2
| gen-id=1 sig-id=3152 type=Threshold tracking=src count=5 seconds=2
| gen-id=1 sig-id=2275 type=Threshold tracking=dst count=5 seconds=60
| gen-id=1 sig-id=2495 type=Both tracking=dst count=20 seconds=60
| gen-id=1 sig-id=3273 type=Threshold tracking=src count=5 seconds=2
| gen-id=1 sig-id=2523 type=Both tracking=dst count=10 seconds=10
| gen-id=1 sig-id=3527 type=Limit tracking=dst count=5 seconds=60
| gen-id=1 sig-id=3543 type=Threshold tracking=src count=5 seconds=2
| gen-id=1 sig-id=2923 type=Threshold tracking=dst count=10 seconds=60
| gen-id=1 sig-id=2494 type=Both tracking=dst count=20 seconds=60
+-----------------------[suppression]------------------------------------------
| none
-------------------------------------------------------------------------------
Rule application order: ->activation->dynamic->pass->drop->alert->log
Log directory = ./log
Loading dynamic engine /usr/lib/dynamicengine/libsf_engine.so... ERROR: Failed to
load /usr/lib/dynamicengine/libsf_engine.so: /usr/lib/dynamicengine/libsf_engine.so:
cannot open shared object file: No such file or directory
Fatal Error, Quitting..


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 30 / 71


Analyse des fichiers de Log

Awstats


Présentation

Awstats est un outil gratuit, puissant et très fonctionnel qui fournit des statistiques graphiques de
serveurs web, de streaming, ftp ou de mail. Cet analyseur de fichiers logs fonctionne en tant que CGI ou
en ligne de commande et résume toutes les informations contenues dans ces fichiers sur des graphiques. Il
sait lire les fichiers logs de la majorité des serveurs web tel que Apache (NCSA combined/XLF/ELF log
format or common/CLF log format), WebStar, IIS (W3C log format) et d’autres serveurs web, proxy,
streaming, mail et ftp.
Caractéristiques/Logiciels

AWStats Analog Webalizer
Version – Date 6.5 – Décembre 2005 6.0 - Décembre 2004 2.01-10 - Avril 2002
Langage Perl C C
Plateformes UNIX/Windows
Sources disponibles Oui
Prix/License Gratuit/GPL
Format Apache combined

Oui
Format Apache common Quelques fonctionnalités
Format IIS (W3C) Oui Avec un patch
Format personnalisé Oui Non
Web/Ftp/Mail log Oui/oui/oui Oui/non/non

Configuration

Step 1
Lancer le script awstats_configure.pl (dans le répertoire /usr/bin sous Gentoo et dans
/usr/share/awstats/tools/awstats_configure.pl sous fedora) comme ceci

perl awstats_configure.pl

Vérifier les points suivant dans httpd.conf
￿ CustomLog /yourlogpath/yourlogfile
combined
(au lieu de
common
)
￿ Utilisation à partir du site web

#
# Directives to add to your Apache conf file to allow use of AWStats as a CGI.
# Note that path "/usr/local/awstats/" must reflect your AWStats Installation path.
#
Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"
Alias /awstatscss "/usr/local/awstats/wwwroot/css/"
Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"
ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"
#
# This is to permit URL access to scripts/files in AWStats directory.

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 31 / 71


#
<Directory "/usr/local/awstats/wwwroot">
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>

Dans Gentoo on /usr/share/webapps/awstats/6.5-r2/htdocs/ au lieu de /usr/local/awstats/wwwroot/ et
/usr/share/webapps/awstats/6.5-r2/hostroot/cgi-bin au lieu de /usr/local/awstats/wwwroot/cgi-bin

Redémarrer Apache
/etc/init.d/apache2 restart

Step 2
Après avoir créé le awstats.mon.site.conf (dans /etc/awstats sous linux Gentoo) il est nécessaire de
vérifier certains points dans ce fichier:
￿ LogFile : chemin relatif des logs du serveur
￿ LogType : W pour analyser les fichiers logs web
￿ LogFormat : 1 pour (pour "NCSA apache combined/ELF/XLF log format") ou utiliser un
autre format (
http://awstats.sourceforge.net/docs/awstats_config.html#LogFormat
)
￿ SiteDomain : nom de domaine du site (
www.mon.site.com
)

Step 3
Il faut ensuite exécuter la commande suivante (sous Gentoo awstats.pl se trouve dans
/usr/share/webapps/awstats/6.5-r2/hostroot/cgi-bin/) :

perl awstats.pl -config=mon.site –update

On devrait alors obtenir :

Update for config "/etc/awstats/awstats.mysite.conf"
With data in log file "/pathtoyourlog/yourlog.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 225730
Found 122 dropped records,
Found 87 corrupted records,
Found 0 old records,
Found 225521 new qualified records.


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 32 / 71


Utilisation

http://www.mon.site/awstats/awstats.pl?config=mon.site

Si le paramètre AllowToUpdateStatsFromBrowser est positionné à 1 dans awstats.mon.site.conf il sera
possible de mettre à jour les informations à partir du site web.



Comme le montre la capture d’écran d’Internet Explorer 7, Awstats fournit dans un navigateur les
statistiques graphiques du serveur web de notre machine. Sur la gauche, un menu permet d’accéder aux
sous rubriques : Résumé, Historique mensuel, Historique hebdomadaire, Historique journalier, Heures,
Pays des visiteurs, Hôtes, Durées de visite, Types de fichier, Pages les plus visitées, Systèmes
d’exploitation, Navigateurs…


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 33 / 71


Remontée des alertes
Nessus
Présentation

Nessus est un scanneur de failles de sécurité, son but est de détecter rapidement les faiblesses d’une
machine, que ce soit des failles permettant à une personne malintentionnée de prendre le contrôle de la
machine ou simplement la présence d’un mot de passe par défaut…De plus, Nessus est le leader sur le
marché de la sécurité informatique, dans le domaine de la détection de failles.

Le principe de Nessus est assez simple, il exécute tout d’abord un scan des ports ouvert, comme
NMAP, cependant par la suite il exécute un script optimisé pour la détection des failles. Ce script est
modifié par la configuration de Nessus et par les multiples plugins que l’on peut lui ajouter. Chaque
plugins fournissant un degré de sécurité plus élevé.

Enfin Nessus peut, dans des cas précis, et suivant la configuration donnée exécuter des tentatives de
crash de la machine, ainsi que des attaques de mot de passe par dictionnaire ou Brute Force.

Installation
On installe le fichier rpm contenant Nessus version 3.05 à l’aide de cette commande :

rpm –ivh Nessus-3.05-fc6.i386.rpm

Lancement du programme « serveur » :

Nessus crée un processus, ce processus doit être activé à l’aide de cette commande :

/opt/nessus/sbin/nessus -D
Enregistrement

Nessus n’étant pas open source, il est demandé de s’enregistrer avec une clef que l’on peut demander
gratuitement sur le site officiel : http://www.nessus.org/

# /opt/nessus/bin/nessus-fetch --register 0F1C-9C27-171A-A76E-075B

Mise à jour des plugins

Afin de télécharger les mises à jour du programme et de ses nouveaux plugins, vous devez être
enregistré. De plus si vous souhaitez exécuter la mise à jour manuellement vous devez exécuter la
commande suivante :
/opt/nessus/sbin/nessus-update-plugins

Cependant, Nessus possède un module permettant de vérifier d’éventuelles mises à jour à l’aide d’un
planificateur de tâches, nous verrons cela par la suite.


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 34 / 71


Configuration de Nessus

Afin de procéder à la configuration de Nessus, nous devons ouvrir le fichier nessusd.conf, pour cela
vous devrez être connecté en root :

vi /opt/nessus/etc/nessus/nessusd.conf

Le fichier de configuration étant par défaut bien configuré pour un utilisateur « normal », nous vous
présenterons uniquement quelques parties pouvant vous être utiles :

Par exemple la mise à jour des plugins :
# Automatic plugins updates - if enabled and Nessus is registered, then
# fetch the newest plugins from plugins.nessus.org automatically
auto_update = yes
# Number of hours to wait between two updates
auto_update_delay = 24

Ici nous autorisons la mise à jour (auto_update=yes). Cette mise à jour aura lieu toutes les 24 heures.

Il vous est possible de choisir le pseudo de la personne pouvant se connecter à distance à Nessus afin
d’exécuter des mises à jour. De plus, vous pouvez changer les extensions des plugins à télécharger. (Il
n’est généralement pas nécessaire de les modifier)

# Can users upload their plugins ?
plugin_upload = yes
# Suffixes of the plugins the user can upload :
plugin_upload_suffixes = .nasl, .nasl3, .inc, .inc3, .nbin, .audit
# Name of the user who can remotely update the plugins
admin_user = root

De plus, il est possible de forcer l’utilisation d’un certificat afin de garantir la sécurité d’accès à
Nessus. Eventuellement, vous pouvez générer vos propres certificats afin d’identifier une seule machine
capable de s’identifier à nessus.

#
# Added by nessus-mkcert
#
cert_file=/opt/nessus/com/nessus/CA/servercert.pem
key_file=/opt/nessus/var/nessus/CA/serverkey.pem
ca_file=/opt/nessus/com/nessus/CA/cacert.pem
# If you decide to protect your private key with a password,
# uncomment and change next line
# pem_password=password
# If you want to force the use of a client certificate, uncomment next line
# force_pubkey_auth = yes


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 35 / 71


Le Client distant

Installation :
Il est possible de vous connecter à distance sur Nessus, pour cela vous devrez disposer du client
Nessus. Afin d’installer ce client vous devrez exécuter la commande :

Apt-get install nessus

Ensuite vous pourrez exécuter le client :

/usr/bin/nessus

Attention, Vous devez obligatoirement ouvrir le port 1241 en TCP sur votre firewall du serveur, sinon
vous ne pourrez y accéder de l’extérieur.

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 37 / 71


Vous aurez alors par exemple la fenêtre suivante pour la faille AIX 53.1 : IY19744:

On peut noter le nom de la faille, le numéro du plugins de Nessus ainsi que les révisions et
l’explication de l’attaque en cas de succès. De plus, vous aurez bien sûr la solution attachée à cette attaque
ainsi qu’une évaluation du risque. Ici cette attaque possède un Risque élevé.


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 38 / 71



L’onglet Scan options :


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 39 / 71


Voici un exemple de rapport de scan :



Ici nous voyons clairement qu’il y a des failles de sécurité, dont 4 importantes ! Ces failles sont de
type : « general/tcp». La suite sera la liste des failles découvertes, ainsi que les moyens de les corriger, par
exemple :



Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 40 / 71


NMAP

Présentation

NMAP est un logiciel open source permettant d’explorer le réseau afin de déceler d’éventuelles failles
de sécurité. Nous avons la possibilité de le choisir afin de l’inclure dans notre solution de sécurité pour ses
diverses capacités de scanneurs de ports, de détection de services et de découvertes de type de pare-feu
présent sur la machine ciblée. De plus, il est fortement présent dans le domaine de la sécurité informatique
de par sa simplicité d’utilisation et sa flexibilité. En effet, au départ créé pour scanner un grand nombre de
machines rapidement, il peut tout aussi bien effectuer cette tâche sur une seule machine. Pour cela nous
utiliserons la dernière version de NMAP, la 4.20.
Installation

L'installation du programme se fait relativement facilement, que l'on soit sur une distribution basée sur
du RPM ou sur une architecture Debian.

Voyons maintenant comment cela se présente.

1. Architecture basée sur du RPM :

Tout d'abord il est nécessaire de télécharger le programme : rpm -vhU
http://download.insecure.org/nmap/dist/nmap-4.20-1.i386.rpm. Si vous possédez déjà les fichiers il suffira
simplement d'exécuter la commande :rpm -i nmap-4.20-1.i386.rpm

2. Architecture type Debian :

Le même principe s'applique, on utilise par contre apt-get ...: apt-get install nmap-4.20-1.i386. de cette
manière vous téléchargerez le fichier. (il sera peut être nécessaire d'être en root, pour cela vous devrez
utilisez la commande sudo )

La suite reste basique :
cd nmap-4.20
./configure
make
make install

(Si vous notez une erreur indiquant qu'aucun compilateur n'a été détecté, vous devrez récupérer la
dernière librairie en utilisant : apt-get install build-essential)


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 41 / 71


L'utilisation

1. Détection de l'hôte

nmap -sP ip : Emet un ping à l'hôte, et permet de récupérer le nom de l'hôte. De plus cela permet de
savoir si la machine répond aux ping ou non et donc de savoir si elle est ou non en ligne. Il y a deux types
de scan dans cette commande, l'une ou vous devez être root et l'autre que vous aurez par défaut, cette
dernière ressemble fortement au scan de type TCP connect();. Le scan nécessitant les droits
administrateurs quant à lui utilise l'ICMP ECHO REPLY... (On peut désactiver l'ICMP scan en ajoutant
l'argument -P0 ).

nmap –O : Permet de détecter le type d’OS utilisé sur la machine.

2. Type de scan

nmap -sT ip : scan basic de type TCP connect(), ce type de scan permet de scanner les ports un par un
afin d'obtenir une liste des ports ouvert ou non . Le problème majeur de cette technique est la facilité de
détecter cette dernière.

nmap -sS ip : scan de type SYN Stealth, cette technique est basée directement sur le fonctionnement
du TCP. En effet, il existe plusieurs "flags" permettant d'identifier la procédure de connection à un port :
SYN : (synchronise) : demande de synchronisation.
ACK (Acknowledge) : indique la réception de paquets.
FIN (finished) : indique la fin de la connection, fin normale.
RST (Reset) : indique la fermeture brutale de la connection

La procédure est assez simple, on envoie un SYN, si le serveur envoie son SYN et un ACK, on envoie
alors un RST avant que la connection soit établie afin d'éviter de se trouver dans les logs, concrètement
cela signifie que le port est ouvert.

Si le serveur envoie un RST : le port est fermé
Si aucune réponse, le paquet est filtré.
On peut toutefois détecter ces types de connections avec des systèmes plus modernes de détection
d'intrusions.


Exemple :
[root@localhost ]# nmap -sS localhost
Starting Nmap 4.20 ( http://insecure.org ) at 2007-03-11 16:54 CET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 1689 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
111/tcp open rpcbind
389/tcp open ldap
443/tcp open https
631/tcp open ipp
720/tcp open unknown


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 42 / 71


nmap -sF, sN, sX : Ces trois modes de scans permettent de savoir si l'hôte est une machine Windows
ou non . En effet, une machine Windows ne respectant pas le RFC 793, répond au SYN, et s'il ne répond à
aucun de ces trois scans, alors cet hôte à de grandes chances d'être une machine windows.

Exemple :
[root@localhost pelletier]# nmap -sF localhost
Starting Nmap 4.20 ( http://insecure.org ) at 2007-03-11 16:54 CET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 1689 closed ports
PORT STATE SERVICE
22/tcp open|filtered ssh
25/tcp open|filtered smtp
80/tcp open|filtered http
111/tcp open|filtered rpcbind
389/tcp open|filtered ldap
443/tcp open|filtered https
631/tcp open|filtered ipp
720/tcp open|filtered unknown

On remarque ici la différence entre le scan FIN et le scan SYN Stealth, en effet, globalement le
résultat est le même, cependant on peut facilement voir que les connections à ses ports sont logués...

nmap -sU : scan UDP, cette technique envoie un paquet UDP sur chaque port de la machine, si l'on
reçoit un message ICMP Port Unreachable, cela signifie que le port est fermé sinon, on admet qu'il est
ouvert. Cela permet surtout de détecter les trojans qui utilisent généralement le protocole UDP. Il faut
cependant noter que certains Os limitent le nombre d' ICMP Port Unreachable (WINDOWS ne limite pas)

nmap -sO : Scan Protocole IP : Ce scan utilise le protocole ICMP, il est donc aussi limité en nombre
d'ICMP Port Unreachable. de la même manière on envoie un type de paquet, si l'on reçoit un ICMP Port
Unreachable, cela signifie que le port n'est pas en utilisation, sinon on admet qu'il est ouvert. Toutes les
machines n’envoient pas forcément ce message. En effet, les firewalls, AIX et Certains Unix simulent et
indiquent que tous ses ports sont ouverts.

Exemple :
[root@localhost pelletier]# nmap -sO localhost
Starting Nmap 4.20 ( http://insecure.org ) at 2007-03-11 17:11 CET
Interesting protocols on localhost.localdomain (127.0.0.1):
Not shown: 251 closed protocols
PROTOCOL STATE SERVICE
1 open icmp
2 open|filtered igmp
6 open tcp
17 open udp
255 open|filtered unknown

nmap -sI <zombie host[:probeport]> : Idlescan, ce scan est pratiquement invisible. En effet, pour cela
il est nécessaire d'avoir un Hôte Zombie, votre cible pensera que cet Hôte sera celui qui l' "attaque", ce qui
est bien entendu totalement faux ...De plus, vous n'envoyez AUCUN paquet à la cible ... il ne peut donc
pas facilement vous retracez...


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 43 / 71


Donc par exemple on obtient :
[root@localhost]#nmap -P0 -p- -sI zombie.host.com cible.com
Starting nmap V. 3.10ALPHA3 ( insecure.org/nmap/ )
Idlescan using zombie zombie.host.com (192.150.13.111:80); Class: Incremental
Interesting ports on cible.com:
(The 65522 ports scanned but not shown below are in state: closed)
Port State Service
21/tcp open ftp
25/tcp open smtp
80/tcp open http
111/tcp open sunrpc
135/tcp open loc-srv
443/tcp open https
1027/tcp open IIS
1030/tcp open iad1
2306/tcp open unknown
5631/tcp open pcanywheredata
7937/tcp open unknown
7938/tcp open unknown
36890/tcp open unknown

A noter cependant que ce scan peut être très long, en effet on parcourt ici les ports de 1 à 65535. Pour
faire uniquement les ports 1 à 1024 vous devez enlever l'argument -p-

nmap -sW : Il est parfois possible de détecter des ports ouverts grâce à ce scan, mais cela uniquement
sur les anciennes machines Windows...

Détection de Service :
nmap -sV -A : ce scan permet de détecter les services lancés et leurs ports d'utilisations. De plus,
l'argument -A permet d'utiliser l'empreinte de l'OS et sa version.

Exemple :

[root@localhost]# nmap -sV -A localhost
Starting Nmap 4.20 ( http://insecure.org ) at 2007-03-11 17:29 CET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 1689 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 4.3 (protocol 2.0)
25/tcp open smtp Sendmail 8.13.8/8.13.8
80/tcp open http Apache httpd 2.2.3 ((Fedora))
111/tcp open rpcbind 2 (rpc #100000)
389/tcp open ldap (Anonymous bind OK)
443/tcp open ssl OpenSSL
631/tcp open ipp CUPS 1.2
720/tcp open status 1 (rpc #100024)

No exact OS matches for host (If you know what OS is running on it, see http://insecure.org/nmap/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=4.20%D=3/11%OT=22%CT=1%CU=35734%PV=N%DS=0%G=Y%TM=45F42E93%P=i686-
OS:pc-linux-gnu)SEQ(SP=CC%GCD=1%ISR=CB%TI=Z%II=I%TS=A)SEQ(SP=CC%GCD=2%ISR=C
OS:B%TI=Z%II=I%TS=A)OPS(O1=M400CST11NW5%O2=M400CST11NW5%O3=M400CNNT11NW5%O4OS:=M
400CST11NW5%O5=M400CST11NW5%O6=M400CST11)WIN(W1=8000%W2=8000%W3=8000%WOS:4=8000%
W5=8000%W6=8000)ECN(R=Y%DF=Y%T=40%W=8018%O=M400CNNSNW5%CC=N%Q=)T1OS:(R=Y%DF=Y%
T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=Y%DF=Y%T=40%W=8000%S=O%OS:A=S+%F=AS%O=M
400CST11NW5%RD=0%Q=)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=OS:0%Q=)T5(R=Y%DF=
Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%OS:S=A%A=Z%F=R%O=%

Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 44 / 71


RD=0%Q=)T7(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1(OS:R=Y%DF=N%T=40%TOS
=C0%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUL=G%RUD=OS:G)IE(R=Y%DFI=N%T=40%T
OSI=S%CD=S%SI=S%DLI=S)

Uptime: 0.262 days (since Sun Mar 11 11:12:44 2007)
Network Distance: 0 hops
Service Info: OS: Unix

3. Timing

nmap possède des timings prédéfinis. En effet, le timing est extrêmement important dans les scans. Un
timing trop agressif est largement plus facilement détecté qu’un scan avec un faible timing. De cette
manière, vous pourrez ajouter l’argument :
« -T0 », le mode « Paranoid » afin d’être extrêmement prudent (il y aura un temps minimum de 5
minutes entre chaque paquet)
« -T3», le mode « Normal », par défaut (aussi vite que possible)
« -T5 », le mode « Insane » afin de faire un scan rapide (0.3 secondes entre chaque paquet)

4. Les Leurres

nmap permet d’utiliser des leurres afin de scanner une machine. De cette manière la machine sera
submergée d’une multitude de leurres, noyant alors votre scanning de la machine entre les leurres, il
devient alors beaucoup plus difficile de savoir qui est le vrai du faux.
Pour cela vous devrez ajouter l’argument « -D ».

5. La fragmentation

La fragmentation permet simplement de passer à travers certains firewall, en effet ces derniers ne
reconnaissant pas le paquet (puisqu’il est fragmenté), il décide de le laisser passer …
Commande « -f »
.
6. Les Logs

Il est logique de vouloir garder une trace des commandes exécuter par nmap, pour cela vous devrez
rajouter l’un des arguments suivant :
-oN nomdufichier.log : permet de sauvegarder une version « lisible » de la commande
-oX nomdufichier.log : permet d’obtenir un log en XML
-oG nomdufichier.log : enregistre une version « grepable »

7. Quelques exemples

nmap -sS -A cible
nmap -sS -P0 -A -v cible
nmap -v -A scanme.nmap.org
nmap -v -sP 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -P0 -p 80




Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 46 / 71


Voyons maintenant l’onglet « Discover » :
Cet onglet permet de choisir le type de ping afin de choisir ce que l‘on décide de vérifier, de plus nous
pouvons choisir les ports éventuels à ping.
L’onglet « Timing » :
Dans cet onglet, nous pouvons choisir le temps de vie d’un ping, ainsi que le temps séparant deux
pings …. (Cf. les différents modes)


Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 47 / 71


L’onglet « Files »
Cet onglet permet de choisir un fichier d’entrée, par exemple une liste d’host à ping ainsi qu’un fichier
de sortie, c’est dans ce fichier que NMAP va enregistrer tout ce qu’il a trouvé.

L’onglet « Options »
C’est ici que nous choisirons la « verbosité » du log, c'est-à-dire la précision de ce dernier, de plus
vous pouvez choisir un port ou une ip particulière afin de ping l’host (c’est le mode Zombie). Enfin vous
pourrez choisir de fragmenter vos ping (pour traverser les firewalls), choisir un ordre d’host aléatoire dans
un fichier à ping ou encore de choisir un port aléatoirement afin de ping votre cible.



Ecole Centrale
d’Electronique

Projet Technologique 2
Security_Solutions_v1.doc

Page 48 / 71


Voici par exemple ce que l’on peut obtenir en fichier de sortie :

Starting Nmap 4.20 ( http://insecure.org ) at 2007-03-19 10:23 CET
Interesting ports on vir91-6-82-245-128-71.fbx.proxad.net (82.245.128.71):
Not shown: 1688 filtered ports
PORT STATE SERVICE
21/tcp closed ftp
22/tcp open ssh
80/tcp open http
389/tcp open ldap
554/tcp open rtsp
901/tcp open samba-swat
1241/tcp open nessus
6346/tcp closed gnutella
6881/tcp open bittorent-tracker
Device type: general purpose|printer|specialized|WAP|storage-misc
Running (JUST GUESSING) : Linux 2.6.X|2.4.X (94%), Xerox embedded (86%), Atmel Linux 2.6.X (86%), Linksys