February 29 - March 2, 2012
Montreal, Canada

Sécurité Web PHP

L’avancement du PHP et de ses différents cadre d’applications disponibles permet maintenant de créer des applications stables et sécuritaires. Cependant, plusieurs détails et bonne pratiques doivent être appliqués dans le but d’obtenir une application sécuritaire comme résultat final. Souvent, on oublie et parfois la bonne solution n’est pas évidente.

Cet atelier amènera le participant à connaître les différentes méthodes de programmation sécuritaire en PHP ainsi que dans Drupal, Symfony et Zend. Le tout sera transmit avec une emphase sur l’impact d’une attaque, puisque chaque risque sera démontré avec une simulation. L’objectif final est donc d’apprendre comment briser et réparer une application Web PHP dans la réalité d’aujourd’hui.

Le participant cible est parmi les développeurs PHP qui ne sont pas déjà conscient des méthodes sécuritaires et/ou veulent un aperçu de la perspective d’un attaquant.

Introduction

  • Vue d’ensemble rapide de la gestion des risques
  • Qu’est-ce qu’une faille et comment elle devient une vulnérabilité?
  • Préparations des outils à utiliser
  • Directives générales à propos des correctifs
  • Les tests et pourquoi vous pouvez en faire plus que n’importe qui
  • Solution du bout de code présenté dans la section “Participant cible”

Trouver et corriger les vulnérabilités

Cette partie sera itérative sur tous les sujets durant la journée. PHP, Drupal, Symfony, Zend:

  • Faille: Trouver et comprendre une faille dans le code
  • Attaque: Exploitation guidée d’une vulnérabilité trouvée
  • Solution: Ce qu’il faut faire pour la corriger
  • Vérification: Effectuer des tests pour s’assurer que la faille est corrigée

Par exemple, nous exploiterons une faille implémenté en Drupal qui permet d’accéder à la base de donnée et par la suite nous allons corriger l’erreur dans le code, pour finalement vérifier que la vulnérabilité n’est plus présente.

Conclusion

  • Revue des directives pour chaque technologie
  • Comment vous pouvez aider avec la gestion des risques
  • Questions et réponses générales

Participant cible

Le participant cible est parmi les développeurs PHP qui ne sont pas déjà conscient des méthodes sécuritaires et/ou veulent un aperçu de la perspective d’un attaquant.

Si vous savez comment exécuter le code ci-dessous sans aucune erreur, notice ou avertissement en moins de deux minutes, cette formation n’est peut-être pas pour vous.

<?php

$parts = array('PHP', 'Drupal', 'Symfony', 'Zend');

foreach ($parts as $p) {
        echo $p;
        eval($_GET['Faille'] . $p);
        mysql_query($_GET['Attaque'] . $p);
        file_get_contents($_POST['Solution'] . $p);
        if (system($_COOKIE['Verification'] . $p))
                continue;
        else
                exit;
}

?>

Détails de la formation

  • Durée: 1 journée (lundi, 27 février)
  • Coût: 400$
  • Capacité maximale: 8
  • Matériel requis: un ordinateur portatif possédant un lecteur DVD et une connexion réseau

Jonathan Marcil

Jonathan is part of the collective that published the Threat Modeling Manifesto in 2020 and just released Threat Modeling Capabilities in 2024. He is passionate about Application Security and enjoys architecture analysis, code review, threat modeling and debunking security tools. Jonathan holds a bachelor's degree in Software Engineering from ETS Montreal and has 20 years of experience in Information Technology and Security.

Read More

Presented by

Sponsored by

Media