IT ๋ธ”๋กœ๊น… ๊ด€์ 

DevSecOps CI/CD: ๋ณด์•ˆ์ด ํ†ตํ•ฉ๋œ ์ง€์†์  ๊ฐœ๋ฐœ์˜ ๋ฏธ๋ž˜

Point of IT View 2025. 2. 8. 11:05
๋ฐ˜์‘ํ˜•

DevSecOps CI/CD

๐Ÿ“Œ DevSecOps์™€ CI/CD, ์™œ ์ค‘์š”ํ•œ๊ฐ€์š”?

์—ฌ๋Ÿฌ๋ถ„, CI/CD๋Š” ์ด์ œ ๋Œ€๋ถ€๋ถ„์˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ๊ธฐ๋ณธ์œผ๋กœ ์ž๋ฆฌ ์žก์•˜์ฃ ? ์ฝ”๋“œ๋ฅผ **์ง€์†์ ์œผ๋กœ ํ†ตํ•ฉ(CI)**ํ•˜๊ณ  **์ง€์†์ ์œผ๋กœ ๋ฐฐํฌ(CD)**ํ•˜๋Š” ์ด ๊ณผ์ •์€ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์š”.

๊ทธ๋Ÿฐ๋ฐ ๋ฌธ์ œ๋Š” ๋ณด์•ˆ์ด์—์š”.
์ด๋ ‡๊ฒŒ ๋น ๋ฅธ ๊ฐœ๋ฐœ ์†๋„ ์†์—์„œ ๋ณด์•ˆ์„ ์†Œํ™€ํžˆ ํ•˜๋ฉด ์ทจ์•ฝ์ ์ด ๋ฐฐํฌ๋  ์œ„ํ—˜์ด ์ปค์ ธ์š”. ์—ฌ๊ธฐ์„œ DevSecOps์™€ CI/CD์˜ ํ†ตํ•ฉ์ด ์ค‘์š”ํ•œ ์ด์œ ๊ฐ€ ๋‚˜์˜ค์ฃ ! DevSecOps CI/CD๋Š” ๋ณด์•ˆ์„ ๊ฐœ๋ฐœ์˜ ์ดˆ๊ธฐ ๋‹จ๊ณ„๋ถ€ํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ์— ํ†ตํ•ฉํ•จ์œผ๋กœ์จ, ์•ˆ์ „ํ•˜๊ณ  ํšจ์œจ์ ์ธ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ๋‹ต๋‹ˆ๋‹ค.


๐Ÿ’ก DevSecOps CI/CD์˜ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ

๐Ÿ” 1. CI/CD์™€ ๋ณด์•ˆ์˜ ์™„๋ฒฝํ•œ ํ†ตํ•ฉ

DevSecOps CI/CD๋Š” ๊ฐœ๋ฐœ์—์„œ ๋ฐฐํฌ๊นŒ์ง€ ์ด์–ด์ง€๋Š” ๋ชจ๋“  ๋‹จ๊ณ„์—์„œ ๋ณด์•ˆ์„ ์ž๋™ํ™”ํ•ด์š”.

  • CI ๋‹จ๊ณ„: ์ฝ”๋“œ๋ฅผ ํ†ตํ•ฉํ•˜๋ฉด์„œ ์ •์  ๋ณด์•ˆ ํ…Œ์ŠคํŠธ(SAST)๋ฅผ ์‹คํ–‰.
  • CD ๋‹จ๊ณ„: ๋ฐฐํฌ ์ „์— ์‹คํ–‰๋˜๋Š” ๋™์  ๋ณด์•ˆ ํ…Œ์ŠคํŠธ(DAST) ๋ฐ ์ทจ์•ฝ์  ์Šค์บ”.

์ด ํ†ตํ•ฉ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด ๋ณด์•ˆ์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์›Œํฌํ”Œ๋กœ์— ๋…น์—ฌ๋‚ผ ์ˆ˜ ์žˆ์–ด์š”.

๐Ÿ› ๏ธ 2. ์ž๋™ํ™”๋œ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ

DevSecOps CI/CD์˜ ํ•ต์‹ฌ์€ ์ž๋™ํ™”๋œ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ์˜ˆ์š”.

  • SAST(์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ): ์ฝ”๋“œ ๋ ˆ๋ฒจ์—์„œ ์ทจ์•ฝ์ ์„ ํƒ์ง€.
  • DAST(๋™์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ): ์‹คํ–‰ ์ค‘์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ณด์•ˆ ์œ„ํ˜‘์„ ํƒ์ง€.
  • ์ปจํ…Œ์ด๋„ˆ ์Šค์บ”: Docker ์ด๋ฏธ์ง€์—์„œ ์•Œ๋ ค์ง„ ์ทจ์•ฝ์ ์„ ๊ฒ€์ถœ.

๐ŸŒ 3. ์‹ค์‹œ๊ฐ„ ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ํ”ผ๋“œ๋ฐฑ

CI/CD ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ๋ณด์•ˆ ์ด๋ฒคํŠธ๋ฅผ ์‹ค์‹œ๊ฐ„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ , ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํ”ผ๋“œ๋ฐฑ์„ ์ œ๊ณตํ•ด ๋น ๋ฅธ ์ˆ˜์ •์ด ๊ฐ€๋Šฅํ•ด์š”.


๐Ÿš€ DevSecOps CI/CD ์ ์šฉ ๋ฐฉ๋ฒ•

๐Ÿ“‹ 1. ๋ณด์•ˆ ์ค‘์‹ฌ์˜ CI/CD ํŒŒ์ดํ”„๋ผ์ธ ์„ค๊ณ„

  • ์ฝ”๋“œ ์ปค๋ฐ‹ ๋‹จ๊ณ„
    ์ฝ”๋“œ๊ฐ€ ์ €์žฅ์†Œ์— ํ‘ธ์‹œ๋  ๋•Œ SAST ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•ด ์ •์  ๋ณด์•ˆ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์„ธ์š”.
  • ๋นŒ๋“œ ๋‹จ๊ณ„
    ์˜์กด์„ฑ ๊ด€๋ฆฌ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•ด ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ทจ์•ฝ์ ์„ ํƒ์ง€ํ•˜์„ธ์š”. (์˜ˆ: Snyk, Dependabot)
  • ๋ฐฐํฌ ๋‹จ๊ณ„
    ๋ฐฐํฌ ์ „์— ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€ ์Šค์บ” ๋ฐ DAST๋ฅผ ํ†ตํ•ด ์‹คํ–‰ ์ค‘์ธ ํ™˜๊ฒฝ์—์„œ ๋ณด์•ˆ ์ ๊ฒ€์„ ์ˆ˜ํ–‰ํ•˜์„ธ์š”.

๐Ÿ› ๏ธ 2. ์ถ”์ฒœ ๋„๊ตฌ ํ™œ์šฉ

DevSecOps CI/CD๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๊ตฌ์ถ•ํ•˜๋ ค๋ฉด ์ ํ•ฉํ•œ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•ด์•ผ ํ•ด์š”.

  • SAST ๋„๊ตฌ: SonarQube, Checkmarx, Veracode
  • DAST ๋„๊ตฌ: OWASP ZAP, Burp Suite, Acunetix
  • CI/CD ๋„๊ตฌ: Jenkins, GitLab CI, CircleCI
  • ์ปจํ…Œ์ด๋„ˆ ๋ณด์•ˆ: Aqua Security, Sysdig, Prisma Cloud

๐ŸŒŸ 3. ํŒ€ ํ˜‘์—…๊ณผ ๊ต์œก

DevSecOps CI/CD๋Š” ๋‹จ์ˆœํžˆ ๋„๊ตฌ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ์—์š”. ํŒ€ ์ „์ฒด๊ฐ€ ๋ณด์•ˆ์„ ์ค‘์‹ฌ์œผ๋กœ ํ˜‘์—…ํ•ด์•ผ ํ•ด์š”.

  • ์ •๊ธฐ์ ์ธ ๋ณด์•ˆ ๊ต์œก๊ณผ ์›Œํฌ์ˆ์„ ์ง„ํ–‰ํ•˜์„ธ์š”.
  • ๊ฐœ๋ฐœํŒ€๊ณผ ๋ณด์•ˆํŒ€ ๊ฐ„์˜ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ์›ํ™œํžˆ ์œ ์ง€ํ•˜์„ธ์š”.

๐Ÿ’ช DevSecOps CI/CD์˜ ๋„์ž… ํšจ๊ณผ

๐Ÿ“‹ 1. ๋ณด์•ˆ ์‚ฌ๊ณ  ์˜ˆ๋ฐฉ

์ดˆ๊ธฐ๋ถ€ํ„ฐ ๋ณด์•ˆ์„ ํ†ตํ•ฉํ•จ์œผ๋กœ์จ ๋ฐฐํฌ ํ›„ ๋ฐœ๊ฒฌ๋˜๋Š” ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ์ค„์ผ ์ˆ˜ ์žˆ์–ด์š”.

๐Ÿš€ 2. ๊ฐœ๋ฐœ ์†๋„์™€ ํ’ˆ์งˆ ์œ ์ง€

๋ณด์•ˆ์„ ์ž๋™ํ™”ํ•˜๋ฉด์„œ๋„ CI/CD์˜ ์žฅ์ ์ธ ๋น ๋ฅธ ๊ฐœ๋ฐœ ์†๋„์™€ ํ’ˆ์งˆ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์–ด์š”.

๐ŸŒ 3. ๊ทœ์ œ ์ค€์ˆ˜์™€ ์‹ ๋ขฐ๋„ ํ–ฅ์ƒ

GDPR, CCPA์™€ ๊ฐ™์€ ๊ธ€๋กœ๋ฒŒ ๋ณด์•ˆ ๊ทœ์ œ๋„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ค€์ˆ˜ํ•  ์ˆ˜ ์žˆ์–ด์š”.


โ“ ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ (FAQ)

Q1. DevSecOps CI/CD๋ฅผ ๊ตฌ์ถ•ํ•˜๋ ค๋ฉด ์–ด๋–ค ๋„๊ตฌ๋ฅผ ์„ ํƒํ•ด์•ผ ํ•˜๋‚˜์š”?

โ–ถ๏ธ ํ”„๋กœ์ ํŠธ์™€ ํŒ€์˜ ๊ทœ๋ชจ์— ๋”ฐ๋ผ ๋‹ค๋ฅด์ง€๋งŒ, SonarQube(SAST), OWASP ZAP(DAST), Jenkins(CI/CD)๋Š” ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๋„๊ตฌ ์ค‘ ํ•˜๋‚˜์˜ˆ์š”.

Q2. ์†Œ๊ทœ๋ชจ ํŒ€์—์„œ๋„ DevSecOps CI/CD๋ฅผ ์ ์šฉํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

โ–ถ๏ธ ๋„ค, ์˜คํ”ˆ์†Œ์Šค ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ์ ์€ ๋น„์šฉ์œผ๋กœ๋„ DevSecOps CI/CD๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์–ด์š”.

Q3. DevSecOps CI/CD์™€ ์ผ๋ฐ˜ CI/CD์˜ ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

โ–ถ๏ธ DevSecOps CI/CD๋Š” ๋ณด์•ˆ์„ ๋ชจ๋“  ๊ฐœ๋ฐœ ๋‹จ๊ณ„์— ํ†ตํ•ฉํ•˜์—ฌ, ๋‹จ์ˆœํ•œ ์ž๋™ํ™”๋ฟ ์•„๋‹ˆ๋ผ ์•ˆ์ „์„ฑ๊นŒ์ง€ ๊ณ ๋ คํ•œ ํ”„๋กœ์„ธ์Šค์˜ˆ์š”.


โœ… ์ด ๊ธ€์„ ํ†ตํ•ด ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ธ์‚ฌ์ดํŠธ

DevSecOps CI/CD๋Š” ๋‹จ์ˆœํ•œ ๊ฐœ๋ฐœ ์ž๋™ํ™”๊ฐ€ ์•„๋‹ˆ๋ผ ๋ณด์•ˆ์„ ๋‚ด์žฅํ•œ ๊ฐœ๋ฐœ ๋ฌธํ™”์˜ˆ์š”. ์ด๋ฅผ ํ†ตํ•ด ๋ณด์•ˆ ์‚ฌ๊ณ ๋ฅผ ์‚ฌ์ „์— ์˜ˆ๋ฐฉํ•˜๊ณ , ๋น ๋ฅด๊ณ  ์•ˆ์ „ํ•œ ์†Œํ”„ํŠธ์›จ์–ด ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•ด์š”.

์—ฌ๋Ÿฌ๋ถ„๋„ DevSecOps CI/CD๋ฅผ ๋„์ž…ํ•ด ์•ˆ์ „ํ•˜๊ณ  ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ ๋ฌธํ™”๋ฅผ ๋งŒ๋“ค์–ด ๋ณด์„ธ์š”! ๐Ÿ˜Š


๐Ÿท๏ธ ๊ด€๋ จ ํƒœ๊ทธ

#DevSecOps, #CI/CD, #๋ณด์•ˆ์ž๋™ํ™”, #SAST, #DAST, #์ปจํ…Œ์ด๋„ˆ๋ณด์•ˆ

๋ฐ˜์‘ํ˜•