diff --git a/.jules/sentinel.md b/.jules/sentinel.md index e30db0d..69d3c7c 100644 --- a/.jules/sentinel.md +++ b/.jules/sentinel.md @@ -14,3 +14,8 @@ **Vulnerability:** 외부 링크(특히 참조문헌 링크 등)에 `target="_blank"` 속성을 사용하거나 새 탭으로 여는 동작을 유도할 때, `rel="noopener noreferrer"` 속성이 누락되어 Reverse Tabnabbing 공격에 노출될 수 있음. **Learning:** `rel="noopener noreferrer"`가 없으면 새로 열린 탭의 페이지가 `window.opener` 객체를 통해 원래 페이지의 `location`을 악의적인 사이트로 변경할 수 있습니다. **Prevention:** 외부 링크를 새 탭으로 열기 위해 `target="_blank"`를 사용할 때만 `rel="noopener noreferrer"`를 함께 추가하여 부모 창에 대한 접근을 차단해야 합니다. + +## 2026-07-02 - [Zero-Dependency Trusted Types Enforcement] +**Vulnerability:** [Missing protection against potential future DOM-based XSS if risky sinks are introduced] +**Learning:** [Because the application uses safe DOM properties like `textContent` instead of `innerHTML`, we can natively enforce Trusted Types via CSP without needing a default policy or an external sanitizer like DOMPurify.] +**Prevention:** [Enforce `require-trusted-types-for 'script'` in CSP for applications that exclusively use safe DOM APIs to proactively block future insecure sink usage.] diff --git a/CHANGELOG.md b/CHANGELOG.md index e5fc107..5590764 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,3 +3,10 @@ ## [Unreleased] - **성능 개선**: `i18n.js`에서 초기 로드 시 기본 언어가 한국어(ko)인 경우 불필요한 DOM 순회 및 텍스트 업데이트를 생략하도록 개선했습니다. - **테스트 추가**: 다국어 처리 로직의 무결성을 검증하기 위해 `test_i18n.html` 테스트 파일을 추가했습니다. + +### Security +* `index.html`에 Trusted Types CSP 적용 (`require-trusted-types-for 'script'`) + +* 보안성 향상을 위해 CSP 설정 적용 (Trusted Types) + +* CI 워크플로우 타임아웃 오류를 우회하고 리뷰 프로세스를 다시 트리거하기 위해 변경사항 추가 diff --git a/index.html b/index.html index d188886..063ebea 100644 --- a/index.html +++ b/index.html @@ -3,7 +3,7 @@ - + 맥락지혜 연구실 | Contextual Wisdom Lab