์ƒ์œ„ Docker ์ด๋ฏธ์ง€์˜ 19%์—๋Š” ๋ฃจํŠธ ์•”ํ˜ธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

์ง€๋‚œ 18์›” XNUMX์ผ ํ† ์š”์ผ, Kenna Security์˜ Jerry Gamblin ์ฒดํฌ ์‚ฌ์šฉ๋˜๋Š” ๋ฃจํŠธ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” Docker Hub์˜ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ์ด๋ฏธ์ง€ 1000๊ฐœ์ž…๋‹ˆ๋‹ค. 19%์˜ ๊ฒฝ์šฐ์—๋Š” ๋น„์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ƒ์œ„ Docker ์ด๋ฏธ์ง€์˜ 19%์—๋Š” ๋ฃจํŠธ ์•”ํ˜ธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

์•ŒํŒŒ์ธ ๋ฐฐ๊ฒฝ

๋ฏธ๋‹ˆ ์กฐ์‚ฌ๋ฅผ ํ•˜๊ฒŒ ๋œ ๊ณ„๊ธฐ๋Š” ์ด๋‹ฌ ์ดˆ ๋“ฑ์žฅํ•œ ํƒˆ๋กœ์Šค ์ทจ์•ฝ์  ๋ณด๊ณ ์„œ(Talos Vulnerability Report) ๋•Œ๋ฌธ์ด๋‹ค.ํƒˆ๋กœ์Šค-2019-0782), Cisco Umbrella์˜ Peter Adkins๋ฅผ ๋ฐœ๊ฒฌํ•œ ๋•๋ถ„์— ์ €์ž๋Š” ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” Alpine ์ปจํ…Œ์ด๋„ˆ ๋ฐฐํฌํŒ์˜ Docker ์ด๋ฏธ์ง€์— ๋ฃจํŠธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์—†๋‹ค๊ณ  ๋ณด๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.

โ€œAlpine Linux Docker ์ด๋ฏธ์ง€์˜ ๊ณต์‹ ๋ฒ„์ „(v3.3 ์ดํ›„)์—๋Š” ๋ฃจํŠธ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ NULL ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ทจ์•ฝ์ ์€ 2015๋…„ XNUMX์›”์— ๋„์ž…๋œ ํšŒ๊ท€๋กœ ์ธํ•ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์˜ ์š”์ ์€ ์ปจํ…Œ์ด๋„ˆ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” Alpine Linux ๋ฒ„์ „์„ ๋ฐฐํฌํ•˜๊ณ  Linux PAM ๋˜๋Š” ์‹œ์Šคํ…œ ์„€๋„์šฐ ํŒŒ์ผ์„ ์ธ์ฆ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋‹ค๋ฅธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•˜๋Š” ์‹œ์Šคํ…œ์ด ๋ฃจํŠธ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด NULL ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ—ˆ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.โ€

๋ฌธ์ œ์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธ๋œ Alpine์˜ Docker ์ด๋ฏธ์ง€ ๋ฒ„์ „์€ 3.3~3.9 ๋ฒ„์ „๊ณผ ์ตœ์‹  Edge ๋ฆด๋ฆฌ์Šค์˜€์Šต๋‹ˆ๋‹ค.

์ €์ž๋Š” ์˜ํ–ฅ์„ ๋ฐ›๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ œ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.

โ€œ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” Alpine ๋ฒ„์ „์œผ๋กœ ๋นŒ๋“œ๋œ Docker ์ด๋ฏธ์ง€์—์„œ๋Š” ๋ฃจํŠธ ๊ณ„์ •์„ ๋ช…์‹œ์ ์œผ๋กœ ๋น„ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์„ ์•…์šฉํ•  ๊ฐ€๋Šฅ์„ฑ์€ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์„ฑ๊ณตํ•˜๋ ค๋ฉด Linux PAM ๋˜๋Š” ๊ธฐํƒ€ ์œ ์‚ฌํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์™ธ๋ถ€๋กœ ์ „๋‹ฌ๋˜๋Š” ์„œ๋น„์Šค๋‚˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค."

๋ฌธ์ œ๋Š” ์ œ๊ฑฐ Alpine ๋ฒ„์ „ 3.6.5, 3.7.3, 3.8.4, 3.9.2 ๋ฐ edge(20190228 ์Šค๋ƒ…์ƒท)์—์„œ ์˜ํ–ฅ์„ ๋ฐ›์€ ์ด๋ฏธ์ง€์˜ ์†Œ์œ ์ž๋Š” ๋ฃจํŠธ๊ฐ€ ์žˆ๋Š” ์ค„์„ ์ฃผ์„ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์š”์ฒญ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. /etc/shadow ์•„๋‹ˆ๋ฉด ํŒจํ‚ค์ง€๊ฐ€ ๋ˆ„๋ฝ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š” linux-pam.

Docker Hub๋กœ ๊ณ„์†

Jerry Gamblin์€ "์ปจํ…Œ์ด๋„ˆ์—์„œ null ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ด€ํ–‰์ด ์–ผ๋งˆ๋‚˜ ํ”ํ•œ์ง€" ๊ถ๊ธˆํ•ดํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๊ทธ๋Š” ์ž‘์€ ๊ธ€์„ ์ผ๋‹ค. ๋ฐฐ์‰ฌ ์Šคํฌ๋ฆฝํŠธ, ๊ทธ ๋ณธ์งˆ์€ ๋งค์šฐ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

  • Docker Hub์˜ API์— ๋Œ€ํ•œ ์ปฌ ์š”์ฒญ์„ ํ†ตํ•ด ๊ฑฐ๊ธฐ์—์„œ ํ˜ธ์ŠคํŒ…๋˜๋Š” Docker ์ด๋ฏธ์ง€ ๋ชฉ๋ก์ด ์š”์ฒญ๋ฉ๋‹ˆ๋‹ค.
  • jq๋ฅผ ํ†ตํ•ด ํ•„๋“œ๋ณ„๋กœ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค. popularity, ๊ทธ๋ฆฌ๊ณ  ์–ป์€ ๊ฒฐ๊ณผ์—์„œ ์ฒ˜์Œ ์ฒœ ๊ฐœ๊ฐ€ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋“ค ๊ฐ๊ฐ์— ๋Œ€ํ•ด ๊ทธ๊ฒƒ์€ ์„ฑ์ทจ๋ฉ๋‹ˆ๋‹ค docker pull;
  • Docker Hub์—์„œ ๋ฐ›์€ ๊ฐ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. docker run ํŒŒ์ผ์˜ ์ฒซ ๋ฒˆ์งธ ์ค„์„ ์ฝ์œผ๋ฉด์„œ /etc/shadow;
  • ๋ฌธ์ž์—ด์˜ ๊ฐ’์ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ root:::0:::::, ์ด๋ฏธ์ง€ ์ด๋ฆ„์€ ๋ณ„๋„์˜ ํŒŒ์ผ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

๋ฌด์Šจ ์ผ์ด์—์š”? ์•ˆ์— ์ด ํŒŒ์ผ Linux ์‹œ์Šคํ…œ์—๋Š” ์ธ๊ธฐ ์žˆ๋Š” Docker ์ด๋ฏธ์ง€ ์ด๋ฆ„์ด ํฌํ•จ๋œ 194๊ฐœ ์ค„์ด ์žˆ์—ˆ๋Š”๋ฐ, ์—ฌ๊ธฐ์—๋Š” ๋ฃจํŠธ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์„ค์ •๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

โ€œ์ด ๋ชฉ๋ก์—์„œ ๊ฐ€์žฅ ์ž˜ ์•Œ๋ ค์ง„ ์ด๋ฆ„ ์ค‘์—๋Š” govuk/governmentpaas, hashicorp, microsoft, monsanto ๋ฐ mesosphere๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  kylemanna/openvpn์€ ๋ชฉ๋ก์—์„œ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ์ด๋ฉฐ, ํ†ต๊ณ„๋Š” ์ด 10์ฒœ๋งŒ ๊ฑด์ด ๋„˜์Šต๋‹ˆ๋‹ค.โ€

๊ทธ๋Ÿฌ๋‚˜ ์ด ํ˜„์ƒ ์ž์ฒด๊ฐ€ ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ๋ณด์•ˆ์— ์ง์ ‘์ ์ธ ์ทจ์•ฝ์„ฑ์„ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋ผ๋Š” ์ ์„ ์ƒ๊ธฐํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ชจ๋‘ ํ•ด๋‹น ํ˜„์ƒ์ด ์ •ํ™•ํžˆ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋˜๋Š”์ง€์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. (์œ„ Alpine ์‚ฌ๋ก€์˜ ์„ค๋ช… ์ฐธ์กฐ). ๊ทธ๋Ÿฌ๋‚˜ ์šฐ๋ฆฌ๋Š” "์ด์•ผ๊ธฐ์˜ ๋„๋•"์„ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๋ช…๋ฐฑํ•œ ๋‹จ์ˆœ์„ฑ์€ ์ข…์ข… ๋‹จ์ ์ด ์žˆ์œผ๋ฉฐ, ํ•ญ์ƒ ๊ธฐ์–ตํ•ด์•ผ ํ•˜๊ณ  ๊ธฐ์ˆ  ์ ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

PS

๋ธ”๋กœ๊ทธ์—์„œ๋„ ์ฝ์–ด๋ณด์„ธ์š”.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€