다른 명령
 새 문서: 분류: 소프트웨어 기반 보안  == 개요 == Code santizier은 Compiler Instrumentation을 활용하여서 Runtime에 버그를 잡는 Programming tool을 의미한다. 대표적인 예로 Shadow memory를 활용하셔어 Memory corruption을 추적하는 AddressSanitizer과 같은 툴이 있다.  == 종류 == {| class="wikitable" |+ !Name !Target !Target Vulnerability !Memory overhead !Performance overhead !Scalability !Tool Chain |- |ASAN |Ap...  | 
				편집 요약 없음  | 
				||
| 5번째 줄: | 5번째 줄: | ||
== 종류 ==  | == 종류 ==  | ||
* Performance와 Memory overhead는 서로 trade-off관계이 있는 경우가 대다수임  | |||
* Scalability는 멀티 스레딩 환경 (보통 [[PARSEC]])에서 어느정도 Scalability를 보였는지를 표시, ? (멀티 스레딩 구현 안함, 측정 안함), Low - Moderate - High로 표기  | |||
* Transparency는 Application수정 필요한지 표기. Yes (Full transparent), No (특정 기능이 없거나, 전체적으로 다시 구현해야 하는 경우)   | |||
=== Sanitizer 관련 프로젝트 정리 ===  | |||
{| class="wikitable"  | {| class="wikitable"  | ||
|+  | |+Sanitizer 프로젝트 정리 '''(* 수치는 직접 측정, 혹은 다른 논문에 측정된 수치를 참고함)'''  | ||
!Name  | !Name  | ||
!Target  | !Target  | ||
| 13번째 줄: | 18번째 줄: | ||
!Performance overhead  | !Performance overhead  | ||
!Scalability  | !Scalability  | ||
|-  | |-  | ||
|[[ASAN]]  | |[[ASAN]]  | ||
| 21번째 줄: | 25번째 줄: | ||
|240%  | |240%  | ||
|Low  | |Low  | ||
|-  | |-  | ||
|[[KASAN]]  | |[[KASAN]]  | ||
| 29번째 줄: | 32번째 줄: | ||
|  | |  | ||
|  | |  | ||
|-  | |-  | ||
|LSan  | |LSan  | ||
| 37번째 줄: | 39번째 줄: | ||
|  | |  | ||
|  | |  | ||
|-  | |-  | ||
|TSan  | |TSan  | ||
| 45번째 줄: | 46번째 줄: | ||
|  | |  | ||
|  | |  | ||
|-  | |-  | ||
|MSan  | |MSan  | ||
| 53번째 줄: | 53번째 줄: | ||
|  | |  | ||
|  | |  | ||
|-  | |-  | ||
|UBSan  | |UBSan  | ||
| 61번째 줄: | 60번째 줄: | ||
|  | |  | ||
|  | |  | ||
|  | |}  | ||
=== Sanitizer 관련 논문 정리 ===  | |||
{| class="wikitable"  | |||
|+Sanitizer 관련 논문 정리 '''(* 수치는 직접 측정, 혹은 다른 논문에 측정된 수치를 참고함)'''  | |||
!Name  | |||
!Target  | |||
!Target Vulnerability  | |||
!Memory overhead  | |||
!Performance overhead  | |||
!Scalability  | |||
|-  | |-  | ||
|[[ASAN]]  | |||
|Application  | |||
|Memory corruption  | |||
|73%  | |||
|240%  | |||
|Low  | |||
|-  | |||
|[[KASAN]]  | |||
|OS  | |||
|Memory corruption  | |||
|  | |  | ||
|  | |  | ||
|  | |  | ||
|-  | |||
|LSan  | |||
|Application  | |||
|Memory Leak  | |||
|  | |  | ||
|  | |||
|  | |||
|-  | |||
|TSan  | |||
|Application  | |||
|Data races & Deda locks  | |||
|  | |||
|  | |||
|  | |||
|-  | |||
|MSan  | |||
|Application  | |||
|Uninitialized memory  | |||
|  | |||
|  | |||
|  | |||
|-  | |||
|UBSan  | |||
|Application  | |||
|Undefined behaviors  | |||
|  | |  | ||
|  | |  | ||
|  | |  | ||
|}  | |}  | ||
2025년 5월 27일 (화) 10:58 기준 최신판
개요
Code santizier은 Compiler Instrumentation을 활용하여서 Runtime에 버그를 잡는 Programming tool을 의미한다. 대표적인 예로 Shadow memory를 활용하셔어 Memory corruption을 추적하는 AddressSanitizer과 같은 툴이 있다.
종류
- Performance와 Memory overhead는 서로 trade-off관계이 있는 경우가 대다수임
 - Scalability는 멀티 스레딩 환경 (보통 PARSEC)에서 어느정도 Scalability를 보였는지를 표시, ? (멀티 스레딩 구현 안함, 측정 안함), Low - Moderate - High로 표기
 - Transparency는 Application수정 필요한지 표기. Yes (Full transparent), No (특정 기능이 없거나, 전체적으로 다시 구현해야 하는 경우)
 
Sanitizer 관련 프로젝트 정리
| Name | Target | Target Vulnerability | Memory overhead | Performance overhead | Scalability | 
|---|---|---|---|---|---|
| ASAN | Application | Memory corruption | 73% | 240% | Low | 
| KASAN | OS | Memory corruption | |||
| LSan | Application | Memory Leak | |||
| TSan | Application | Data races & Deda locks | |||
| MSan | Application | Uninitialized memory | |||
| UBSan | Application | Undefined behaviors | 
Sanitizer 관련 논문 정리
| Name | Target | Target Vulnerability | Memory overhead | Performance overhead | Scalability | 
|---|---|---|---|---|---|
| ASAN | Application | Memory corruption | 73% | 240% | Low | 
| KASAN | OS | Memory corruption | |||
| LSan | Application | Memory Leak | |||
| TSan | Application | Data races & Deda locks | |||
| MSan | Application | Uninitialized memory | |||
| UBSan | Application | Undefined behaviors |