Comment avoir un aide-mémoire sur un sujet précis ? Demandez à une (ou plusieurs) IA. Ici j’avais envie de me rafraîchir la mémoire au sujet des JSON token, et voici un mini tutoriel sur github avec des exemples en Python !
Archives de catégorie : Développement & AppSec
JSON Web Token
Les JSON Web Tokens (ou JWT) sont des moyens d’échanger de façon sécurisée des données entre deux parties. Tout dépend ensuite de ce qu’on attend par sécurisé…
Continuer la lectureCI/CD
Continuous ceci, continuous cela… A quoi ça rime ? Ou plutôt à quoi ça rythme ? Car l’intégration continue et le déploiement continu sont une question de rythme, oserai-je dire.
Continuer la lectureInformatique continue
Je n’avais pas envie de faire deux articles, un pour l’intégration continue, l’autre pour le déploiement continu. D’autant qu’on peut faire du continu sur un peu toutes les étapes d’un projet informatique, ça n’est qu’une question d’outillage.
Continuer la lectureDevSecOps
Pas de stratégie DevSecOps possible sans une forte culture CI/CD dans l’entreprise, une plate-forme cloud ou On-Premise qui fonctionne et une automatisation à outrance des outils de test, de build et de déploiement.
Il est essentiel de ne plus penser à intégrer la sécurité dans les projets mais dans le cycle de vie des applications (SDLC).
Bertrand Méens, CTO de l’entreprise Oskab
Sources
Qui compile le compilateur ?
Imaginons que je sois un méchant, ou que je cherche à avoir accès à votre système (ou vos informations) quoi que vous fassiez. Quelle serait ma cible ? Réponse : un programme incontournable.
Continuer la lectureAPI
Ce que c’est…
https://app.pluralsight.com/library/courses/designing-restful-web-apis/table-of-contents
https://dzone.com/articles/top-10-api-security-threats-every-api-team-should
Attaques
- https://www.lemondeinformatique.fr/actualites/lire-les-api-cible-des-tentatives-d-authentification-dans-les-services-financiers-78174.html
- https://threatpost.com/akamai-on-credential-stuffing-attacks/153654/
Selon l’OWASP (et JDN)
- Vérifier les autorisations au niveau de chaque objet
- Soigner l’authentification utilisateur
- Sélectionner les données à afficher
- Limiter les ressources et le débit
- Modérer la granularité des accès
- Eviter les affectations de masse
- Vérifier la configuration de la sécurité
- Anticiper les injections de code
- Bien gérer et inventorier ses actifs
- Mettre en place une gestion des logs efficace
REST ou RESTful ?
Selon ChatGPT, les termes « API REST » et « RESTful » sont souvent utilisés de manière interchangeable, mais il y a une différence subtile entre les deux.
Une API REST (Representational State Transfer) est une interface de programmation d’application qui suit les principes de l’architecture REST. Elle utilise des méthodes HTTP telles que GET, POST, PUT et DELETE pour effectuer des opérations sur des ressources identifiées par des URL.
D’un autre côté, « RESTful » est un terme utilisé pour décrire une API qui est conçue conformément aux principes de REST, qui incluent notamment l’utilisation de verbes HTTP, l’utilisation d’URLs pour identifier les ressources, l’utilisation de formats de données standardisés (tels que JSON ou XML), et l’indépendance de l’état du serveur.
En résumé, une API REST est une API qui suit l’architecture REST, tandis qu’une API RESTful est une API qui suit les principes de REST de manière stricte et cohérente.
Ressources
- https://auth0.com/blog/securing-aws-http-apis-with-jwt-authorizers/
- 10 points de contrôle pour vérifier la sécurité de ses API (journaldunet.com)
A voir : problématiques de sécurisation d’API OIDC, OAuth2
- https://api-by-octo.octo.com/
- https://blog.octo.com/designer-une-api-rest/
- https://www.octo.com/publications/29-api-security-principles/
- https://www.securityweek.com/grammatech-releases-open-source-api-security-tool
- Rapid API Creation with AWS Amplify
- https://dzone.com/articles/api-authentication-methods-an-overview
- https://developer.okta.com/blog/2020/12/17/build-and-secure-an-api-in-python-with-fastapi
Sécurisation
WordPress
Etant le CMS (Content Management System) le plus répandu, il est fatalement intéressant pour des attaquants. Cela étant, les développeurs ont l’air de faire sérieusement leur boulot, et c’est plutôt du côté des plugins qu’il faut voir les risques.
Continuer la lectureGo (lang)
Go est le langage créé par Google. Il rassemble aussi des concepts intéressants, comme Rust, et il est également compilé.
Continuer la lectureRust
Quelques points importants sur le langage Rust, qui est un langage compilé (donc rapide) et orienté objet (ce qui est bôf).
Continuer la lectureDéveloppement
Plutôt que de réinventer la roue (et mal), voici le guide de la CNIL à destination des développeurs.