GNU/Linux Magazine Hors-série N°
Numéro
97

Les bonnes pratiques du développement sécurisé

Temporalité
Juillet/Août 2018
Image v3
Dossier : Les bonnes pratiques du développement sécurisé
Article mis en avant

Dans ce numéro...


Des virus et ransomware circulent de par le monde, ce n'est un secret pour personne. En 2017, deux cyberattaques ont été mises en avant : WannaCry en mai et NotPetya en juin. Adylkuzz qui opérait durant la même période n'a par exemple pas ou peu été cité.
GitHub lance son Learning Lab
Voici une sélection d'ouvrages pour la plupart récemment sortis ou sur le point de sortiret qui ont attiré notre attention.
Quel développeur ne connaît pas l’OWASP Top10 ? Il semble qu’en 2018 un nombre encore trop important ne le connaît pas, ou mal. Je vous propose donc de vous détailler ce référentiel pour faire en sorte que vos applications web disposent d’un niveau de sécurité considéré suffisant.
La version 10 de PostgreSQL est sortie depuis quelques mois, il est temps de faire un tour des nouvelles fonctionnalités et des changements majeurs. Ce premier article va discuter de différents points particulièrement intéressants, mais les trois grosses nouveautés, à savoir le partitionnement, la réplication logique et les améliorations au niveau performance et supervision seront abordées chacune dans leur propre article.
Les navigateurs web se livrent depuis quelques années une nouvelle guerre, axée principalement autour des performances de leur moteur JavaScript. Tous les navigateurs modernes utilisent désormais une compilation JIT pour accélérer le JavaScript. Mais qu'est-ce que c'est, comment ça marche et quelles en sont les implications ?
Intégrer correctement l’ensemble des aspects sécurité dans un cycle de développement logiciel requiert une certaine maturité et des efforts conséquents. C’est à ce prix que nous pouvons avoir confiance dans la qualité des services développés. Nous présenterons dans cet article un état de l’art sur le sujet et nous décrirons l’ensemble des aspects qui entre en ligne de compte tout en s’efforçant d’apporter un retour d’expérience.
Python est un langage pratique, car de haut niveau et permettant donc de coder plus rapidement. Il ne faut pas pour autant oublier la sécurité du code, certaines fonctions étant particulièrement vulnérables...
Les problématiques liées à la sécurité, sans surprise, ne font que se multiplier depuis plusieurs années. Java étant une technologie très utilisée pour le développement d’applications « Web » , la machine virtuelle, à la base de sa technologie, a donc été plusieurs fois victime de ses faiblesses en termes de sécurité. Ceci soulève parfois le doute quant à la fiabilité des applicatifs déployés sur la plateforme. Pourtant, cette machine virtuelle dispose d’un modèle de sécurité très robuste, basé sur son fameux gestionnaire de sécurité et qui offre une grande protection contre l’exploitation de failles au sein des applicatifs. Malheureusement, celui-ci n’est que peu trop souvent utilisé en protection. Faisons donc un petit tour de ses fonctionnalités pour bien comprendre en quoi celle du langage est une arme essentielle contre les attaques informatiques.
CSP définit une politique de sécurité de contenu de l'application web, qui fixe les listes des sources de confiance pour ses ressources (scripts, styles, images, etc.). Le navigateur bloque les téléchargements vers les sources non autorisées, ce qui élimine des attaques côté client, telles que le XSS.
L'évaluation de la sécurité d'une application web n'est pas chose aisée. Les technologies et frameworks se multiplient et la pression sur la mise en production des applications augmente. Dans cet environnement actuel, il devient de plus en plus difficile de s'assurer qu'aucun défaut de sécurité ne sera présent lors de la mise en production. Cet article a pour but de présenter les différents outils (libres et gratuits), ainsi que les techniques pouvant être utilisées pour identifier les faiblesses de sécurité que l'on rencontre fréquemment en audit.
Développer du code de manière sécurisée est une tâche complexe qui demande une attention de chaque instant. C’est d’autant plus vrai dans des langages relativement bas niveau comme le C, où les erreurs peuvent mener à des corruptions de la mémoire avec de graves conséquences sur la sécurité. Cependant, les compilateurs modernes offrent de nombreuses options pour détecter des comportements erronés et vous alerter de l’existence possible de problèmes dans votre code. Cet article présente certaines de ces options, qui vous aideront à produire du code de meilleure qualité et plus sécurisé, pour un effort modéré.
Malgré son nom, Frama-C n'est pas un énième clone libre d'une solution reconnue éditée par Framasoft. Il s'agit d'un framework d'analyse et de preuve de code C, doté d'une interface graphique facilitant son utilisation. Cet article permettra de se familiariser avec cet outil pour que vous vous assuriez que vos programmes font bien ce que vous attendez d'eux.
Clémentine est chercheuse au CNRS et s'intéresse aux attaques sur la micro-architecture. Elle a accepté de répondre à nos questions et de nous éclairer sur son domaine de recherche.
On sait tous que chaque avion est systématiquement équipé d’une boîte noire et on est évidemment conscient de l’utilité de cette dernière essentiellement lors d’un crash. Peut-on équiper nos processus d’une boîte noire qui conserve les conditions d’un crash ?Les coredumps, que l’on va étudier tout au long du présent article, jouent un rôle semblable à celui d’une boîte noire pour les binaires exécutables qu’on va lancer. On vous invite à découvrir et à profiter de ces fichiers binaires.

Magazines précédents

Les derniers articles Premiums

Les derniers articles Premium

Cryptographie : débuter par la pratique grâce à picoCTF

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’apprentissage de la cryptographie n’est pas toujours évident lorsqu’on souhaite le faire par la pratique. Lorsque l’on débute, il existe cependant des challenges accessibles qui permettent de découvrir ce monde passionnant sans avoir de connaissances mathématiques approfondies en la matière. C’est le cas de picoCTF, qui propose une série d’épreuves en cryptographie avec une difficulté progressive et à destination des débutants !

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Raspberry Pi Pico : PIO, DMA et mémoire flash

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Le microcontrôleur RP2040 équipant la Pico est une petite merveille et malgré l'absence de connectivité wifi ou Bluetooth, l'étendue des fonctionnalités intégrées reste très impressionnante. Nous avons abordé le sujet du sous-système PIO dans un précédent article [1], mais celui-ci n'était qu'une découverte de la fonctionnalité. Il est temps à présent de pousser plus loin nos expérimentations en mêlant plusieurs ressources à notre disposition : PIO, DMA et accès à la flash QSPI.

Body