초록
리눅스 시스템에서 악의적인 목적을 가진 사용자는 쉘을 수행하는 공격 유형들을 통해 관리자 권한을 획득하여 백도어 설치 및 사용자들의 중요한 정보 등을 유출 시킬 수 있다. 이러한 문제점을 해결하기 위한 기존 방법은 권한상승원인을 분석하여 문제점을 수정한 후에 패치하는 방식을 사용하였다. 최근에는 사용자 자격증명을 이용하여 실시간으로 사용자 자격증명과 태스크 실행시 발생시키는 특징을 통해 정보의 불일치가 발생하는 태스크를 탐지하는 방법이 연구되고 있다. 그러나 이러한 자격증명 방법은 단순히 uid, gid를 이용하기 때문에 자격증명의 동일한 값을 가지는 공격유형은 탐지를 못하는 경우가 발생한다. 본 논문에서는 자격증명을 이용한 탐지 방법에서 탐지를 못하는 경우를 해결하기 위해 비정상적인 권한획득 정보보다 적은 정상적인 권한 획득 정보(자격증명) 및 권한을 획득할 수 있는 shell 명령어와 path등을 Table에 저장하여 관리하고 파일(open, close, read, write)접근마다 실시간으로 Table에 있는 정상적인 권한 정보와 비교하여 탐지하는 보안 모듈을 제안한다.
In a Linux system, a user with malicious intent can acquire administrator privileges through attack types that execute shells, and can leak important user information and install backdoor program. In order to solve this problem, the existing method is to analyze the causes of the elevation of privilege, fix the problems, and then patch the system. Recently, a method of detecting an illegal elevated tasks in which information inconsistency occurs through user credentials in real time has been studied. However, since this credential method uses uid and gid, illegal elevated tasks having the root credentials may not be detected. In this paper, we propose a security module that stores shell commands and paths executed with regular privileges in a table and compares them with every file accesses (open, close, read, write) that are executed to solve the case which cannot detect illegal elevated tasks have same credential.