취약점 점검 도구 개발 히스토리 (과거)/리눅스(Linux) 서버 취약점 점검_진단 도구

리눅스(Linux) 서버 취약점 점검/진단 도구 v2.0 개발 히스토리 (2017년도)

리뮤엘 2024. 3. 21. 14:59

기존 리눅스(Linux) 서버에 대한 취약점 점검 및 기준 평가가 시스템 담당자가 판단하여 보안조치가 필요할 경우 조치를 하는 구조로 진행하고 있었으며, 취약점 점검/진단 도구를 어떻게 개발할지 고민하기 위해 "위험분석 및 평가"를 진행할떄 샘플링하여 취약점 평가 사항 및 시스템 보안 설정 상황을 파악해보자는 생각으로 "위험분석 및 평가"시 문제점 도출을 위해 시작하는 계기가 됨. 

 

취약점에 대한 기준이 오래된 기준이긴 하지만 일부 참고가 가능하나, 보안설정 및 조치에 대한 기준이 표준화 되어 있지 않아 평가가 같은 항목내에서도 다르게 해석되었으며, 보안조치가 필요한 사항이 조치가 되지 않은 상태(점검자는 양호, 양호로 판단된 사유 없음)로 유지되고 있거나 제대로된 기준을 제시해주지 않아 보안조치가 미루어졌다라는 둥..... 취약점 조치를 하지 않은 이유가 납득이 되지 않으며, 보안 설정 평가 조치가 표준화가 필요하다고 판단함.

 

취약점 점검/진단 도구를 통해 보안위협, 취약점 양호/취약 판별 기준, 사내 보안 강화 기준(ISMS 보안결함 조치를 수행하여 수립된 기준 등)등을 확인 및 이를 통해 보안기준 배포, 기준에 따른 조치 이행이 될 수 있도록 개발을 시작함. 

 

실제 리눅스(Linux) 서버에 취약점 점검 기준을 점검하고, 보안조치를 직접 적용해보며, 해당 취약점에 대한 조치를 하지 않을 경우에 대한 보안 문제점을 직접 확인하며 리눅스(Linux) 취약점 점검/진단 도구 개발 (서버 환경 설정 다양성을 고려함.)

PC 취약점 점검/진단 도구를 개발하면서 시도하고 구현한 로직 등을 리눅스 쉘 스크립트에 맞게 컨버팅하고, 해당 언어에 맞게 재해석하여 구현함.

 

리눅스(Linux) 서버 취약점 점검 도구 v2.0 - Dev. History

취약점 점검 도구 v2.0 버전 개선 및 변경사항

- 리눅스 취약점 진단 스크립트 최신 OS에서 동작이 되도록 개선

- 리눅스 취약점 진단 스크립트 양호/취약 판단에 대한 일관성 있는 평가

- 리눅스 취약점 진단 시스템 설정 현황 및 진단 결과를 간편하고 쉽게 볼수 있도록 개선

- 취약점 진단결과 산출물을 HTML로 생성이 되도록 추가

- 양호/취약 판별 알고리즘 개선

- 양호/취약 판단 오류 및 판단 불일치 문제 개선

- 양호/취약 전체 현황을 볼수 있도록 표시

- 기존 진단이 되지 않던 항목 진단이 되도록 추가

- 최신 Apache 서버 환경과 서버 관리자가 Apache 서버 사용자 정의 설치에 대한 취약점 점검 및 평가되도록 개선

- HTML 결과 보고서 신규 템플릿 적용

- 취약점 진단 평가기준 중 일부 진단 항목에 대하여 평가기준 완화 (사내 환경에 맞는 최소한의 기준 또는 타기관/기업 보안 조치 설정 기준(금융위원회 기준 등) 적용)

- 콘솔(Console) 화면상에서 양호/취약 결과 표시 및 전체 진행상황을 알수 있도록 출력

- 계정 관련 보안 설정 체크 기능 추가 

  ; 계정 생성후 한번도 로그인 하지 않은 계정 확인하여 취약 판정

  ; 마지막 로그인으로부터 90일 이상 로그인 하지 않은 계정을 확인하여 취약 판정

  ; 패스워드 변경을 90일 동안 하지 않은 계정을 나열하고 위 기준을 종합하여 취약 판정

 

콘솔 화면 출력, HTML 태그 변환 또는 생성 로직 구현(일부)
각 취약점 항목별 구조화하여 정의된 함수가 호출되어 콘솔처리, HTML 태그 처리가 되도록 구현함.(소스 일부)
콘솔처리, 태그처리, 양호/취약 판정을 위한 로직까지 구현하니 소스코드가 8000줄 이상이 됨.(주석, 테스트 코드 포함 ^^;;;)