Omdiaã®2026ãœãããŠã§ã¢ãµãã©ã€ãã§ãŒã³ã»ãã¥ãªãã£ã¬ããŒãã«ãããšã 86 %ã®çµç¹ãSBOMã®çæãå°é£ã«æããŠãããäž»ãªèŠå ã¯ããŒã«ã®ä¹±ç«ã§ããããŒã ãããŸããŸãªææç©ã¿ã€ãã«åãããŠç°ãªãã¹ãã£ããŒãå¯ãéãããã€ãã©ã€ã³å šäœã§äžè²«æ§ã®ãªãåºåãåŸããããšã³ãžãã¢ãªã³ã°ã®æéãçµæã®èª¿æŽã«è²»ãããããã«åºã¥ããŠè¡åããæéã奪ãããŠããŸãã
SBOMïŒéšå衚ïŒã¯ãã»ãã¥ãªãã£ããŒã ãè匱æ§ã®é瀺ã«ã©ã®ããã«å¯Ÿå¿ããããã³ã³ãã©ã€ã¢ã³ã¹ããŒã ãç£æ»æ åœè ã®èŠæ±ãæºããæ¹æ³ããããŠèª¿éã«é¢ããæææ±ºå®ãè¡ãæ¹æ³ã«ãããŠãéèŠãªåœ¹å²ãæããããã«ãªã£ãŠãããããã«ãããçºé»ã¹ãããã¯èè·éæ§é ãšãªãããã€ãã©ã€ã³ãçæããSBOMã«æšç§»çäŸåé¢ä¿ãæ¬ èœããŠãããã解決æžã¿ããŒãžã§ã³ã§ã¯ãªãå®£èšæžã¿ããŒãžã§ã³ãèšé²ãããŠããããèšè¿°å¯Ÿè±¡ã®ã¢ãŒãã£ãã¡ã¯ãã«æå·åçã«ãã€ã³ããããŠããªãã£ãããããšããã®ããŒã¿ã«åºã¥ããŠè¡ããããã¹ãŠã®äžæµã®æ±ºå®ã«ãã®ã®ã£ãããåŒãç¶ãããŸãã
ãã®èšäºã§ã¯ãSBOMã®å質ãå·Šå³ããæ±ºå®äºé ãã€ãŸãããã€ã©ãã§çæããããå®çšçãªåºåãšåã«ãã§ãã¯ããã¯ã¹ã«ãã§ãã¯ãå ¥ããã ãã®ããŒã¿ãåºå¥ããèŠçŽ ããããŠç»åããŒããã©ãªãªãæ¡å€§ããã«ã€ããŠçæã®ä¿¡é Œæ§ãç¶æããæ¹æ³ã«ã€ããŠè§£èª¬ããŸãã
ããŒãã€ã¯ã¢ãŠã
- è£œé æã«SBOMãçæãããšã補é åŸã«ã¹ãã£ã³ããããããããå®å šã§æ£ç¢ºãªåºåãåŸãããŸãã
- SBOMãå®çšçãã©ããã¯ãå®å šæ§ãæ£ç¢ºæ§ã鮮床ãããã³æ€èšŒå¯èœæ§ã«ãã£ãŠæ±ºãŸããŸãã
- çæããŒã«ã¯é«åºŠãªãã«ãã¢ã¯ã»ã¹æš©éã§å®è¡ããããããäŸãã°äžå€åç §ãžã®åºå®ãªã©ã远å ã®ã»ãã¥ãªãã£å¯Ÿçãå¿ èŠã«ãªãå ŽåããããŸãã
- äºåã«SBOMïŒéšå衚ïŒãäœæãããã€ã¡ãŒãžã䜿çšããããšã§ãããŒã¹ã¬ã€ã€ãŒã®çæäœæ¥ã®è² æ ã軜æžã§ããŸãã
çæã¿ã€ãã³ã°ïŒãã«ãæ vs. ãã«ãåŸ
SBOMã®åè³ªã«æã圱é¿ãäžããå¯äžã®æ±ºå®ã¯ãSBOMããã€çæããããšããããšã§ãã倧ããåããŠ2ã€ã®ã¢ãããŒããããããããã倧ããç°ãªãçµæãããããã
ãã«ãæçæ
ãã«ãæã®çææ©èœã¯ããã«ãã·ã¹ãã èªäœã«çµã¿èŸŒãŸããŠããŸãããžã§ãã¬ãŒã¿ãŒã¯ã解決æžã¿ã®äŸåé¢ä¿ããªãŒãããã±ãŒãžãããŒãžã£ãŒã®ãã¡ã€ã«ãããã³å®å šãªãã«ãã³ã³ããã¹ãã«ã¢ã¯ã»ã¹ã§ããŸãããã®éºç©ãçµã¿ç«ãŠãããæã«ããã«ããããããã®éºç©ã«äœã䜿ãããŠããããæ£ç¢ºã«ææ¡ããŠããã
ãã€ãã£ããªèªèšŒãµããŒããåããã³ã³ãããã«ãã·ã¹ãã ã¯ãã€ã¡ãŒãžãã«ãäžã«SPDX SBOMãçæãããããã€ã³ã»ããèªèšŒãšããŠæ·»ä»ããã€ã¡ãŒãžãšSBOMã®äž¡æ¹ãåäžã®æäœã§ã¬ãžã¹ããªã«ããã·ã¥ã§ããŸããèšèªåºæã®ãã«ããã©ã°ã€ã³ããã¢ããªã±ãŒã·ã§ã³ã®äŸåé¢ä¿ã«é¢ããŠåæ§ã®ã¢ãããŒããåããæšæºã®ãã«ãã©ã€ããµã€ã¯ã«ã®äžéšãšããŠSBOMãçæããŸãã
ãã®å©ç¹ã¯æ§é çãªãã®ã§ãããã«ãæã®çæã«ãã£ãŠããã«ãåŸã®ã¹ãã£ããŒã§ã¯èŠèœãšãããå¯èœæ§ã®ããæšç§»çäŸåé¢ä¿ãå«ãããã¹ãŠã®äŸåé¢ä¿ã®è§£æ±ºæžã¿ç¶æ ãææãããŸãã
æ§ç¯åŸã®ã¹ãã£ã³
ãã«ãåŸã®ããŒã«ã¯ã宿ããææç©ãã¹ãã£ã³ãããã®å 容ããªããŒã¹ãšã³ãžãã¢ãªã³ã°ããŸãããããã®ææ³ã¯ãããã±ãŒãžãããŒãžã£ãŒã®ã¡ã¿ããŒã¿ããã¡ã€ã«ã·ã°ããã£ãããã³ææç©å ã®æ¢ç¥ã®ãã¿ãŒã³ãèå¥ããããšã«ãã£ãŠæ©èœããŸãããã®æ¹æ³ã¯ãæ§ç¯æ¹æ³ã«é¢ä¿ãªããOCIäºæã®ã€ã¡ãŒãžã§ããã°ã©ãã§ãæ©èœããŸãã
ãã®ä»£åã¯ãã«ããŒç¯å²ã®çãã ãéçã«ãªã³ã¯ããããã€ããªããã³ããŒæäŸã®äŸåé¢ä¿ãããã³äžéãã«ã段éã§ã€ã³ã¹ããŒã«ãããOSããã±ãŒãžã¯ããã«ãåŸã®ã¹ãã£ããŒã§èŠèœãšãããããšããããããŸããã¹ãã£ãã¯æ€åºã§ãããã®ããå ±åã§ãããæ€åºã¯å®éã®ãã«ãã°ã©ãããå°ãåºãããã®ã§ã¯ãªãããã¥ãŒãªã¹ãã£ãã¯ã«åºã¥ããŠããã
ãã«ãã·ã¹ãã ãžã®ã¢ã¯ã»ã¹æš©ãããå Žåã¯ããã«ãæã«çæããŠãã ããããã«ãåŸã®ã¹ãã£ã³ã¯ãèªåã§ãã«ãããŠããªããµãŒãããŒãã£è£œã®ã€ã¡ãŒãžã䜿çšããå Žåãããã«ãã·ã¹ãã ãšçµ±åãããŠããªãã¬ã¬ã·ãŒã¢ãŒãã£ãã¡ã¯ãã䜿çšããå Žåã«æé©ãªéžæè¢ã§ãã
ã³ã³ããã€ã¡ãŒãžã«ã€ããŠã¯ããã«ãæã®SBOMèªèšŒã®èšå®æ¹æ³ã«ã€ããŠãããŸããŸãªãã«ãã¯ãŒã¯ãããŒã«å¯Ÿå¿ããå ·äœçãªãã©ã°ããžã§ãã¬ãŒã¿ãŒãªãã·ã§ã³ãå«ããããã¥ã¡ã³ãã§è©³çްã«èª¬æããŠããŸãã
SBOMã圹ç«ã€çç±
SBOMãçæããããšãšãæçšãªSBOMãçæããããšã¯åãã§ã¯ãªãããã¡ã€ã«åœ¢åŒã¯æšæºçã§ãããSBOMãã©ã®ããã«ããã€äœæããããã«ãã£ãŠãã³ã³ãã³ãã®å質ã¯å€§ããç°ãªããŸããå®çšçãªSBOMãšãã§ãã¯ããã¯ã¹åŒã®ææç©ãåºå¥ãã5ã€ã®åºæºãããã
1 ãå®å š
å®å šãªSBOMã¯ããã¹ãŠã®ã¬ã€ã€ãŒãšãã¹ãŠã®ããã±ãŒãžã¿ã€ãã«ããããææç©ã«å«ãŸãããã¹ãŠã®ã³ã³ããŒãã³ããç¶²çŸ ããŠããŸããããã«ã¯ãããŒã¹ã€ã¡ãŒãžããã®OSããã±ãŒãžããã«ãã«å«ãŸãããã¹ãŠã®ããã±ãŒãžãããŒãžã£ãŒããã®ã¢ããªã±ãŒã·ã§ã³äŸåé¢ä¿ãããã³ãã«ãããã»ã¹äžã«è¿œå ãããããŒã«ããŠãŒãã£ãªãã£ãå«ãŸããŸããÂ
倿®µéã€ã¡ãŒãžãæå°éã®åºæ¬ã€ã¡ãŒãžã§ã¯ãããã«å€§ããªã®ã£ãããçãããNode ããã³ããšã³ããéçãã€ããªã«ã³ã³ãã€ã«ããã C ãŸã㯠C++ ã³ã³ããŒãã³ããããã³ãã£ã¹ããªãã¥ãŒã·ã§ã³ã¬ã¹ã®æçµã¹ããŒãžãå«ã Dockerfile ã«ã¯ã3 ã€ã®æç¢ºãªèª²é¡ããããŸããNode ã¬ã€ã€ãŒã«ã¯æ·±ãæšç§»çäŸåé¢ä¿ããªãŒããããéçã«ãªã³ã¯ããããã€ããªã«ã¯ãã£ã¹ã¯äžã«äŸåé¢ä¿ãããã§ã¹ããååšããªãããšãå€ãããã£ã¹ããªãã¥ãŒã·ã§ã³ã¬ã¹ã®ããŒã¹ã«ã¯ããã±ãŒãžãããŒãžã£ããŸã£ãããããŸããããã«ãåŸã®ã¹ãã£ããŒã¯ãéçã«ãªã³ã¯ãããäŸåé¢ä¿ãèŠèœãšãå¯èœæ§ããããNodeããªãŒãéå°è©äŸ¡ããå¯èœæ§ããããŸããåã¹ããŒãžã®è§£æ±ºæžã¿äŸåé¢ä¿ã°ã©ãã«ã¢ã¯ã»ã¹ã§ãããã«ãæçæããããå šäœåãææ¡ããå¯äžã®æ¹æ³ã§ãã
2 ãæ£ç¢ºã
æ£ç¢ºæ§ãšã¯ãSBOMã«å®£èšãããç¯å²ã§ã¯ãªãã解決æžã¿ã®ããŒãžã§ã³ãèšé²ãããããšãæå³ããŸããããã±ãŒãžãããã§ã¹ãã«ã¯ã^ 4 . 17 . 0 ããšå®£èšãããå¯èœæ§ããããŸããããããããã¯ãã¡ã€ã«å ã®è§£æ±ºæžã¿ããŒãžã§ã³ã¯4 . 17 . 21ã§ããéšå衚ïŒSBOMïŒã¯ãèŠæ±ãããå 容ã§ã¯ãªããå®éã«èšçœ®ãããå 容ãåæ ããŠããªããã°ãªããªãã
3 ã鮮床
SBOMãšã¯ãç¹å®ã®ãã«ãã«é¢é£ä»ãããããããæç¹ã«ããã補åã®ç¶æ ã瀺ãã¹ãããã·ã§ããã§ããã¢ãŒãã£ãã¡ã¯ããåæ§ç¯ããããã³ã«ãSBOMãåçæããå¿ èŠããããŸããå€ãSBOMã¯ã誀ã£ãå¯èŠæ§ãçã¿åºãã
4 ãæ€èšŒå¯èœæ§
æ€èšŒå¯èœãªSBOMãšã¯ãæ¶è²»è ã補é ã·ã¹ãã ã«ãã£ãŠçæããããã®ã§ãããæ¹ãããããŠããªãããšã確èªã§ããSBOMã®ããšã§ããæå·çœ²åããã³èªèšŒãã¬ãŒã ã¯ãŒã¯ã¯ãSBOMãç¹å®ã®ã¢ãŒãã£ãã¡ã¯ããã€ãžã§ã¹ãã«çµã³ä»ããããã«ã¢ãŒãã£ãã¡ã¯ããã©ãã§ã©ã®ããã«æ§ç¯ãããããèšé²ããæ§ç¯å±¥æŽæ å ±ãæäŸããŸãã
5 ãåœ¢åŒ ã³ã³ãã©ã€ã¢ã³ã¹
SPDXãCycloneDXãªã©ã®æšæºãã©ãŒãããã§ã¯ãå¿ é ãã£ãŒã«ããšãªãã·ã§ã³ãã£ãŒã«ããå®çŸ©ãããŠããŸããã¹ããŒãã«å¯ŸããŠæ€èšŒãè¡ãSBOMã¯ãã¹ãã£ã³ããŒã«ãããªã·ãŒãšã³ãžã³ãããã³ã³ã³ãã©ã€ã¢ã³ã¹ã¯ãŒã¯ãããŒéã§çžäºéçšå¯èœã§ããããã§ãªããã®ã®äžã«ã¯ãçŸåšã䜿ãã®ããŒã«ã§ã¯åäœãããããããŸããããããŒã«ã倿Žãããšåäœããªããªããã®ããããŸãã
äžéšã®åºæ¬ã€ã¡ãŒãžã«ã¯ãSLSAãã«ãã¬ãã«3ã®æ¥æŽããã³å©çšå¯èœæ§ããŒã¿ãšãšãã«ã5ã€ã®åºæºãã¹ãŠãæºããSBOMãæ¢ã«å梱ãããŠããŸãããããã®SBOMã¯ãæ¹ããäžå¯èœãªæ¥æŽãæã€åŒ·åããããã«ããã©ãããã©ãŒã äžã§ãã«ãæã«çæãããæå·çœ²åãããã€ã¡ãŒãžãã€ãžã§ã¹ãã«çŽã¥ããããå®å šãªèšŒææžãšããŠæ·»ä»ãããŸããããããã¯åæ§ç¯ã®ãã³ã«ç¶ç¶çã«åçãããããã人æãä»ããã«é®®åºŠãç¶æãããŸãããããã®ã€ã¡ãŒãžã«ã€ããŠã¯ãã¹ã¿ãã¯ã®æãéèŠãªã¬ã€ã€ãŒã«ãããçæã«é¢ããçåã¯è§£æ±ºæžã¿ã§ãããäœæ¥ã¯ããã®äžã«éããã¢ããªã±ãŒã·ã§ã³ã¬ã€ã€ãŒã®å®å šãªSBOMãçæããããšã«ç§»ããŸãã
ããªãã®äžä»£ã®ããŒã«ãã§ãŒã³ã¯æ»æå¯Ÿè±¡é åã§ã
SBOMãçæããããã«äœ¿çšããããŒã«ã¯ããã«ãç°å¢ãžã®ç®¡çè æš©éã§å®è¡ãããŸãã圌ãã¯ããªãã®ãœãŒã¹ã³ãŒããäŸåé¢ä¿ããªãŒããããŠãã«ãææç©ãèªã¿ãŸãã䟵害ããããžã§ãã¬ãŒã¿ãŒã¯ãåã«æªãåºåãçæããã ãã§ãªããã¹ãã£ã³ããããŒã¿ãå€éšã«æã¡åºããããæ¹ãããããããèœåãæã£ãŠããŸãã
ããã¯çè«äžã®æžå¿µäºé ã§ã¯ãªããGitHub Actionsããã³ã³ã³ããã€ã¡ãŒãžã®ããŒãžã§ã³ã¿ã°ã¯å€æŽå¯èœã§ãã仿¥v 2 . 1ã«åºå®ããããŒã«ã¯ãã¡ã³ãããŒã¢ã«ãŠã³ãã䟵害ãããããã¿ã°ã匷å¶çã«ããã·ã¥ãããããããšãææ¥ã«ã¯ã²ã£ãããšå¥ã®ãã®ã«ãªãå¯èœæ§ããããŸããããããã€ã³ã·ãã³ãã«ãããæ å ±æŒæŽ©ã®å±éºæéã¯éåžžæ°æéåäœã ããèªååããããã€ãã©ã€ã³ã§ã¯æ°å以å ã«äŸµå®³ãããããŒãžã§ã³ãååŸãããå¯èœæ§ãããã
çæããŒã«ã«ã€ããŠããä»ã®ãã«ãäŸåé¢ä¿ãšåæ§ã«å³æ Œã«æ±ã£ãŠãã ããã
- äžå€ã®åç §ïŒããŒãžã§ã³ã¿ã°ã§ã¯ãªããã³ãããSHAïŒã«åºå®ããŸãã
- å®è¡åã«ãã§ãã¯ãµã ã確èªããŠãã ããã
- åçŸæ§ãšç£æ»å¯èœæ§ã確ä¿ãããããéçºãã·ã³ã§ã¯ãªãCIç°å¢ã§çæãå®è¡ããã
- çæããŒã«ã«é¢ããäžæµã®ã»ãã¥ãªãã£å§åãç£èŠããŠãã ããã
ããã¯ãããåºç¯ãªãœãããŠã§ã¢ãµãã©ã€ãã§ãŒã³ã®ã»ãã¥ãªãã£èª²é¡ã®äžåŽé¢ã§ãããã€ãã©ã€ã³å ã®ãã¹ãŠã®ããŒã«ã¯äŸåé¢ä¿ã§ãããã¢ããªã±ãŒã·ã§ã³ã³ãŒããšåæ§ã«å³å¯ãªæ€èšŒãå¿ èŠã§ããããŒã¹ã€ã¡ãŒãžã§ããã°ããã®ãªã¹ã¯ãå®å šã«åé¿ã§ããŸããæ¹ããäžå¯èœãªæ¥æŽãæã€åŒ·åããããã«ããã©ãããã©ãŒã äžã§æ§ç¯ãããã€ã¡ãŒãžã¯ãçºçæºãããµãã©ã€ãã§ãŒã³ã®ã¡ã¿ããŒã¿ããæå·åã«ãã£ãŠãšã³ãããŒãšã³ãã§æ€èšŒãããç¶æ ã§ä¿æããŸãã
SBOMçæãCI/CDã«çµ±åãã
æåã§ã®SBOMçæã¯ãåçºã®ç£æ»ã«ã¯æå¹ã§ããçç£ã¯ãŒã¯ãããŒã«ãããŠã¯ãçæã¯èªååãããåçŸå¯èœã§ãããé ä¿¡ãã€ãã©ã€ã³ã®ä»ã®éšåãšé£æºããŠããå¿ èŠããããŸãããã®ãã¿ãŒã³ã¯ãCIã·ã¹ãã å šäœã§äžè²«ããŠããã
ãã«ãæã«çæ
ã€ã¡ãŒãžçæçŽåŸã«ããã«ãã¹ããŒãžã®ã¹ããããšããŠSBOMçæã远å ããŸããã³ã³ããã€ã¡ãŒãžã®å ŽåãBuildKitã®èªèšŒãã©ã°ãæãä¿¡é Œæ§ã®é«ãæ¹æ³ã§ããã¢ããªã±ãŒã·ã§ã³ã®äŸåé¢ä¿ã«é¢ããŠã¯ãèšèªåºæã®ãã©ã°ã€ã³ïŒMaven/Gradleã®å Žåã¯CycloneDXãNodeã®å Žåã¯npm/yarnïŒã解決æžã¿ã®äŸåé¢ä¿ã°ã©ãã«ã¢ã¯ã»ã¹ãããããæé«å質ã®åºåãçæããŸãã
è€æ°æ®µéã®ãã«ãã®å Žåãæçµæ®µéã®ã¿ããçæããŠãã ãããäžé段éã§ã¯ãæ¬çªç°å¢ã®ã€ã¡ãŒãžã«ã¯å«ãŸããŠããªããã«ãããŒã«ããã¹ããã¬ãŒã ã¯ãŒã¯ãã€ã³ã¹ããŒã«ãããããšããããããŸããäžé段éã«å¯ŸããŠçæãè¡ããšãå±éãããŠããªãã³ã³ããŒãã³ããSBOMã«å«ãŸããŠããŸããè匱æ§ã¹ãã£ã³ã§ãã€ãºãçºçããã
èšŒææžã®ãã©ãŒããããéžæããŠãã ãã
SPDXã¯BuildKitã®èªèšŒã«ããããã€ãã£ãåºåãã©ãŒãããã§ãããã©ã€ã»ã³ã¹ã³ã³ãã©ã€ã¢ã³ã¹ãæåªå äºé ã§ããå Žåã¯ããã匷åãªéžæè¢ãšãªããŸããCycloneDXã¯ãããé«åºŠãªè匱æ§çžé¢åææ©èœãšããã詳现ãªã³ã³ããŒãã³ãå顿©èœãåããŠãããããã»ãã¥ãªãã£éèŠã®ã¯ãŒã¯ãããŒã«æé©ã§ããå©çšããŠããããŒã«ïŒããªã·ãŒãšã³ãžã³ãè匱æ§ã¹ãã£ããŒãã³ã³ãã©ã€ã¢ã³ã¹ããã·ã¥ããŒããªã©ïŒã«æšå¥šèšå®ãããå Žåã¯ãããã«åŸã£ãŠãã ãããäž¡æ¹ããµããŒãããŠããå Žåã¯ãã³ã³ããã€ã¡ãŒãžã«ã¯ããã©ã«ãã§SPDXã䜿çšããŸããããã¯ãBuildKitã«çµã¿èŸŒãŸããŠãããžã§ãã¬ãŒã¿ãŒä»¥å€ã«è¿œå ã®ããŒã«ãå¿ èŠãšããªãããã§ãã
ã¢ãŒãã£ãã¡ã¯ãã«åãä»ãã
SBOMã¯ããããèšè¿°ããææç©ãšåãå Žæã«ä¿ç®¡ããŠãã ãããã³ã³ããã€ã¡ãŒãžã®å Žåãããã¯ã¢ãŒãã£ãã¡ã¯ãã¹ãã¢ã«å¥ãã¡ã€ã«ãšããŠä¿åããã®ã§ã¯ãªããã¬ãžã¹ããªã«OCIèªèšŒæ å ±ãšããŠæ·»ä»ããããšãæå³ããŸãã蚌æããŒã¹ã®ã¹ãã¬ãŒãžã«ãããSBOMã¯æ€çŽ¢å¯èœãããŒãžã§ã³ç®¡çãããç¹å®ã®ã€ã¡ãŒãžãã€ãžã§ã¹ãã«çŽä»ããããŸããã€ã¡ãŒãžãéçºç°å¢ããã¹ããŒãžã³ã°ç°å¢ããããŠæ¬çªç°å¢ãžãšææ ŒãããéãSBOMã¯ãã¹ãŠã®ã¬ãžã¹ããªãä»ããŠã€ã¡ãŒãžãšå ±ã«ç§»åãããããå¿ ç¶çã«ãããçããå¥ã®ã³ããŒããã³åæã¯ãŒã¯ãããŒã¯äžèŠã«ãªããŸãã
å ¬éåã«æ€èšŒããŠãã ãã
çæãšã¬ãžã¹ããªãžã®ããã·ã¥ã®éã«æ€èšŒã¹ãããã远å ãããSBOMããã©ãŒãããããªããŒã¿ãŒïŒSPDXãšCycloneDXã¯ã©ã¡ããå ¬åŒã®ã¹ããŒãããªããŒã¿ãŒãæäŸããŠããŸãïŒã«éããã³ã³ããŒãã³ãæ°ãã¢ãŒãã£ãã¡ã¯ãã«å¯ŸããŠåŠ¥åœã§ããããšã確èªããSBOMãæ£ããã€ã¡ãŒãžãã€ãžã§ã¹ããåç §ããŠããããšã確èªããŸãã200以äžã®ããã±ãŒãžãå«ãŸããŠããããšãããã£ãŠããã€ã¡ãŒãžã«å¯ŸããŠã 12åã®ã³ã³ããŒãã³ããçæãããã«ãã¯ããã€ãã©ã€ã³ã倱æãããã¹ãã§ãããé»ã£ãŠåºè·ãããã¹ãã§ã¯ãããŸããã
ç¶ç¶çã«ã¹ãã£ã³ããŠé©çšãã
è£œé æã«SBOMïŒéšå衚ïŒãçæããããšã§ãåºè·ãããéšåãææ¡ã§ããŸããç¶ç¶çãªã¹ãã£ã³ã«ãã£ãŠããã®åŸäœãè匱ã«ãªã£ãããããããŸããæ°ããCVEã¯æ¯æ¥çºçããŠãããæ§ç¯æã«ã¯åé¡ããªãã£ãSBOMã§ããæ°é±é以å ã«é倧ãªè匱æ§ãé²åããå¯èœæ§ããããŸããSBOMããŒã¿ã«å¯Ÿããç¶ç¶çãªåæã«ãããç»åãåååŸããããšãªããæ°èŠé瀺æ å ±ãåšåº«ãšç §åããããªã·ãŒéåãçºçããæç¹ã§ãããæããã«ãããSBOMããã¹ãŠã®ã€ã¡ãŒãžã«æ·»ä»ããããšã§ãå±éãå¶åŸ¡ã§ããŸããæå¹ãªSBOMããªãã€ã¡ãŒãžã¯åºè·ããããæ¢ç¥ã®è匱æ§ãæã€ããã±ãŒãžãèšå®ããæ·±å»åºŠãããå€ãè¶ ããã€ã¡ãŒãžãå±éãããŸããã
å®è£ ã®è©³çްã¯CIã·ã¹ãã ã«ãã£ãŠç°ãªããŸããåŒç€Ÿã®ããã¥ã¡ã³ãã§ã¯ãäžè¬çãªã³ã³ãããã«ãã¯ãŒã¯ãããŒå šäœã§SBOMèšŒææžãçæããã³æ·»ä»ããããã®å ·äœçãªãã©ã°ãšèšå®ã«ã€ããŠèª¬æããŠããŸãã
SBOMåºåã®æ€èšŒ
ã³ã³ãã©ã€ã¢ã³ã¹å ±åãè匱æ§ç®¡çã«SBOMåºåãå©çšããåã«ã以äžã®åè³ªåºæºãæºãããŠããããšã確èªããŠãã ããã
- ã³ã³ããŒãã³ãæ°ã®åŠ¥åœæ§ãã§ãã¯ïŒ SBOMå ã®ã³ã³ããŒãã³ãæ°ããDockerfileãããã¯ãã¡ã€ã«ãããã³ããŒã¹ã€ã¡ãŒãžããæ³å®ãããæ°ãšæ¯èŒããŸããäŸåé¢ä¿ã200宣èšãããŠããNode.jsã¢ããªã¯ãæšç§»çäŸåé¢ä¿ãå«ãããšãå€§å¹ ã«å€ãã®ãšã³ããªãçæããã¯ãã§ãã
- 解決æžã¿ããŒãžã§ã³ãç¯å²ã§ã¯ãããŸãã: SBOM ã¬ã³ãŒãã«ç¹å®ã®ããŒãžã§ã³ ( 4 . 17 . 21 ) ãèšé²ãããŠããããšã確èªããããã«ãšã³ããªãã¹ããããã§ãã¯ããŸãã宣èšãããç¯å²ïŒ^ 4 . 17 . 0 ïŒã§ã¯ãªãã
- æšç§»çäŸåé¢ä¿ã®æ·±ãïŒæäžäœããã±ãŒãžã ãã§ãªããæšç§»çäŸåé¢ä¿ãååšããããšã確èªããŸããã¢ããªã30ã®çŽæ¥çãªäŸåé¢ä¿ã宣èšããŠããã«ãããããããSBOMã«32ãšã³ããªãå«ãŸããŠããå Žåãæšç§»çã«ãã¬ããžãäžå®å šã§ããå¯èœæ§ãé«ãã§ãã
- OSããã±ãŒãžã®ç¶²çŸ æ§ïŒããŒã¹ã€ã¡ãŒãžã®OSããã±ãŒãžãã¢ããªã±ãŒã·ã§ã³ã®äŸåé¢ä¿ãšäžŠãã§è¡šç€ºãããŠããããšã確èªããŸãã
- ãã€ãžã§ã¹ããã€ã³ãã£ã³ã°ïŒã¢ãã¹ããŒã·ã§ã³ãæ£ããã€ã¡ãŒãžãã€ãžã§ã¹ããåç §ããŠããããšã確èªããŸãããã€ã³ããããŠããªãSBOMã¯ããã®ææç©ãæ£ããèšè¿°ããŠãããšã¯éããªãã
- ãã©ãŒãããæ€èšŒïŒ SBOMãã¹ããŒãããªããŒã¿ãŒã«éããŸãïŒSPDXãšCycloneDXã¯ã©ã¡ããå ¬åŒããŒã«ãæäŸããŠããŸãïŒã
çæãéå§ããæ¬¡ã«æ€èšŒãéå§ããŸãã
SBOMçææ©èœããã€ãã©ã€ã³ã«è¿œå ããæé©ãªã¿ã€ãã³ã°ã¯ã次ã«CIæ§æã倿Žããæã§ãããŸãã¯ãæãã¢ã¯ã»ã¹æ°ã®å€ãäœåç»åããå§ããŸãããããã«ãæçæãèšå®ããSBOMãèšŒææžãšããŠæ·»ä»ããäžèšã®ãã§ãã¯ãªã¹ãã«åºã¥ããŠåºåãæ€èšŒããŸããæ¬¡ã«ãããŒããã©ãªãªã®æ®ãã®éæã«ãæ¡å€§ããŠãã ããã
ããã«äœæ¥ãéå§ãããå Žåã¯ãDocker Hardened Imagesã«ã¯å®å šãªSBOMãSLSAãã«ãã¬ãã«3ã®æ¥æŽæ å ±ãããã³OpenVEXããŒã¿ãæ¢ã«æ·»ä»ãããŠãããããããŒã¹ã¬ã€ã€ãŒã®çææé ãå®å šã«çç¥ã§ããŸããDocker Scoutã¯ããã®äžã«æ§ç¯ãããã¹ãŠã®ãã®ã«å¯ŸããŠã SBOMããŒã¿ãšã®ç¶ç¶çãªè匱æ§ç §åãè¡ããã€ã¡ãŒãžããŒããã©ãªãªå šäœã«ããã£ãŠããªã·ãŒãé©çšããŸãã
- Dockerã®åŒ·åã€ã¡ãŒãžã䜿ãå§ããã â
- Docker Scoutã§è匱æ§ç£èŠãäœéšããã â
ãããã質å
SBOMïŒéšå衚ïŒã®æé©ãªãã©ãŒãããã¯äœã§ããïŒ
ã³ã³ããã€ã¡ãŒãžã«ã€ããŠã¯ãããã©ã«ãã§SPDXã䜿çšããŸããããã¯BuildKitã®ãã€ãã£ããªèªèšŒåºåã§ããã远å ã®ããŒã«ãå¿ èŠãšããŸãããäž»ãªçšéãã»ãã¥ãªãã£ã¹ãã£ã³ã§ããã䜿çšããäžæµããŒã«ãCycloneDXãæšå¥šããå Žåã¯ãCycloneDXãéžæããŠãã ããã
ç»åã«æ¢ã«SBOMãå«ãŸããŠããå Žåã§ããSBOMãçæããå¿ èŠã¯ãããŸããïŒ
äºåã«æ§ç¯ãããSBOMãæ¥æŽãããã³å©çšå¯èœæ§ããŒã¿ã忢±ãããŠããããŒã¹ã€ã¡ãŒãžã䜿çšããŠããå Žåã¯ããã®ã¬ã€ã€ãŒãåçæããå¿ èŠã¯ãããŸãããä»å±ã®SBOMã¯ããã«ãã°ã©ããžã®å®å šãªã¢ã¯ã»ã¹æš©ãæã£ãŠãã«ãæã«çæãããã€ã¡ãŒãžã«æå·åçã«çŽä»ããããŠããŸãã
äºåã«äœæãããSBOMãä¿¡é Œã§ãããã©ããã確èªããã«ã¯ã次ã®2ç¹ã確èªããŠãã ãããÂ
- SBOMã¯çœ²åæžã¿ã®èšŒææžãšããŠæ·»ä»ãããŠããŸããïŒåç¬ã®ãã¡ã€ã«ã§ã¯ãããŸãããïŒïŒ
- èšŒææžã«ã¯SLSAã®åºæèšŒæãå«ãŸããŠããŸããïŒ
åºæããæ¹ããäžå¯èœãªåºææ å ±ãæã€å ç¢ãªãã«ããã©ãããã©ãŒã ã«é¡ãå Žåããã®ã¬ã€ã€ãŒã«é¢ããŠã¯SBOMãä¿¡é Œã§ããæ å ±æºãšããŠæ±ãããšãã§ããŸãã远å ããã¢ããªã±ãŒã·ã§ã³ã®äŸåé¢ä¿ã«ã€ããŠããSBOMãçæããå¿ èŠããããŸãã
SBOMã¯ã©ã®ãããã®é »åºŠã§åçæãã¹ãã§ããïŒ
ã¢ãŒãã£ãã¡ã¯ããåæ§ç¯ããããã³ã«ãCIãã€ãã©ã€ã³ãæ°ããã€ã¡ãŒãžãçæããå Žåãããã«å¯Ÿå¿ããæ°ããSBOMãçæããå¿ èŠããããŸããåæ§ç¯ã®éããæ¢åã®SBOMã¯äŸç¶ãšããŠæ£ç¢ºã§ãããªããªããã¢ãŒãã£ãã¡ã¯ãã¯å€æŽãããŠããªãããã§ãã
SBOMïŒéšå衚ïŒã®äœæã¯ãæ³ä»€éµå®ã®ããã«å¿ é ã§ããïŒ
ç±³åœã§ã¯ã倧統é 什14028ã«ãããé£éŠæ¿åºæ©é¢ã«è²©å£²ããããœãããŠã§ã¢ã®SBOMèŠä»¶ãéå§ãããŸãããEUãµã€ããŒã¬ãžãªãšã³ã¹æ³ã¯ã EUåå ã§è²©å£²ãããããžã¿ã«èŠçŽ ãå«ããã¹ãŠã®è£œåã«SBOMïŒéšå衚ïŒã®èŠä»¶ãæ¡å€§ããã
AIã¯ãŒã¯ããŒãããæè¡ææžåãéææ§ã«é¢ããèŠä»¶ãå«ãEU AIæ³ãªã©ã®æ°ããªèŠå¶ã®å¯Ÿè±¡ãšãªãã«ã€ããã³ã³ããŒãã³ãã¬ãã«ã®ã€ã³ãã³ããªã¯ãããŒã ãé«ãªã¹ã¯ã·ã¹ãã ã®å éšæ§é ã瀺ãããã®å®çšçãªæ¹æ³ã«ãªãã€ã€ãããŸããNIST SSDFãCISAã®SBOMã¬ã€ãã³ã¹ãšãã£ãæ¥çãã¬ãŒã ã¯ãŒã¯ã§ã¯ãSBOMãåºæ¬çãªèŠä»¶ãšããŠåç §ããã±ãŒã¹ãå¢ããŠãããçŸæç¹ã§ã¯æ³çã«çŸ©åä»ããããŠãããã©ããã¯å¥ãšããŠãSBOMïŒéšå衚ïŒã¯èª¿éã«ãããå¿ é æ¡ä»¶ã«ãªãã€ã€ããã
æ å ±æº
Omdiaã ããœãããŠã§ã¢ãµãã©ã€ãã§ãŒã³ã®ã»ãã¥ãªãã£ç¢ºä¿ïŒAIå°å ¥ã«ããéçºèŠæš¡æ¡å€§ãæ¯æŽããæŠç¥çã¢ãããŒãã ã5æ2026 ã