Blog

Les codeurs conquièrent la sécurité : Share & Learn Series - Contrôle d'accès brisé

Jaap Karan Singh
Publié le 09 mai 2019

Lorsque vous créez une application professionnelle, qu'elle soit destinée à un usage interne ou à un usage externe par vos clients, vous ne permettez probablement pas à chaque utilisateur d'exécuter toutes les fonctions. Si c'est le cas, vous risquez d'être vulnérable à un contrôle d'accès défaillant.

Voyons ce qu'est un contrôle d'accès défaillant, pourquoi il est si dangereux et comment y remédier.

Comprendre le contrôle d'accès défaillant

Un contrôle d'accès défaillant se produit lorsque le code de l'application ne comporte pas les contrôles de sécurité ou d'accès appropriés. Il peut également se produire lorsqu'une application est mal configurée d'une manière ou d'une autre, permettant l'accès à des fonctions ou à des pages auxquelles l'utilisateur ne devrait pas avoir accès.

Si vous gérez les finances de votre entreprise, vous avez peut-être la possibilité de déposer de l'argent sur certains comptes ou de transférer de l'argent entre les comptes de votre entreprise. En revanche, vous ne devez pas avoir le droit de retirer de l'argent de ces comptes ou de transférer de l'argent vers d'autres comptes. Si les contrôles d'accès appropriés ne sont pas présents, vos employés peuvent être en mesure d'exécuter plus de fonctions que nécessaire.

Ces contrôles peuvent être effectués dans le code ou dans les fichiers de configuration. Par exemple, il peut y avoir des fichiers de configuration XML qui indiquent au cadre de l'application web quels utilisateurs sont autorisés à accéder à quelles pages. Cela permet de s'assurer que les utilisateurs ne peuvent accéder qu'aux fonctions qu'ils sont autorisés à utiliser.

Pourquoi un contrôle d'accès défaillant est dangereux

Prenons l'exemple suivant : Un attaquant s'est rendu compte que votre code de création de compte utilisateur peut être manipulé, ce qui lui permet de créer un utilisateur admin avec une simple requête post. Il peut envoyer une requête avec le nom d'utilisateur et le mot de passe, puis les modifier en cours de route pour inclure le rôle d'administrateur dans l'URL en tant que paramètre ou dans le corps de la requête. L'attaquant se connecte à l'application et obtient instantanément les droits d'administrateur.

Il n'est pas toujours nécessaire qu'un attaquant malveillant pénètre dans un système. En l'absence de contrôles d'accès appropriés, des informations sensibles qui ne devraient pas être partagées entre les services peuvent être divulguées. Imaginez que n'importe quel employé de l'entreprise puisse consulter les données salariales ou financières des ressources humaines. Que se passerait-il si n'importe quel employé pouvait voir que des licenciements sont à venir en raison de la mauvaise situation financière de l'entreprise ? Cela pourrait nuire à votre moral et à la réputation de votre entreprise.

Les informations sensibles des clients peuvent également être perdues. Les entreprises stockent souvent des informations personnelles sur les clients qui utilisent leurs services. Veillez à ne pas exposer accidentellement ces informations en raison d'un manque de contrôle d'accès. Par exemple, si votre système permet aux utilisateurs de demander leur dossier médical, ont-ils également la possibilité de demander et de consulter les informations médicales d'autres personnes ? Si l'URL contient un numéro d'identification de client, les attaquants pourraient incrémenter ce numéro d'identification de client encore et encore jusqu'à ce qu'ils en trouvent un qui corresponde à un autre client, révélant ainsi leurs données personnelles.

Défier le contrôle d'accès défaillant

Le contrôle d'accès basé sur les rôles (RBAC) est un outil très efficace pour mettre en œuvre un contrôle d'accès solide. Ceux qui utilisent Active Directory connaissent peut-être l'idée de créer des groupes et d'accorder l'accès à certains éléments à l'ensemble du groupe, plutôt qu'à l'individu. Les applications fonctionnent de la même manière, en utilisant des rôles pour définir qui est autorisé à voir quoi.

Cela présente deux avantages. Premièrement, il n'est pas nécessaire de modifier une fonction lorsque quelqu'un quitte le rôle d'administrateur. Si quelqu'un était auparavant administrateur et ne doit plus l'être, il vous suffit de placer une nouvelle personne dans le rôle d'administrateur et de retirer la personne précédente de ce rôle. Le code vérifie si l'utilisateur a le rôle d'administrateur au lieu de vérifier si chaque utilisateur a accès à une certaine page ou fonction.

Le deuxième avantage est d'éviter un cauchemar en matière de maintenance. Un contrôle d'accès si granulaire que chaque personne est associée à toutes les fonctions ou pages possibles sera impossible à gérer au fil du temps. Les rôles facilitent grandement les choses, car plusieurs personnes peuvent être ajoutées à un rôle. Un rôle peut inclure l'ensemble de l'entreprise, tandis qu'un autre peut n'inclure que cinq personnes. Cela rend la gestion des rôles plus efficace, car il y aura moins de rôles à gérer. Une entreprise de 10 000 personnes pourrait n'avoir que 100 rôles au lieu de 10 000 fois le nombre de fonctions de votre application. Faites des recherches sur le cadre d'application que vous avez choisi pour voir quelles sont les options disponibles pour un contrôle d'accès robuste.

Il est également essentiel d'utiliser un contrôle d'accès au niveau des fonctions. Protégez l'accès à toutes les fonctions en exigeant des utilisateurs qu'ils passent certains contrôles d'accès. Utilisez le principe du moindre privilège, en refusant l'accès par défaut et en ne l'autorisant qu'en cas de besoin. Il peut être difficile de se rappeler de mettre en place un contrôle d'accès pour chaque fonction. Utilisez un composant central pour gérer et appliquer le contrôle d'accès.

Protégez vos fonctions sensibles

Un contrôle d'accès défaillant peut rendre vos données et votre application vulnérables aux attaques et à l'exploitation. Les données des clients qui ne sont pas protégées correctement peuvent conduire à une violation massive des données, nuisant à votre réputation et à votre chiffre d'affaires.

Un contrôle d'accès défaillant peut également conduire à la prise de contrôle d'un compte si les attaquants sont en mesure d'accéder à des fonctionnalités auxquelles ils ne devraient pas avoir accès. En utilisant un contrôle d'accès fonctionnel approprié, vous protégerez votre application contre les attaquants malveillants et même contre les initiés accidentels.

Vous pensez maîtriser l'accès fonctionnel ? Vous pouvez vous mettre au défi de réparer un contrôle d'accès défectueux dès maintenant : [Commencez ici]

Voir la ressource
Voir la ressource

Lorsque vous créez une application professionnelle, qu'elle soit destinée à un usage interne ou à un usage externe par vos clients, vous ne permettez probablement pas à chaque utilisateur d'exécuter toutes les fonctions. Si c'est le cas, vous risquez d'être vulnérable à un contrôle d'accès défaillant.

Vous souhaitez en savoir plus ?

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démonstration
Partager sur :
Auteur
Jaap Karan Singh
Publié le 09 mai 2019

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Partager sur :

Lorsque vous créez une application professionnelle, qu'elle soit destinée à un usage interne ou à un usage externe par vos clients, vous ne permettez probablement pas à chaque utilisateur d'exécuter toutes les fonctions. Si c'est le cas, vous risquez d'être vulnérable à un contrôle d'accès défaillant.

Voyons ce qu'est un contrôle d'accès défaillant, pourquoi il est si dangereux et comment y remédier.

Comprendre le contrôle d'accès défaillant

Un contrôle d'accès défaillant se produit lorsque le code de l'application ne comporte pas les contrôles de sécurité ou d'accès appropriés. Il peut également se produire lorsqu'une application est mal configurée d'une manière ou d'une autre, permettant l'accès à des fonctions ou à des pages auxquelles l'utilisateur ne devrait pas avoir accès.

Si vous gérez les finances de votre entreprise, vous avez peut-être la possibilité de déposer de l'argent sur certains comptes ou de transférer de l'argent entre les comptes de votre entreprise. En revanche, vous ne devez pas avoir le droit de retirer de l'argent de ces comptes ou de transférer de l'argent vers d'autres comptes. Si les contrôles d'accès appropriés ne sont pas présents, vos employés peuvent être en mesure d'exécuter plus de fonctions que nécessaire.

Ces contrôles peuvent être effectués dans le code ou dans les fichiers de configuration. Par exemple, il peut y avoir des fichiers de configuration XML qui indiquent au cadre de l'application web quels utilisateurs sont autorisés à accéder à quelles pages. Cela permet de s'assurer que les utilisateurs ne peuvent accéder qu'aux fonctions qu'ils sont autorisés à utiliser.

Pourquoi un contrôle d'accès défaillant est dangereux

Prenons l'exemple suivant : Un attaquant s'est rendu compte que votre code de création de compte utilisateur peut être manipulé, ce qui lui permet de créer un utilisateur admin avec une simple requête post. Il peut envoyer une requête avec le nom d'utilisateur et le mot de passe, puis les modifier en cours de route pour inclure le rôle d'administrateur dans l'URL en tant que paramètre ou dans le corps de la requête. L'attaquant se connecte à l'application et obtient instantanément les droits d'administrateur.

Il n'est pas toujours nécessaire qu'un attaquant malveillant pénètre dans un système. En l'absence de contrôles d'accès appropriés, des informations sensibles qui ne devraient pas être partagées entre les services peuvent être divulguées. Imaginez que n'importe quel employé de l'entreprise puisse consulter les données salariales ou financières des ressources humaines. Que se passerait-il si n'importe quel employé pouvait voir que des licenciements sont à venir en raison de la mauvaise situation financière de l'entreprise ? Cela pourrait nuire à votre moral et à la réputation de votre entreprise.

Les informations sensibles des clients peuvent également être perdues. Les entreprises stockent souvent des informations personnelles sur les clients qui utilisent leurs services. Veillez à ne pas exposer accidentellement ces informations en raison d'un manque de contrôle d'accès. Par exemple, si votre système permet aux utilisateurs de demander leur dossier médical, ont-ils également la possibilité de demander et de consulter les informations médicales d'autres personnes ? Si l'URL contient un numéro d'identification de client, les attaquants pourraient incrémenter ce numéro d'identification de client encore et encore jusqu'à ce qu'ils en trouvent un qui corresponde à un autre client, révélant ainsi leurs données personnelles.

Défier le contrôle d'accès défaillant

Le contrôle d'accès basé sur les rôles (RBAC) est un outil très efficace pour mettre en œuvre un contrôle d'accès solide. Ceux qui utilisent Active Directory connaissent peut-être l'idée de créer des groupes et d'accorder l'accès à certains éléments à l'ensemble du groupe, plutôt qu'à l'individu. Les applications fonctionnent de la même manière, en utilisant des rôles pour définir qui est autorisé à voir quoi.

Cela présente deux avantages. Premièrement, il n'est pas nécessaire de modifier une fonction lorsque quelqu'un quitte le rôle d'administrateur. Si quelqu'un était auparavant administrateur et ne doit plus l'être, il vous suffit de placer une nouvelle personne dans le rôle d'administrateur et de retirer la personne précédente de ce rôle. Le code vérifie si l'utilisateur a le rôle d'administrateur au lieu de vérifier si chaque utilisateur a accès à une certaine page ou fonction.

Le deuxième avantage est d'éviter un cauchemar en matière de maintenance. Un contrôle d'accès si granulaire que chaque personne est associée à toutes les fonctions ou pages possibles sera impossible à gérer au fil du temps. Les rôles facilitent grandement les choses, car plusieurs personnes peuvent être ajoutées à un rôle. Un rôle peut inclure l'ensemble de l'entreprise, tandis qu'un autre peut n'inclure que cinq personnes. Cela rend la gestion des rôles plus efficace, car il y aura moins de rôles à gérer. Une entreprise de 10 000 personnes pourrait n'avoir que 100 rôles au lieu de 10 000 fois le nombre de fonctions de votre application. Faites des recherches sur le cadre d'application que vous avez choisi pour voir quelles sont les options disponibles pour un contrôle d'accès robuste.

Il est également essentiel d'utiliser un contrôle d'accès au niveau des fonctions. Protégez l'accès à toutes les fonctions en exigeant des utilisateurs qu'ils passent certains contrôles d'accès. Utilisez le principe du moindre privilège, en refusant l'accès par défaut et en ne l'autorisant qu'en cas de besoin. Il peut être difficile de se rappeler de mettre en place un contrôle d'accès pour chaque fonction. Utilisez un composant central pour gérer et appliquer le contrôle d'accès.

Protégez vos fonctions sensibles

Un contrôle d'accès défaillant peut rendre vos données et votre application vulnérables aux attaques et à l'exploitation. Les données des clients qui ne sont pas protégées correctement peuvent conduire à une violation massive des données, nuisant à votre réputation et à votre chiffre d'affaires.

Un contrôle d'accès défaillant peut également conduire à la prise de contrôle d'un compte si les attaquants sont en mesure d'accéder à des fonctionnalités auxquelles ils ne devraient pas avoir accès. En utilisant un contrôle d'accès fonctionnel approprié, vous protégerez votre application contre les attaquants malveillants et même contre les initiés accidentels.

Vous pensez maîtriser l'accès fonctionnel ? Vous pouvez vous mettre au défi de réparer un contrôle d'accès défectueux dès maintenant : [Commencez ici]

Voir la ressource
Voir la ressource

Remplissez le formulaire ci-dessous pour télécharger le rapport

Nous aimerions que vous nous autorisiez à vous envoyer des informations sur nos produits et/ou sur des sujets liés au codage sécurisé. Nous traiterons toujours vos données personnelles avec le plus grand soin et ne les vendrons jamais à d'autres entreprises à des fins de marketing.

Soumettre
Pour soumettre le formulaire, veuillez activer les cookies "Analytics". N'hésitez pas à les désactiver à nouveau une fois que vous aurez terminé.

Lorsque vous créez une application professionnelle, qu'elle soit destinée à un usage interne ou à un usage externe par vos clients, vous ne permettez probablement pas à chaque utilisateur d'exécuter toutes les fonctions. Si c'est le cas, vous risquez d'être vulnérable à un contrôle d'accès défaillant.

Voyons ce qu'est un contrôle d'accès défaillant, pourquoi il est si dangereux et comment y remédier.

Comprendre le contrôle d'accès défaillant

Un contrôle d'accès défaillant se produit lorsque le code de l'application ne comporte pas les contrôles de sécurité ou d'accès appropriés. Il peut également se produire lorsqu'une application est mal configurée d'une manière ou d'une autre, permettant l'accès à des fonctions ou à des pages auxquelles l'utilisateur ne devrait pas avoir accès.

Si vous gérez les finances de votre entreprise, vous avez peut-être la possibilité de déposer de l'argent sur certains comptes ou de transférer de l'argent entre les comptes de votre entreprise. En revanche, vous ne devez pas avoir le droit de retirer de l'argent de ces comptes ou de transférer de l'argent vers d'autres comptes. Si les contrôles d'accès appropriés ne sont pas présents, vos employés peuvent être en mesure d'exécuter plus de fonctions que nécessaire.

Ces contrôles peuvent être effectués dans le code ou dans les fichiers de configuration. Par exemple, il peut y avoir des fichiers de configuration XML qui indiquent au cadre de l'application web quels utilisateurs sont autorisés à accéder à quelles pages. Cela permet de s'assurer que les utilisateurs ne peuvent accéder qu'aux fonctions qu'ils sont autorisés à utiliser.

Pourquoi un contrôle d'accès défaillant est dangereux

Prenons l'exemple suivant : Un attaquant s'est rendu compte que votre code de création de compte utilisateur peut être manipulé, ce qui lui permet de créer un utilisateur admin avec une simple requête post. Il peut envoyer une requête avec le nom d'utilisateur et le mot de passe, puis les modifier en cours de route pour inclure le rôle d'administrateur dans l'URL en tant que paramètre ou dans le corps de la requête. L'attaquant se connecte à l'application et obtient instantanément les droits d'administrateur.

Il n'est pas toujours nécessaire qu'un attaquant malveillant pénètre dans un système. En l'absence de contrôles d'accès appropriés, des informations sensibles qui ne devraient pas être partagées entre les services peuvent être divulguées. Imaginez que n'importe quel employé de l'entreprise puisse consulter les données salariales ou financières des ressources humaines. Que se passerait-il si n'importe quel employé pouvait voir que des licenciements sont à venir en raison de la mauvaise situation financière de l'entreprise ? Cela pourrait nuire à votre moral et à la réputation de votre entreprise.

Les informations sensibles des clients peuvent également être perdues. Les entreprises stockent souvent des informations personnelles sur les clients qui utilisent leurs services. Veillez à ne pas exposer accidentellement ces informations en raison d'un manque de contrôle d'accès. Par exemple, si votre système permet aux utilisateurs de demander leur dossier médical, ont-ils également la possibilité de demander et de consulter les informations médicales d'autres personnes ? Si l'URL contient un numéro d'identification de client, les attaquants pourraient incrémenter ce numéro d'identification de client encore et encore jusqu'à ce qu'ils en trouvent un qui corresponde à un autre client, révélant ainsi leurs données personnelles.

Défier le contrôle d'accès défaillant

Le contrôle d'accès basé sur les rôles (RBAC) est un outil très efficace pour mettre en œuvre un contrôle d'accès solide. Ceux qui utilisent Active Directory connaissent peut-être l'idée de créer des groupes et d'accorder l'accès à certains éléments à l'ensemble du groupe, plutôt qu'à l'individu. Les applications fonctionnent de la même manière, en utilisant des rôles pour définir qui est autorisé à voir quoi.

Cela présente deux avantages. Premièrement, il n'est pas nécessaire de modifier une fonction lorsque quelqu'un quitte le rôle d'administrateur. Si quelqu'un était auparavant administrateur et ne doit plus l'être, il vous suffit de placer une nouvelle personne dans le rôle d'administrateur et de retirer la personne précédente de ce rôle. Le code vérifie si l'utilisateur a le rôle d'administrateur au lieu de vérifier si chaque utilisateur a accès à une certaine page ou fonction.

Le deuxième avantage est d'éviter un cauchemar en matière de maintenance. Un contrôle d'accès si granulaire que chaque personne est associée à toutes les fonctions ou pages possibles sera impossible à gérer au fil du temps. Les rôles facilitent grandement les choses, car plusieurs personnes peuvent être ajoutées à un rôle. Un rôle peut inclure l'ensemble de l'entreprise, tandis qu'un autre peut n'inclure que cinq personnes. Cela rend la gestion des rôles plus efficace, car il y aura moins de rôles à gérer. Une entreprise de 10 000 personnes pourrait n'avoir que 100 rôles au lieu de 10 000 fois le nombre de fonctions de votre application. Faites des recherches sur le cadre d'application que vous avez choisi pour voir quelles sont les options disponibles pour un contrôle d'accès robuste.

Il est également essentiel d'utiliser un contrôle d'accès au niveau des fonctions. Protégez l'accès à toutes les fonctions en exigeant des utilisateurs qu'ils passent certains contrôles d'accès. Utilisez le principe du moindre privilège, en refusant l'accès par défaut et en ne l'autorisant qu'en cas de besoin. Il peut être difficile de se rappeler de mettre en place un contrôle d'accès pour chaque fonction. Utilisez un composant central pour gérer et appliquer le contrôle d'accès.

Protégez vos fonctions sensibles

Un contrôle d'accès défaillant peut rendre vos données et votre application vulnérables aux attaques et à l'exploitation. Les données des clients qui ne sont pas protégées correctement peuvent conduire à une violation massive des données, nuisant à votre réputation et à votre chiffre d'affaires.

Un contrôle d'accès défaillant peut également conduire à la prise de contrôle d'un compte si les attaquants sont en mesure d'accéder à des fonctionnalités auxquelles ils ne devraient pas avoir accès. En utilisant un contrôle d'accès fonctionnel approprié, vous protégerez votre application contre les attaquants malveillants et même contre les initiés accidentels.

Vous pensez maîtriser l'accès fonctionnel ? Vous pouvez vous mettre au défi de réparer un contrôle d'accès défectueux dès maintenant : [Commencez ici]

Accès aux ressources

Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Voir le rapportRéservez une démonstration
Partager sur :
Vous souhaitez en savoir plus ?

Partager sur :
Auteur
Jaap Karan Singh
Publié le 09 mai 2019

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Partager sur :

Lorsque vous créez une application professionnelle, qu'elle soit destinée à un usage interne ou à un usage externe par vos clients, vous ne permettez probablement pas à chaque utilisateur d'exécuter toutes les fonctions. Si c'est le cas, vous risquez d'être vulnérable à un contrôle d'accès défaillant.

Voyons ce qu'est un contrôle d'accès défaillant, pourquoi il est si dangereux et comment y remédier.

Comprendre le contrôle d'accès défaillant

Un contrôle d'accès défaillant se produit lorsque le code de l'application ne comporte pas les contrôles de sécurité ou d'accès appropriés. Il peut également se produire lorsqu'une application est mal configurée d'une manière ou d'une autre, permettant l'accès à des fonctions ou à des pages auxquelles l'utilisateur ne devrait pas avoir accès.

Si vous gérez les finances de votre entreprise, vous avez peut-être la possibilité de déposer de l'argent sur certains comptes ou de transférer de l'argent entre les comptes de votre entreprise. En revanche, vous ne devez pas avoir le droit de retirer de l'argent de ces comptes ou de transférer de l'argent vers d'autres comptes. Si les contrôles d'accès appropriés ne sont pas présents, vos employés peuvent être en mesure d'exécuter plus de fonctions que nécessaire.

Ces contrôles peuvent être effectués dans le code ou dans les fichiers de configuration. Par exemple, il peut y avoir des fichiers de configuration XML qui indiquent au cadre de l'application web quels utilisateurs sont autorisés à accéder à quelles pages. Cela permet de s'assurer que les utilisateurs ne peuvent accéder qu'aux fonctions qu'ils sont autorisés à utiliser.

Pourquoi un contrôle d'accès défaillant est dangereux

Prenons l'exemple suivant : Un attaquant s'est rendu compte que votre code de création de compte utilisateur peut être manipulé, ce qui lui permet de créer un utilisateur admin avec une simple requête post. Il peut envoyer une requête avec le nom d'utilisateur et le mot de passe, puis les modifier en cours de route pour inclure le rôle d'administrateur dans l'URL en tant que paramètre ou dans le corps de la requête. L'attaquant se connecte à l'application et obtient instantanément les droits d'administrateur.

Il n'est pas toujours nécessaire qu'un attaquant malveillant pénètre dans un système. En l'absence de contrôles d'accès appropriés, des informations sensibles qui ne devraient pas être partagées entre les services peuvent être divulguées. Imaginez que n'importe quel employé de l'entreprise puisse consulter les données salariales ou financières des ressources humaines. Que se passerait-il si n'importe quel employé pouvait voir que des licenciements sont à venir en raison de la mauvaise situation financière de l'entreprise ? Cela pourrait nuire à votre moral et à la réputation de votre entreprise.

Les informations sensibles des clients peuvent également être perdues. Les entreprises stockent souvent des informations personnelles sur les clients qui utilisent leurs services. Veillez à ne pas exposer accidentellement ces informations en raison d'un manque de contrôle d'accès. Par exemple, si votre système permet aux utilisateurs de demander leur dossier médical, ont-ils également la possibilité de demander et de consulter les informations médicales d'autres personnes ? Si l'URL contient un numéro d'identification de client, les attaquants pourraient incrémenter ce numéro d'identification de client encore et encore jusqu'à ce qu'ils en trouvent un qui corresponde à un autre client, révélant ainsi leurs données personnelles.

Défier le contrôle d'accès défaillant

Le contrôle d'accès basé sur les rôles (RBAC) est un outil très efficace pour mettre en œuvre un contrôle d'accès solide. Ceux qui utilisent Active Directory connaissent peut-être l'idée de créer des groupes et d'accorder l'accès à certains éléments à l'ensemble du groupe, plutôt qu'à l'individu. Les applications fonctionnent de la même manière, en utilisant des rôles pour définir qui est autorisé à voir quoi.

Cela présente deux avantages. Premièrement, il n'est pas nécessaire de modifier une fonction lorsque quelqu'un quitte le rôle d'administrateur. Si quelqu'un était auparavant administrateur et ne doit plus l'être, il vous suffit de placer une nouvelle personne dans le rôle d'administrateur et de retirer la personne précédente de ce rôle. Le code vérifie si l'utilisateur a le rôle d'administrateur au lieu de vérifier si chaque utilisateur a accès à une certaine page ou fonction.

Le deuxième avantage est d'éviter un cauchemar en matière de maintenance. Un contrôle d'accès si granulaire que chaque personne est associée à toutes les fonctions ou pages possibles sera impossible à gérer au fil du temps. Les rôles facilitent grandement les choses, car plusieurs personnes peuvent être ajoutées à un rôle. Un rôle peut inclure l'ensemble de l'entreprise, tandis qu'un autre peut n'inclure que cinq personnes. Cela rend la gestion des rôles plus efficace, car il y aura moins de rôles à gérer. Une entreprise de 10 000 personnes pourrait n'avoir que 100 rôles au lieu de 10 000 fois le nombre de fonctions de votre application. Faites des recherches sur le cadre d'application que vous avez choisi pour voir quelles sont les options disponibles pour un contrôle d'accès robuste.

Il est également essentiel d'utiliser un contrôle d'accès au niveau des fonctions. Protégez l'accès à toutes les fonctions en exigeant des utilisateurs qu'ils passent certains contrôles d'accès. Utilisez le principe du moindre privilège, en refusant l'accès par défaut et en ne l'autorisant qu'en cas de besoin. Il peut être difficile de se rappeler de mettre en place un contrôle d'accès pour chaque fonction. Utilisez un composant central pour gérer et appliquer le contrôle d'accès.

Protégez vos fonctions sensibles

Un contrôle d'accès défaillant peut rendre vos données et votre application vulnérables aux attaques et à l'exploitation. Les données des clients qui ne sont pas protégées correctement peuvent conduire à une violation massive des données, nuisant à votre réputation et à votre chiffre d'affaires.

Un contrôle d'accès défaillant peut également conduire à la prise de contrôle d'un compte si les attaquants sont en mesure d'accéder à des fonctionnalités auxquelles ils ne devraient pas avoir accès. En utilisant un contrôle d'accès fonctionnel approprié, vous protégerez votre application contre les attaquants malveillants et même contre les initiés accidentels.

Vous pensez maîtriser l'accès fonctionnel ? Vous pouvez vous mettre au défi de réparer un contrôle d'accès défectueux dès maintenant : [Commencez ici]

Table des matières

Voir la ressource
Vous souhaitez en savoir plus ?

Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Réservez une démonstrationTélécharger
Partager sur :
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles
Centre de ressources

Ressources pour vous aider à démarrer

Plus d'articles