크라우니시큐리티 팔란티어/구글 수준 향상
개요
팔란티어 Gotham/Foundry와 구글 BeyondCorp/Chronicle 수준의 보안 솔루션으로 향상. 8개 신규 모듈 추가, CrownyTVM 컴파일러 버그 2건 수정.
신규 보안 모듈 (8개)
| 모듈 | 대응 기술 | 핵심 기능 |
|---|
| 보안온톨로지 | Palantir Gotham | 시맨틱 그래프, N-hop 탐색, 엔티티 10종, 관계 9종 |
| 신뢰점수엔진 | Google BeyondCorp | 디바이스+사용자+네트워크+시간 4축 점수, 동적 접근 레벨 |
| 행위분석(UEBA) | Chronicle UEBA | Welford 온라인 통계, Z-score 이상탐지, 내부자위협 |
| 빌드증명 | Google SLSA/Sigstore | SLSA 0-4 레벨, SHA256 서명, SBOM, 의존성 체인 |
| 위협인텔리전스 | VirusTotal/Chronicle | IOC 8종, 그래프 연결, STIX 내보내기, 피드 수집 |
| 시간상관분석 | Chronicle YARA-L | 시간 윈도우 쿼리, 시퀀스 패턴, 빈도 이상, 4개 사전 규칙 |
| 셀ABAC | Palantir Foundry ABAC | 5등급 비밀등급, 셀/행 단위 접근제어, 데이터 마스킹 |
| 기밀실행 | Google Confidential Computing | 인클레이브, 봉인/해제, 원격증명, MPC |
CrownyTVM 컴파일러 버그 수정 (2건)
1. 최상위 함수 전역변수 캡처 버그
- 증상: 전역변수를 수정하는 함수를 다른 함수에서 호출하면 "미정의 함수" 에러
- 원인: 전역변수 참조 시 불필요하게 클로저로 변환 → functions 테이블에서 제거 → 다른 함수에서 참조 불가
- 수정:
codegen.rs — 최상위 함수(is_toplevel)는 FuncRef 유지, GLOAD/GSTORE로 전역 직접 접근
2. 대입문 좌변 변수 미수집 버그
- 증상: 함수 내에서 전역변수에 write-only 접근 시 "미정의 변수" 에러 (예:
DB = [])
- 원인:
collect_idents가 Stmt::Assign의 name 필드를 수집하지 않음
- 수정:
collect_idents_stmt에서 대입문 좌변 변수도 out.push(name.clone())
예약어 충돌 수정
결정→판정, 분산→산포, 표준편차→편차값
파일명→파일이름, 상태→현상태, 현재시간→지금시각
버전→패키지버전, 읽기→파일읽기
파일 위치
- 보안 모듈:
/Users/ef/crowny-security/modules/*.한선
- 컴파일러 수정:
/Users/ef/Downloads/CrownyTVM/src/compiler/codegen.rs
- 기존 13개 모듈 + 레드팀피드백 = 총 21개 보안 모듈
잔여 이슈
- 기밀실행 인클레이브: 봉인 후 안전연산 시 데이터 해제 실패 (봉인키 시뮬레이션 한계)
- 레드팀피드백: 패치등록 후 나선강도 0% (패치 완료 표시 로직 확인 필요)
- 보안온톨로지:
가져오기 "셀코어" 포함 — 셀코어 규칙엔진과 연동
- 크라우니코드 학습 미완 (신규 모듈 함수들 패턴DB 등록 필요)