22-09-2008 11:26:45
[Security] Les dangers de MSN en entreprise
MSN est une messagerie certes tres jolie et tres kikoolol pour l'utilisateur lambda mais qui représente un grand danger
lors d'une utilisation en entreprise. Pourquoi ? Car tous les messages circulent en clair, sans aucun chiffrage. Quand on le
dit au gens, ils ne le prennent généralement pas au sérieux.
Solution : Faites leur une démo.
Pour cela, nous allons avoir besoin de 2 logiciels :
-Ettercap : un outil permettant une attaque Man In The Middle (MITM) tres simplement
-Wireshark : un outil de sniffing réseau
Le principe consiste a se faire passer pour la passerelle pour que la machine victime nous envoie tous les paquets que nous
redirigerons ensuite nous meme vers la vraie passerelle et de meme nous allons empoisonner la passerelle pour qu'elle
nous réponde.
Tout d'abord nous allons activer le forwarding sur notre machine pour permettre cette redirection de paquets.
Sous FreeBSD nous taperons :
sysctl net.inet.ip.forwarding=1Sous Linux cela donnera :
echo 1> /proc/sys/net/ipv4/ip_forward
Ensuite nous allons lancer Ettercap (en root) avec la commande
ettercap -GLa il faut aller dans Sniff et choisir Unified Sniffing. Puis dans on, on choisira Scan for hosts puis Hosts List pour voir la liste d'host disponible sur le réseau. On met en surbrillance l'ip de la passerelle et on choisi "Add to Target 1". On choisi ensuite l'ip de la machine que l'on veut écouter et on clic sur "Add to Target 2".
Tout est pret, il ne reste plus qu'a lancer l'attaque en allant sur le menu MITM et en choisissant ARP Poisoning. Si l'on va sur la machine attaquée attaquée que l'on tape arp -a , la passerelle possède notre adresse MAC.
Maintenant on ouvre Wireshark (en root) pour sniffer le réseau :
wiresharkOn va dans Capture > Interfaces et la on appuie sur Start de notre interface réseau. Maintenant pour filter les messages MSN, on va dans le champs filter et on écrit :
msnms contains "text/plain"On appuie sur Entrée et il ne reste plus qu'a attendre :)
Cette manipulation tres simple peut s'appliquer pour écouter n'importe quel protocole non chiffré. Il montre le danger de ceux ci en entreprise et la maniere dont les employés utilisent la messagerie instantanée pour communiquer des informations importantes. On se rend compte donc de l'importance de mettre en place des actions la dessus qui peuvent etre :
-supprimer le protocole MSN (il faut penser aux serveur web offrant ce service)
-mettre en place des clients avec des modules chiffrés (GAIM)
-utiliser une messagerie interne chiffrée : JABBER
-former les employés sur l'importance de sécuriser leurs conversations (messagerie instantanée, mails...)
Il peut également etre interessant de mettre en place un IDS comme Snort pour vérifier que quelqu'un n'est pas une activité malveillante d'écoute sur le réseau ou d'utiliser Ettercap qui permet de détecter d'autres Ettercap sur le réseau.
18-09-2008 13:42:27
[Article] Utilisation de Scapy
Scapy est un outil ecrit en python vital pour tout pen tester ou pour quelqu'un faisant du reseau de maniere avancer car permet de forger ses propres paquets ainsi que scanner, sniffer, fuzzer et bien
d'autres actions. Il permet en plus de creer des graphiques afin de visualiser au mieux les resultats. J'ai donc ecrit un article expliquant son utilisation.
How to Scapy
16-09-2008 16:43:07
[Script] Sauvegarde fichiers / MySQL
Voici un petit script de sauvegarde que j'ai developpé pour les besoins actuels d'un serveur FreeBSD mais qui fonctionnera bien sur sous Linux. Il
consiste a créer un
fichier contenant la liste des répertoire que l'on veut sauvegarder ainsi que des données MySQL. Ensuite
ca compresse le tout et envoi ca sur un serveur distant via SCP. Bien sur il faudra avoir configuré SSH par clé autorisées.
Voila le code :
#!/usr/local/bin/bash #Repertoire de temp en local REPBACKUP='/home/cloud/backup/kimsufi/files' REPBACKUPDB='/home/cloud/backup/kimsufi/db' #Liste des fichier et des DB FILEBACK='/home/cloud/Coding/Bash/listeRep' FILEMYSQL='/home/cloud/Coding/Bash/listeBase' FILENB='/home/cloud/Coding/Bash/NB' #Serv distant de sauvegarde SERVDIST='root@mon-site.com' echo "-- Script BACKUP systeme --" echo "-- author: Remi LAURENT --" echo "-- date: 16/09/08 --" echo "" rm $REPBACKUP/* rm $REPBACKUPDB/* for LINE in `cat $FILENB`; do NB=$LINE done #Rep distants de sauvegarde DISTBACKUP='/root/sauvegarde/'$NB'/files/' DISTBACKUPDB='/root/sauvegarde/'$NB'/db/' echo "-- Dump des fichiers ..." for LINE in `cat $FILEBACK`; do NOMFICHIER=`basename $LINE` tar jcvf $REPBACKUP/$NOMFICHIER.tar.bz2 $LINE done echo "-- Dump MySQL ..." for LINE in `cat $FILEMYSQL`; do dbhost=`echo $LINE | cut -d: -f1` dbuser=`echo $LINE | cut -d: -f2` dbpass=`echo $LINE | cut -d: -f3` dbbase=`echo $LINE | cut -d: -f4` mysqldump -h $dbhost -u$dbuser --password='$dbpass' --complete-insert '$dbbase' > $REPBACKUPDB/$dbbase tar jcvf $REPBACKUPDB/$dbbase.tar.bz2 $REPBACKUPDB/$dbbase rm $REPBACKUPDB/$dbbase done echo "-- Envoi distant ..." for FILE in `ls $REPBACKUP`; do scp $REPBACKUP/$FILE $SERVDIST:$DISTBACKUP done for FILE in `ls $REPBACKUPDB`; do scp $REPBACKUPDB/$FILE $SERVDIST:$DISTBACKUPDB done #On indiquer a quelle version on en est if (( $NB == 7 )); then NB='1' else NB=$(( $NB + 1 )) fi echo $NB > $FILENB echo "Backup termine."Ensuite on va créer un fichier ListeRep contenant les répertoires a sauvegarder :
/usr/local/www/apache22 /home/cloud/ArtzainakDe la meme maniere on va créer un fichier ListeBase contenant les informations des bases de données MySQL a sauvegarder sous cette forme :
host:user:password:nom_base host2:user2:password2:nom_base2On crée un dernier fichier NB contenant le nombre 1.
Sur le serveur distant ou seront stockées les sauvegardes, on crée le repertoire /root/sauvegarde/ et dans ce repertoire, on crée 7 répertoire nommés 1 2 3 4 5 6 7 dans lesquels on créera un répertoire files/ et un db/ pour chacun.
Il ne reste plus qu'a faire un cron executant le script tous les jours et les sauvegardes se feront la ou il faut :)
10-09-2008 16:18:23
[How To] Portail captif avec PFSense
Le but de se How to est d'installer et de configurer PFSense afin de
l'utiliser en portail captif.
Voici un dessin de l'architecture :
INTERNET ---------- PFSense -------- Point d'acces -------- PC WifiNotre PFSense a donc 2 cartes réseaux. On procede donc a l'installation qui est plutot simple. Pour le réseaux, j'ai réparti comme cela :
Patte WAN de PFSense (coté Internet) : fxp0 en 192.168.0.148/24 Patte LAN de PFSense (coté Point d'acces) : xl0 en 10.0.0.1/24 Le point d'acces est en DHCP Ma route par defaut est 192.168.0.1
On va donc commencer par aller dans la partie DNS Server. La on va activer celui ci sur la patte LAN . On lui adressera un spool d'adresse de 10.0.0.100 a 10.0.0.200. Surtout ne pas donner d'adresse de serveur DNS. La gateway n'est pas nécessaire non plus car il utilisera la route par défaut fourni auparant.
Ensuite on va aller dans DNS Forwarder et activer celui ci.
Enfin on va dans Captive Portal et on configure comme il se doit. On l'active sur la patte LAN, on met une redirection d'URL, on coche le systeme d'authentification (j'utilise le local manager) et on pensera a ajouter des utilisateurs pour se logger dans l'onglet File Manager.
Il ne reste plus qu'a se connecter depuis un poste Wifi et si tout s'est bien passé, on est redirigé sur notre beau portail captif :D
03-09-2008 18:56:14
Test de Google Chrome Beta
Hier est sorti la version tres attendu de Google Chrome. Je l'ai donc installé pour voir ce nouveau
navigateur.
L'installation se fait rapidement et la apparait une interface tres épurée et fort agréable a
regarder. Je test quelques pages et la direct,
WoW c'est rapide ! Le nouveau moteur de javascript V8 cartonne dur. L'ouverture de nombreux onglets ne semble pas
consommer beaucoup de ressources.
La barre intelligente (soi disant) est pas mal mais certaines adresses comme quand je travaille en locale ne
revienne qu'en tapant l'ip entiere...
Pas tres tres pratique.
Petit test Flash. Ah perso ca consomme plus de ressource que sous FF et ca rame. Test d'un applet... ah ben JAVA
n'est pas reconnu :). Je continu a l'utiliser toute la journée car dans l'ensemble il va vraiment vite. Bon
j'ai eu droit a 2 plantage complet du PC lors de visualisation de pages Google Groups, chose qui ne m'était
jamais arrivé... Hasard ?... Pas sur.
Pour voir les news, je vais voir comme d'hab milw0rm et la
déja une faille pour Google Chrome. Bon c'est juste un DDoS, il y a plus méchant.2h apres une faille
d'inclusion de n'importe quelle fichier dans une iframe permet son téléchargement! Ouch, une faille
digne de Internet Explorer il y a 5 ou 6 ans...
En conclusion de ce 1er test, Google Chrome est tres agréable a utiliser, rapide et a peu pret ergonomique
mais loin d'etre parfait. Déja de jolies failles qui montre quand meme que le code est loin d'etre parfait
car assez importante. Une instabilité du système et le manque de certain plugins le rendent inutilisable a
100% au quotidien mais c'est normal pour une version Beta. Cela reste un projet tres prometteur !
21-08-2008 10:47:41
[Mail] Creer un MX secondaire avec Postfix
Le serveur mail est une ressource souvent tres importante dans une
société car constitue le moyen de communication
principal. C'est pourquoi
assurer son service est tres important. Bien sur il est possible
d'envisager
de la haute disponibilité mais la premiere chose a faire a mon
avis
et qui n'est pas assez respecté, c'est de mettre en place un
serveur mail
secondaire.
Pour cela, il va tout d'abord falloir créer une entrée de
MX secondaire dans nos DNS.
On mettra une priorité de 10 par exemple au primaire et de 20 au
secondaire pour
obtenir au final une entrée du genre :
www 10800 IN A 80.111.222.123 mail 10800 IN CNAME www backup 10800 IN CNAME www @ 10800 IN MX 10 mail.mon-site.com. @ 10800 IN MX 20 backup.mon-site.com.Je ne m'étalerai pas sur l'installation d'un serveur mail normal, google est votre amis. On va donc directement se concentrer sur le serveur secondaire. J'utiliserai ici un serveur Postfix sur une FreeBSD 7.0.
Je commence par installer le serveur Postfix :
#cd /usr/ports/mail/postfix #make install cleanIl faut ensuite penser a créer la base de données d'alias mail sinon le serveur gueule. On exécute donc la commande :
#newaliasesOn va maintenant configurer notre Postfix en lui indiquant quels domaines relayer et la liste des mails a relayer. Pour cela il faut mettre les options suivantes dans notre /usr/local/etc/postfix/main.cf :
relay_domains = mon-site.com relay_recipient_maps = hash:/usr/local/etc/postfix/relay_recipientsOn crée ensuite notre liste de mails a relayer /usr/local/etc/postfix/relay_recipients de cette forme :
cloud@mon-site.com x toto@mon-site.com x fred@mon-site.com xSurtout ne pas oublier de transformer cela en base de données Postfix en tapant la commande :
#postmap /usr/local/etc/postfix/relay_recipientsOn coupe sendmail :
#/etc/rc.d/sendmail stopOn configure le démarrage de notre serveur en supprimant sendmail et en y ajoutant Postfix en configurant le fichier /etc/rc.conf :
sendmail_enable="NONE" postfix_enable="YES"Et on démarre Postfix :
#/usr/local/etc/rc.d/postfix startIl ne reste plus qu'a effectuer un test en coupant le serveur mail principal et en regardant le fichier /var/log/maillog. On doit y voir apparaitre nos mails avec des reject sur les adresses non autorisées et des mises en queue pour les autres.
On redémarre ensuite le serveur principal qui doit recevoir nos mails peu de temps apres le redémarrage.
Mission accomplie !
29-07-2008 14:45:51
[Cisco] Commandes de l'IOS Cisco
Un petit lien pratique pour se rappeler des commandes Cisco. Je
rappelle que ces commandes fonctionnent egalement pour Quagga /
Zebra.
http://www.pantz.org/software/ios/ioscommands.html
24-07-2008 15:20:55
[Firewall] NetAsq est base sur FreeBSD
FreeBSD est un exemple d'efficacité. Vous en doutiez ? Saviez que
les firewall NetASQ étaient basés sur des systemes FreeBSD
?
L'interet ? Pour NetASQ, un systeme robuste, libre de par son code et
une vrai liberté de part la licence BSD.
Pour FreeBSD ? Un rapport de bug et des correctifs apporté par
NetASQ ainsi que l'implication dans des projets améliorant le
systeme.
Et oui voila un bel exemple de la puissance du systeme FreeBSD et de la
vrai liberté que propose la licence BSD.
Un lien certe pas récent mais tres interessant : http://freebsd.bebik.net/local-fr/www/spec/commercial/article_netasq.html
23-07-2008 18:07:58
[Faille]Oracle Application Server PLSQL injection flaw
Dans la série des belles failles majeures, Oracle vient d'etre
victime. Cette faille
reportée en Octobre 2007 vient d'etre fixée par Oracle.
Elle permet d'obtenir un controle d'acces total a l'administration
depuis le frontend accessible sur Internet.
Le détail de la faille ici