본문/내용
1. 개요 및 연구목적
GNU/Linux 가 공개적인 프로그램인 만큼 공격자의 입장에선 동일한 시스템을 사전 검토하기가 쉽다. 운영이라 할지 문제점이 있는 특정 프로그램 혹은 코드들을 OS 자체에서 모두 점검하는 것은 한계가 있다.
Microsoft사의 Windows는 그리 심하지는 않지만 사용자의 사소한 실수로 만들어진 파일, 시스템 설정 등은 Unix를 모테로 한 모든 Unix 계열에서는 매우 위험하다. 이에 대해 공개적으로 시스템을 방어 할 수 있는 프로그램도 많지 않은 상태이기 때문에 시스템이 공격자에게 취약점이 노출되면 그만큼 위험해 진다.
기존의 상용/공개적인 보안 프로그램의 방어 방식으로는 시스템을 단순 검사, 사용자에 의한 특정 IP 접근금지와 예외 처리 시 log를 남기도록 한 것뿐이다. 하지만 단순히 이러한 행동이 아닌 다른 방법이 요즘 시스템엔 필요하다.
근래에 국내 또는 외국기업에서 Kernel 기반의 보안 솔루션을 내놓고 있다. 예전의 단순 탐지를 떠나 Kernel 기반의 최상위 레벨에서 공격자의 행위를 원천적으로 차단하는데 그 목적이 있다. 또한 현재 개발된 솔루션 중에 Secure OS 라는 것이 있다. 이는 Kernel 자체를 Secure 한 환경으로 수정 또는 개발하는 것을 목적으로 한다.
이와 같은 방법으로는 코드와 설정에 문제가 없다면 공격을 사전에 막는데 매우 효과적이다. 하지만, 사소한 문제에 대해서는 매우 위험해 질 수 있다. 이는 공격자가 root 보다 더 상위인 Kernel 내에서 OS의 특권을 누리게 되는 것이다. 이와 같은 경우엔 Secure OS는 완벽하지 않다면 문제가 될 요지가 매우 크다.
따라서 본 프로젝트는 이와는 달리 각각의 module로 구성되어 PNP(plug-and-play)처럼 착탈식으로 module을 제작하는 것을 기본으로 한다.
착탈식의 module 은 LKM (Loadable Kernel Module) 로써 root가 Secure module을 load 할 수…
착…
참고문헌
도서] UNIX 시스템프로그래밍(2판) | KEITH HAVILAND 등저 | 홍릉과학출판사
[외서] Linux Kernel Programming (3rd Edition) by Michael Beck, Harald Bohme | Addison-Wesley
[외서] Linux Kernel Internals by Beck, Michael | Peachpit Pres
[도서] 리눅스 디바이스 드라이버 | Alessandro Rubini 저 / 김인성, 류태중 역 | 한빛미디어
[도서] MySQL 시스템 관리와 프로그래밍: 자바, PHP, 펄, C, 파이썬 (개정판) | 조지 리스, 랜디 제이
야거, 팀킹, 휴 윌리엄스 공저 / 서환수 역 | 한빛미디어