19
Juil

“C’est sécurisé, si si c’est marqué là !”

Après ce long silence voilà que j’affûte de nouveau mon clavier pour vous raconter une petite histoire qui j’espère vous amènera à avoir un regard critique sur la confidentialité de vos données.

Disclaimer: ce billet n’étonnera pas les acteurs du monde de la sécurité IT dont vous faites sans doutes partie, cela dit il s’adresse plutôt à tous les gens extérieurs à ce milieu.

Disclaimer bis: toute ressemblance avec un service de partage de fichiers existant serait évidemment purement fortuite.

Lorsque je lis le mot “sécurisé” sur la description d’un service en ligne payant, je repense toujours à ce magnifique documentaire de Striptease intitulé “Elle est nickel” (partie 1 et partie 2) dans lequel des magouilleurs belges tirent profit de la naïveté de leurs clients pour leur refourguer des voitures pourries mais bien polishées. Certains disent que je suis parano, moi je préfère parler de déformation professionnelle.

Mais revenons à nos moutons car je vous ai promis une histoire !

Lire la suite…

5
Déc

HELP ACIDBITCHEZ: un joli fail pour ProfFTPd

Bonjour à tous ! Je suis Snow Miser et je vais aider Heat Miser en écrivant quelques billets sur ce blog!

Pour mon premier billet, je vais vous parler de l’actualité récente et de la compromission du bien nommé : ProFTPD. Pour rappel, il s’agit d’un service FTP.

Lire la suite…

30
Nov

CMS: quelques conseils d’ami

Ce soir billet un peu technique, pour ceux qui ne comprendraient pas tout n’hésitez pas à commenter.

J’ai réalisé quelques audits de code / tests d’intrusion sur des CMS dotés d’extensions faites maison et force est de constater que des Web Agencies sérieuses ne sont pas vraiment au top quand il s’agit de développer de façon sécurisée !

Chers développeurs, chers clients, voici donc cinq conseils  pour que vos applications ne se fassent pas “trop” trouer !

1 – On ne touche pas au coeur du CMS:

Quand on développe pour un CMS, que ce soit Joomla, Typo3, Drupal ou autre, la première règle est de ne JAMAIS modifier le moteur de la solution.

Si cette règle n’est pas respectée votre application ne pourra plus être mise à jour facilement voir ne pourra pas être mise à jour du tout.

Si votre application nécessite un développement spécifique, la bonne pratique veut donc que l’on développe une extension / un module / un plugin !

2 – On met à jour régulièrement:

Un gros paquet de sites se font défacer (ou pire) juste à cause d’un manque de mise à jour.

La plupart des CMS proposent des systèmes de mises à jour internes (dans le backend généralement) pour le moteur et pour les extensions (pour peu qu’elles soient maintenues correctement).

Pensez donc à surveiller régulièrement et à mettre à jour si nécessaire, cela vous évitera de vous faire trouer par un gamin de 15 ans qui aura trouvé un exploit sur le net !

3 – On utilise l’API et on lit la doc:

Tous les CMS fournissent une API pour le développement des extensions… Bien souvent cette API est bien documentée et dotée de fonctions très pratiques…

Pensez donc à RTFM avant de vous jeter tête baissée dans le code, cela vous évitera de réinventer une roue carrée !

Quelques exemples:

  • Les fonctions filter_xss et db_query de Drupal permettent d’éviter les attaques XSS et les injections SQL
  • Typo3 fournit tout une classe pour effectuer les requêtes SQL avec plusieurs fonctions permettant d’éviter les injections SQL également
  • Joomla donne des conseils de “coding style” qui abordent également le sujet des injections SQL

Vous trouverez peut-être que j’insiste un peu trop sur les injections SQL mais cela me semble important tant je croise de développeurs qui n’ont pas été formés sur ces problématiques !

4 – On journalise:

La journalisation n’est pas à prendre à la légère, elle fait partie des problématiques sécurité standard: les critères DICP pour Disponibilité Intégrité Confidentialité et Preuve.

La journalisation entre dans la case preuve, car bien qu’elle serve le plus pour débugger les journaux sont bien pratiques quand il s’agit d’effectuer un audit post-mortem !

Si votre application se fait pirater, les journaux sont indispensables pour identifier les points d’entrées des attaquants et les corriger.

Ils peuvent également servir pour un éventuel dépôt de plainte. Pensez-y, cela n’arrive pas qu’aux autres…

5 – On valide les entrées utilisateurs:

Dernier conseil et pas des moindres car c’est là dessus que repose principalement la sécurité d’une application web: validez les entrées utilisateurs.

Dès que vous fournissez un point d’entrées aux utilisateurs, demandez vous:

  • Quel type de données est attendu
  • Est-ce que j’ai validé le contenu ? Est-il conforme à ce que j’attends ?
  • Est-ce que j’ai encodé le contenu avant de l’afficher ?

Bon dév à tous 🙂

27
Nov

Chiffrez vos données avec TrueCrypt (partie 2)

Après une semaine assez mouvementée professionnellement parlant je peux enfin reprendre ma série de sujets sur TrueCrypt.

Aujourd’hui je vais tâcher de vous présenter une fonctionnalité qui servira aux plus paranos / surveillés / agents secrets d’entre vous: les conteneurs TrueCrypt cachés.

Les prérequis sont les suivants:

C’est parti…

Lire la suite…

21
Nov

Empêcher le “directory listing” sur Apache

Bon ça commence mal, je manque sérieusement de temps pour “bloguer” comme je le voudrais…

Ce soir ce sera donc un petit post rapide:  je vous propose de vous protéger contre le “directory listing” !

Le “directory listing” c’est le nom barbare pour cette chose là :

Ouais bon vu comme ça, ça ne parait pas bien dangereux, certes ! Mais ça devient intéressant dans 2 cas de figures:

  1. quand le propriétaire de l’espace de stockage y met des données personnelles
  2. quand google met son nez dedans…

Un exemple étant toujours beaucoup plus parlant voilà ce qu’on peut trouver en quelques clics sur google (intéressez vous au mot clé “intitle”):

Mais on peut également trouver tout un tas d’informations marrantes et/ou flippantes: cartes d’identité, factures, mots de passe, numéros de cartes bleues…

Bon c’est bien beau, mais comment on s’en protège ?  Rien de plus simple (pour un serveur Apache).

Créez un fichier “.htaccess” avec le contenu suivant:

Options -Indexes

et placez le à la racine de votre site (dans le dossier “www” sur un hébergement mutualisé OVH) !

Voilà c’est tout…

Et pour ceux qui trouvent que le message d’erreur “403 Forbidden” d’Apache est aussi intéressant qu’un magasin d’alimentation en Roumanie sous Ceauşescu, libre à vous de tuner le message d’erreur en rajoutant la ligne suivante dans le fichier “.htaccess”

ErrorDocument 403 <Chemin vers la page d'erreur>

Enjoy 🙂

20
Nov

Chiffrez vos données avec TrueCrypt (partie 1)

On vit une époque formidable… Le média Rue89 a été cambriolé pour la 2ème fois en 1 an et des journalistes travaillant sur l’affaire Woerth / Bettencourt se sont fait voler leurs ordinateurs personnels à 1 semaine d’interval…

Coïncidence ? Peut-être, mais le risque de fuite d’informations sensibles mérite que l’on s’en protège.

Que vous soyez journaliste, professionnel manipulant des données sensibles, ou tout simplement un particulier soucieux de la confidentialité de ses données personnelles ce tuto est fait pour vous.

Lire la suite…

19
Nov

printf(‘Hello World!\n’);

Bonjour à tous,  et bienvenue sur mon blog !

Heat Miser

Il n’est pas vraiment difficile de démarrer un blog, mais le maintenir dans le temps est une autre paire de manche.

J’ouvre ce blog aujourd’hui par défi, par envie et par curiosité… nous verrons si je suis à la hauteur !

D’ici là je vous souhaite une bonne lecture tout en espérant que mes articles vous seront utiles.

Heat Miser

Celadon theme by the Themes Boutique