EDRµµ ŽÁö ¸ø ÇÏ´Â Á¤»óÀûÀÎ API È£Ã⠾ǿë... NHI Àκ¥Å丮 Á¡°Ë ½Ã±Þ
[º¸¾È´º½º= ±èµ¿Çö OWASP ¼¿ï éÅÍ ¸®´õ] Áö³ 20ÀÏ ±êÇãºê(GitHub)°¡ ÀÚ»ç ³»ºÎ ÀúÀå¼Ò ¾à 3800°³ÀÇ ¿ÜºÎ À¯ÃâÀ» °ø½Ä ÀÎÁ¤Çß´Ù. Àü ¼¼°è °³¹ßÀÚ°¡ Äڵ带 ¸Ã±â´Â Ç÷§Æû¿¡¼ Á÷¿ø ÇÑ ¸íÀÌ ¼³Ä¡ÇÑ VS Code È®Àå ÇÁ·Î±×·¥ Çϳª°¡ ¿øÀÎÀ̾ú´Ù.

°ø°ÝÀÚ·Î ¾Ë·ÁÁø TeamPCP´Â ±¸±Û À§Çù ÀÎÅÚ¸®Àü½º°¡ UNC6780À¸·Î ÃßÀû ÁßÀÎ ±×·ìÀÌ´Ù. Áö³ 3¿ù º¸¾È Ãë¾àÁ¡ ½ºÄ³³Ê ¡®¾ÆÄí¾Æ Æ®¸®ºñ(Aqua Trivy)¡¯¸¦ ½ÃÀÛÀ¸·Î, 4¿ù Å©·Î½º Ç÷§Æû °³¹ßÀÚ µµ±¸ÀÎ ¡®ºñÆ®¿öµç CLI(Bitwarden CLI)¡¯, 5¿ù ÇÑ ´Þ°£ ¡®ÅĽºÅÃ(TanStack)¡¯°ú ¹Ì½ºÆ®¶ö AI(Mistral AI)¸¦ Æ÷ÇÔÇÑ 170¿© °³ÀÇ npm¡¤PyPI ÆÐŰÁö, MS µà·¯ºíŽºÅ©(Microsoft DurableTask), ¾Ë¸®¹Ù¹Ù ¾ØÆ®V(Alibaba AntV)¿¡ ÀÌ¾î ±êÇãºê±îÁö. 8°³¿ù°£ ´©ÀûµÈ °ø±Þ¸Á Ä·ÆäÀÎÀ» ÁøÇàÇß´Ù. À̹ø »ç°ÇÀÌ Àǹ̴ ħÅõ °æ·Î°¡ ¾Æ´Ñ ħÅõ Ç¥¸éÀÇ º¯È¿¡ ÀÖ´Ù.
´Ü¸» È®Àå ÇÁ·Î±×·¥ Çϳª¿¡ ¶Õ¸° ±Û·Î¹ú ÄÚµå ÀúÀå¼Ò
±êÇãºêÀÇ ¹ßÇ¥¿¡ µû¸¥ °ø°Ý È帧Àº ´ÙÀ½°ú °°´Ù.
¡â Á÷¿ø ÇÑ ¸íÀÌ VS Code Marketplace¿¡¼ ¾Ç¼º È®ÀåÀ» ¼³Ä¡
¡â ´Ü¸»ÀÌ Ä§ÇØµÇ¸é¼ °³¹ßÀÚ ÀÚ°ÝÁõ¸í¡¤ÅäÅ«¡¤³»ºÎ ½Ã½ºÅÛ Á¢±Ù ±ÇÇÑÀÌ À¯Ãâ
¡â °ø°ÝÀÚ°¡ ÀÌ ±ÇÇÑÀ¸·Î ³»ºÎ ÀúÀå¼Ò ¾à 3800°³¸¦ ¿ÜºÎ ¹ÝÃâ
¡â ´ÙÅ©À¥ Æ÷·³¿¡ $50000ºÎÅÍ È£°¡Çß°í, ±×·ìÀº ÇöÀç $95000 Á¦¾ÈÀ» ¹Þ¾Ò´Ù°í ÁÖÀå
±êÇãºê ÃøÀº ¡°°í°´»ç¿Í ÀúÀå¼Ò¿¡ ¿µÇâÀ» ¹ÌÄ£ Áõ°Å´Â ÇöÀç±îÁö ¾ø´Ù¡±°í ¹àÇûÁö¸¸, ¾î¶² È®ÀåÀÌ »ç¿ëµÆ´ÂÁö °ø½ÄÀûÀ¸·Î È®ÀÎÇØ ÁÖÁö´Â ¾Ê¾Ò´Ù. ÀϺΠº¸µµ¿¡¼ °°Àº ½Ã±â öȸµÈ Nx ConsoleÀÇ ¿¬°ü¼ºÀ» °Å·ÐÇßÁö¸¸, °ø½ÄÀûÀ¸·Î È®ÀÎµÈ »çÇ×Àº ¾Æ´Ï´Ù.
Á¤»ó ¹èÆ÷·Î À§ÀåÇÑ 8°³¿ùÀÇ Ä¡¹ÐÇÑ °ø±Þ¸Á Àå¾Ç

À̹ø °ø°ÝÀÇ ¹èÈÄ·Î Áö¸ñµÈ TeamPCP Ȱµ¿ Áß ´«¿©°Üº¼ ºÎºÐÀº 11ÀÏ ÅĽºÅÃ Ä§ÇØ´Ù. ¾Ç¼º ÆÐŰÁö¿¡¼ À¯È¿ÇÑ SLSA Build Level 3 ÀÎÁõ(provenance attestation)ÀÌ ºÎ¿©µÈ ù »ç·Ê¿´´Ù. °ø°ÝÀÚ°¡ °Ô½ÃÇÑ ¾Ç¼º ¹öÀüÀÌ ¸ðµç ´Ü°è¿¡¼ ÇÕ¹ýÀûÀ¸·Î ¹èÆ÷µÆ´Ù. ¿öÅ©Ç÷θ¦ ½ÃÀÛÇÑ ÀÚ°ÝÁõ¸íÀÌ Ä§ÇØµÈ °á°ú´Ù.
19ÀÏ AntV »ç·Ê´Â ´Ù¸¥ ¹æ½ÄÀÇ Á¤±³ÇÔÀ» º¸¿´´Ù. °ø°ÝÀÚ´Â RSA-PSS ¼¸í ±â¹ÝÀÇ ÇÏÀ̺긮µå ¾ÏÈ£È C2 ä³ÎÀ» »ç¿ëÇß°í, ±êÇãºêÀÇ commit-search API¸¦ µ¥µåµå·Ó(dead-drop)À¸·Î Ȱ¿ëÇØ ¿ÜºÎ Åë½ÅÀ» µµ¸ÞÀÎ ¾È¿¡ ¸Ó¹°°Ô ¼³°èÇß´Ù. 22ºÐ ¸¸¿¡ 323°³ ÆÐŰÁö¸¦ ÀÚµ¿ ¹èÆ÷ÇÑ ºÎºÐÀº, »ç¶÷ÀÌ ¾Æ´Ñ ÀÚµ¿ÈµÈ ¿ú(worm)ÀÌ Ä§ÇØµÈ °ü¸®ÀÚ(maintainer) ÀÚ°ÝÁõ¸íÀ» Å»ÃëÇÏ¸é¼ ½º½º·Î ÀüÆÄµÆÀ½À» ÀǹÌÇÑ´Ù.
°ø½Ä ÀÎÁõÀ» ¹ÞÀº °³¹ßÀÚ(Verified Publisher) ¹èÁö, °ø±Þ¸Á º¸¾È Ç¥ÁØ, ¼ÒÇÁÆ®¿þ¾î °ø±Þ¸Á º¸¾ÈÀ» À§ÇÑ ÇÁ·¹ÀÓ¿öÅ©, ¼ö¹é¸¸ °ÇÀÇ ´Ù¿î·Îµå Ƚ¼ö, ½Å·ÚÇÒ ¼ö ÀÖ´Â °ø½Ä ÀÚµ¿È ºôµå ½Ã½ºÅÛ(GitHub Actions)±îÁö. ¿ì¸®°¡ ¾ÈÀüÇÑ ¼ÒÇÁÆ®¿þ¾î¶ó°í ÆÇ´ÜÇÏ´ø ±âÁصéÀÌ ÀÌÁ¦´Â ¸ðµÎ ¹«·ÂȵƴÙ.
ºñÀΰ£ ÀÚ°ÝÁõ¸í(NHI) °üÁ¡¿¡¼ º» °ø°Ý Ç¥¸éÀÇ ÁøÈ
À̹ø Ä·ÆäÀÎ Àüü¸¦ ÀÚ°ÝÁõ¸í °üÁ¡¿¡¼ ´Ù½Ã º¸¸é, ħÅõ ÀÚ»êÀº ¸ðµÎ ºñÀΰ£ ÀÚ°ÝÁõ¸í(NHI)ÀÌ´Ù.
¡âTanStack: GitHub Actions OIDC ÅäÅ«À» runner ÇÁ·Î¼¼½º ¸Þ¸ð¸®¿¡¼ ÃßÃâ
¡âDurableTask: Ä§ÇØµÈ ±êÇãºê °èÁ¤ÀÇ repo secret¿¡¼ PyPI ÅäÅ« ³ëÃâ
¡âAntV: ÄÄÇÁ·Î¸¶ÀÌÁîµÈ npm maintainer °èÁ¤ÀÇ publish ±ÇÇÑ
¡âGitHub: Á÷¿ø ´Ü¸»ÀÇ IDE È®Àå ¡æ °³¹ßÀÚ ÅäÅ«¡¤¼¼¼Ç¡¤Á¢±Ù ±ÇÇÑ
°øÅëÀûÀ¸·Î »ç¶÷ÀÌ ÆÐ½º¿öµå¸¦ ÀÔ·ÂÇÏ´Â ´Ü°è´Â ¾ø´Ù. ¸ðµÎ ±â°è°¡ ±â°è¿¡°Ô ±ÇÇÑÀ» ºÎ¿©ÇÏ´Â ±¸°£, CI/CD ÆÄÀÌÇÁ¶óÀÎ, OIDC ÅäÅ« ±³È¯, IDE È®ÀåÀÇ ambient credential ¿µ¿ª¿¡¼ »ç°í°¡ ¹ß»ýÇß´Ù.
¹Ì´Ï »þÀÌ-ÈÇ·çµå(Mini Shai-Hulud) ¿úÀº ÀÌ Á¡À» ³ë°ñÀûÀ¸·Î Ȱ¿ëÇÑ´Ù. ÀÚ°ÝÁõ¸í Çϳª¸¦ ÈÉÄ¡¸é °ü¸®ÀÚ°¡ ÅëÁ¦ÇÏ´Â ¸ðµç ÆÐŰÁö¸¦ ¿°ÅÇÏ°í °¢°¢ °¨¿°µÈ ¹öÀüÀ» ÀÚµ¿ °Ô½ÃÇÑ´Ù. ÆäÀ̷εå´Â 100¿© °³ ÆÄÀÏ °æ·Î¿¡¼ Ŭ¶ó¿ìµå ÀÚ°ÝÁõ¸í, ¾ÏÈ£ÈÆó Áö°©, AI µµ±¸ ¼³Á¤, ¸Þ½Ã¡ ¾Û ÅäÅ«À» ¼öÁýÇϰí .claude/settings[.]jsonÀ̳ª .vscode/tasks[.]json °°Àº °³¹ßÀÚ µµ±¸ ¼³Á¤ ÆÄÀÏ¿¡ persistence hookÀ» ½É¾î ÀçºÎÆÃ ÈÄ¿¡µµ »ì¾Æ³²´Â´Ù.
EDRÀº ÀÌ ÆÐÅÏÀ» ÀâÁö ¸øÇÑ´Ù. EDRÀÌ º¸´Â °ÍÀº ÇÁ·Î¼¼½º ÇàÀ§ÀÌÁö¸¸, ÀÌ °ø°ÝÀÇ ÇÙ½ÉÀº ¡°½Å·Ú¹Þ´Â µµ±¸°¡ ½Å·Ú¹Þ´Â ±ÇÇÑÀ¸·Î Á¤»óÀûÀÎ API¸¦ È£Ã⡱ÇÑ´Ù´Â µ¥ ÀÖ´Ù. ÇàÀ§ ÀÚü°¡ ÇÕ¹ýÀ̰í, ÇàÀ§¸¦ ¼öÇàÇÑ ÀÚ°ÝÁõ¸í¸¸ Ä§ÇØµÈ »óÅ´Ù.
±¹³» ±â¾÷µéÀÌ Â¤¾îºÁ¾ß ÇÒ 3°¡Áö Á¡°Ë Æ÷ÀÎÆ®
ù°, OSS ÀÇÁ¸¼º. Áö³ 11ÀÏ ÀÌÈÄ ¿µÇâ¹ÞÀº 170¿© °³ npm¡¤PyPI ÆÐŰÁöÀÇ ´©Àû ´Ù¿î·Îµå´Â 5¾ï ȸ ÀÌ»óÀÌ´Ù. @tanstack/react-router(ÁÖ°£ 1200¸¸ ȸ), Mistral AI SDK, OpenSearch Ŭ¶óÀ̾ðÆ®, Guardrails AI µîÀÌ Æ÷ÇԵȴÙ. Çѱ¹ ½ºÅ¸Æ®¾÷¡¤SaaS ȸ»ç Áß ¿µÇâ ¹öÀüÀÌ ÀÇÁ¸¼º Æ®¸®(dependency tree)¿¡ ³²¾Æ ÀÖÀ» °¡´É¼ºÀÌ ÀûÁö ¾Ê´Ù.
µÑ°, °³¹ßÀÚ ´Ü¸»ÀÇ IDE È®Àå °Å¹ö³Í½º. ´©°¡ ¾î¶² È®ÀåÀ» ¾î¶² ±ÇÇÑÀ¸·Î ¼³Ä¡Çß´ÂÁö Àκ¥Å丮·Î ´äÇÒ ¼ö Àִ ȸ»ç°¡ ¾ó¸¶³ª µÉ±î. È®ÀåÀÌ Á¢±ÙÇÒ ¼ö ÀÖ´Â ÅäÅ«¡¤½ÃÅ©¸´ ¹üÀ§´Â ¾î¶»°Ô Á¦ÇѵǴ°¡. ±êÇãºêÁ¶Â÷ ÀÌ Áú¹®¿¡ ´äÇÏÁö ¸øÇØ ¶Õ·È´Ù.
¼Â°, NHI Àκ¥Å丮. CI/CD ÆÄÀÌÇÁ¶óÀÎÀÇ ¼ºñ½º °èÁ¤(service account), OIDC ÅäÅ«, PAT, npm/PyPI publish ÅäÅ«ÀÌ ¸î °³ÀÎÁö Á¤È®È÷ ¾Æ´Â º¸¾ÈÆÀÀº ¸¹Áö ¾Ê´Ù. »ç¶÷ °èÁ¤Àº IAM¡¤SSO·Î °ü¸®ÇÏÁö¸¸ ±â°è ÀÚ°ÝÁõ¸íÀº °Å¹ö³Í½º ´ë»ó¿¡¼ ºüÁ® ÀÖ´Â °æ¿ì°¡ ´Ù¼ö´Ù. °ø°ÝÀÚ´Â Á¤È®È÷ ±× »ç°¢Áö´ë¸¦ ³ë¸°´Ù.
½ÇÁ¦·Î CremitÀÇ NHI º¸¾È Ç÷§Æû ¡®Argus¡¯°¡ ÃÖ±Ù 6°³¿ù°£ ±¹³» ±â¾÷ÀÇ °ø°³ ÀúÀå¼Ò ¹× Çù¾÷ µµ±¸¿¡¼ °üÃøÇÑ NHI ÅäÅ« ³ëÃâ µ¥ÀÌÅÍ¿¡ µû¸£¸é, Àüü À¯ÃâÀÇ 42%°¡ ±êÇãºê °ü·Ã ÀÚ°ÝÁõ¸íÀ̾ú´Ù. ´õ¿í ½É°¢ÇÑ °ÍÀº ±×Áß 78%°¡ ¹ß±Þ ÈÄ 90ÀÏ ÀÌ»ó ȸ¼öµÇÁö ¾ÊÀº ä·Î À¯È¿ÇÏ°Ô ¹æÄ¡µÇ¾î ÀÖ¾ú´Ù´Â Á¡ÀÌ´Ù.
½Ã½ºÅÛ Ãë¾àÁ¡ ¾Æ´Ñ ½Å·Ú °ü°è¸¦ ¶Õ´Â AI ½Ã´ëÀÇ ¹æ¾î¹ý
À̹ø »ç°ÇÀº °ø°Ý ÆÐ·¯´ÙÀÓÀÇ À̵¿À» º¸¿© ÁØ´Ù. °ø°ÝÀÚ´Â ´õ ÀÌ»ó ½Ã½ºÅÛ Ãë¾àÁ¡À» ¶ÕÁö ¾Ê´Â´Ù. ½Å·Ú °ü°è¸¦ ¶Õ´Â´Ù. verified publisher ¹èÁö°¡ ´Þ¸° È®Àå, SLSA ÀÎÁõÀÌ ºÙÀº ÆÐŰÁö, °ø½Ä GitHub Actions ¿öÅ©Ç÷ο¡¼ °Ô½ÃµÈ ºôµå. ¿ì¸®°¡ ¾ÈÀü ½Ã±×³Î·Î »ï¾Æ ¿Â ¸ðµç °ÍÀÌ ÀÌÁ¦ °ø°Ý Ç¥¸éÀÌ´Ù.
¹æ¾îÀÚÀÇ ¼±ÅÃÁö´Â µÎ °¡Áö·Î Á¼ÇôÁø´Ù. ÀÚ°ÝÁõ¸í À§»ýÀ» ±â°è ¾ÆÀ̵§Æ¼Æ¼ ¿µ¿ª±îÁö È®ÀåÇÏ´Â °Í, ±×¸®°í À¯ÃâµÈ ÀÚ°ÝÁõ¸íÀ» ½Ç½Ã°£À¸·Î ŽÁö¡¤È¸¼öÇÏ´Â °Í. ÆÐÄ¡´Â ÀÌ¹Ì ´ÊÀº ´ëÀÀÀÌ´Ù. TeamPCP°¡ AntV ÆÐŰÁö 323°³¸¦ 22ºÐ ¸¸¿¡ ÀÚµ¿ ¹èÆ÷ÇÑ ¼Óµµ·Î, °°Àº ¼ÓµµÀÇ ´ëÀÀÀÌ ÁغñµÇ¾î Àִ°¡. Áö±ÝÀÌ NHI º¸¾ÈÀ» ¹Ì·çÁö ¸»¾Æ¾ß ÇÒ ½ÃÁ¡ÀÌ´Ù.
[±Û_±èµ¿Çö OWASP ¼¿ï éÅÍ ¸®´õ/Å©¸®¹Ô ´ëÇ¥]
<ÀúÀÛ±ÇÀÚ: º¸¾È´º½º(www.boannews.com) ¹«´ÜÀüÀç-Àç¹èÆ÷±ÝÁö>

.jpg)
.jpg)









Á¶ÀçÈ£±âÀÚ ±â»çº¸±â





































.jpg)

.jpg)






.jpg)


.jpg)
