Tous les articles > FOSS > Dernières nouvelles et fonctionnalités de Canaille

Dernières nouvelles et fonctionnalités de Canaille

Nos dernières nouvelles

L'année 2024 s'est terminée avec de nombreux nouveaux développements sur Canaille, financés par NLNet ! Vous pouvez en lire plus à ce sujet sur l'article de blog dédié à ces développements. Nous avons poursuivi ces développements, toujours grâce au même financement. Lisez la suite pour en savoir plus !

Audit de sécurité et correctifs

Un audit de sécurité a été conduit par Radically Open Security courant février, avec pour objectif la découverte de potentielles failles dans notre produit, et l'implémentation de correctifs avant la fin mars.

Amélioration de la sécurité de la réinitialisation du mot de passe

L'ajout de la variable de configuration de flask TRUSTED_HOSTS (documentation ici) évite à nos liens magiques d'inscription et de réinitialisation de mot de passe d'être falsifiés par des hôtes malveillants.

Nous avons également amélioré la façon dont ces liens sont générés pour les rendre plus sécurisés et leur implémenter une durée de validité définie.

Vulnérabilité de récupération de logo

Nous avons corrigé une vulnérabilité qui aurait pu théoriquement permettre la falsification de requêtes serveur (SSRF) au moment de récupérer le logo de l'application.

Meilleure validation d'URL

La validation de l'adresse de site internet d'utilisateur a été améliorée, elle est mainteant plus restrictive.

Implémentation de la Content Security Policy

Content Security Policy (CSP) a été implémentée dans Canaille via Flask-Talisman. CSP rend notre application plus robuste, notamment face aux attaques "cross-site scripting" (XSS).

Certification OIDC

Le processus de certification OpenID a été beaucoup plus complexe que prévu pour notre équipe. Nous avons fait de nombreux progrès et implémenté de nombreuses fonctionnalités liées à OpenID, dans le but d'obtenir la certification et d'en faire passer les tests automatisés. Dans ce cadre, nous avons contribué et soulevé des issues chez Authlib, pour un meilleur support de la spécification OpenID en amont.

Nous avons notamment :

  • Implémenté la spécification sur la validation d'URIs de redirection
  • Mis à jour nos modèles pour implémenter les attribus requis par OIDC.
  • Affiché les liens vers les conditions d'utilisation et les politiques de confidentialité lorsque le client demandant l'autorisation nous les fournit.
  • Affiché la plupart des erreurs de requête en format JSON.
  • Implémenté les réponses au format JSON Web Token lorsque le client le requiert.
  • Amélioré la gestion des JWT et des JWKS de Canaille.

Paquets : Image Docker

Canaille peut être testé plus facilement grâce à la création d'une image docker, hébergée sur un répertoire public. Les utilisateurs peuvent découvrir Canaille avec un profil administrateur.

La création de cette image docker a été rendue possible par la construction d'un paquet nix.

Audit d'accessibilité et améliorations

Canaille a bénéficié d'un audit d'accessibilité conduit par HAN accessibility lab. Les résultats ont souligné plusieurs problèmes de contrastes ainsi qu'un manque de différenciation entre les liens et le texte non interactif, et quelques soucis de navigation au clavier.

Améliorations d'accessibilité

  • La plupart des soucis de contraste ont été corrigés.
  • La plupart des soucis de différentiation des liens et des éléments interactifs ont été corrigés.
  • Un lien d'évitement a été ajouté en haut de chaque page.

Approvisionnement SCIM

Canaille fournissait déjà une implémentation de serveur SCIM depuis notre dernière mise à jour de sécurité. Maintenant, l'application dispose également des fonctionnalités de client SCIM, permettant à une instance Canaille de propager automatiquement les changements d'utilisateurs et de groupes aux applications client. Cette fonctionnalité devrait rendre plus simple le maintien de la synchronisation entre toutes les applications sans plus d'intervention utilisateur.


Merci de nous avoir lu ! Nous vous tiendrons au courant de nos prochaines avancées, et vous pouvez dès maintenant lire nos autres contributions au logiciel libre dans nos articles de contributions saisonnières.