Maison > Article > développement back-end > Odeur de code - accroupi
N'utilisez pas de noms devinables à l'avance sur les ressources critiques
TL;DR : sécurisez vos ressources cloud en évitant les modèles de dénomination prévisibles.
Noms prévisibles
Accès non autorisé
Risques d'exposition des données
Ressources fantômes
Reprises de comptes
Vulnérabilité Idor
Optimisation prématurée
Utilisez des noms de compartiment uniques avec des touches sombres
Vérifier la propriété lors de la création
Sécurisez entièrement les ressources
Avoir des indirections masquant les vrais noms
Réservez des noms pour éviter de s'accroupir
Randomiser les noms
Le squattage de ressources se produit lorsque les attaquants anticipent les modèles de dénomination des ressources cloud, comme les compartiments S3.
L'attaquant les crée dans des régions où l'utilisateur n'a encore déployé des ressources.
L'interaction des utilisateurs avec ces ressources appartenant à des attaquants peut entraîner de graves failles de sécurité telles que l'exposition de données, un accès non autorisé ou un piratage de compte.
Cette vulnérabilité est critique dans des environnements comme AWS, où des conventions de dénomination prévisibles sont souvent utilisées.
De nombreux systèmes évitent cette indirection craignant une pénalité en termes de performances, ce qui est un cas évident d'optimisation prématurée.
def create_bucket(account_id, region): bucket_name = f"aws-glue-assets-{account_id}-{region}" create_s3_bucket(bucket_name) # This is deterministic and open
import uuid def create_bucket(account_id, region): unique_id = uuid.uuid4().hex # This number is not deterministic # is a way to generate a random UUID (Universally Unique Identifier) # in Python and then retrieve it as a hexadecimal string. bucket_name = f"aws-glue-assets-{unique_id}-{account_id}-{region}" create_s3_bucket(bucket_name) verify_bucket_ownership(bucket_name, account_id)
[X] Automatique
Un audit de sécurité peut détecter cette odeur en analysant les noms de vos ressources à des fins de prévisibilité.
Recherchez des modèles dans les noms qu'un attaquant peut facilement anticiper ou deviner.
De nombreux outils automatisés et révisions manuelles du code peuvent aider à identifier ces risques.
[X] Intermédiaire
Les générateurs d'IA peuvent créer cette odeur à l'aide de modèles standard avec des modèles de dénomination prévisibles.
Personnalisez et examinez toujours le code généré pour des raisons de sécurité.
L'IA peut aider à détecter cette odeur si elle est configurée avec des règles qui identifient les conventions de dénomination des ressources prévisibles ou non sécurisées.
Il s'agit d'un risque de sécurité qui nécessite une compréhension de l'infrastructure cloud et des vecteurs d'attaque potentiels.
Éviter les modèles de dénomination prévisibles est essentiel pour sécuriser vos ressources cloud.
Utilisez toujours des noms uniques, obscurs et difficiles à deviner, et vérifiez également la propriété des ressources pour vous protéger contre les attaques de squatting.
Gb Hackers
Wikipédia
Les odeurs de code sont mon opinion.
Photo de Félix Koutchinski sur Unsplash
Le seul système véritablement sécurisé est celui qui est éteint et débranché, enfermé dans un coffre-fort doublé de titane, enterré dans un bunker en béton et entouré de gaz neurotoxiques et de gardes armés très bien payés. Même dans ce cas, je ne risquerais pas ma vie là-dessus.
Gène Spafford
Cet article fait partie de la série CodeSmell.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!