검색 상세

소프트웨어 실시간 무결성 인증 방법 실험 및 구현

Experiment for Software integrity assurance method in real-time

초록/요약

시대의 변화 흐름에 따라 디지털 정보의 중요도가 높아지고 그로 인하여 디지털 데이터의 해킹으로 인한 피해가 다양해지고 있다. 다양한 해킹으로 인하여 국가, 기업, 개인에게 많은 피해를 주고 있으며, 그에 따른 다양한 이슈와 피해 사례가 급속도로 늘어나고 있다. 디지털 시대가 발전함으로써 다양한 소프트웨어를 통하여 디지털 데이터를 활용하여 사용자의 편의를 도모하게 된다. 그러나 해커는 이러한 소프트웨어의 해킹을 통하여 다양한 정보를 유출하고, 유출된 데이터를 이용하여 다양한 악성 행위에 활용하고 있다. 악성코드와 해킹은 정적인 파일을 해킹하는 경우 다양한 탐지 툴을 통하여 검출 되지만, 실시간 메모리를 해킹하는 경우에는 탐지가 매우 어렵고, 사용자가 해킹 사실을 알지 못한다. 윈도우 운영체제에서 사용되는 탐지 툴에는 대부분 시스템의 시그니처 기반으로 제작이 되어 있기 때문에 기존의 사용되어진 방법의 경우에는 해킹 탐지를 쉽게 할 수 있다. 하지만 새로운 해킹은 기존의 시그니처 기반의 탐지 툴로는 쉽게 탐지하지 못하는 단점이 존재한다. 해커는 기존의 시그니처 기반에서 발전하여 윈도우의 시스템의 분석을 통하여 EAT, IAT 해킹, Code Injection과 같은 실시간 메모리 해킹으로 변화 하였다. 이러한 메모리 해킹의 경우 Code Injection, Hooking과 같이 해커가 원하는 코드를 메모리 영역에 배치하여 사용이 가능하다. 또한 탐지 툴에 탐지 되지 않도록, 실시간으로 해킹과 원상태로의 복원을 하여 탐지를 어렵게 하고 있다. 메모리 해킹의 경우에는 소프트웨어의 전체를 해킹하지 않고 Address Table과 같이 아주 작은 부분의 메모리 해킹을 하게 되는 것이다. 실시간 해킹을 막기 위하여, 소프트웨어의 실시간 소스코드 영영을 검사하여 무결성을 체크하는 기술이 필요하게 되었다. 따라서 본 연구에서는 윈도우 환경에서 사용되는 소프트웨어의 무결성을 확보하기 위하여 윈도우 시스템의 파일형태 및 메모리의 형태를 설명하고, 실시간 무결성을 검사하는 동적인 소프트웨어 무결성 검사 방법을 제안한다.

more

초록/요약

With changes in the flow of the times, the importance of digital information is increasing and accordingly, damage from hacking digital data gets more diverse. A variety of hacking do a lot of damage on countries, companies and individuals, and accordingly, various issues and cases of damage are rapidly increasing. With the development of the digital age, the convenience of the users is promoted using digital data through a variety of software. However, hackers leak a variety of information through hacking the software and use them in various malicious actions using the leaked data. Malicious code and hacking are detected through various tracking tools, if static files are hacked; however, it is very difficult to detect hacking of real time memory, and the users will not notice that. Since most tracking tools used in Windows OS are produced based on the system signature, it is easy to detect hacking if an existing method has been used. However, there is a weakness of detection of new hacking with existing signature-based tracking tools. Hackers have developed themselves from the existing base of signature to memory hacking in real time, such as SSDT, EAT, IAT table hacking through an analysis of the Windows system. In this memory hacking, the hackers can arrange and use a desirable code like Code Injection and Hooking in the memory domain. In addition, they hack real time and restore to the original state so that it is not detected by a tracking tool, which makes its detection difficult. Memory hacking does not hack the entire software, but hacks a very small part like Address Table. To prevent real time hacking, a technique to examine the domain of real time source code of software and check integrity came to be necessary. Therefore, this study describes the types of files and memory of the Windows system to secure the integrity of software used in the Windows environment and proposes a method of dynamic software integrity test that examines the real time integrity.

more

목차

1장 서론
1절 연구의 배경 및 필요성 1
2절 연구의 목표 및 방향 3

2장 윈도우 메모리 해킹 관련연구
1절 윈도우 시스템 구조 및 특징 4
2절 PE 파일의 형태 9
3절 메모리 해킹 방법들 21
4절 해킹 도구들 26
5절 윈도우 메모리 해킹 탐지 및 방지 방법들 31

3장 실험 및 검증
1절 실험 개요 33
2절 실험 내용 및 결과 36

4장 결론 및 향후 연구 50

참고 문헌 51

more