From be6b8846f2a12aaa8db23b793aff5961bdd8604e Mon Sep 17 00:00:00 2001 From: seonghobae <8172694+seonghobae@users.noreply.github.com> Date: Tue, 21 Jul 2026 20:44:04 +0000 Subject: [PATCH] =?UTF-8?q?=EB=B3=B4=EC=95=88=20=ED=96=A5=EC=83=81:=20?= =?UTF-8?q?=EA=B2=80=EC=83=89=20=EC=97=94=EC=A7=84=20=EC=9D=B8=EB=8D=B1?= =?UTF-8?q?=EC=8B=B1=20=EB=B0=A9=EC=A7=80=20=EB=A9=94=ED=83=80=20=ED=83=9C?= =?UTF-8?q?=EA=B7=B8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 생성되는 정적 HTML에 ``를 추가하여 우발적인 웹 호스팅 시 디렉토리 구조 및 파일 목록이 검색 엔진에 노출(Information Exposure)되는 것을 방지합니다. - `src/test/kotlin/html4tree/MainTest.kt`에 관련 단위 테스트를 추가하여 100% 테스트 커버리지를 유지합니다. --- .jules/sentinel.md | 5 +++++ src/main/kotlin/html4tree/main.kt | 2 ++ src/test/kotlin/html4tree/MainTest.kt | 1 + 3 files changed, 8 insertions(+) diff --git a/.jules/sentinel.md b/.jules/sentinel.md index 6ecf72f..64eb1d6 100644 --- a/.jules/sentinel.md +++ b/.jules/sentinel.md @@ -83,3 +83,8 @@ **Vulnerability:** 정적 HTML 생성 도구에서 매번 다른 Nonce를 동적으로 생성하여 CSP에 적용하는 것은, 캐싱 효율을 저하시킬 뿐만 아니라 정적 배포 환경(예: GitHub Pages 등)에서 올바른 보안 정책 수립을 방해할 수 있는 안티 패턴입니다. **Learning:** 정적으로 고정된 인라인 스타일이나 스크립트에는 난수화된 Nonce보다 콘텐츠 자체의 해시(SHA-256 등)를 사용하는 것이 안전하고 일관된 방식임을 배웠습니다. **Prevention:** 자동 생성되는 정적 HTML의 콘텐츠 보안 정책(CSP)에는 `style-src 'sha256-'` 방식을 적용하고, ` + + ${curr_dir.getName().escapeHtml()} ${css} diff --git a/src/test/kotlin/html4tree/MainTest.kt b/src/test/kotlin/html4tree/MainTest.kt index 1349471..00f03f0 100644 --- a/src/test/kotlin/html4tree/MainTest.kt +++ b/src/test/kotlin/html4tree/MainTest.kt @@ -309,6 +309,7 @@ class MainTest { val htmlContent = indexFile.readText() assertTrue(htmlContent.contains("")) assertTrue(htmlContent.contains("")) + assertTrue(htmlContent.contains("")) assertTrue(htmlContent.contains("