์ฃผ์์ ๋ณดํต์ ๊ธฐ๋ฐ์์ค ์ทจ์ฝ์ ๋ถ์ยทํ๊ฐ ๊ฐ์ด๋(๊ด๋ฆฌ/๋ฌผ๋ฆฌ/๊ธฐ์ )๋ฅผ GitHub Pages๋ก ๊ตฌ์ถํ๋ ํ๋ก์ ํธ. ๋ณด์ ์ค๋ฌด์๊ฐ PDF 1,205ํ์ด์ง๋ฅผ ๋ค์ ์ด๋ ๋์ ์น์์ ์ฆ์ ๊ฒ์ยท์ฐธ์กฐยท๋ฒ๋ น๋งคํํ ์ ์๊ฒ ํ๋ ๊ฒ์ด ๋ชฉํ.
- ๋ณธ ๊ณต๊ณต์ ์๋ฌผ์ ๊ณต๊ณต๋๋ฆฌ "์ถ์ฒํ์+์์ ์ ์ด์ฉ๊ธ์ง+๋ณ๊ฒฝ๊ธ์ง" ์กฐ๊ฑด์ ๋ฐ๋ผ ์ด์ฉํ ์ ์์ต๋๋ค.
- ์ถ์ฒ: ํ๊ตญ์ธํฐ๋ท์งํฅ์(KISA)
- ๋ฌธ์๋ช : "2026 ์ฃผ์์ ๋ณดํต์ ๊ธฐ๋ฐ์์ค ๊ด๋ฆฌยท๋ฌผ๋ฆฌ์ ์ทจ์ฝ์ ๋ถ์ยทํ๊ฐ ๋ฐฉ๋ฒ ์๋ด์" / "2026 ์ฃผ์์ ๋ณดํต์ ๊ธฐ๋ฐ์์ค ๊ธฐ์ ์ ์ทจ์ฝ์ ๋ถ์ยทํ๊ฐ ๋ฐฉ๋ฒ ์์ธ๊ฐ์ด๋"
- ๋ชจ๋ ํ์ด์ง Footer์ ๊ณต๊ณต๋๋ฆฌ ๋งํฌ + ์ถ์ฒ ํ๊ธฐ ํ์
- ์๋ฌธ ๋ด์ฉ ๋ณ๊ฒฝ ๊ธ์ง โ ๊ทธ๋๋ก ๊ฒ์ฌ (์คํ์ ์์ ๋ ํ์ง ์์)
- ์์ ์ ์ด์ฉ ๊ธ์ง โ ์ฌ์ดํธ์ ๊ด๊ณ ยท์ ๋ฃํ ๋ถ๊ฐ
- ๊ณต๊ณต๋๋ฆฌ ๋ก๊ณ ์ด๋ฏธ์ง:
/assets/images/gonggong-nuri.png์ ๋ฐฐ์น
- PDF ์๋ฌธ์ ์๋ ๋ด์ฉ์ ์ ๋ ์ถ๊ฐํ์ง ์๋๋ค
- ํญ๋ชฉ์ฝ๋, ํญ๋ชฉ๋ช , ์ ๊ฒ๋ด์ฉ, ํ๋จ๊ธฐ์ค, ๊ด๊ณ๋ฒ๊ท ๋ฑ์ ๋ฐ๋์ PDF ํ์ฑ ๊ฒฐ๊ณผ์์๋ง ๊ฐ์ ธ์จ๋ค
- ๋ฒ๋ น ์กฐ๋ฌธ ๋ด์ฉ์ ์ฌ์ฉ์๊ฐ ๋ณ๋ ์ ๊ณตํ ๋ฒ๋ น ๋ฐ์ดํฐ์์๋ง ๊ฐ์ ธ์จ๋ค
- ๋ถํ์คํ ๋ด์ฉ์ ๋น์นธ/TBD๋ก ๋จ๊ธฐ๊ณ ์ฌ์ฉ์์๊ฒ ํ์ธ์ ์์ฒญํ๋ค
- Claude๊ฐ ์์ชฝ PDF์ ํญ๋ชฉ๋ช ยท์ธ๋ถ์ค๋ช ยท์ ๊ฒ๋ด์ฉ ํ ์คํธ๋ฅผ ๊ทผ๊ฑฐ๋ก ์ด์์ ์์ฑํ๋ค
- ๊ฐ ๋งคํ์๋ ๋ฐ๋์ ์๋ 3๊ฐ์ง๋ฅผ ํจ๊ป ๊ธฐ๋กํ๋ค: (1) ๊ทผ๊ฑฐ: ์ด๋ค ํ ์คํธ๋ฅผ ๋ณด๊ณ ์ฐ๊ฒฐํ๋์ง (์์ชฝ ํญ๋ชฉ์ ๊ตฌ์ฒด์ ๋ฌธ๊ตฌ ์ธ์ฉ) (2) ํ์ ๋: "๋์" / "์ค๊ฐ" / "๋ฎ์" (3) ๋งคํ์ ํ: "์ง์ ๊ตฌํ" (๊ธฐ์ ํญ๋ชฉ์ด ๊ด๋ฆฌํญ๋ชฉ์ ์ง์ ์ ๊ตฌํ์๋จ) / "๊ด๋ จ" (๋๋ฉ์ธ์ ๊ฐ์ง๋ง 1:1 ๋์์ ์๋) / "๊ฐ์ " (๋์ ๋งฅ๋ฝ์์ ์ฐ๊ด)
- ํ์ ๋ "๋ฎ์" ํญ๋ชฉ์ ์ฌ์ดํธ์ ๋ฐ๋ก ๋ฐ์ํ์ง ์๊ณ ๋ณ๋ ๊ฒํ ๋ชฉ๋ก์ผ๋ก ๋ถ๋ฆฌํ๋ค
- ์ด์ ์์ฑ ํ ๋ฐ๋์ ์ฌ์ฉ์ ๊ฒ์๋ฅผ ๊ฑฐ์ณ ํ์ ํ๋ค
- ์ฌ์ฉ์๊ฐ ์์ /์ญ์ /์ถ๊ฐํ ๊ฒฐ๊ณผ๊ฐ ์ต์ข ๋ณธ์ด ๋๋ค
- ํ ๋ฒ์ ์ ์ฒด๋ฅผ ๋ง๋ค์ง ์๋๋ค
- ๊ฐ ๋จ๊ณ ์๋ฃ ํ ์ฌ์ฉ์ ๊ฒ์๋ฅผ ๋ฐ๊ณ ๋ค์ ๋จ๊ณ๋ก ๋์ด๊ฐ๋ค
- ๊ฐ ๋จ๊ณ์์ ์์ฑํ ํ์ผ ๋ชฉ๋ก๊ณผ ๋ณ๊ฒฝ์ฌํญ์ ๋ช ํํ ๋ณด๊ณ ํ๋ค
- ์ฌ์ฉ์ ํ๊ฒฝ: ๋ก์ปฌ ๊ฐ๋ฐํ๊ฒฝ ์์. ๋ธ๋ผ์ฐ์ (github.dev)๋ง ์ฌ์ฉ.
- ์์ ๋ฐฉ์: Claude Code๊ฐ GitHub ๋ ํฌ์ ๋ธ๋์น๋ฅผ ์์ฑํ๊ณ ์ง์ ์ฝ๋๋ฅผ ์์ฑยท์ปค๋ฐยทํธ์ํ๋ค.
- ๊ฒ์ ๋ฐฉ์: ์ฌ์ฉ์๊ฐ GitHub์์ ๋ธ๋์น/PR ํ์ธ ํ main์ mergeํ๋ค.
- PDF ์์น: ๋ ํฌ์
source-pdf/ํด๋์ ์์. Claude Code๋ ์ฌ๊ธฐ์ ์ฝ๋๋ค. - ๋ฏธ๋ฆฌ๋ณด๊ธฐ: merge ํ GitHub Pages ์๋ ๋น๋ (1~2๋ถ) โ ๋ฐฐํฌ URL์์ ํ์ธ.
- ํ์ผ ์์น:
source-pdf/๊ด๋ฆฌ_๋ฌผ๋ฆฌ์ _์๋ด์.pdf(๋ ํฌ ๋ด) - ๊ด๋ฆฌ์ ํญ๋ชฉ: A-1 ~ A-118 (118๊ฐ)
- ๋ฌผ๋ฆฌ์ ํญ๋ชฉ: P-1 ~ P-18 (18๊ฐ)
- ํฉ๊ณ: 136๊ฐ ํญ๋ชฉ
- 13๊ฐ ๊ด๋ฆฌ ๋๋ฉ์ธ + 1๊ฐ ๋ฌผ๋ฆฌ ๋๋ฉ์ธ:
- ์ ๋ณด๋ณดํธ ์ ์ฑ (A-1~7)
- ์ ๋ณด๋ณดํธ ์กฐ์ง (A-8~9)
- ์์ฐ๋ถ๋ฅ (A-10~14)
- ์ํ๊ด๋ฆฌ (A-15~22)
- ๊ฐ์ฌ (A-23~26)
- ์ธ์ ๋ณด์ (A-27~34)
- ์ธ๋ถ์๋ณด์ (A-35~46)
- ๊ต์ก ๋ฐ ํ๋ จ (A-47~52)
- ์ธ์ฆ ๋ฐ ๊ถํ๊ด๋ฆฌ (A-53~59)
- ์ ๊ทผํต์ (A-60~77)
- ์ด์๊ด๋ฆฌ (A-78~102)
- ๋ณด์๊ด๋ฆฌ (A-103~113)
- ์ฌ๊ณ ๋์ / ์ ๋ฌด์ฐ์์ฑ (A-114~118)
- ๋ฌผ๋ฆฌ๋ณด์ (P-1~18)
- ๊ฐ ํญ๋ชฉ ๊ตฌ์กฐ: ํญ๋ชฉ๋ฒํธ, ํญ๋ชฉ๋ช , ๊ด๋ จ์กฐ์ง, ์ธ๋ถ์ค๋ช , ๊ณ ๋ ค์ฌํญ, ๊ด๊ณ๋ฒ๊ท(๊ณตํต/๊ณต๊ณต/๊ธ์ต/ICT), ํ์ธ๋์
- ๋ถ๋ก: ์ฐธ๊ณ ์๋ฃ 15๊ฑด + ์์์์ 43๊ฑด
- ํ์ผ ์์น:
source-pdf/๊ธฐ์ ์ _์์ธ๊ฐ์ด๋.pdf(๋ ํฌ ๋ด) - 11๊ฐ ํ๋ซํผ, 363๊ฐ ํญ๋ชฉ:
- UNIX ์๋ฒ: U-01 ~ U-67 (67๊ฐ) โ ๊ณ์ ๊ด๋ฆฌ/ํ์ผ๋๋ ํ ๋ฆฌ/์๋น์ค/ํจ์น/๋ก๊ทธ
- Windows ์๋ฒ: W-01 ~ W-64 (64๊ฐ) โ ๊ณ์ ๊ด๋ฆฌ/์๋น์ค/ํจ์น/๋ก๊ทธ/๋ณด์๊ด๋ฆฌ
- ์น ์๋น์ค(๋ณด์์ค์ ): WEB-01 ~ WEB-26 (26๊ฐ)
- ๋ณด์ ์ฅ๋น: S-01 ~ S-23 (23๊ฐ)
- ๋คํธ์ํฌ ์ฅ๋น: N-01 ~ N-38 (38๊ฐ)
- ์ ์ด์์คํ : C-01 ~ C-51 (51๊ฐ)
- PC: PC-01 ~ PC-18 (18๊ฐ)
- DBMS: D-01 ~ D-26 (26๊ฐ)
- ์ด๋ํต์ : M-01 ~ M-04 (4๊ฐ)
- ์น(Web App): ์ฝ์ด์ฝ๋ 21์ข (CI, SI, DI, EP, IL, XS, CF, SF, BF, IA, IN, PR, PV, FU, FD, IS, SN, CC, AE, AU, WM)
- ๊ฐ์ํ ์ฅ๋น: HV-01 ~ HV-25 (25๊ฐ)
- ๊ฐ ํญ๋ชฉ ๊ตฌ์กฐ: ํญ๋ชฉ์ฝ๋, ์ค์๋(์/์ค/ํ), ๋ถ๋ฅ, ํญ๋ชฉ๋ช , ์ ๊ฒ๋ด์ฉ, ์ ๊ฒ๋ชฉ์ , ๋ณด์์ํ, ์ฐธ๊ณ , ํ๋จ๊ธฐ์ค(์ํธ/์ทจ์ฝ), ์กฐ์น๋ฐฉ๋ฒ, ์กฐ์น์์ํฅ, ์ ๊ฒ๋ฐ์กฐ์น์ฌ๋ก(OS๋ณ ์ปค๋งจ๋)
- ๊ด๊ณ๋ฒ๊ท ์์ (๊ธฐ์ ์ค๋ฌด ์ค์ฌ)
- ์ ๋ณดํต์ ๊ธฐ๋ฐ ๋ณดํธ๋ฒ โ ์ 5,6,7,9,10,11,12,13,15,27์กฐ
- ์ ๋ณดํต์ ๊ธฐ๋ฐ ๋ณดํธ๋ฒ ์ํ๋ น โ ์ 9์กฐ
- ๊ฐ์ธ์ ๋ณด ๋ณดํธ๋ฒ โ ์ 21,24์2,26,28,29,31,32์2,34์กฐ
- ๊ฐ์ธ์ ๋ณด ๋ณดํธ๋ฒ ์ํ๋ น โ ์ 16,30,39์กฐ
- ๊ฐ์ธ์ ๋ณด์ ์์ ์ฑ ํ๋ณด์กฐ์น ๊ธฐ์ค โ ์ 4~11,13์กฐ
- ๊ตญ๊ฐ ์ ๋ณด๋ณด์ ๊ธฐ๋ณธ์ง์นจ โ 44๊ฐ ์กฐ๋ฌธ (์ 4~102์กฐ ์ค ๋ค์)
- ๋ณด์์ ๋ฌด๊ท์ โ ์ 22์กฐ
- ์ ์๊ธ์ต๊ฑฐ๋๋ฒ โ ์ 21,21์2,21์3,21์5,21์6์กฐ
- ์ ์๊ธ์ต๊ฐ๋ ๊ท์ โ 25๊ฐ ์กฐ๋ฌธ + [๋ณํ2]
- ์ ์ฉ์ ๋ณด์ ๊ฐ๋ ๊ท์ โ ์ 20์กฐ
- ์ ๋ณดํต์ ๋ง๋ฒ โ ์ 45,45์3,46,47์4,48์2~4,50์3,52์กฐ
- ISMS-P ์ธ์ฆ ๊ณ ์ โ [๋ณํ7] ์ ์ฒด
- ์ ๋ณด๋ณดํธ์ฐ์ ์งํฅ๋ฒ
- ์ ์์ ๋ถ๋ฒ โ ์ 35์กฐ
- ํ๋ ์์ํฌ: Jekyll (GitHub Pages ๋ค์ดํฐ๋ธ ๋น๋)
- ํ ๋ง: just-the-docs (๋ฌธ์ ์ฌ์ดํธ ์ต์ ํ)
- ๋ฐ์ดํฐ ๊ด๋ฆฌ:
_data/ํด๋์ YAML ํ์ผ๋ก ๊ตฌ์กฐํ - ๊ฒ์: just-the-docs ๋ด์ฅ ๊ฒ์ + lunr.js
- ์ฝ๋ ํ์ด๋ผ์ดํ : Rouge (๊ธฐ์ ์ ๊ฐ์ด๋ ์ ๊ฒ ์ปค๋งจ๋์ฉ)
- PDF ํ์ฑ: Python + pymupdf(fitz)
- ํธ์คํ : GitHub Pages
- ๋ผ์ด์ ์ค: ์ฌ์ดํธ ๊ตฌ์กฐ/์ฝ๋๋ MIT, ์๋ฌธ ์ฝํ ์ธ ๋ ๊ณต๊ณต๋๋ฆฌ ์ 4์ ํ
๊ฐ Step๋ง๋ค Claude Code๊ฐ ๋ธ๋์น๋ฅผ ์์ฑํ๊ณ ์์ ํ ํธ์ํ๋ค. ์ฌ์ฉ์๊ฐ GitHub์์ ํ์ธ ํ main์ mergeํ๋ฉด ๋ค์ Step์ผ๋ก ์งํํ๋ค.
๋ธ๋์น: step-1-init
์ํํ ์์
:
1. Jekyll ํ๋ก์ ํธ ๊ตฌ์กฐ ์์ฑ (just-the-docs ํ
๋ง)
2. _config.yml ์ค์ (ํ๊ตญ์ด, ๋ค๋น๊ฒ์ด์
๊ตฌ์กฐ, ๊ฒ์ ์ค์ )
3. ๋ฉ์ธ ํ์ด์ง(index.md) ์์ฑ
4. ๊ณต๊ณต๋๋ฆฌ Footer ํฌํจํ ๋ ์ด์์ ์ปค์คํฐ๋ง์ด์ง
5. .gitignore, README.md, LICENSE ์์ฑ
6. ์ปค๋ฐ + ํธ์
์์ฑํ ํ์ผ:
- _config.yml
- Gemfile
- index.md
- _includes/footer_custom.html (๊ณต๊ณต๋๋ฆฌ ํ์)
- README.md
- LICENSE
- .gitignore
โป ๊ณต๊ณต๋๋ฆฌ ๋ก๊ณ ์ด๋ฏธ์ง(assets/images/gonggong-nuri.png)๋ ์ฌ์ฉ์๊ฐ ๋ณ๋ ์
๋ก๋
โป merge ํ GitHub Pages URL์์ ๋ฉ์ธ ํ์ด์ง ๋จ๋์ง ํ์ธ
๋ธ๋์น: step-2-parse
์ํํ ์์
:
1. source-pdf/ ํด๋์ PDF ์ฝ๊ธฐ (pymupdf/fitz ์ฌ์ฉ)
2. ๊ด๋ฆฌยท๋ฌผ๋ฆฌ์ ์๋ด์ ํ์ฑ โ _data/admin_physical.yml
3. ๊ธฐ์ ์ ์์ธ๊ฐ์ด๋ ํ์ฑ โ _data/technical/ ํ์ ํ๋ซํผ๋ณ YAML
4. ๊ด๊ณ๋ฒ๊ท ์ฐธ์กฐ ๋ฐ์ดํฐ ์ถ์ถ โ _data/law_references.yml
5. ํ์ฑ ๊ฒฐ๊ณผ ๊ฒ์ฆ (ํญ๋ชฉ ์ ์นด์ดํธ, ๋๋ฝ ์ฒดํฌ)
6. ์ปค๋ฐ + ํธ์
์ฃผ์์ฌํญ:
- PDF ํ์ฑ ์คํฌ๋ฆฝํธ๋ ./scripts/ ํด๋์ ๋ณด๊ด
- ํ๊ฐ ๋ฐฉ์ง: PDF ํ
์คํธ๋ฅผ ๊ทธ๋๋ก ์ถ์ถ, ๊ฐ๊ณตยท์์ฝํ์ง ์์
- ๋ฐ์ดํฐ ์์ด ๋ง์ผ๋ฏ๋ก ํ๋ซํผ๋ณ๋ก ๋๋ ์ ์ปค๋ฐ ๊ฐ๋ฅ
์์ฑํ ํ์ผ:
- scripts/parse_admin_physical.py
- scripts/parse_technical.py
- scripts/validate_data.py
- _data/admin_physical.yml (136๊ฐ ํญ๋ชฉ)
- _data/technical/unix.yml (67๊ฐ)
- _data/technical/windows.yml (64๊ฐ)
- _data/technical/web_security.yml (26๊ฐ)
- _data/technical/security_device.yml (23๊ฐ)
- _data/technical/network.yml (38๊ฐ)
- _data/technical/control_system.yml (51๊ฐ)
- _data/technical/pc.yml (18๊ฐ)
- _data/technical/dbms.yml (26๊ฐ)
- _data/technical/mobile.yml (4๊ฐ)
- _data/technical/webapp.yml (21๊ฐ)
- _data/technical/virtualization.yml (25๊ฐ)
- _data/law_references.yml
์๋๋ ์ค์ PDF๋ฅผ ์ด์ด์ ํ์ธํ ํ์ฑ ํจ์ ๊ณผ ํจํด์ด๋ค. ํ์ฑ ์คํฌ๋ฆฝํธ ์์ฑ ์ ๋ฐ๋์ ์ด ์ ๋ณด๋ฅผ ์ฐธ๊ณ ํ ๊ฒ.
ํญ๋ชฉ ์์ ํจํด (์ค ๋จ์):
ํญ๋ชฉ ์์ธ ๋ด์ฉ์ p.17p.242 ๋ฒ์์ ์๋ค (p.116์ ๋ชฉ์ฐจ/๊ฐ์).
ํญ๋ชฉ ์ฝ๋๊ฐ ๋จ๋
์ค๋ก ๋ฑ์ฅํ๋ฉด ํญ๋ชฉ ์์์ด๋ค.
์ค0: 'A-1' ๋๋ 'P-1' (ํญ๋ชฉ์ฝ๋, ๋จ๋
์ค)
์ค1: '๊ด๋ฆฌ์ ๋ถ์ผ > N. ๋๋ฉ์ธ๋ช
' (๋ถ๋ฅ ๊ฒฝ๋ก)
์ค2: 'ํญ๋ชฉ๋ช
ํ
์คํธ' (์ ๊ฒ ํญ๋ชฉ ์ค๋ช
)
์ค3: '๊ด๋ จ ์กฐ์ง'
์ค4: '์กฐ์ง๋ช
'
์ค5: '์ธ๋ถ ์ค๋ช
'
...
๋จ, ๋๋ฉ์ธ ์ฒซ ๋ฒ์งธ ํญ๋ชฉ(A-1, A-8, A-10 ๋ฑ)์ ์์ ๋๋ฉ์ธ ๋ฒํธ+์ด๋ฆ์ด ์ถ๊ฐ๋จ:
์ค0: '01' (๋๋ฉ์ธ ๋ฒํธ)
์ค1: '์ ๋ณด๋ณดํธ ์ ์ฑ
' (๋๋ฉ์ธ ์ด๋ฆ)
์ค2: 'A-1' (ํญ๋ชฉ์ฝ๋)
...
ํญ๋ชฉ์ฝ๋ ๋ฑ์ฅ ์์น (์ค๋ณต ์ฃผ์):
- p.10~16 (๋ชฉ์ฐจ ํ์ด์ง): ์ ์ฒด ํญ๋ชฉ ์ฝ๋๊ฐ ๋ชฉ๋ก์ผ๋ก ๋์ด๋จ โ ํ์ฑ ๋์ ์๋
- p.17~242 (๋ณธ๋ฌธ): ์ค์ ํญ๋ชฉ ์์ธ ๋ด์ฉ โ ํ์ฑ ๋์
- ํ๋์ ์ฝ๋๊ฐ ๋ชฉ์ฐจ(1ํ) + ๋ณธ๋ฌธ(1ํ) = ์ด 2ํ ๋ฑ์ฅ
- ํ์ฑ ์ p.17 ์ดํ ํ์ด์ง๋ง ๋์์ผ๋ก ํ ๊ฒ
ํญ๋ชฉ-ํ์ด์ง ๋งคํ (์ค์ธก):
- A-1: p.17, A-2: p.19, A-3: p.20 ... A-118: p.213
- P-1: p.217, P-2: p.219 ... P-18: p.242
- ๋๋ถ๋ถ ํญ๋ชฉ์ 1~2ํ์ด์ง, ์ผ๋ถ(์ ๊ทผํต์ ๋ฑ)๋ 3ํ์ด์ง ์ด์
๊ด๊ณ๋ฒ๊ท ์น์ ํจํด: ํญ๋ชฉ ๋ด์์ '๊ด๊ณ ๋ฒ๊ท'๋ผ๋ ์ค ์ดํ์ ์ ์ข ๊ตฌ๋ถ์ด ๋์จ๋ค:
'๊ด๊ณ ๋ฒ๊ท'
'๊ณตํต'
'์ ๋ณดํต์ ๊ธฐ๋ฐ ๋ณดํธ๋ฒ ์ 10์กฐ(๋ณดํธ์ง์นจ)'
'๊ฐ์ธ์ ๋ณด ๋ณดํธ๋ฒ ์ 29์กฐ(์์ ์กฐ์น์๋ฌด)'
'๊ณต๊ณต๊ธฐ๊ด'
'๊ตญ๊ฐ ์ ๋ณด๋ณด์ ๊ธฐ๋ณธ์ง์นจ ์ 4์กฐ(์ฑ
๋ฌด), ์ 5์กฐ(์ ๋ณด๋ณด์๋ด๋น๊ด ์ด์)'
'๊ธ์ตํ์ฌ'
'์ ์๊ธ์ต๊ฑฐ๋๋ฒ ์ 21์กฐ(์์ ์ฑ์ ํ๋ณด์๋ฌด)'
'ICT๊ธฐ์
'
'์ ๋ณด๋ณดํธ ๋ฐ ๊ฐ์ธ์ ๋ณด๋ณดํธ ๊ด๋ฆฌ์ฒด๊ณ ์ธ์ฆ ๋ฑ์ ๊ดํ ๊ณ ์ [๋ณํ7] ...'
'ํ์ธ ๋์(์์)' โ ๊ด๊ณ๋ฒ๊ท ์ข
๋ฃ, ํ์ธ๋์ ์์
์ ์ข ๊ตฌ๋ถ ํค์๋: '๊ณตํต', '๊ณต๊ณต๊ธฐ๊ด', '๊ธ์ตํ์ฌ', 'ICT๊ธฐ์ ' ๊ด๊ณ๋ฒ๊ท ์ข ๋ฃ ํค์๋: 'ํ์ธ ๋์' ๋๋ 'ํ์ธ๋์'
๋ ธ์ด์ฆ ํํฐ๋ง:
- A-128 โ ARIA-128 (์ํธ ์๊ณ ๋ฆฌ์ฆ) ๋ณธ๋ฌธ ๋ด ๋ฑ์ฅ. ์ ์ธํ ๊ฒ
- A-256 โ AES-256 (์ํธ ์๊ณ ๋ฆฌ์ฆ) ๋ณธ๋ฌธ ๋ด ๋ฑ์ฅ. ์ ์ธํ ๊ฒ
- ์ ํจ ๋ฒ์: A-1
A-118, P-1P-18๋ง ์ธ์ - ์ ๊ท์:
^[AP]-\d{1,3}$(๋จ๋ ์ค) + ๋ฒ์ ๊ฒ์ฆ
๋ถ๋ก ์์ญ:
- p.243
269: ์ฐธ๊ณ ์๋ฃ (์ 1ํธ์ 15ํธ) - p.270
332: ์์ ์์ (์ 1ํธ์ 43ํธ) - ๋ถ๋ก์ ๋ณ๋ ํ์ฑ (ํญ๋ชฉ ํ์ฑ๊ณผ ๋ถ๋ฆฌ)
ํญ๋ชฉ ์์ ํจํด (๋ชจ๋ ํ๋ซํผ ๊ณตํต):
์ค0: 'ํญ๋ชฉ์ฝ๋' (๋จ๋
์ค, ์: 'U-01', 'W-01', 'HV-01', 'CI')
์ค1: '(์)' ๋๋ '(์ค)' ๋๋ '(ํ)' (์ค์๋, ๋จ๋
์ค)
์ค2: 'ํ๋ซํผ > N. ๋๋ฉ์ธ๋ช
' (๋ถ๋ฅ, ์: 'UNIX > 1. ๊ณ์ ๊ด๋ฆฌ')
์ค3: 'ํญ๋ชฉ๋ช
ํ
์คํธ'
์ค4: '๊ฐ์'
์ค5: '์ ๊ฒ ๋ด์ฉ'
์ค6: ์ ๊ฒ๋ด์ฉ ํ
์คํธ...
์ด 3์ค ์ฐ์ ํจํด(์ฝ๋ โ ์ค์๋ โ ๋ถ๋ฅ)์ด ํญ๋ชฉ ์์์ ํ์คํ ์๊ทธ๋์ด๋ค.
ํญ๋ชฉ์ฝ๋ ๋ฑ์ฅ ์์น (์ค๋ณต ์ฃผ์): ๊ฐ ์ฝ๋๊ฐ 2๋ฒ ๋ฑ์ฅํ๋ค:
- 1๋ฒ์งธ: ์ฑํฐ ์๋ถ๋ถ ๋ชฉ๋ก ํ์ด์ง (์: p.8~11 UNIX ๋ชฉ๋ก)
- 2๋ฒ์งธ: ๋ณธ๋ฌธ ์์ธ ํ์ด์ง (์: p.12 U-01 ์์ธ) ํ์ฑ ์ '(์)/(์ค)/(ํ)'๊ฐ ๋ฐ๋ก ๋ค์ ์ค์ ์ค๋ ๊ฒฝ์ฐ๋ง ํญ๋ชฉ ์์์ผ๋ก ์ธ์ํ ๊ฒ.
ํ๋ซํผ๋ณ ์ฝ๋ ์ฒด๊ณ์ ํ์ด์ง ๋ฒ์:
| ํ๋ซํผ | ์ฝ๋ | ๋ฒ์ | ๋ชฉ๋ก ํ์ด์ง | ๋ณธ๋ฌธ ์์ |
|---|---|---|---|---|
| UNIX ์๋ฒ | U-01~U-67 | p.7~171 | p.8~11 | p.12 |
| Windows ์๋ฒ | W-01~W-64 | p.172~270 | p.173~176 | p.177 |
| ์น ์๋น์ค | WEB-01~WEB-26 | p.271~352 | p.272~273 | p.274 |
| ๋ณด์ ์ฅ๋น | S-01~S-23 | p.353~386 | p.354~355 | p.356 |
| ๋คํธ์ํฌ ์ฅ๋น | N-01~N-38 | p.387~466 | p.388~390 | p.391 |
| ์ ์ด์์คํ | C-01~C-51 | p.467~551 | p.468~471 | p.472 |
| PC | PC-01~PC-18 | p.552~592 | p.553~554 | p.555 |
| DBMS | D-01~D-26 | p.593~669 | p.594~595 | p.596 |
| ์ด๋ํต์ | M-01~M-04 | p.670~675 | p.671 | p.672 |
| ์น(Web App) | ์ฝ์ด 21์ข | p.676~786 | p.678 | p.679 |
| ๊ฐ์ํ ์ฅ๋น | HV-01~HV-25 | p.787~873 | p.788~789 | p.790 |
์น(Web App) ํน์ ์ฒ๋ฆฌ:
- ํญ๋ชฉ์ฝ๋๊ฐ ๋ฒํธ๊ฐ ์๋ ์ฝ์ด: CI, SI, DI, EP, IL, XS, CF, SF, BF, IA, IN, PR, PV, FU, FD, IS, SN, CC, AE, AU, WM
- ๊ฐ ์ฝ์ด๊ฐ 2~3๋ฒ ๋ฑ์ฅ (๋ชฉ๋ก + ๋ณธ๋ฌธ ์์ + ๋ณธ๋ฌธ ๋ด ๋ฐ๋ณต์ฐธ์กฐ ๊ฐ๋ฅ)
- CC(์ฟ ํค๋ณ์กฐ)๋ 3๋ฒ ๋ฑ์ฅ ํ์ธ๋จ โ ํญ๋ชฉ ์์์ '(์)'์ด ๋ฐ๋ก ๋ค์์ ์ค๋ ๊ณณ
- ํญ๋ชฉ๋ช
์ ์ค2๊ฐ ์๋๋ผ ์ค3์ ์์ (์ค2๋ 'Web Application(์น)'):
'CI' '(์)' 'Web Application(์น)' โ ํ๋ซํผ๋ช (ํญ๋ชฉ๋ช ์๋) '1. ์ฝ๋ ์ธ์ ์ (Code Injection)' โ ์ด๊ฒ ํญ๋ชฉ๋ช
๋ ธ์ด์ฆ ํํฐ๋ง:
- S-1 โ ๋ณธ๋ฌธ ํ ์คํธ ๋ด ๋ ธ์ด์ฆ. ์ ํจ ๋ณด์์ฅ๋น ์ฝ๋๋ S-01~S-23 (2์๋ฆฌ ํจ๋ฉ)
- S-256 โ AES-256 ๊ด๋ จ ํ ์คํธ ๋ ธ์ด์ฆ. ์ ์ธํ ๊ฒ
- ๊ฐ ํ๋ซํผ๋ณ ์ ํจ ๋ฒ์๋ฅผ ๋ฒ์ด๋๋ ๋ฒํธ๋ ๋ชจ๋ ๋ ธ์ด์ฆ
ํญ๋ชฉ ๋ด ๊ณตํต ์น์ ํค์๋ (์์๋๋ก):
- '๊ฐ์' โ '์ ๊ฒ ๋ด์ฉ' โ '์ ๊ฒ ๋ชฉ์ ' โ '๋ณด์ ์ํ' โ '์ฐธ๊ณ '
- '์ ๊ฒ ๋์ ๋ฐ ํ๋จ ๊ธฐ์ค' โ '๋์' โ 'ํ๋จ ๊ธฐ์ค' (์ํธ/์ทจ์ฝ)
- '์กฐ์น ๋ฐฉ๋ฒ'
- '์กฐ์น ์ ์ํฅ'
- '์ ๊ฒ ๋ฐ ์กฐ์น ์ฌ๋ก' (OS๋ณ ์ปค๋งจ๋, ์ฝ๋๋ธ๋ก์ผ๋ก ์ฒ๋ฆฌ)
๋ธ๋์น: step-3-admin-physical
์ํํ ์์
:
1. ๊ด๋ฆฌ ๋๋ฉ์ธ๋ณ ํ์ด์ง 13๊ฐ ์์ฑ (Markdown + Liquid ํ
ํ๋ฆฟ)
2. ๋ฌผ๋ฆฌ ๋๋ฉ์ธ ํ์ด์ง 1๊ฐ ์์ฑ
3. ๊ฐ ํ์ด์ง๋ _data/admin_physical.yml์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ๋ ๋๋ง
4. ๊ด๊ณ๋ฒ๊ท ๋งํฌ๋ ๊ตญ๊ฐ๋ฒ๋ น์ ๋ณด์ผํฐ URL๋ก ์ฐ๊ฒฐ
5. ๋ค๋น๊ฒ์ด์
๊ตฌ์กฐ ์ค์
6. ์ปค๋ฐ + ํธ์
ํ์ด์ง ๊ตฌ์กฐ (๊ฐ ํญ๋ชฉ):
- ํญ๋ชฉ๋ฒํธ + ํญ๋ชฉ๋ช
(ํค๋ฉ)
- ๊ด๋ จ ์กฐ์ง
- ์ธ๋ถ ์ค๋ช
- ๊ณ ๋ ค ์ฌํญ
- ๊ด๊ณ ๋ฒ๊ท (๊ณตํต/๊ณต๊ณต/๊ธ์ต/ICT ๊ตฌ๋ถ, ๋ฒ๋ น์ ๋ณด์ผํฐ ๋งํฌ)
- ํ์ธ ๋์ (์ฒดํฌ๋ฆฌ์คํธ)
์์ฑํ ํ์ผ:
- docs/admin/01-policy.md ~ docs/admin/13-incident.md (13๊ฐ)
- docs/physical/01-physical-security.md (1๊ฐ)
๋ธ๋์น: step-4-technical
์ํํ ์์
:
1. ํ๋ซํผ๋ณ ํ์ด์ง 11๊ฐ ์์ฑ
2. ๊ฐ ํ์ด์ง๋ _data/technical/*.yml์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ๋ ๋๋ง
3. ์ ๊ฒ ์ปค๋งจ๋๋ ์ฝ๋๋ธ๋ก์ผ๋ก ํ์ (์ฝ๋ ํ์ด๋ผ์ดํ
+ ๋ณต์ฌ ๋ฒํผ)
4. ์ค์๋(์/์ค/ํ) ๋ฑ์ง ํ์
5. ํ๋จ๊ธฐ์ค(์ํธ/์ทจ์ฝ) ๋ช
ํํ ๊ตฌ๋ถ ํ์
6. ์ปค๋ฐ + ํธ์
ํ์ด์ง ๊ตฌ์กฐ (๊ฐ ํญ๋ชฉ):
- ํญ๋ชฉ์ฝ๋ + ์ค์๋ ๋ฑ์ง + ํญ๋ชฉ๋ช
(ํค๋ฉ)
- ์ ๊ฒ ๋ด์ฉ / ์ ๊ฒ ๋ชฉ์ / ๋ณด์ ์ํ
- ํ๋จ ๊ธฐ์ค (์ํธ/์ทจ์ฝ ์กฐ๊ฑด)
- ์กฐ์น ๋ฐฉ๋ฒ
- ์กฐ์น ์ ์ํฅ
- ์ ๊ฒ ๋ฐ ์กฐ์น ์ฌ๋ก (OS๋ณ, ์ฝ๋๋ธ๋ก)
์์ฑํ ํ์ผ:
- docs/technical/01-unix.md ~ docs/technical/11-virtualization.md (11๊ฐ)
๋ธ๋์น: step-5-cross-ref
์ํํ ์์
:
1. _data/ YAML ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋งคํ ์ด์ ์์ฑ
2. ๋งคํ ๋ก์ง:
- ๊ด๋ฆฌ ํญ๋ชฉ์ "ํญ๋ชฉ๋ช
+ ์ธ๋ถ์ค๋ช
+ ๊ณ ๋ ค์ฌํญ" ํ
์คํธ์
- ๊ธฐ์ ํญ๋ชฉ์ "ํญ๋ชฉ๋ช
+ ์ ๊ฒ๋ด์ฉ + ์ ๊ฒ๋ชฉ์ " ํ
์คํธ๋ฅผ ๋์กฐ
- ๋๋ฉ์ธ ํค์๋ ๋งค์นญ (๊ณ์ ๊ด๋ฆฌโ๊ณ์ ๊ด๋ฆฌ, ์ ๊ทผํต์ โ์ ๊ทผํต์ ๋ฑ)
3. ๊ฐ ๋งคํ์ ๋ฐ๋์ ๊ธฐ๋ก:
- ๊ทผ๊ฑฐ: ์์ชฝ ํ
์คํธ์์ ์ฐ๊ฒฐ ํ๋จ์ ๊ทผ๊ฑฐ๊ฐ ๋ ๊ตฌ์ฒด์ ๋ฌธ๊ตฌ
- ํ์ ๋: ๋์/์ค๊ฐ/๋ฎ์
- ๋งคํ์ ํ: ์ง์ ๊ตฌํ/๊ด๋ จ/๊ฐ์
4. ๊ฒฐ๊ณผ๋ฌผ์ 3๊ฐ ํ์ผ๋ก ๋ถ๋ฆฌ:
- cross_ref_confirmed.yml โ ํ์ ๋ "๋์" (๋ฐ๋ก ์ฌ์ดํธ ๋ฐ์ ๊ฐ๋ฅ)
- cross_ref_review.yml โ ํ์ ๋ "์ค๊ฐ" (์ฌ์ฉ์ ๊ฒํ ํ์)
- cross_ref_uncertain.yml โ ํ์ ๋ "๋ฎ์" (์ฌ์ฉ์ ํ๋จ ๋๊ธฐ)
5. ๊ฒ์์ฉ ๋ฆฌํฌํธ ์์ฑ: ๋งคํ ํต๊ณ, ๋ฏธ๋งคํ ํญ๋ชฉ ๋ชฉ๋ก
6. ์ปค๋ฐ + ํธ์
โป ์ด Step์ ๋ฐ๋์ ์ฌ์ฉ์ ๊ฒ์ ํ ํ์ ํ๋ค
โป ์ฌ์ฉ์๊ฐ ์์ /์ญ์ /์ถ๊ฐํ ๊ฒฐ๊ณผ๊ฐ ์ต์ข
๋ณธ์ด ๋๋ค
โป ๊ฒ์ ์๋ฃ ์ ๊น์ง ์ฌ์ดํธ์๋ ํ์ ๋ "๋์"๋ง ๋ฐ์ํ๋ค
์์ฑํ ํ์ผ:
- _data/cross_ref_confirmed.yml (ํ์ ๋ ๋์)
- _data/cross_ref_review.yml (ํ์ ๋ ์ค๊ฐ โ ๊ฒํ ์ฉ)
- _data/cross_ref_uncertain.yml (ํ์ ๋ ๋ฎ์ โ ๊ฒํ ์ฉ)
- scripts/generate_cross_reference.py (๋งคํ ์์ฑ ์คํฌ๋ฆฝํธ)
- cross_ref_review_report.md (๊ฒ์์ฉ ๋ฆฌํฌํธ)
๋ธ๋์น: step-6-laws
์ํํ ์์
:
1. source-pdf/laws/ ํด๋์ ๋ฒ๋ น PDF ํ์ฑ
2. ๋ฒ๋ น๋ณ ์ญ์ธ๋ฑ์ค ํ์ด์ง (๋ฒ๋ น โ ๊ด๋ จ ์ ๊ฒํญ๋ชฉ ๋ชฉ๋ก)
3. ์
์ข
๋ณ ๋ณด๊ธฐ ํ์ด์ง (๊ณตํต/๊ณต๊ณต/๊ธ์ต/ICT)
4. ๋ฒ๋ น ๋งํฌ๋ ๊ตญ๊ฐ๋ฒ๋ น์ ๋ณด์ผํฐ ํผ๋ง๋งํฌ
5. ๊ฐ ๋ฒ๋ น ํ์ด์ง์ "์ต์ข
ํ์ธ์ผ" ํ์
6. ์ปค๋ฐ + ํธ์
โป source-pdf/laws/์ ์๋ ๋ฒ๋ น ํ์ผ๋ง ์ฌ์ฉ. ์๋ ๋ฒ๋ น์ TBD๋ก ๋จ๊น.
โป ๋๋ถ๋ถ PDF(pymupdf), ๊ตญ๊ฐ์ ๋ณด๋ณด์๊ธฐ๋ณธ์ง์นจ๋ง HWP(python-hwp ๋๋ olefile๋ก ํ์ฑ).
โป ์ฌ์ฉ์๊ฐ ๋ฒ๋ น ํ์ผ์ ์ถ๊ฐ ์
๋ก๋ํ๋ฉด ์ดํ ์
๋ฐ์ดํธ ๊ฐ๋ฅ.
์์ฑํ ํ์ผ:
- docs/laws/index.md (๋ฒ๋ น ๋งคํ ๊ฐ์)
- docs/laws/by-law.md (๋ฒ๋ น๋ณ ๋ณด๊ธฐ)
- docs/laws/by-sector.md (์
์ข
๋ณ ๋ณด๊ธฐ)
๋ธ๋์น: step-7-appendix
์ํํ ์์
:
1. ์ฐธ๊ณ ์๋ฃ ๋ชฉ๋ก ํ์ด์ง (์ 1~15ํธ)
2. ์์ ์์ ๋ชฉ๋ก ํ์ด์ง (์ 1~43ํธ)
3. About ํ์ด์ง (ํ๋ก์ ํธ ์๊ฐ, ๊ณต๊ณต๋๋ฆฌ ์์ธ ํ์)
4. ๋ณ๊ฒฝ์ด๋ ฅ(Changelog) ํ์ด์ง
5. ์ปค๋ฐ + ํธ์
์์ฑํ ํ์ผ:
- docs/appendix/references.md
- docs/appendix/forms.md
- docs/about.md
- docs/changelog.md
๋ธ๋์น: step-8-ux-final
์ํํ ์์
:
1. ์ค์๋ ํํฐ (๊ธฐ์ ํญ๋ชฉ ์/์ค/ํ)
2. ์ฝ๋๋ธ๋ก ๋ณต์ฌ ๋ฒํผ
3. ํฌ๋ก์ค๋ ํผ๋ฐ์ค ๋ฐ์ (๊ด๋ฆฌ ํ์ด์ง์ "๊ด๋ จ ๊ธฐ์ ํญ๋ชฉ" / ๊ธฐ์ ํ์ด์ง์ "๊ด๋ จ ๊ด๋ฆฌํญ๋ชฉ" ๋งํฌ)
4. ๋ชจ๋ฐ์ผ ๋ฐ์ํ ํ์ธ
5. ์ ์ฒด ํญ๋ชฉ ์ ๊ฒ์ฆ (๊ด๋ฆฌ 136 + ๊ธฐ์ 363 = 499)
6. ๊นจ์ง ๋งํฌ ์ฒดํฌ
7. SEO ์ค์ (sitemap, meta)
8. ์ปค๋ฐ + ํธ์
9. ์ต์ข
๋ฐฐํฌ ํ์ธ
์ฌ์ ์ค๋น (์ฌ์ฉ์๊ฐ GitHub ์น์์ ์ํ):
1. GitHub์์ ์ ๋ ํฌ ์์ฑ (์: k-secguide, Public)
2. ๋ ํฌ์ source-pdf/ ํด๋ ์์ฑ ํ PDF 2๊ฐ ์
๋ก๋
3. ๋ ํฌ์ CLAUDE.md, CLAUDE_CODE_PROMPT.md ์
๋ก๋
4. Settings โ Pages โ Source: main ๋ธ๋์น ์ ํ
Claude Code์์:
> ์ด ๋ ํฌ๋ฅผ ํด๋ก ํ๊ณ , CLAUDE_CODE_PROMPT.md๋ฅผ ์ฝ์ ๋ค Step 1์ ์คํํด์ค.
> source-pdf/ ํด๋์ PDF ํ์ผ์ด ์์ผ๋ ์ฐธ๊ณ ํด.
๊ฐ Step ์๋ฃ ํ:
> ์ฌ์ฉ์๊ฐ GitHub์์ ๋ธ๋์น/PR ํ์ธ โ main์ merge
> "Step N ํ์ธ ์๋ฃ, Step N+1 ์งํํด์ค"
k-secguide/
โโโ _config.yml
โโโ Gemfile
โโโ index.md
โโโ README.md
โโโ LICENSE
โโโ .gitignore
โโโ CLAUDE.md
โโโ CLAUDE_CODE_PROMPT.md
โโโ source-pdf/ # ์๋ณธ PDF (๋ ํฌ์ ํฌํจ)
โ โโโ ๊ด๋ฆฌ_๋ฌผ๋ฆฌ์ _์๋ด์.pdf
โ โโโ ๊ธฐ์ ์ _์์ธ๊ฐ์ด๋.pdf
โ โโโ laws/ # ๋ฒ๋ น ํ์ผ
โ โโโ ์ ๋ณดํต์ ๊ธฐ๋ฐ๋ณดํธ๋ฒ.pdf
โ โโโ ์ ๋ณดํต์ ๊ธฐ๋ฐ๋ณดํธ๋ฒ์ํ๋ น.pdf
โ โโโ ๊ฐ์ธ์ ๋ณด๋ณดํธ๋ฒ.pdf
โ โโโ ๊ฐ์ธ์ ๋ณด๋ณดํธ๋ฒ์ํ๋ น.pdf
โ โโโ ๊ฐ์ธ์ ๋ณด์์์ ์ฑํ๋ณด์กฐ์น๊ธฐ์ค.pdf
โ โโโ ๊ตญ๊ฐ์ ๋ณด๋ณด์๊ธฐ๋ณธ์ง์นจ.hwp # โป NCSC(ncsc.go.kr)์์ ๋ค์ด๋ก๋, HWP ํ์
โ โโโ ๋ณด์์
๋ฌด๊ท์ .pdf
โ โโโ ์ ์๊ธ์ต๊ฑฐ๋๋ฒ.pdf
โ โโโ ์ ์๊ธ์ต๊ฐ๋
๊ท์ .pdf
โ โโโ ์ ์ฉ์ ๋ณด์
๊ฐ๋
๊ท์ .pdf
โ โโโ ์ ๋ณดํต์ ๋ง๋ฒ.pdf
โ โโโ ISMS-P์ธ์ฆ๊ณ ์.pdf
โ โโโ ์ ๋ณด๋ณดํธ์ฐ์
์งํฅ๋ฒ.pdf
โ โโโ ์ ์์ ๋ถ๋ฒ.pdf
โโโ _data/
โ โโโ admin_physical.yml
โ โโโ technical/
โ โ โโโ unix.yml
โ โ โโโ windows.yml
โ โ โโโ web_security.yml
โ โ โโโ security_device.yml
โ โ โโโ network.yml
โ โ โโโ control_system.yml
โ โ โโโ pc.yml
โ โ โโโ dbms.yml
โ โ โโโ mobile.yml
โ โ โโโ webapp.yml
โ โ โโโ virtualization.yml
โ โโโ law_references.yml
โ โโโ cross_ref_confirmed.yml
โ โโโ cross_ref_review.yml
โ โโโ cross_ref_uncertain.yml
โ โโโ navigation.yml
โโโ _includes/
โ โโโ footer_custom.html
โโโ assets/
โ โโโ css/custom.css
โ โโโ images/
โ โโโ gonggong-nuri.png
โโโ docs/
โ โโโ admin/
โ โโโ physical/
โ โโโ technical/
โ โโโ laws/
โ โโโ appendix/
โ โโโ about.md
โ โโโ changelog.md
โโโ scripts/
โโโ parse_admin_physical.py
โโโ parse_technical.py
โโโ generate_cross_reference.py
โโโ validate_data.py