VulDock ์ Vulnerability
์ Docker
์ ์๊ธ์๋ฅผ ๋ฐ์ ๋ง๋ ๋จ์ด๋ก, Vulnerability Scanning Tool for Docker Images ์ฆ, ๋์ปค ์ด๋ฏธ์ง ์ทจ์ฝ์ ํ์ง ํด
์ด๋ค.
Vuldock์ ์ปจํ
์ด๋๋ฅผ ์คํํ๊ธฐ ์ ์ ์ฌ์ฉ๋ ์ด๋ฏธ์ง๊ฐ ๊ฐ์ง๊ณ ์์ ์ ์๋ ๋ฒ์ ๋ฑ์ ์ ์ฌ์ ์ธ ๋ฌธ์ ๊ฒ์ฌ๋ฅผ ๋ชฉํ๋ก ํ๋ฉฐ, python ๊ธฐ๋ฐ์ ๋ฆฌ๋
์ค ํ๊ฒฝ์์ ์คํ๋๋ ํ๋ก๊ทธ๋จ์ด๋ค.
๋ํ, Vuldock์ ์ฌ๋ฌ ๊ฐ์ ์ปจํ
์ด๋๋ก๋ถํฐ ์ด๋ฃจ์ด์ง ์๋น์ค ๊ตฌ์ถ์ ์ํ docker-compose๋ก ์์ฑ๋ ๋์ปค ์ด๋ฏธ์ง
๋ถ์์ ์ ํฉํ๋ฉฐ, ํด์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ํด๋น ์ด๋ฏธ์ง๊ฐ ์คํํ ๋ก์ปฌ ํ๊ฒฝ์ ๋ค์ด๋ก๋ ๋์ด ์์ด์ผํ๋ค.
์๋น์ค ๊ฐ์๋ ๋ค์๊ณผ ๊ฐ๋ค.
- ๋์ปค ์ด๋ฏธ์ง ๋ถ์์ docker-compose ํ์ผ์ ์ด์ฉํด ์๋น์ค ๋ชฉ๋ก์ ํ์ธ ํ, ์๋น์ค๋ค์
์ทจ์ฝ์ ๊ณผ ์ต์ ๋ฒ์ ์ฌ๋ถ
๋ฑ์ ๊ฒ์ฌํ๋ค. - ์๋น์ค ์ทจ์ฝ์ ๊ฒ์ฌ์๋
Searchsploit
ํด์ด ์ฌ์ฉ๋์์ผ๋ฉฐ, ํด๋น ํด์ ์ด์ฉํ์ฌ os ๋ฐ version์ ํด๋น๋๋ ์ทจ์ฝ์ ์ ๊ฒ์ํ๋ค. - ๋ํ
์น ํฌ๋กค๋ง
์ ์ด์ฉํ์ฌ ๊ฐ ์ทจ์ฝ์ ์ ํด๋นํ๋CVE ๋ฒํธ
๋ฅผ ๋งคํํด์ค๋ค. - ๋ถ์ ๋์ ์ด๋ฏธ์ง ์ค ํฌํจ๋ ์๋น์ค๊ฐ ๋ฆฌ๋
์ค ๊ธฐ๋ฐ์ธ๋ฐ ๊ณต์ ์ด๋ฏธ์ง๊ฐ ์๋ ๊ฒฝ์ฐ,
์ฃผ์์ ๋ณดํต์ ๊ธฐ๋ฐ์์ค_๊ธฐ์ ์ _์ทจ์ฝ์ ๊ฒ์ฌ
๋ฌธ์ ๊ฐ์ด๋์ ๋ฐ๋ผ ์ถ๊ฐ ์ทจ์ฝ์ ๊ฒ์ฌ๋ฅผ ์งํํ๋ค. - ์ทจ์ฝ์ ๊ฒ์ฌ ํ ๊ฒฐ๊ณผ๋ ํ๋ก ์ ๋ ฌํ์ฌ ํฐ๋ฏธ๋์ ์ถ๋ ฅ๋๋ค.
์์ธํ ํด ์ค๋ช ์ ๋ฐ์ 'VulDock ์ธ๋ถ ์ค๋ช ' ์ฐธ๊ณ ๋ฐ๋๋๋ค.
2021.07 - 2021.08
- 2021 Incognito์์ ์งํํ ํ๋ก์ ํธ๋ก, ์ฃผ์ ์ ์ ๋ถํฐ ๊ฐ๋ฐ๊น์ง ํ๋ณ๋ก ์งํํ ํ๋ก์ ํธ์ด๋ค.
- ๋์ปค ์ด๋ฏธ์ง ์ทจ์ฝ์ ํ์ง ํด์ธ 'VulDock'์
๊ฐ๋ฐํ๊ฒ ๋ ๋ฐฐ๊ฒฝ
์ ๋ค์๊ณผ ๊ฐ๋ค.- 2021๋ ๊ธฐ์ค, ์ปจํ ์ด๋ ์ด๋ฏธ์ง ๋ณด์ ๋ถ์ํ ๊ฒฐ๊ณผ 51%์ ์ด๋ฏธ์ง์ ์ต์ 1๊ฐ ์ด์์ ์ค๋ํ ์ทจ์ฝ์ ์ด ํฌํจ๋์๊ณ , 2020๋ 2์ฌ๋ถ๊ธฐ ๋์ ์ปจํ ์ด๋ ํ๊ฒฝ๊ณผ Docker ์ด๋ฏธ์ง ๊ณต๊ธ๋ง์ ๊ฒจ๋ฅํ ๋ํ์ ์ธ ๊ณต๊ฒฉ์ด 600% ์ฆ๊ฐํ์๋ค.
- Docker ์ทจ์ฝ์ ์ ์ด์ฉํ์ฌ ๊ณต๊ฒฉํ ์ฌ๋ก๊ฐ ์ ์ง ์๊ฒ ๋ฐ์ํ ํ์ค์ ์ง์ํ์ฌ, docker ์ด๋ฏธ์ง๋ฅผ ์ปจํ ์ด๋ํํ์ฌ ์ฌ์ฉํ๊ธฐ ์ ์ ์ด๋ฏธ์ง๋ฅผ ํตํด ์ทจ์ฝ์ ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์๋ ํด ๊ฐ๋ฐ์ ๊ณํํ๊ฒ ๋์๋ค.
- ์ฃผ์ ์ ์ ํ, ์๋ฃ ์กฐ์ฌ ๊ณผ์ ์ ๊ฑฐ์น ํ ์ธ์ด
ํด์ ๋ฐฉํฅ์ฑ
์ ๋ค์๊ณผ ๊ฐ๋ค.- โ ์ปจํ ์ด๋๋ฅผ ์คํํ๊ธฐ ์ ์ ์ฌ์ฉ๋ ์ด๋ฏธ์ง๊ฐ ๊ฐ์ง๊ณ ์์ ์ ์๋ ๋ฒ์ ๋ฑ์ ์ ์ฌ์ ์ธ ๋ฌธ์ ๊ฒ์ฌ
- โ ๋์ปค ์ด๋ฏธ์ง ๋ถ์ ์ docker-compose ํ์ผ์ ์ฌ์ฉํด ์๋น์ค ๋ชฉ๋ก ํ์ธ
- ์ทจ์ฝ์ ์ ๋ถ์ํ ๋ ํด๋น ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ด๋ค ์๋น์ค๋ฅผ ์ฌ์ฉํ๋์ง ํ์ธํ๊ธฐ ์ํจ
- โ dagda์ ๊ฐ์ ๊ธฐ์กด์ ์ทจ์ฝ์ ์ ๊ฒ ํด์ ์ฐ๋ฆฌ๋ง์ ์ฐจ๋ณ์ฑ ํฌํจ
์ด๋ฆ | Github |
---|---|
๊นํ๋ฏผ | HyeM207 |
์์ ์ | JJ503 |
์ ๋ฏผํฌ | jeongminhui99 |
ํฉ์์ | wwyyww |
- ํด๋น ๊นํ๋ธ ๋ ํ์งํ ๋ฆฌ๋ฅผ, ๋ถ์ํ ๋์ปค ์ด๋ฏธ์ง๊ฐ ์๋ pc์ ๋ค์ด๋ก๋ ํน์ git pull ํ๋ค.
(๋จ, pc๋ ๋ฆฌ๋ ์ค ๊ธฐ๋ฐ์ ์ด์์ฒด์ ์ด์ด์ผ ํ๋ค) - ํฐ๋ฏธ๋๋ก ํด์ ๋ค์ด๋ก๋ํ ๊ฒฝ๋ก ์ด๋ํ์ฌ, ์ฌ์ฉ์๊ฐ ๋ช
๋ น์ด๋ก ์ต์
๊ณผ ํจ๊ป ์ด๋ฏธ์ง ์ด๋ฆ์ ํ๋ผ๋ฏธํฐ๋ก ์
๋ ฅ ์คํํ๋ค.
VulDock (-์ต์ 1๊ฐ ์ด์) ๋์ปค์ด๋ฏธ์ง๋ช
ex.VulDock -sn test-image
- ๋ช
๋ น์ด๋ฅผ ์
๋ ฅ ํ, ํด์ ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ์ด๋ฏธ์ง์ด๋ฆ์ผ๋ก ๋์ปค์ด๋ฏธ์ง๊ฐ ์๋ ๊ฒฝ๋ก๋ฅผ ์ฐพ์ ํฐ๋ฏธ๋์ ๋์ด๋ค.
์ฌ์ฉ์๋ ํฐ๋ฏธ๋์ ์ถ๋ ฅ๋ ๊ฒฝ๋ก ์ค ๋ถ์ํ ๋์ปค์ด๋ฏธ์ง๊ฐ ์๋ ๊ฒฝ๋ก์ ๋ฒํธ๋ฅผ ์ ๋ ฅํ๋ค. - ์ดํ, ์ต์ ์ ๋ฐ๋ผ ๋ถ์ํ ๊ฒฐ๊ณผ๋ฅผ ํฐ๋ฏธ๋๋ก ๋ณด์ฌ์ค๋ค.
-h
: ์๋น์ค ์ฌ์ฉ ๋ฐฉ๋ฒ ์ถ๋ ฅ-s
: ์๋น์ค ์ด๋ฆ๊ณผ ๋ฒ์ ์ถ๋ ฅ-o
: ์คํผ์ ์ด๋ฏธ์ง ๊ฒ์ฌ-n
: ์ด ์ทจ์ฝ์ ๊ฐ์-t
: ์ทจ์ฝ์ ์ด๋ฆ๋ง ์ถ๋ ฅ-c
: CVE๋ง ์ถ๋ ฅ-l
: CVE ๋งํฌ๋ง ์ถ๋ ฅ-a
: ๋ชจ๋ ์ต์ ์ ์ฉ
VulDock์ ์ด 3๊ฐ์ ํ์ด์ฌ ํ์ผ๋ก ๊ตฌ์ฑ๋๋ฉฐ, ๊ฐ ํ์ผ๋ณ ์ฃผ์ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ๋ค.
main.py
- ์ด๋ฏธ์ง ๊ฒฝ๋ก์ docker-compose ํ์ผ ๊ฒฝ๋ก ํ์
- ์ฌ์ฉ ์๋น์ค์ ์ด๋ฆ๊ณผ ๋ฒ์ ๋ถ์
- 'Searchsploit' ํด๊ณผ ์น ํฌ๋กค๋ง์ ํตํ CVE Mapping์ผ๋ก ์ทจ์ฝ์ ๊ฒ์ฌcheck_linux.py
- '์ฃผ์์ ๋ณดํต์ ๊ธฐ๋ฐ์์ค)๊ธฐ์ ์ _์ทจ์ฝ์ ' ๊ธฐ๋ฐ์ผ๋ก ์์ฑํ ์ทจ์ฝ์ ๊ฒ์ฌ ์ฝ๋๋ก Linux ๊ธฐ๋ฐ์ OS ์๋น์ค ์ทจ์ฝ์ ๊ฒ์ฌprint_table.py
- ๋ถ์ ๊ฒฐ๊ณผ ํ๋ฉด ๊ตฌ์ฑ์ ์ํด ํ ์์ฑ