Just Another Geek

Aller au contenu | Aller au menu | Aller à la recherche

Une image de moi

dimanche 3 juin 2007

GNU Emacs 22.1

La dernière version de GNU Emacs, la 22.1, a été publiée aujourd'hui, parmi la longue liste de changements, voici les fonctionnalités les plus intéressantes :

  • New command line option -Q or --quick.
    This is like using -q --no-site-file, but in addition it also disables the fancy startup screen.
  • New command line option -D or --basic-display.
    Disables the menu-bar, the tool-bar, the scroll-bars, tool tips, and the blinking cursor.
  • You can now follow links by clicking Mouse-1 on the link.
  • New command `kill-whole-line' kills an entire line at once.
    By default, it is bound to C-S-<backspace>.
  • You can now switch buffers in a cyclic order
    with C-x C-left (previous-buffer) and C-x C-right (next-buffer). C-x left and C-x right can be used as well. The functions keep a different buffer cycle for each frame, using the frame-local buffer list.
  • If you set the new variable `mouse-autoselect-window' to a non-nil value, windows are automatically selected as you move the mouse from one Emacs window to another, even within a frame. A minibuffer window can be selected only when it is active.
  • On X, when the window manager requires that you click on a frame to select it (give it focus), the selected window and cursor position normally changes according to the mouse click position. If you set the variable x-mouse-click-focus-ignore-position to t, the selected window and cursor position do not change when you click on a frame to give it focus.
  • Under X11, it is possible to swap Alt and Meta (and Super and Hyper).
    The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym', and `x-super-keysym' can be used to choose which keysyms Emacs should use for the modifiers. For example, the following two lines swap Meta and Alt:
        (setq x-alt-keysym 'meta)
        (setq x-meta-keysym 'alt)
    

dimanche 8 avril 2007

Les trucs que j'attendais depuis longtemps!

Debian Etch est enfin releasé et c'est pas de refus! Lorsque j'avais réinstallé ma Dedibox au début de l'année, j'avais hésité entre installer Sarge ou Etch et j'avais préféré rester quelques semaines en testing (théoriquement « moins stable ») plutôt que d'avoir à me taper une migration Sarge -> Testing.

Voici les trucs qui font plaisir dans Debian Etch :

  1. Un vim plus évolué grâce à :
    • Le folding (mon ruleset Netfilter est enfin structuré),
    • Les Tabs ;
  2. secure apt avec le contrôle cryptographique des paquets ;
  3. conntrack et libnfnetlink/libnetfilter* plus particulièrement ;
  4. Une version d'Apache qui supporte enfin les gros fichiers.

Et puis une race de petites choses dont je ne me rappelle même pas.

samedi 3 mars 2007

Mot de la presse

C'est moche!

Je vais t'en mettre du DoS !

Ah bin bravo la mentalité, je perds toute connectivité pendant une dizaine de jours et plusieurs advisories (DoS) sur Bind 9 sortent, non jusqu'ici, rien d'extraordinaire, le truc marrant, c'est de recevoir les paquets malformés sur son Bind qui n'a pas été patché (hé, normal, je fais comment sans connectivité?). DoSé quoi.

Bref, pendant quatre jours, le serveur réagissait bizarrement sans résolution DNS. Sweet.

vendredi 2 mars 2007

Me voila à causer d'Apple et de multicast, qu'est ce qu'il m'arrive...Bientôt Ubuntu ou quoi...

En expérience de colocation depuis quelques semaines, toutes les solutions facilitant un réseau décentralisé, transparent et simple m'intéressent. Le tout pour un réseau d'une dizaine d'ordinateurs.

Par exemple, la résolution DNS entre nous, comment faire ? Les adresses sont, théoriquement, attribuées pseudo-aléatoirement et surtout, le modem routeur que nous avons n'offre pas de serveur de zone. La meilleure solution est alors l'utilisation du protocole développé par Apple depuis longtemps : Zeroconf (ou Bonjour, ou mDNS, ou multicast DNS).

À l'aide d'annonces multicast propagées par avahi-daemon, on peut effectuer des résolutions DNS via libnss-mdns. On se retrouve alors avec une zone .local qui correspond à tous les noeuds Zeroconf.

$ sudo apt-get install avahi-daemon
$ ping shibby.local
ping: unknown host toto.local
$ sudo apt-get install libnss-mdns
$ ping shibby.local
PING shibby.local (192.168.12.15) 56(84) bytes of data.
64 bytes from shibby.local (192.168.12.15): icmp_seq=1 ttl=64 time=2.56 ms
...

Maintenant, parlons de l'échange de fichier musicaux. Depuis quelques temps, les principaux lecteurs multimédia implémentent DAAP, protocole qui permet l'accès à des fichiers musicaux sur les machines voisines. Bon, la dernière fois que j'ai essayé, ca n'a pas marché mais bon... De toutes facons, on utilise ma meilleure amie, ma Squeezebox pour écouter de la musique.

À bien noter que dans toutes les solutions évoquées ici, je n'ai absolument pas regardé les implications en sécurité...

mercredi 7 février 2007

Tape là !

Comme je l'ai écris dans un anglais très approximatif sur le Trac de scapy, RadioTap est l'équivalent des PrismHeaders, c'est à dire que le pilote de la carte Wifi va nous retourner le maximum d'information physique sur la trame qu'il vient de recevoir. Parmi les champs intéressants, il y a la puissance du signal qu'a reçu l'antenne. Cette valeur n'est pas méga précise mais suffit largement. Par exemple, voici la sortie de wifidtc.py (pas la peine de Google, vous savez où le trouver) qui indique pour chaque client, le signal en dBm avec une zolie représentation graphique et l'OUI associé :

00:0e:35:90:ZZ:XX [-55  dBm] |##############      | Intel
00:16:b6:b0:XX:a7 [-91  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-93  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-92  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-92  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-93  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-93  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-95  dBm] |##########          | Cisco-Link
00:13:ce:2e:YY:51 [-89  dBm] |###########         | IntelCorpo
00:16:b6:b0:XX:a7 [-93  dBm] |##########          | Cisco-Link
00:16:b6:b0:XX:a7 [-93  dBm] |##########          | Cisco-Link

On m'a dit que ça pouvait aider à localiser grossièrement des indésirables...

Note personnelle : Bravo Stéphane, Nico, Éric, Fred, Xavier et Charles pour le SSTIC 2007 ! Je pense que le deuxième jour va être sous les couleurs d'EADS :)

vendredi 26 janvier 2007

hg add slides.pdf && hg push

Je viens de publier les slides de ma présentation aux JSSI du CELAR intitulée pompeusement Sécurité des systèmes VoIP : exemple d'un test blackbox (non j'ai pas trouvé plus court, enfin si, mais... ça faisait moins classe).

Je ne les publie que maintenant car j'hésitais à réutiliser ce support pour la caravane des conférences (Copyright news0ft), mais je me suis dit que j'étais trop jeune pour commencer à faire ça, c'est un cercle infernal après :)

jeudi 25 janvier 2007

<stagiaire> C'est quoi déjà la commande pour redémarrer un IOS ?

Pourquoi est-ce que je sens que tous les chercheurs de vulnérabilité/exploits sont en train d'essayer de bindiff-er les IOS pour comprendre les dernières vulns de la nuit ? Peut-être parce qu'on peut r00ter tous les IOS du monde grâce à ça... Il suffit de voir les scores assignés par Cisco (8.3 et 10) pour se rendre compte de leurs gravités.

Le premier qui réussira à écrire un exploit stable et quasiment générique (modulo quelques adresses en fonction de l'IOS) doit pouvoir le vendre beaucoup plus cher qu'un exploit pour Vista ou un XP SP2 à mon avis.

lundi 22 janvier 2007

Touche moi vite!

Comme c'est mignon, j'ai un modem Speedtouch qui essaie de me spammer !

2007-01-22 21:25:18 H=(speedtouch.lan) [86.89.yyy.zzz] F=<Martin@ozwi.com> rejected after DATA: Pan ! 8.9 spam points.

jeudi 28 décembre 2006

Quote de porc^Wspam

J'ai commençé à lire mes spams, non pas parce que j'ai des problèmes de montage de chapiteau mais plutôt pour essayer de voir des patterns.

Par exemple, j'ai reçu depuis la semaine dernières une trentaine de spams avec une apostrophe dans la partie locale de l'adresse From:, exemple :

From: "Benny Blair" <Monteverdi'susurious@tamamanours.ru>

Donc j'ai dégainé mon spamassassin et ajouté ça dans mon /etc/spamassassin/local.cf :

header FROM_ADDRESS_QUOTED From =~ /<.*'.*@/
describe FROM_ADDRESS_QUOTED what is this quote in the email address
score FROM_ADDRESS_QUOTED 3.0

J'ai testé sur l'intégralité de mes mails et ça ne déclenche aucun faux-positif.

mercredi 27 décembre 2006

Pas ce soir chéri, Gmane à la tête

Qu'est-ce que Gmane ?

Gmane est une passerelle de mailing list vers le protocole NNTP. Gmane s'inscrit sur les listes et republie les messages dans des groupes.

Pourquoi utiliser les services de Gmane.org ?

Gmane est bon pour la planète :

  • Économe : Plus besoin que le serveur de liste envoie N fois le mail en entier à chaque personne alors que vous n'allez en lire que la moitié, rien qu'en sélectionnant les titres.
  • Spam : Avant d'injecter les messages, plusieurs traitements anti-spams sont appliqués aux messages avec une efficacité redoutable.
    De plus, si des spams venaient à passer, vous pouvez les marquer vous-même comme tel et les messages seront supprimés après modération, ce qui permettra à d'autres personnes de profiter de votre marquage.
  • Inscription facile aux listes : Plus besoin de voir si le gestionnaire de liste est un Mailman, Sympa, ecartis, etc. Vous avez juste à cocher la case du groupe dans votre lecteur de news et vous êtes inscrit.
  • Possibilité de lire les groupes en NNTP, mais aussi grâce aux interfaces Web : vous pouvez alors envoyer un lien facilement vers un article donné.

En fait, la seule raison qui pousse les gens à ne pas utiliser Gmane est qu'ils n'utilisent pas de client de news (alors qu'une personne sérieuse utilisera Gnus). Non, je ne fais pas de la publicité car j'ai reçu mon tee-shirt d'admin gratuit :)

mardi 12 décembre 2006

C'est juste pour rigoler hein

Maintenant que dans certains milieux non-autorisés, les vulnérabilités de GnuPG se revendent moins cher que les vulnérabilités phpBB, je n'accepte désormais plus les messages signés/chiffrés...
J'rigooooooole... (Copyright Borat)

... Mais je n'accepte plus les mails chiffrés non signés ou non-trustés (enfin si j'étais un vrai parano, c'est ce que je ferais) :)

lundi 11 décembre 2006

On ne tire pas sur une ambulance...

Ça doit faire bizarre de se réveiller un matin, d'ouvrir les yeux et se rendre compte de la vérité : le produit sur lesquel tu travailles avec amour depuis plus de cinq ans est tout pourri et y a rien à y faire. C'est un peu ce qu'a dû se dire Stefan Esser puisqu'il quitte l'équipe sécurité de PHP...

jeudi 7 décembre 2006

Asterixsm!

Hier soir, lorsque j'ai vu l'advisory CVE-2006-5444 portant sur Asterisk et son implémentation Skinny, je me suis dit : chouette, je vais pouvoir utiliser scapy et mon implémentation Skinny toute prête pour écrire l'exploit (un integer overflow entrainant un heap overflow).

Oui, sauf qu'y a vraiment pas besoin : le bug (pré-authentification s'il vous plait! Excusez moi du peu) porte sur le premier champ du protocole (la longueur du message) dans le premier segment de données, bref rien de passionnant, et y a surtout pas besoin d'utiliser scapy pour faire ça :)

Toujours est-il que je remercie les développeurs Debian pour asterisk_safe qui permet de relançer le daemon lorsqu'il est mort. C'est une excellente solution pour les... attaquants puisque avec le noyau de Debian Sarge par défaut, il n'y a pas de randomization des adresses et la GNU Libc 2.3.2 n'a pas les "mesures de protection" qui permet d'utiliser un simple unlink(). Pour exploiter ça, c'est finger-in-the-noise si on cherche pas à faire compliquer.

Si j'ai le temps, je porterai l'exploit dans Metasploit 3... Mais faut d'abord que je fiabilise mon-mien-tout-crade-mais-qui-marchouille...

Note : Ça fait tout de même mal aux yeux que ce soit le tout premier traitement appliqué au message qui soit exploitable aussi facilement, ça laisse perplexe sur la sécurité du reste... À auditer donc.

dimanche 3 décembre 2006

Deuxième effet de la loose

Je ne sais pas qui m'en veut mais je dois avoir une poupée voodoo à mon image et une personne n'arrête pas de jouer avec mon destin : j'enchaîne problèmes sur problèmes, aussi bien matériel et logiciel.
Un exemple ? Facile, la corruption de tout mon filesystem avant hier sachant que la seule chose que j'ai faite est de mettre à jour le noyau du 2.6.17 à un 2.6.19.
Je ne vois aucun message de plainte sur lkml donc j'imagine que c'est de ma faute, mais comment ? La machine n'a pas subit de tortures, je l'ai utilisé comme je l'utilise tous les jours depuis deux ans, etc.

Cette boue d'XFS a foutu en l'air tout /, m'empechant de faire quoi que ce soit. J'ai tout de même réussi à faire un xfs_check && xfs_repair (en les relancant plusieurs fois car j'ai des erreurs de segmentation...). Bien sûr, j'ai oublié mon lecteur CD-ROM au boulot, donc pas possible de booter sur un live-CD, arrrrrrrg!

kernel: Filesystem "hda1": XFS internal error xfs_da_do_buf(2) at line 2087 of file fs/xfs/xfs_da_btree.c.  Caller 0xc0220224
kernel:  xfs_corruption_error+0xf9/0x104
kernel:  xfs_da_read_buf+0x3b/0x3f
kernel:  kmem_zone_alloc+0x5a/0xad
kernel:  xfs_da_buf_make+0x27/0x120
kernel:  xfs_da_do_buf+0x73f/0x83f
kernel:  xfs_da_read_buf+0x3b/0x3f
kernel:  hrtimer_wakeup+0x0/0x1c
kernel:  xfs_da_read_buf+0x3b/0x3f
kernel:  xfs_da_node_lookup_int+0x8f/0x293
kernel:  xfs_da_node_lookup_int+0x8f/0x293
kernel:  xfs_dir2_node_lookup+0x41/0xb2
kernel:  xfs_dir_lookup+0xf9/0x11f
kernel:  soft_cursor+0x1f3/0x200
kernel:  bit_cursor+0x528/0x53d
kernel:  xfs_dir_lookup_int+0x40/0x103
kernel:  vn_hold+0x23/0x3e
kernel:  xfs_rename+0x200/0xcb6
kernel:  __d_lookup+0xbf/0x13c
kernel:  xfs_access+0x47/0x4f
kernel:  vfs_permission+0x20/0x24
kernel:  __link_path_walk+0xbe8/0xcd1
kernel:  xfs_vn_rename+0x49/0x84
kernel:  link_path_walk+0xc6/0xd0
kernel:  xfs_iunlock+0x61/0x87
kernel:  xfs_access+0x47/0x4f
kernel:  __mutex_lock_slowpath+0x1c4/0x1cc
kernel:  vfs_rename+0x226/0x3c6
kernel:  sys_renameat+0x179/0x1f8
kernel:  sys_rename+0x27/0x2b
kernel:  syscall_call+0x7/0xb
kernel:  =======================

Une chose est sûre, je réinstalle cette machine en ext3fs bientôt...

Update: : C'est un bug connu et référencé. Adieu XFS! C'est le deuxième bug de corruption de données cette année...