-
[2021/01/15][짤막한 이야기 - 코드 패킹]짤막한 이야기 2021. 2. 3. 15:11728x90반응형
[2021/01/15][짤막한 이야기 - 코드 패킹]
코드 패킹은 소프트웨어 보호 기술의 한 종류이다.
실행 가능한 코드, 혹은 쓰기 가능한 데이터가 특정 알고리즘에 의하여 패킹된다.
패킹에 이용되는 알고리즘은 암호화 알고리즘일 수도 있지만, “+”와 같은 단순 산술 연산이 이용될 수도 있다.
패킹된 영역은 원본 영역(패킹되기 전)의 기능성이 감추어지기 때문에, 악의적인 분석가가 쉽게 분석할 수 없다.
이는 분명 소프트웨어 보호에 효과적인 방법이지만, 패킹된 영역은 CPU가 실행하기 전에 원본 영역으로 복원되어야 하기 때문에 동적 분석에 의하여 분석될 수 있다.
따라서 코드 패킹이 적용된 소프트웨어에는 “언패킹 루틴”이 반드시 존재한다(즉, “패킹된 코드”와 “언패킹 루틴”은 코드 패킹에서 필수 요소이다.).
#이야기#루니프#소프트웨어보호#패킹#언패킹#동적#분석
[2021/01/15][Short Story - Code Packing]
Code packing is one type of software protection techniques.
Executable code or writeable data are packed by a specific algorithm.
The algorithm used for packing can be an encryption algorithm or simple arithmetic operation such as “+”.
The packed section can not be analyzed by malicious analysts because the original functionality of the section is concealed.
Although it is a useful method for software protection, it can be analyzed by using dynamic analysis, because the packed section must be restored to the original section before the CPU executes it.
So, “Unpacking Routine” must exist in the software which is applied code packing(i.e., “Packed Code” and “Unpacking Routine” must exist for code packing.)
#Story#LootNiP#SoftwareProtection#Packing#Unpacking#Dynamic#Analysis728x90반응형'짤막한 이야기' 카테고리의 다른 글
[2021/01/20][짤막한 이야기 - 평문 & 암호문] (0) 2021.02.03 [2021/01/19][짤막한 이야기 - 암호학] (0) 2021.02.03 [2021/01/18][짤막한 이야기 - 섹션 권한] (0) 2021.02.03 [2021/01/04][짤막한 이야기 - 버퍼 오버리드] (0) 2021.02.03 [2021/01/03][짤막한 이야기 - 핀툴] (0) 2021.02.03