有关风险的chaîne有关逻辑的批准connaître

Le code créé par les développeurs d'une organization ne constitue que Le starting du développement d'un logiciel modern。En fait, la première party du code est易感de n'être qu'une part succincte d'une application;Parfois, elle ne构成que 10% deL 'écosystème de L ' artifact de L 'application.
La chaîne d'approvisionnement de logiciels d'une enterprise comporte plusieurs éléments, puisés dans de nombreuses资源:软件包开源,logiciels commerciaux, fichiers infrastructure-as-code (IaC), conteurs et images SE, entre aures。Cette diversité signifie que la chaîne d'approvisionnement que vous devez sécuriser comptabise de nombreuses情况à有伤风化Et threatens en matière de sécurité错误的理由,监督,mauvaise qualité ou d' attack que malveillante。
Les quatre tendencies en matière de risque concernant la chaîne d'approvisionnement de logiciels
这是最重要的事où这是最重要的事情况à有伤风化vulnérables倒sécuriser选民chaîne d'approvisionnement de logiciels。Mais les résoudre une par une avec des solution unique revient à jouer au jeu du chat et de la souris;威胁的威胁éradiquée惩罚的惩罚réapparaître dan UN autre enroit auquel vous n' auiez pas pensé。
保护complète de votre chaîne d'approvisionnement de logiciels contre les威胁需要警惕。Cela开始même avant que le développeur n'appelle un package externe;赛特保护est nécessaire丹斯乐développement杜码propriétaire,拉编译杜码,勒版本préliminaires,勒管道,拉出版,拉发行,拉制作,voire même après勒déploiement。En plus de révéler simplement les vulnérabilités et d'autres problèmes de sécurité, vous devrez également connaître leur contte afin de pouvoir évaluer le véritable risque。
威胁chaîne法律法规être(近似)divisées两个主要环境。
总理使用la chaîne d’approvisionnement«自然户外»pour获取有关逻辑的信息Que l'attaquant entendcibler。Un示例courant serait une暂选d'un对手de mapper Un service Web à distance ou de déposer Un logiciel pour des appareils IdO afin de se familiariser avec les软件包开源qu'il使用。Il peut ensuite设施trouver des信息sur des CVE associés à de tels包,en apprendre davantage sur les configurations de sécurité des包,voire même tenter de trouver des vulnérabilités inconnues (appelées«零日»)。Lorsqu'il a suffisamment de connaisances sur les chemins d'exploitation, l'attaquant peut ensuite passer à la second phase。
Cette阶段包括à utiliser la chaîne d'approvisionnement pour注射du代码等des包装恶意Dans des dépôts publics ou privés, ou modifier du code existant et y intégrer des éléments malveillants。

攻击chaîne逻辑批准:双重化学原则
重大威胁四项审查chaîne法律法规批准vulnérable袭击事件:
1.措施有名
Les composants de tiers, comme un logiciel商业和开源,peuvent comprenre des vulnérabilités involontaires qui sont généralement conues et publement suivies dans la liste常见漏洞及暴露情况(CVE, exposition et vulnérabilités courantes)。
Vous pouvez révéler de tels risques avec une解决方案软件组件分析(SCA,分析des composants du logiciel)qui identifie le SBOM d'un code donné ou artifact et l'associe avec des CVE conues, généralement en croisant les métadonnées du logiciel identifié avec les bases de données CVE publiques。
Mais vous devrez également avoir suffisamment d'information pour pouvoirprenre des décisions basées关于风险和自动化的问题.Une base de données externe est un atout;Elle doit traquer non serelque plus de risques, mais inclure également une研究sécuritéApprofondie pouvant vous aider à comprenre tout les options afin d'atténuer ces risques et vous permettre de choisir la méthode la plus pratique et la plus rent - table。
一个分析contextuelleQui identifie la probabilité qu'une vulnérabilité soit exploitée est tout ussi important。举例:la function vulnérable dans un composant ne peut pas être utilisée Par l'application ou un process vulnérable n'est jamais exécuté dans une version de production, ou une configuration spécifique rend une CVE donnée inutile。
Vous pouvez également reconnaître des个operationnelséventuels de composants qui semblent être sûrs。举例来说,unpackage开源qui n'a pas été géré pendant un temps peut ne pas avoir été suffisamment surveillé pour repérer des problèmes de sécurité。我们有生命,我们有生命vulnérabilités我们有生命危险être anticipée。
冒险anticipés与人相伴être repérés与人相伴:
- 代码源: faire UN déplacement à gauche de la vigilance en matière de sécurité au moment où le code est créé peut éviter les coûts de réparation ultérieure。Les équipes de sécurité peuvent traiter un dépôt interne de composants tiers approuvés, et/ou Les développeurs peuvent obtenir des alertes de dépendances vulnérables via des extensions à leurs IDE。我们在一起'incomplète,我们在一起éviter我们在一起的危险。Elle ne peut cependant être entièrement详尽无遗;les outils安全范围德称为“偏转surchargent generalement les developpeurs用des因为voire des几百几千环节,有些变量不是necessairement d的影响层面de la安全炸药,在l 'absence de contexte全球de la vulnerabilite ou du安全范围的问题。
- 成套好办法: le scan SCA automatisé de tous les packages, builds et images dans les dépôts de fichiers binaires clés (dans les composants premiers et tiers) garantit que toute votre chaîne d'approvisionnement de logiciels est protégée contre les risques opérationnels et les vulnérabilités connus。Représentation la plus exacte de l'état de production de votre application, les fichiers binaires permeent l'analyse réelle de qualité优化des risques et offrent un contexte plus précis。Ils渗透également d'analyser les problèmes qui sont des«morts角度»pour les outils de déplacement à gauche et les solution de sécurité en production。
2.Vulnérabilités inconnues(«零日»)
Les errors constituent une part quotidienne du codage。逻辑上的错误,不受影响的行为和腐败mémoire潜在的不受影响的行为和应用vulnérables辅助攻击malveillantes comme une exécution代码à距离(RCE)和攻击par déni de service (DoS)。Ces errors peuvent être non détectées dans le code principal ou tiers, parfois吊坠années.
这样的错误appelées problèmes«零日»,在派对上倒la période杜兰特拉克勒,我的爱人,我的爱人,我的爱人,我的爱人,我的爱人équipes我的爱人,我的爱人déjà déployé。
Pour cerner et éviter les problèmes«零日»电位器,vous devez tester chque composant et/ou application, en prenant en compte le flux entre les différents fichiers binaires, process et services。Les outils d'analyse de code statique (pour examiner la source du code) et d'examen dynamique du code (pour tester le code exécuté) peuvent habituellement identifier environ 85% des failles, mais ils peuvent générer des milliers d'entrées par version。Un savoir-faire est donc requis pour interpréter les résultats et les prioriser。Tout come avec les problèmes connus, une vulnérabilité peut exister, mais cela ne signifie pas qu'elle est nécessairement可利用。
Des technologies + avancées qui combinent une exécution symbolique, une analyse du flux de données et un test à données aléatoires automatisé peuvent réduire considérablement le taux de faux positif et identifier les vulnérabilités qui ne peuvent pas être repérées par un SAST/DAST典型。二进制数据分析和资源分析组合également生产数据résultats和测量数据développeurs, équipes sécurité和生产数据计算计算重要修正。
En dépit de tous les effort, de nouvelles vulnérabilités peuvent toujours être potential ellement découvertes et impact le logiciel déployé。不扫描SCA持续安全措施迅速通知dernières CVE影响生产的逻辑。Des métadonnées de命名法逻辑财富vous permeent de connaître rapidement l'impact d'une vulnérabilité dans votre organisation et d'atténuer ou deRésoudre le problème dans tout l'inventaire d'applications.Une intégration纠正avec les dépôts d' artifact et de code永久强制措施加速dan votre organization et d'atténuer la menace identifiée。
3.Problèmes ne concernant pas le代码
Toutes les vulnérabilités ne相关pas le代码;elles peuvent apparaître dans les fichiers binaires comme les EPM, les contenurs de fichiers JAR, les micrologiciels et les artifact de soutien comme les fichiers de configuration ou les fichiers IaC。Des mauvaises构型,un mauvais chiffements, une exposition Des secrets et clés privées ou Des problèmes de système d'exploitation peuvent ouvrir une surface d' attack。
人类错误的产物généralement我们à不注意plutôt我们à我们的错误和错误généralement介绍我们développement重要。Les配置constituées pour le test peuvent être inconsidérément envoyées en production。Ces risques sont souvent faciles à résoudre, mais difficiles à repérer et encore + à réparer。
Même une bonne intent peut avoir des conséquences malveillantes。La加上célèbre est La违反SolarWindsQui a commencé avec UNmot de passe exposé sur un server public GitHub,渗透l'injection d 'UN code malveillant qui a fini par dévoiler des données gouvernementales sensibles。Une confusion de dépendance类似名称的包装入口également我们没有恶意,我们有错误Résolution de dépôt de包Est mal configurée。
Il est capital de repérer rapidement ces problèmes avant qu'ils ne progressent dans la production。Vous devrez prendre ces risques potentiels au sérieux, autant que les vulnérabilités dans votre code, et intégrer cette vigilance dans la posture de sécurité de bout en bout de vos管线。
4.代码Malveillant
Les threats intentionnelles, qu'elles soient à des attack d'injection externes ou à des initiés malveillants, peuvent être Les plus difficiles à trouver, car elles sont souvent masquées afin d'apparaître comme un composant déjà validé。Les chevaux de Troie, Les bots, Les rançongiciels, Les cryptomers et Les logiciels spyons sont souvent délivrés comme des charges utiles via Les types de vulnérabilités介绍avec une bonne volonté, comme vu ci-dessus。L'amorçage de dépôts populaires avec des packages nuisibles, le pirage de comptes de maintenance pour modifier des packages existants ou L 'injection de code dans des dépôts source comptes sont des méthodes fréquemment utilisées qui permeent L 'accès dérobé pour une攻击。
Il est généralement trop tard lorsque l'on trouve ces攻击après le déploiement;Les dommages ont été causés et ils peuvent être vraiment onéreux。C'est pourquoi vous devriez vous protéger dans tout votre pipeline:
- Contrôle de l'accès: les dépôts de packages internnes doivent limiter l'accès en écriture aux rôles clés et aux members de l'équipe via des autorisation et une authentication sécurisée (y compris l' authentication multi-facteur) cohérentes dans toute l'organisation。
- Dépôts de代理: la mise en cache des dépôts externes (comme Maven Central et npm) peut fournir une capture immuable des resource tierces afin que tout écrasement malveillant ultérieur soit immédiatement évident。
- 测试分析: les outils d'analyse dynamique et statique sophistiqués peuvent détecter et repérer le code malveillant, ainsi que les comportements malveillants de packages douteux。L'équipe de recherche en matière de sécurité de JFrog a détecté et divulgué加上de 1 300包malveillants dans des dépôts de packages publics grâce à des outils qu'elle a développés。
Une vigilance intégrale pour la gestion des risques de la chaîne d'approvisionnement de logiciels
在某些危险倾向être gérées une à la fois, les sonsimplement des systèmes d' alerme et unique效用là où vous pensez à les placer。
Pour la même reason, des solutions de sécurité séparées ont une utilité limitée car leur portée réduite ne peut pas vous permettre d'analyser et d'évaluer le context le global d'un risque dans toute la chaîne d'approvisionnement de logiciels。Lorsque vous êtes déconnecté des dépôts et des solutions de gestion de logiciels, même si les solutions de sécurité sont très précises, il serait extrêmement艰难的de prendre des measurement效能pour résoudre et atténuer le problème identifié。
Une posture de sécurité详尽的ne peut pas simplement se focaliser sur des points isolés de votre pipeline;Elle doit vous permettre d'établir UN lien entre les différents problèmes et les constatations en matière de sécurité;选择了生态环境的解决方案séparées我们没有办法。
La sécurité des logiciels需要警惕intégrale, des IDE des développeurs à La生产,重要的监视des风险恒定和渗透La缓解des环境développement和生产。解决方案sécurité全球选举政策chaîne计量逻辑和测量权的批准à大échelle。阿芬德sécuriser德manière cohérente选民组织,我们的信念与我们同在资料来源独一无二et être bien intégrées avec des outils DevOps。
Vous souhaitez en savoir + sur ce qui se pass se ensuite»avec JFrog pour répondre à ces besoins ?铭文-vous à l'un des événementsswampUP城市旅游Qui aura lieu près de chez vous !