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