본 프로그램은 한국 인터넷 진흥원 (KISA)에서 발간한 CSAP CCE 취약점 가이드 2020년 버전에 따라 Linux의 계정 관리, 파일 및 디렉토리 관리, 서비스 관리, 패치 및 로그 관리에 대한 취약점 점검 스크립트를 작성하였으며, 해당 스크립트는 서버의 데이터베이스에 저장되어있다.
이 프로그램은 사용자가 원하는 시간, 기간에 점검할 수 있도록 예약 진단 시스템을 제공한다. 스케줄러를 통해 주기적인 점검, 단기 점검 등 진단 일정을 관리할 수 있다. 또한 사용자가 선택한 항목에 한해서도 즉시 진단을 할 수 있는 등 사용자의 상황과 편의에 맞추어 서비스를 제공하고 있다.
웹 페이지 상에서 점검 예약진단 설정을 하게 되면 해당 정보는 서버의 데이터베이스에 저장되게 되고, 서버는 해당 데이터베이스의 내용을 수시로 읽어오고 예약된 ip의 기기에 예약 정보를 보내게 된다. 예약 정보를 받게된 클라이언트는 예약 정보에 맞춰 서버에 점검 요청을 보내게 된다.
서버는 클라이언트에게 점검 요청을 받게 되면 데이터베이스에 저장되어있는 쉘 코드를 클라이언트에게 전송하게 되고, 쉘 코드를 전송받은 클라이언트는 해당 쉘 코드를 실행하여 리눅스 취약점 점검을 시작하게 된다.
취약점 점검 이후 나온 결과는 json 형태로 서버에 전송되게 되고 서버의 데이터베이스에 저장되게 된다.
데이터베이스에 저장된 취약점 점검 결과들은 통계 과정을 거쳐 웹 콘솔에 시각화된다. 일단위 취약점 분류별, 주단위 취약점 분류별, 최근 진단 취약 비율, 일단위 취약점 분류별, 계정 관리 변동 경향, 파일 및 디렉토리 관리 변동 경향, 서비스 관리 경향과 같은 다양한 기준에서 결과를 보이기 위해 막대 그래프, 도넛 차, 누적 차트, 경향 차트 등 다양한 형태로 보기 쉽게 사용자에게 제공된다. 취약점 점검 결과를 제공하는 웹 서비스에는 보안 공지가 제공된다.
- 웹사이트에 접속한다.
- Dashboard 부분을 클릭하거나 첫 페이지에 방문하면 기존에 있었던 분석 결과에 해당하는 내용을 차트로 확인할 수 있다.
- 리눅스 환경 점검을 예약하고 싶다면 취약점 진단 페이지로 이동하여 날짜, 진단 항목, 대상 기기, 검사 주기, 검사 횟수를 설정하고 예약 버튼을 눌러 예약할 수 있다.
- 현재까지 예약 상황을 확인하고 싶다면 진단 예약 확인 페이지로 이동하여 예약 실행 시간, 진단 대상, 진단 항목, 예약 등록일 등을 확인할 수 있다.
- 진단 항목의 자세한 설명은 조치 방법 및 가이드 메뉴를 클릭하여 계정 관리, 파일 및 디렉토리 관리, 서비스 관리 페이지에서 각각 확인 가능하다.
- 계정 관리, 파일 및 디렉토리 관리, 서비스 관리 중 하나를 선택하여 들어가면 개별 취약 점 항목 선택 바를 통해 각각의 구분에 해당하는 항목을 개별적으로 선택할 수 있다.
- 선택하여 들어가면, 취약점 항목에 대한 설명과, 이 항목의 취약도 그리고 취약점이 발생 했을 때 어떻게 조치 해야 하는지에 대한 정보를 각각 얻을 수 있다.
- 보안공지 메뉴를 선택하여 들어가면, 보안 이슈에 관련한 글을 공유하는 게시판이 있다.
- 이 게시판에서 사용자들은 보안 이슈에 대해 자유롭게 글 등록을 구성할 수 있으며, 글 등록 버튼을 클릭하면 제목, 작성자, 내용을 입력할 수 있게 화면을 구성했다.
- 게시글 등록버튼을 누르면 목록에 게시가 되며 번호, 제목, 작성자, 최종 수정일이 보이게 된다.