13일차 학습 범위인 **점검 도구 및 해킹 시나리오(PART 04 SEC 14~16)**는 지금까지 배운 개별 기술들이 실제 현장에서 어떻게 연결되어 사고를 일으키고, 이를 어떻게 방어하는지를 다룹니다.
특히 Tripwire의 동작 원리와 최근 실기 시험에서 비중이 높아진 Reverse Shell, ShellShock 취약점은 반드시 기술할 수 있어야 합니다.
1. 무결성 점검 도구: Tripwire (SEC 14)
파일이 변조되었는지 확인하는 도구입니다. 관리자가 지정한 파일의 정보를 데이터베이스에 저장해두고, 나중에 비교하여 변경 사항을 찾아냅니다.
- 동작 원리: 시스템 내 중요 파일에 대해 해시(Hash)값을 추출하여 데이터베이스에 저장합니다. 이후 주기적으로 현재 파일의 해시값과 비교하여 다를 경우 경고를 보냅니다.
- 핵심 파일:
- tw.config: 점검 대상 및 방법을 설정하는 정책 파일.
- tw.db: 파일의 초기 해시 정보가 저장된 데이터베이스 파일.
- 암기 포인트: Tripwire는 공격을 '차단'하는 것이 아니라 **'사후 탐지(무결성 확인)'**를 목적으로 합니다.
2. 최신 해킹 시나리오: Reverse Shell (SEC 15)
일반적인 접속과 반대로, 공격당한 서버가 공격자에게 접속을 시도하게 만드는 기법입니다.
- 왜 사용하는가?: 대부분의 방화벽은 외부에서 들어오는 접속(Inbound)은 꼼꼼히 막지만, 내부에서 나가는 접속(Outbound)은 상대적으로 허술하다는 점을 악용합니다.
- 공격 과정:
- 공격자가 자신의 PC에서 특정 포트(예: 4444)를 열고 대기합니다. (nc -lvp 4444)
- 서버의 취약점을 이용해 서버가 공격자 IP의 4444 포트로 연결하게 만듭니다.
- 연결이 성공하면 공격자는 서버의 셸(Shell) 권한을 획득합니다.
3. 주요 취약점 분석: ShellShock (SEC 16)
리눅스의 기본 셸인 **Bash(Bourne Again Shell)**의 환경 변수 처리 취약점입니다.
- 원리: 환경 변수에 함수를 정의할 때, 함수 정의 뒤에 오는 명령어를 Bash가 그대로 실행해버리는 버그입니다.
- 위험성: 웹 서버(CGI 방식 등)가 내부적으로 Bash를 호출할 경우, 원격에서 서버 명령어를 실행할 수 있어 매우 위험합니다.
- 확인 방법: env x='() { :;}; echo vulnerable' bash -c "echo test" 명령어를 쳤을 때 vulnerable이 출력되면 취약한 상태입니다.
🔍 실기형 핵심 체크리스트
- Tripwire의 핵심 가치: "파일의 내용뿐만 아니라 권한, 크기, 수정 시간 등을 해시로 비교하여 무결성을 보장한다."
- Reverse Shell 방어: 방화벽에서 불필요한 Outbound(Egress) 트래픽을 차단하고, nc나 python, bash 등을 통한 비정상적인 외부 연결 시도를 모니터링합니다.
- ShellShock 대응: Bash 패키지를 최신 버전으로 업데이트하는 것이 유일한 근본 대책입니다.
✍️ 오늘의 1분 인출 연습:
- 중요 파일의 해시값을 비교하여 변경 여부를 감시하는 도구의 이름은?
- 방화벽의 인바운드 정책을 우회하기 위해 서버가 공격자에게 먼저 접속하게 하는 기법은?
- Bash 셸의 환경 변수 설정 취약점을 무엇이라 부르는가?
오늘은 PART 04 SECTION 14~16을 정독하세요. 특히 Reverse Shell의 개념도를 머릿속에 꼭 넣어두세요.
'정보보안(산업)기사' 카테고리의 다른 글
| 15일차 : 정보보안 관리 및 위험 관리 (0) | 2026.02.25 |
|---|---|
| 14일차 : Snort 룰(Rule) 마스터링 (0) | 2026.02.25 |
| 12일 : 침입 탐지 및 차단 시스템 (0) | 2026.02.25 |
| 11일차 : 메일, DB, 클라우드 보안 (0) | 2026.02.25 |
| 10일차 : 웹 서버 취약점 및 로그 분석 (0) | 2026.02.25 |