과학연구

류사도측정에 의한 악성프로그람검출

 2019.9.21.

경애하는 김정은동지께서는 다음과 같이 말씀하시였다.

《대학에서는 사회주의강국건설에서 나서는 리론실천적, 과학기술적문제들을 원만히 해결하며 기초과학부문을 발전시키고 첨단과학기술분야를 개척하는데 중심을 두고 과학연구사업을 진행하여야 합니다.》

악성프로그람은 오늘 정보체계에 대한 중요한 보안위협으로 되고있다. 그러므로 악성프로그람검출은 사회경제발전과 정보보안사업에서 중요한 문제로 제기된다.

세계적으로 매일 평균 10만개이상의 새로운 악성프로그람들이 출현하고있으며 이중에는 이미 알려진 악성프로그람들의 변종들이 적지 않은 비중을 차지한다. 그러므로 류사도분석은 악성프로그람검출과 분류에서 효과적인 방법으로 된다.

악성프로그람류사도분석은 두 단계 즉 특징추출단계와 류사도계산단계로 나눌수 있다. 특징추출은 악성프로그람분석에 의하여 진행되는데 분석방법에 정적분석과 동적분석이 있으므로 악성프로그람의 특징에는 정적특징과 동적특징이 있다.

우리는 동적분석에 의하여 얻어지는 악성프로그람의 체계호출(API호출)기록에서 파라메터들을 제거하고 오직 함수이름만 남겨 문자렬형식의 함수이름들의 렬을 얻었다. 문자렬의 류사성척도로 보통 편집거리(edit distance)를 리용하는데 우리는 계산량을 줄이고 탐색속도를 높이기 위하여 체계호출렬을 그대로 리용하지 않고 n-그람법을 리용하여 련이은 n개의 체계호출함수들의 렬을 특징으로 하였다.

특정한 체계호출렬들은 모든 프로그람들에서 나타날수 있으므로 우리는 문서검색에서 용어의 무게결정에 리용되는 거꿀문서빈도수(inverse document frequency)를 계산하여 그 값이 작은 n-그람들은 제외하였다.

우의 방법으로 얻어진 특징들은 성글고 차원수가 크므로 특징하쉬화(feature hashing)를 리용하여 차원수를 감소시켜 2진벡토르형식의 특징벡토르를 생성하였다.

두 특징벡토르사이의 류사성척도로 자카르드류사도(Jaccard similarity)를 리용하였다.

류사도측정방법으로 악성프로그람검출을 실현하는데서 알려진 악성프로그람표본모임에서 검사대상과 류사한 표본을 탐색하는 속도를 높이는 문제가 제기된다. 이로부터 우리는 최소하쉬(min-hash)함수를 민감함수로 하는 우연치환에 기초한 국부민감하쉬(locality-sensitive hashing)탐색을 적용하여 탐색속도를 높이였다.

제안한 악성프로그람검출방법의 효과성을 검증하기 위하여 4 000개의 악성프로그람표본모임에서 3 600개로 표본자료기지를 구축하고 나머지 400개의 악성프로그람표본과 1 000개의 정상프로그람으로 시험모임을 구성하였다.

류사도턱값을 0.4, 0.5로 하였을 때 실험결과는 아래의 표와 같다.

류사도턱값적중률(Precision)재현률(Recall)
0.40.940.75
0.50.990.73