정보보안기사

[정보보안기사] 실기대비 요약 #10(침해사고 분석 및 대응)

EveningPrimrose 2022. 4. 11. 01:11
반응형

정보보안기사 실기 요약 10

 

○ 무결성 점검도구(tripwire)

 1. 데이터베이스 초기화 : tripwire -init

 2. DB 파일 생성 확인 : /var/lib/tripwire/호스트명.twd

 3. tripwire 실행 : tripwire -check

 4. 결과 리포트 확인하기

 

침입차단 시스템(iptables)

 - 패킷 필터링 기능을 가지고 있는 리눅스 커널에 내장된 rule 기반의 패킷 필터링 기능 제공

 - 상태추적 기능 제공

 - NAT 기능 제공

 - -j ACCEPT : 해당 패킷을 허용한다

 - -j DROP : 해당 패킷을 차단한 후 아무런 응답 메시지도 전송하지 않는다

 - -j REJECT : 해당 패킷을 차단한 후 ICMP 에러 메시지로 응답한다

 - -j LOG : 탐지 로그를 남긴다. 일반적으로 "/var/log/messages"에 남긴다

 

루트킷 점검 도구(chkrootkit)

 - 루트킷 : 지속적으로 자신의 존재를 숨기고 탐지되지 않도록 하면서 관리자 권한의 획득과 백도어 등의 기능을 수행하는 코드와 프로그램의 집합

 

사이버 킬 체인(Cyber Kill Chain)

 - 공격자는 사이버상에서 표적에 대한 공격을 위해 일련의 공격단계를 거치는데 이런 단계 중 어느 한 단계의 공격을 탐지/차단/대응해 목표 달성 이전에 선제적으로 무력화시키는 방어시스템을 말한다. 즉, 공격자의 공격단계 중 하나를 사전에 제거할 경우 실제 공격까지 이어지지 않는다는 점에 착안한 방어전략이다.

 - 단계별 대응유형

  1. 탐지 : 공격자의 공격행위를 발견하는 것

  2. 거부 : 공격자의 접근을 차단하는 행위

  3. 교란 : 공격을 위한 정보의 흐름을 방해하는 행위

  4. 약화 : 공격행위의 효율 또는 효과를 감소시키는 행위

  5. 기만 : 정보를 조적하여 공격자가 잘못된 판단을 하게 하는 행위

  6. 파괴 : 공격자 또는 공격관련 도구가 원래의 기능을 수행할 수 없도록 손상시키고 복원 불가능하게 하는 행위

 

GNU Bash 취약점(ShellShock)

 - 2014년 9월 스테판 챠젤라스에 의해 최초 발견된 취약점(GNU Bash 원격 명령 실행 취약점)

 - OpenSSL 하트블리드 취약점 이후 취약점에 이름을 짓는 유행에 따라 "쉘쇼크"라 명명

 - 인터넷을 통해 간단한 명령만으로 시스템을 장악할 수 있는 심각성 때문에 미국국립표준기술연구소(NIST)에서는 쉘쇼크 취약점 등급을 2014년 4월에 발표된 하트블리드 취약점(5점)보다 높은 최고 점수인 10점으로 산정 발표

 - 취약한 버전의 bash는 환경변수의 함수 선언문 뒤에 임의의 명령어를 삽입할 경우 환경변수에 설정된 함수 선언 시 함수 선언의 끝을 인지하지 못하고 삽입한 명령어까지 실행한느 취약점이 존재한다.

 - export fn='() { echo "Environment function"; }; echo "command"'

  * 환경변수에 함수 선언문 문자열을 설정하면서 세미콜론(;) 기호와 함께 echo "command" 명령어를 추가하고 있다.

 - VAR = () { return; }; /bin/id

  * 취약점이 발생하는 부분은 bash가 제공하는 함수 선언기능이다. "() {"로 시작하는 함수 선언 문자열을 환경변수에 저장하면 동일한 이름을 가지는 함수로 선언된다. 문제는 함수 선언문 끝에 임의의 명령어를 추가로 삽입할 경우 bash가 함수문에서 처리를 멈추지 않고 추가로 삽입한 명령어를 계속 실행하기 때문에 발생한다.

 

CGI를 이용한 Bash 취약점 공격유형

 - 쉘쇼크 취약점에 의해 영향을 받는 프로그램들 중 가장 대표적인 것이 CGI이다. CGI는 User-Agent와 같은 요청 헤더정보를 쉘의 환경변수에 저장하는데, 공격자가 헤더정보에 함수와 명령어를 추가하여 전송하면 해당 명령어가 실행되는 취약점이 발생한다.

 - "/dev/tcp" 특수파일을 이용한 리버스 쉘 연결

 - "nc(netcat)" 프로그램을 이용한 리버스 쉘 연결

 - 악성코드 다운로드 유형

 - 웹쉘(WebShell) 생성 유형

 - 대응방안

  1. 취약한 버전의 bash를 사용하고 있는 경우 최신 버전으로 업데이트한다.

  2. CGI 서비스의 사용유무를 확인하여 해당 서비스를 사용하지 않는 경우 서비스를 중지하거나 삭제한다.

  3. 보안장비 단에서 공격 시그니처(탐지룰)를 등록하여 차단한다.

 

 

※ 함께 보면 좋은 글

 

(이전글) 클릭하시면 정보보안기사 실기 요약 9로 이동합니다.
(다음글) 클릭하시면 정보보안기사 실기 요약 11로 이동합니다.

 

 

반응형