북한에서도 악성코드를 찾기 위한 연구가 활발히 진행되고 있는 것으로 알려졌다. 북한은 파일의 구조적 해석과 코드를 분석해 악성 파일을 찾고 있다. 

NK경제가 입수한 과학원 통보 2017년 1호에 수록된 '화일의 위험요소 분석에 기초한 악성의심 화일 검사의 한 가지 방법' 논문에 따르면 악성 파일을 사전에 검출하기 위한 연구를 진행하고 있다.

이 논문은 이전 논문에서 악성 파일의 변종이 주로 명령문들을 뒤섞거나 무의미한 명령어를 추가하는 형태로 생겨난다는 점을 고려해 명령어를 추출한 파일에서 다시 명령어가 나타나는 횟수를 계수해 악성파일 혹은 그 변종으로 판단하는 방법을 제안했다고 밝혔다.

또 악성파일에서 이용되는 명령이나 함수들 사이의 호출 관계를 분석한 흐름도해 또는 흐름그래프를 악성파일의 검출에 이용했다고 설명했다.

논문은 이전 연구를 심화시켜 윈도 실행 파일에서 악성파일이 생겨날 수 있는 구조적 특징 요소와 동작 요소들을 위험 요소로 정의하고 파일에 위험 요소가 어느 정도 포함돼 있는가를 판정하는 방법으로 악성의심 파일을 검사하는 한 가지 방법을 소개한다고 밝혔다.

 

논문에는 북한 개발자들이 파일에서 위험요소를 분류하는 방법도 소개했다.

우선 파일의 구조해석에 기초한 위험 요소를 6가지로 정의했다.

1. 파일의 마지막 토막에 코드실행시작점이 있는 경우
2. 토막의 속성기발들이 의심되는 경우
3. 코드토막의 이름이 류다른 경우
4. PE머리부가 여러 개 있는 경우 
5. 토막의 가상주소가 정확하지 않은 경우 
6. 코드의 크기가 차이나는 경우

또 파일의 코드해석에 기초한 위험요소도 7가지를 제시했다.

1. 실행시작코드의 재지적이 의심되는 경우
2. PE 파일의 실행 입구점의 주소가 의심스러운 경우
3. 실행파일에 대한 감염조건판정이 있는 경우
4. KERNEL32.DLL의 수입함수들이 의심되는 경우 
5. 등록의 값을 변경시키는 경우
6. 보안 프로그램들을 강제 완료시키는 경우
7. 자동실행파일을 창조하는 경우

파일의 크기가 차이가 나거나 백신 소프트웨어 등 보안 프로그램을 강제 종료하는 기능이 있을 경우를 위험 요소로 꼽았다. 논문은 제안한 방법이 알려지지 않은 악성 파일들을 사전에 검출하기 위한 효과적인 방법임을 증명했다고 주장했다. 북한이 위에서 악성 파일로 의심된다고 정의한 위험 요소는 공격자의 입장에서는 검출 회피 방법으로 활용할 수도 있다. 

이 논문이 2016년 제출돼 2017년에 과학원 통보에 수록된 만큼 그동안 기술이 더 발전했을 것으로 예상된다.

강진규 기자  maddog@nkeconomy.com

* 독자님들의 뉴스레터 신청이 NK경제에 큰 힘이 됩니다. 많은 신청 부탁드립니다.

 

관련기사

저작권자 © NK경제 무단전재 및 재배포 금지