Google์ ์ฝ๋ ์์ฑ, ํ ์คํธ, ์กฐ๋ฆฝ ๋ฐ ์ ํ ๋ฐฐํฌ ๋จ๊ณ์์ ์ํ๋๋ ๊ณต๊ฒฉ์ผ๋ก๋ถํฐ ๊ฐ๋ฐ ์ธํ๋ผ๋ฅผ ๋ณดํธํ๋ ๊ธฐ์กด ๊ฒฝํ์ ์์ฝํ SLSA(Supply-Chain Levels for Software Artifacts) ํ๋ ์์ํฌ๋ฅผ ๋์ ํ์ต๋๋ค.
๊ฐ๋ฐ ํ๋ก์ธ์ค๋ ์ ์ ๋ณต์กํด์ง๊ณ ์์ผ๋ฉฐ ํ์ฌ ๋๊ตฌ์ ์์กดํ๊ณ ์์ต๋๋ค. ์ด๋ ์ต์ข ์ ํ์ ์ทจ์ฝ์ ์ ์๋ณํ๊ณ ์ ์ฉํ๋ ๊ฒ์ด ์๋๋ผ ๊ฐ๋ฐ ํ๋ก์ธ์ค ์์ฒด๋ฅผ ์์์ํค๋ ๊ฒ๊ณผ ๊ด๋ จ๋ ๊ณต๊ฒฉ์ ๋ฐ์ ์ ์ ๋ฆฌํ ์กฐ๊ฑด์ ๋ง๋ญ๋๋ค(์ผ๋ฐ์ ์ผ๋ก ๋ค์์ ๋ชฉํ๋ก ํ๋ ๊ณต๊ธ๋ง ๊ณต๊ฒฉ). ์ฝ๋ ์์ฑ ๊ณผ์ ์์ ์ ์์ ์ธ ๋ณ๊ฒฝ์ ๋์ ํ๊ณ , ๋ถ์ฐ ๊ตฌ์ฑ ์์์ ์ข ์์ฑ์ ๋์ฒดํฉ๋๋ค.
ํ๋ ์์ํฌ๋ ์ ํ์ ์ฝ๋ ๊ฐ๋ฐ, ์กฐ๋ฆฝ, ํ ์คํธ ๋ฐ ๋ฐฐํฌ ๋จ๊ณ์์ ์ ์์ ์ธ ๋ณ๊ฒฝ ์ํ๊ณผ ๊ด๋ จ๋ 8๊ฐ์ง ์ ํ์ ๊ณต๊ฒฉ์ ๊ณ ๋ คํฉ๋๋ค.
- A. ์ทจ์ฝ์ ์ผ๋ก ์ด์ด์ง๋ ๋ฐฑ๋์ด๋ ์จ๊ฒจ์ง ์ค๋ฅ๊ฐ ํฌํจ๋ ์์ค ์ฝ๋์ ๋ณ๊ฒฝ ์ฌํญ์ ํฌํจํฉ๋๋ค.
๊ณต๊ฒฉ์ ์: "Hypocrite Commits" - Linux ์ปค๋์ ์ทจ์ฝ์ ์ด ์๋ ํจ์น๋ฅผ ์น๊ฒฉ์ํค๋ ค๋ ์๋์ ๋๋ค.
๊ถ์ฅ ๋ณด์ ๋ฐฉ๋ฒ: ๋ ๋ช ์ ๊ฐ๋ฐ์๊ฐ ๊ฐ ๋ณ๊ฒฝ ์ฌํญ์ ๋ ๋ฆฝ์ ์ผ๋ก ๊ฒํ ํฉ๋๋ค.
- B. ์์ค ์ฝ๋ ์ ์ด ํ๋ซํผ์ ์์.
๊ณต๊ฒฉ์ ์: ๊ฐ๋ฐ์ ๋น๋ฐ๋ฒํธ๊ฐ ์ ์ถ๋ ํ PHP ํ๋ก์ ํธ์ Git ์ ์ฅ์์ ๋ฐฑ๋์ด๊ฐ ํฌํจ๋ ์ ์ฑ ์ปค๋ฐ์ ์ฃผ์ ํฉ๋๋ค.
๊ถ์ฅ ๋ณดํธ ๋ฐฉ๋ฒ: ์ฝ๋ ๊ด๋ฆฌ ํ๋ซํผ์ ๋ณด์ ๊ฐํ(PHP์ ๊ฒฝ์ฐ ๊ฑฐ์ ์ฌ์ฉ๋์ง ์๋ HTTPS ์ธํฐํ์ด์ค๋ฅผ ํตํด ๊ณต๊ฒฉ์ด ์ด๋ฃจ์ด์ก๋๋ฐ, ์ด๋ก ์ธํด SSH ํค๋ฅผ ํ์ธํ์ง ์๊ณ ๋น๋ฐ๋ฒํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๊ทธ์ธํ ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ณด๋ผ ์ ์์) ์ ๋ขฐํ ์ ์๋ MD5๊ฐ ๋น๋ฐ๋ฒํธ๋ฅผ ํด์ํ๋ ๋ฐ ์ฌ์ฉ๋์๋ค๋ ์ฌ์ค).
- C. ์ฝ๋๋ฅผ ๋น๋ ๋๋ ์ง์์ ํตํฉ ์์คํ
์ผ๋ก ์ ์กํ๋ ๋จ๊ณ์์ ๋ณ๊ฒฝํฉ๋๋ค(์ ์ฅ์์ ์ฝ๋์ ์ผ์นํ์ง ์๋ ์ฝ๋๊ฐ ๋น๋๋จ).
๊ณต๊ฒฉ์ ์: ๋น๋ ์ธํ๋ผ๋ฅผ ๋ณ๊ฒฝํ์ฌ Webmin์ ๋ฐฑ๋์ด๋ฅผ ์ฃผ์ ํ์ฌ ์ ์ฅ์์ ํ์ผ๊ณผ ๋ค๋ฅธ ์ฝ๋ ํ์ผ์ ์ฌ์ฉํฉ๋๋ค.
์ ์๋ ๋ณดํธ ๋ฐฉ๋ฒ: ์ด์ ๋ธ๋ฆฌ ์๋ฒ์์ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฌ ๋ฐ ์ฝ๋ ์์ค ์๋ณ.
- D. ์กฐ๋ฆฝ ํ๋ซํผ์ ์์.
๊ณต๊ฒฉ์ ์: SolarWinds ๊ณต๊ฒฉ, ์กฐ๋ฆฝ ๋จ๊ณ์์ SolarWinds Orion ์ ํ์ ๋ฐฑ๋์ด ์ค์น๊ฐ ๋ณด์ฅ๋์์ต๋๋ค.
์ ์๋ ๋ณดํธ ๋ฐฉ๋ฒ: ์กฐ๋ฆฝ ํ๋ซํผ์ ๋ํ ๊ณ ๊ธ ๋ณด์ ์กฐ์น ๊ตฌํ.
- E. ํ์ง์ด ๋ฎ์ ์ข
์์ฑ์ ํตํด ์
์ฑ ์ฝ๋๋ฅผ ํ๋ณดํฉ๋๋ค.
๊ณต๊ฒฉ์ ์: ๋ฌดํดํ ์ข ์์ฑ์ ์ถ๊ฐํ ๋ค์ ์ด ์ข ์์ฑ ์ ๋ฐ์ดํธ ์ค ํ๋์ ์ ์ฑ ์ฝ๋๋ฅผ ํฌํจํ์ฌ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์ด๋ฒคํธ ์คํธ๋ฆผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ฐฑ๋์ด๋ฅผ ๋์ ํฉ๋๋ค(์ ์ฑ ๋ณ๊ฒฝ ์ฌํญ์ git ์ ์ฅ์์ ๋ฐ์๋์ง ์์์ง๋ง ์์ฑ๋ MNP ํจํค์ง์๋ง ์กด์ฌํจ).
๊ถ์ฅ๋๋ ๋ณดํธ ๋ฐฉ๋ฒ: ๋ชจ๋ ์ข ์์ฑ์ SLSA ์๊ตฌ ์ฌํญ์ ๋ฐ๋ณต์ ์ผ๋ก ์ ์ฉํฉ๋๋ค(์ด๋ฒคํธ ์คํธ๋ฆผ์ ๊ฒฝ์ฐ ๊ฒ์ฌ๋ฅผ ํตํด ๊ธฐ๋ณธ Git ์ ์ฅ์์ ์ฝํ ์ธ ์ ์ผ์นํ์ง ์๋ ์ฝ๋ ์ด์ ๋ธ๋ฆฌ๊ฐ ๋๋ฌ๋ฉ๋๋ค).
- F. CI/CD ์์คํ
์์ ์์ฑ๋์ง ์์ ์ํฐํฉํธ๋ฅผ ์
๋ก๋ํฉ๋๋ค.
๊ณต๊ฒฉ ์: CodeCov ์คํฌ๋ฆฝํธ์ ์ ์ฑ ์ฝ๋๋ฅผ ์ถ๊ฐํ์ฌ ๊ณต๊ฒฉ์๊ฐ ๊ณ ๊ฐ ์ง์์ ํตํฉ ์์คํ ํ๊ฒฝ์ ์ ์ฅ๋ ์ ๋ณด๋ฅผ ์ถ์ถํ ์ ์๊ฒ ํ์ต๋๋ค.
์ ์๋ ๋ณดํธ ๋ฐฉ๋ฒ: ์ํฐํฉํธ์ ์์ค ๋ฐ ๋ฌด๊ฒฐ์ฑ์ ๋ํ ์ ์ด(CodeCov์ ๊ฒฝ์ฐ codecov.io ์น์ฌ์ดํธ์์ ์ ์ก๋ Bash Uploader ์คํฌ๋ฆฝํธ๊ฐ ํ๋ก์ ํธ ์ ์ฅ์์ ์ฝ๋์ ์ผ์นํ์ง ์์์ด ๋๋ฌ๋ ์ ์์)
- G. ํจํค์ง ์ ์ฅ์ ์์.
๊ณต๊ฒฉ์ ์: ์ฐ๊ตฌ์๋ค์ ์ผ๋ถ ์ธ๊ธฐ ์๋ ํจํค์ง ์ ์ฅ์์ ๋ฏธ๋ฌ๋ฅผ ๋ฐฐํฌํ์ฌ ์ ์ฑ ํจํค์ง๋ฅผ ๋ฐฐํฌํ ์ ์์์ต๋๋ค.
์ ์๋ ๋ณดํธ ๋ฐฉ๋ฒ: ๋ฐฐํฌ๋ ์ํฐํฉํธ๊ฐ ์ ์ธ๋ ์์ค ์ฝ๋์์ ์ปดํ์ผ๋์๋์ง ํ์ธํฉ๋๋ค.
- H. ์ฌ์ฉ์๊ฐ ์๋ชป๋ ํจํค์ง๋ฅผ ์ค์นํ๋๋ก ํผ๋์ ์ค๋๋ค.
๊ณต๊ฒฉ์ ์: ํ์ดํฌ์ค์ฟผํ (NPM, RubyGems, PyPI)์ ์ฌ์ฉํ์ฌ ์ธ๊ธฐ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ๊ณผ ์ ์ฌํ ์ ์ฅ์์ ํจํค์ง๋ฅผ ๋ฐฐ์นํฉ๋๋ค(์: ์ปคํผ ์คํฌ๋ฆฝํธ ๋์ ์ปคํผ ์คํฌ๋ฆฝํธ).
ํ์๋ ์ํ์ ์ฐจ๋จํ๊ธฐ ์ํด SLSA๋ ์ผ๋ จ์ ๊ถ์ฅ ์ฌํญ๊ณผ ๊ฐ์ฌ ๋ฉํ๋ฐ์ดํฐ ์์ฑ์ ์๋ํํ๋ ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. SLSA๋ ์ผ๋ฐ์ ์ธ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ์ ์์ฝํ๊ณ ๋ณด์ ๊ณ์ธต์ ๊ฐ๋ ์ ๋์ ํฉ๋๋ค. ๊ฐ ์์ค์์๋ ๊ฐ๋ฐ์ ์ฌ์ฉ๋๋ ์ํฐํฉํธ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ํน์ ์ธํ๋ผ ์๊ตฌ ์ฌํญ์ ๋ถ๊ณผํฉ๋๋ค. ์ง์๋๋ SLSA ์์ค์ด ๋์์๋ก ๋ ๋ง์ ๋ณดํธ ๊ธฐ๋ฅ์ด ๊ตฌํ๋๊ณ ์ธํ๋ผ๊ฐ ์ผ๋ฐ์ ์ธ ๊ณต๊ฒฉ์ผ๋ก๋ถํฐ ๋ ์ ๋ณดํธ๋ฉ๋๋ค.
- SLSA 1์์๋ ๋น๋ ํ๋ก์ธ์ค๊ฐ ์์ ํ ์๋ํ๋๊ณ ์์ค, ์ข ์์ฑ ๋ฐ ๋น๋ ํ๋ก์ธ์ค์ ๋ํ ์ ๋ณด๋ฅผ ํฌํจํ์ฌ ์ํฐํฉํธ๊ฐ ๋น๋๋๋ ๋ฐฉ๋ฒ์ ๋ํ ๋ฉํ๋ฐ์ดํฐ("์ถ์ฒ")๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค(GitHub Actions์ ๊ฐ์ฌ์ฉ ๋ฉํ๋ฐ์ดํฐ ์์ฑ๊ธฐ ์์๊ฐ ์ ๊ณต๋จ). SLSA 1์ ์ ์์ ์ธ ์์ ์ ๋ํ ๋ณดํธ ์์๋ฅผ ํฌํจํ์ง ์๊ณ ๋จ์ํ ์ฝ๋๋ฅผ ์๋ณํ๊ณ ์ทจ์ฝ์ฑ ๊ด๋ฆฌ ๋ฐ ์ํ ๋ถ์์ ์ํ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- SLSA 2 - ์ธ์ฆ๋ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๋ ๋ฒ์ ์ ์ด ๋ฐ ์ด์ ๋ธ๋ฆฌ ์๋น์ค์ ์ฌ์ฉ์ ์๊ตฌํ์ฌ ์ฒซ ๋ฒ์งธ ์์ค์ ํ์ฅํฉ๋๋ค. SLSA 2๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๋ ์ถ์ฒ๋ฅผ ์ถ์ ํ ์ ์์ผ๋ฉฐ ์ ๋ขฐํ ์ ์๋ ๋น๋ ์๋น์ค์ ๊ฒฝ์ฐ ์ฝ๋์ ๋ํ ๋ฌด๋จ ๋ณ๊ฒฝ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
- SLSA 3 - ์์ค ์ฝ๋์ ๋น๋ ํ๋ซํผ์ด ์ฝ๋ ๊ฐ์ฌ ๊ธฐ๋ฅ์ ๋ณด์ฅํ๊ณ ์ ๊ณต๋ ๋ฉํ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ ํ์ค ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋์ง ํ์ธํฉ๋๋ค. ๊ฐ์ฌ์๋ ํ์ค ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ํ๋ซํผ์ ์ธ์ฆํ ์ ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
- SLSA 4๋ ๊ฐ์ฅ ๋์ ์์ค์ผ๋ก, ๋ค์ ์๊ตฌ ์ฌํญ์ผ๋ก ์ด์ ์์ค์ ๋ณด์ํฉ๋๋ค.
- ๋ ๋ช ์ ๋ค๋ฅธ ๊ฐ๋ฐ์๊ฐ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์๋ฌด์ ์ผ๋ก ๊ฒํ ํฉ๋๋ค.
- ๋ชจ๋ ๋น๋ ๋จ๊ณ, ์ฝ๋ ๋ฐ ์ข ์์ฑ์ ์์ ํ ์ ์ธ๋์ด์ผ ํ๋ฉฐ, ๋ชจ๋ ์ข ์์ฑ์ ๋ณ๋๋ก ์ถ์ถ ๋ฐ ํ์ธ๋์ด์ผ ํ๋ฉฐ, ๋น๋ ํ๋ก์ธ์ค๋ ์คํ๋ผ์ธ์์ ์ํ๋์ด์ผ ํฉ๋๋ค.
- ๋ฐ๋ณต ๊ฐ๋ฅํ ๋น๋ ํ๋ก์ธ์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๋น๋ ํ๋ก์ธ์ค๋ฅผ ์ง์ ๋ฐ๋ณตํ๊ณ ์ ๊ณต๋ ์์ค ์ฝ๋์์ ์คํ ํ์ผ์ด ๋น๋๋์๋์ง ํ์ธํ ์ ์์ต๋๋ค.
์ถ์ฒ : opennet.ru