반응형
* 난독화 : 코드의 가독성을 낮춰 역공학에 대한 대비책을 제공, 프로그램 코드의 일부 또는 전체를 변경하여 소스코드를 지키는 방법.
- 일반적인 난독화 컴파일러는 어휘 분석, 구문 분석, 의무 분석 이후 난독화를 수행
* 난독화 유형
유형 | 내용 | 예시 |
구획 난독화 (Layout Obfuscation) |
프로그램에 큰 영향을 끼치지 않는 세부적 요소들을 변화/제거하는 기법 | 주석 제거 등 |
데이터 난독화 (Data Obfuscation) |
변수들을 나누거나, 합치는 등 읽기 어렵게 하는 방향의 모든 기법 | 오더링, 인코딩, 스토리지 등 |
집합 난독화 (Aggregation Obfuscation) |
순서를 이용해 코드를 난독화하거나 클래스를 분할하는 기법 | 자료 순서, 클래스 분할 등 |
제어 난독화 (Control Obfuscation) |
제어를 어지럽게하고 프로그램이 묶이는 단위를 조절하는 기법 | 계산 변환, 집합 변환 등 |
예방 난독화 (Preventive Obfuscation) |
알려진 역 난독화 방법을 알고, 그 방법을 미리 차단하는 기법 | 디버거 제거, 고유 방식 확인 등 |
패킹 (Packing) |
실행 파일을 압축, 불필요한 부분을 제거, 압축을 통해 새로운 이미지를 생성 | 바이너리 패킹 등 |
반응형
'Information Security' 카테고리의 다른 글
스마트 지갑 (Smart Wallet) (0) | 2021.02.09 |
---|---|
준동형 (Homomorphic) & 동형 암호화 (Fully Homomorphic Encryption) (0) | 2021.02.09 |
CC 인증 (Common Criteria, ISO15408) (0) | 2021.02.09 |
CVE (Common Vulnerabilities and Exposure) / CWE (Common Weakness Enumeration) (0) | 2021.02.09 |
CPO (Chief Privacy Officer) / CISO (Chief Information Security Officer) (0) | 2021.02.08 |