현대 사회의 컴퓨팅은 우리가 상상하지 못할 정도로 발전해 왔고 지금도 급속도로 발전하고 있다. 그에 따라 수많은 업종에서 다양한 일들이 자동화가 되고 사람 보다 더욱 정확하고 빠르게 작업이 이루어진다. 하지만 이러한 편리함 속에 보안위협은 점점 커지고 결국 APT(Advanced Persistent Threat) 공격이라는 큰 이슈가 발생하게 되었다. APT 공격은 첫 번째 단계로 응용 프로그램 취약점을 이용한 스피어피싱(Spear Phishing) 공격 방식이 많이 사용된다. 그러므로 기존 악성코드 탐지 방식과 달리 취약점 공격을 사전에 탐지할 수 있는 연구가 필요하다. 본 논문은 단말 사용자 컴퓨터에서 이러한 응용 프로그램의 취약점을 이용한 공격을 사전에 탐지하는 것을 기반으로 하고 있다. 다양한 취약점 공격을 막기 위해 탐지 방식을 적용하기 전, 본 논문에서는 응용 프로그램의 메모리 공간을 이상흐름 발생이 가능한 세 영역으로 구분해 각 영역에 맞는 탐지 방식을 적용하는 접근 방법을 제안하였다. 이러한 접근 방식을 통해 적절한 탐지 방식을 적용함으로써 "Adobe Reader", "Internet Explorer", "Ms Office Word", "Adobe Flash Player", "Hancom Office 한글"에서 실제 취약점 공격으로 사용되었던 샘플들을 탐지하는 것을 보인다. 또한 적용한 탐지 방식으로 인하여 개발자가 의도한 실행흐름을 이상흐름으로 판단해 취약점 공격으로 탐지해 버리는 오탐 문제와 평균 CPU(Central Processing Unit) 사용량이 증가하게 되는 자원 소모 문제까지 해결함으로써 상용 가능한 성능을 입증한다.