Je ne sais pas si cela arrive uniquement quand on est amené à donner une conférence, mais le voyage de Montréal à Portland m'a donné une excellente illustration pour mes slides de sécurité pour demain.
Le système vidéo sur Air Canada est géré sur Windows : il est facile de le devenir à la vue du curseur qu'on utilise sur les écrans personnels. Hormis à l'occasion d'un redémarrage (lors d'un autre vol), il n'y avait aucune indication sur les technologies utilisées. Jusqu'à hier, où l'écran suivant s'est affiché devant moi :
Et, plus en détail, cela donne ceci :
En fait, le système est géré par PHP et MySQL, et on dispose en fait d'un navigateur devant nous, pour naviguer dans les différents film. Comment on le devine ici?
L'écran est en fond noir, et les messages d'erreurs PHP sont affichés par le serveur : au niveau sécurité, noir sur noir (et avec un petit écran à cristaux liquides), il devient impossible de lire ou de devenez la présence des messages, ni celle de PHP. Là encore, un peu d'habitude permet de percer le mystère. Tous les messages PHP sont affichés en noir, sauf... les liens. PHP produit des liens quand la directive docref_root est activée : quand une erreur est affichée, PHP fournit aussi le lien sur www.php.net, pour aider la malheureuse victime à comprendre comment résoudre son problème.
C'est une approche qui a été ajoutée en 2002, et rapidement retiré en 2003 : le site de PHP.net recevait la visite de nombreux débutants qui ne comprenaient pas comment s'en sortir. Mais il semble que Air Canada continue de l'utiliser...
Remontons maintenant la pente. Grâce à ces quelques informations, nous savons : + le système video de Air Canada utilise PHP, MySQL et un navigateur Windows. + les erreurs sont affichées, quoique masquées par un simple fond noir + les liens vers php.net sont actifs, ce qui n'est plus le cas par défaut depuis 2003.
J'ai pu tester les liens, et obtenir une belle page toute noire (hormis une ligne blanche en travers de l'écran). Je pense que le navigateur m'emenait effectivement sur php.net, mais étant en vol, et sans connexion internet, cela a donnée une page 404, habilement masquée par le fond noir. La sécurité par les CSS est donc effective!
Pour en arriver à ce stade, il fallait que le système vidéo soit sérieusement instable, et je me suis attiré les foudres de mon jeune voisin qui tentait désespérement d'avoir un reboot complet du système tandis que je me dépêchais pour pouvoir prendre des photos de l'écran dans des conditions correctes. Le pilote annoncait un redémarrage qui prendrait 25 minutes, et qui ne valait pas la peine avec encore 50 minutes de vol. J'aimerai savoir d'où provient cette durée : relancer 200 navigateurs IE, un serveur Web et MySQL prend 25 minutes? Ou bien restait-il encore suffisamment d'écrans fonctionnels pour ne pas les déranger?
En conclusion, on trouve PHP et MySQL vraiment partout, y compris sur en vol. Ceux qui ne comprennent pas comment PHP 5 n'est pas plus populaire peuvent interroger Air Canada pour savoir comment se fait-il qu'ils utilisent une version de 2003 sur des vols de 2008. Surtout que j'ai raté la fin de mon film (10000 BC, et finalement, c'est peut être pas plus mal).
Autrement, je suis bien arrivé sur Portland, et OSCON commence aujourd'hui. La salle du petit déjeuner est immense, et présuppose une très large audiance pour mon atelier de sécurité. Je vais peut-être ajouter une ou deux vulnérabilités pour faire bonne mesure. :)
| < Précédent | Suivant > |
|---|
Vous pouvez ajouter votre commentaire! |



(en panorama)