Articles précédents : Sécurité
- [68] talweg, une migration vers Mono
- [0] Appel à communication SSTIC 06
- [30] Anonymat avec des Logiciels Libres
- [19] Début du support de la sécurité pour Debian testing
- [194] Comment des vendeurs essaient de breveter les solutions à des failles de sécurité qui leur sont fournies
- [0] La troisième édition du concours de sécurité informatique « Challenge SecuriTech » se déroulera du 11 juin au 1er juillet 2005.
- [23] Faille de sécurité dans les protocoles IPSec
- [11] Le projet PaX compromis
- [47] Nouvelle faille dans les noyaux 2.4 et 2.6
- [99] Deux failles de sécurité pour les noyaux Linux 2.4.x et 2.6.x
Liens connexes
- Le dossier sur Secuobs (618 hits)
- La page de BSS (266 hits)
- PoC hcidump (163 hits)
- PoC Sony/Ericsson (177 hits)
- Le site du protocole Bluetooth (139 hits)
Dépêche modérée par
Sécurité : Sortie d'un utilitaire de fuzzing Bluetooth BSS v0.6
Posté par oumpa. Modéré le 07 février 2006.D'après les tests effectués par l'équipe de ce site, plusieurs éléments mobiles sont faillibles aux opérations de fuzzing. Cet utilitaire développé par Pierre Betouin de la société Infratech a été placé sous licence GPL.
On notera parmi les résultats la présence d'un Déni de Service dans la version 1.29 de hcidump, mais également dans la pile Bluetooth de plusieurs téléphones portables des marques Sony/Ericsson, Samsung et Nokia. Les fonctions Bluetooth avaient été activées, ce qui n'est pas le cas par défaut sur ces appareils.
Le dossier sur Secuobs (618 hits)
La page de BSS (266 hits)
PoC hcidump (163 hits)
PoC Sony/Ericsson (177 hits)
Le site du protocole Bluetooth (139 hits)
> Lire la suite (6 commentaires, moyenne: 5,2). [dépêche : 734 caractères]
Deux codes de type PoC (Proof of Concept) sont disponibles ; ces codes permettent de démontrer de la faisabilité de ces failles hors utilisation de BSS.
Le protocole Bluetooth semble avoir été plutôt bien développé d'un point de vue sécurité, ses implémentations rapides ne sont malheureusement pas toujours de la même facture. Conseil de l'auteur, n'activez ces fonctions que lorsque vous en avez besoin.
Fuzzing, une technique très intéressante
Bien que je ne l'ai jamais essayée, je trouve la technique du « fuzzing » très intéressante. Effectivement, tous les rapports de fuzzing que j'ai lu montraient des plantages dans la majorités des logiciels testés (tous dans certains cas). Pour ceux qui ne connaissent pas, le fuzzing consiste à envoyer des données plus ou moins aléatoires (l'idéal étant d'être proche du protocole mais en faisant varier les paramètres aléatoirement) à un programme et attendre sa réaction :-) Cela permet de rapidement (enfin, disons que c'est moins éreintant que la rétro-ingénierie) trouver des erreurs de programmation qui peuvent se révéler être des failles de sécurité.
La magasine MISC numéro 22 (Jan/Fév 2006) y consacre un article de 8 pages très intéressant (fuzzing de client IRC, de navigateur web, le lecteurs multimédias, etc.). Je me demande si les personnes qui utilisent ces outils remontent les erreurs aux auteurs des logiciels…
Haypo qui espère ne pas avoir dit trop de bétises
-
[^]Re: Fuzzing, une technique très intéressante
Posté par rangzen (page perso, ) le 08/02/2006 à 08:08. (lien). Évalué à 5.Ben, pour la remonté d'erreur, j'ai rien vu passer sur la ML de bluez ...
-
[^]Re: Fuzzing, une technique très intéressante
-
-
[^]Re: Fuzzing, une technique très intéressante
Posté par oumpa () le 08/02/2006 à 08:43. (lien). Évalué à 5.Une meilleure formulation de la question peut être, pourquoi les auteurs de logiciels ne développent pas ce genre d'outils pour tester leurs logiciels eux même ? Ou pourquoi ils n'utilisent pas les outils disponibles pour le faire en les adaptant un minimum ?
-
[^]Re: Fuzzing, une technique très intéressante
Posté par Benoît Sibaud (Jabber id, page perso, ) le 09/02/2006 à 10:45. (lien). Évalué à 5.A priori je dirais parce que les développeurs n'ont pas le temps, l'envie ou la connaissance pour faire des tests unitaires (tester un bout du code), d'intégration (mettre bout à bout les différentes parties), du système (tester l'intégration de l'ensemble), de régression (la nouvelle version n'est pas pire que l'ancienne), de charge (comportement en multipliant les utilisations simultanéesi, ou en augmentant la taille des données à traiter), de performance (rapidité du logiciel dans une situation donnée), de stress (soumettre des données atypiques ou erronées pour étudier la robustesse), de sécurité (rechercher des problèmes de sécurité dans le code ou l'algorithme), d'installation (le logiciel s'installe correctement et sur toutes les configurations logicielles et matérielles souhaitées), d'utilisabilité (mesurer comment le logiciel permet bien aux utilisateurs de faire ce pour quoi il est fait), de stabilité, d'acceptation par l'utilisateur, de conformité (respect de normes, formats, protocoles, etc.), de couverture (chaque ligne de code est testée, ou recherche de code inutile), etc., etc.
Globalement un projet parfait pour un hacker pur nécessiterait un temps quasi infini (et je passe sur les blagues sur hacker vaillant rien d'impossible).
Parfois les développeurs font une partie de ces tests sur leur projet, parfois un type motivé lance un type de tests sur plein de projets (genre recherche d'une faille de sécu donnée sur l'intégralité des sources du projet Debian), parfois un organisme écrit un papier sur tel ou tel sujet et réalise un audit de divers projets, mais globalement tous les tests ne sont pas réalisés sur tous les projets, cela nécessiterait probablement un temps infini, un argent infini, un nombre infini de développeurs, un nombre infini d'ordi. et personne n'a trouvé « La méthode pour trouver des vies infinies dans les jeux qui sont trop difficiles sinon (LMPTDVDLJQSTDS) » (référence cachée).-
[^]Re: Fuzzing, une technique très intéressante
Posté par oumpa () le 09/02/2006 à 21:16. (lien). Évalué à 1.C'est quand même dommage ce peu de considération pour l'utilisateur final, les solutions commerciales propriétaires sont souvent vendues suffisament chères pour embaucher des personnes spécialisées qui ont cette envie et les connaissances nécessaires en plus des développeurs "réguliers".
Je ne parle pas içi des logiciels libres, le concept est différent sur le fond à l'exception peut être de ceux qui en tirent un profit. Si on ne peut pas garantir le résultat, on peut tout au moins engager les moyens.
Ca me fait penser à "certaines" banques qui préfèrent se payer une bonne assurance plutôt que d'auditer sérieusement leur application parceque ça leur coûte moins cher finalement.
C'est certain que la sécurité d'une application pour être optimale est un puit sans fond, mais on observe quand même assez régulièrement le non respect des rêgles de base pour des solutions qui une nouvelle fois sont achetées à un prix non négligeable pour la plupart.
Sans parler de ceux qui basent leur argumentation commerciale sur la pseudo-sécurité de leur applicatif ... "unbreakable" (référence non cachée)
-
-




Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.