프로세스, 서비스, 패치, 백업, 악성코드 기초
시스템보안의 운영 실무에 가까운 주제를 정리합니다.
시스템보안의 운영 실무에 가까운 주제를 정리합니다.
2장 1절: 계정, 패스워드, 관리자 권한
2장 2절: 파일 권한, 접근통제, 로그
2장 3절: 프로세스, 서비스, 패치, 백업, 악성코드서버를 안전하게 운영하려면 계정과 권한만 관리해서는 부족합니다.
서버에서 어떤 프로그램이 실행 중인지, 어떤 서비스가 열려 있는지, 보안패치가 적용되어 있는지, 백업이 있는지, 악성코드 감염 징후는 없는지도 확인해야 합니다.
핵심 주제는 아래 10개입니다.
프로세스
서비스
데몬
포트
불필요한 서비스 제거
보안 패치
취약점
백업
악성코드
랜섬웨어학습 목표
이번 절의 학습 후 다음 질문에 답할 수 있어야 한다.
| 질문 | 목표 |
|---|---|
| 프로세스란 무엇인가? | 실행 중인 프로그램이라고 설명 가능 |
| 서비스란 무엇인가? | 백그라운드에서 지속적으로 동작하는 기능이라고 설명 가능 |
| 불필요한 서비스가 왜 위험한가? | 공격 표면을 증가시키기 때문이라고 설명 가능 |
| 패치 관리는 왜 중요한가? | 알려진 취약점을 제거하기 위해 필요하다고 설명 가능 |
| 백업은 왜 보안 대책인가? | 장애, 삭제, 랜섬웨어 피해 복구에 필요하다고 설명 가능 |
| 악성코드의 종류는? | 바이러스, 웜, 트로이목마, 랜섬웨어 등 구분 가능 |
| 랜섬웨어 대응은? | 백업, 접근통제, 패치, 보안 솔루션, 사용자 교육으로 설명 가능 |
이번 절 내용의 큰 흐름
서버 한 대를 운영한다고 생각해봅시다.
서버가 켜진다.
→ 운영체제가 실행된다.
→ 여러 프로세스가 실행된다.
→ 웹, DB, SSH 같은 서비스가 열린다.
→ 외부 사용자가 네트워크로 접속한다.
→ 취약한 서비스가 있으면 공격당할 수 있다.
→ 보안패치와 설정 점검이 필요하다.
→ 사고 발생 시 백업으로 복구해야 한다.
→ 악성코드 감염 여부도 확인해야 한다.이 흐름에서 시험 키워드는 다음입니다.
| 단계 | 시험 키워드 |
|---|---|
| 프로그램 실행 | 프로세스 |
| 백그라운드 기능 | 서비스, 데몬 |
| 외부 접속 | 포트 |
| 위험 감소 | 불필요한 서비스 제거 |
| 취약점 보완 | 패치 관리 |
| 복구 | 백업 |
| 감염 대응 | 악성코드 대응 |
프로세스란?
프로세스는 실행 중인 프로그램입니다.
예를 들어 프로그램 파일이 디스크에 있을 때는 그냥 프로그램입니다.
nginx
mysql
chrome
python이 프로그램이 실행되어 메모리에 올라가 동작하면 프로세스가 됩니다.
프로그램 = 실행 전 파일
프로세스 = 실행 중인 프로그램시험식 표현은 다음입니다.
프로세스는 운영체제에서 실행 중인 프로그램의 인스턴스로, CPU와 메모리 등 시스템 자원을 사용한다.프로세스를 왜 점검해야 하는가?
프로세스를 점검하는 이유는 간단합니다.
서버에서 무엇이 실행 중인지 알아야 보안을 관리할 수 있기 때문이다.공격자가 서버에 침입하면 다음과 같은 일을 할 수 있습니다.
| 공격자 행위 | 설명 |
|---|---|
| 악성 프로세스 실행 | 백도어, 채굴 프로그램, 악성 스크립트 실행 |
| 정상 프로세스 위장 | 이름을 비슷하게 만들어 숨김 |
| 과도한 CPU 사용 | 시스템 성능 저하 |
| 의심스러운 네트워크 연결 | 외부 공격자 서버와 통신 |
| 로그 삭제 도구 실행 | 침입 흔적 은폐 |
따라서 보안 담당자는 프로세스를 보며 다음을 확인해야 합니다.
이 프로세스는 정상인가?
누가 실행했는가?
어떤 권한으로 실행 중인가?
CPU나 메모리를 과도하게 쓰는가?
외부 네트워크와 통신하는가?프로세스 점검 관점
시스템보안 시험에서 프로세스 점검은 보통 아래 관점으로 나옵니다.
| 점검 항목 | 확인 이유 |
|---|---|
| 실행 사용자 | root 또는 관리자 권한으로 실행되는지 확인 |
| 프로세스 이름 | 정상 프로세스인지 의심 프로세스인지 확인 |
| CPU 사용률 | 비정상 과부하 여부 확인 |
| 메모리 사용률 | 자원 고갈 또는 악성 행위 확인 |
| 실행 경로 | 임시 폴더나 이상 경로에서 실행되는지 확인 |
| 네트워크 연결 | 외부 의심 IP와 통신하는지 확인 |
| 시작 방식 | 부팅 시 자동 실행되는지 확인 |
예를 들어 다음은 의심할 수 있는 상황입니다.
/tmp 디렉터리에서 이상한 이름의 프로세스가 root 권한으로 실행 중이다.
CPU를 90% 이상 사용하고 외부 IP와 지속적으로 통신한다.악성코드
백도어
암호화폐 채굴 악성코드
침해 후 설치된 원격 제어 도구서비스란?
서비스는 운영체제에서 백그라운드로 실행되며 특정 기능을 제공하는 프로그램입니다.
Linux/Unix에서는 흔히 데몬 daemon이라고 부릅니다.
예시는 다음과 같습니다.
| 서비스 | 역할 |
|---|---|
| SSH | 원격 접속 |
| Web Server | 웹 서비스 제공 |
| DB Server | 데이터베이스 제공 |
| DNS | 도메인 이름 변환 |
| Mail Server | 메일 송수신 |
| FTP | 파일 전송 |
| RDP | Windows 원격 데스크톱 |
서비스는 보통 사용자가 직접 화면에서 실행하지 않아도 백그라운드에서 계속 동작합니다.
시험식 표현은 다음입니다.
서비스는 시스템에서 백그라운드로 실행되며 네트워크, 인증, 웹, DB 등 특정 기능을 지속적으로 제공하는 프로세스이다.서비스와 포트의 관계
서비스는 외부와 통신하기 위해 포트를 열 수 있습니다.
예를 들면 다음과 같습니다.
| 서비스 | 포트 |
|---|---|
| SSH | 22 |
| Telnet | 23 |
| DNS | 53 |
| HTTP | 80 |
| HTTPS | 443 |
| RDP | 3389 |
서버에서 포트가 열려 있다는 것은 외부에서 해당 서비스에 접근할 수 있다는 뜻입니다.
열린 포트 = 외부 접근 가능 지점따라서 보안 관점에서는 다음 질문이 중요합니다.
이 포트는 꼭 열려 있어야 하는가?
이 서비스는 최신 패치가 적용되어 있는가?
접근 가능한 IP가 제한되어 있는가?
인증은 안전한가?
불필요한 서비스는 꺼져 있는가?불필요한 서비스가 위험한 이유
불필요한 서비스는 공격 표면을 증가시킵니다.
공격 표면이란 공격자가 노릴 수 있는 지점을 의미합니다.
공격 표면 = 공격자가 접근하거나 공격할 수 있는 대상의 범위예를 들어 웹 서버만 운영하면 되는데 FTP, Telnet, 오래된 DB 서비스까지 열려 있다면 공격자가 노릴 수 있는 지점이 늘어납니다.
| 문제 | 위험 |
|---|---|
| 사용하지 않는 서비스 실행 | 공격 대상 증가 |
| 오래된 서비스 방치 | 알려진 취약점 악용 가능 |
| 기본 설정 유지 | 기본 계정, 기본 경로 악용 가능 |
| 불필요한 포트 개방 | 외부 스캔과 공격 대상이 됨 |
| 평문 프로토콜 사용 | 계정 정보 도청 가능 |
시험식 답안은 다음처럼 쓰면 됩니다.
불필요한 서비스는 외부에서 접근 가능한 공격 지점을 증가시켜 취약점 악용, 정보 유출, 권한 상승 등의 위험을 높인다. 따라서 사용하지 않는 서비스는 중지하거나 제거하고, 필요한 서비스만 최소한으로 운영해야 한다.보안상 주의해야 할 서비스
특히 아래 서비스는 시험에서 자주 연결됩니다.
| 서비스 | 보안상 주의점 |
|---|---|
| Telnet | 평문 통신이므로 계정 정보 도청 위험 |
| FTP | 일반 FTP는 계정과 데이터가 평문 전송될 수 있음 |
| SSH | 안전한 원격 접속이지만 관리자 직접 로그인 제한 필요 |
| RDP | 외부 노출 시 무차별 대입 공격 대상이 되기 쉬움 |
| DB 서비스 | 외부 직접 노출 금지, 접근 IP 제한 필요 |
| 관리 페이지 | 관리자 인증 강화 및 접근 제한 필요 |
간단히 기억할 문장입니다.
Telnet과 일반 FTP는 평문 통신이므로 보안상 사용을 제한하고, SSH나 SFTP와 같은 암호화된 대체 수단을 사용하는 것이 바람직하다.서비스 보안 점검 항목
실기에서 “서비스 보안 점검 항목을 쓰시오”라고 나오면 아래를 활용하면 됩니다.
불필요한 서비스 중지 또는 제거
불필요한 포트 차단
서비스별 최신 보안패치 적용
기본 계정과 기본 비밀번호 변경
관리자 원격 접속 제한
접근 허용 IP 제한
평문 프로토콜 사용 제한
서비스 실행 권한 최소화
서비스 로그 점검
배너 정보 노출 제한여기서 특히 중요한 것은 다음입니다.
불필요한 서비스 제거
최소권한으로 서비스 실행
접근 IP 제한
최신 패치 적용
로그 점검서비스 실행 권한
서비스는 어떤 계정 권한으로 실행되는지도 중요합니다.
웹 서버가 root 권한으로 실행된다.
DB 서비스가 관리자 권한으로 실행된다.왜 위험할까요?
서비스에 취약점이 있을 때 공격자가 그 서비스 권한을 획득할 수 있기 때문입니다.
서비스가 root 권한이면 피해가 훨씬 커집니다.
서비스는 전용 계정으로 실행하고, 필요한 최소 권한만 부여한다.예를 들어 웹 서버는 웹 서비스 운영에 필요한 권한만 가져야 합니다.
시스템 전체 파일을 수정할 수 있으면 안 됩니다.
서비스는 전용 계정으로 실행하고 최소권한 원칙을 적용하여, 서비스 침해 시 시스템 전체로 피해가 확산되는 것을 방지해야 한다.보안 패치란?
보안 패치는 소프트웨어의 취약점이나 오류를 수정하기 위해 제공되는 업데이트입니다.
예를 들어 운영체제, 웹 서버, DB, 브라우저, 라이브러리 등에 취약점이 발견되면 제조사나 개발자가 패치를 제공합니다.
취약점 발견
→ 보안 패치 배포
→ 관리자가 패치 적용
→ 취약점 악용 가능성 감소시험식 표현은 다음입니다.
보안 패치는 운영체제나 소프트웨어의 알려진 취약점을 수정하여 공격자가 이를 악용하지 못하도록 하는 보안 조치이다.패치 관리가 중요한 이유
보안 사고의 상당수는 이미 알려진 취약점이 방치되어 발생합니다.
패치를 하지 않으면 다음 위험이 있습니다.
| 위험 | 설명 |
|---|---|
| 알려진 취약점 악용 | 공격자가 공개된 취약점 정보를 이용 |
| 권한 상승 | 일반 권한에서 관리자 권한 획득 가능 |
| 원격 코드 실행 | 외부에서 서버 명령 실행 가능 |
| 악성코드 감염 | 취약점을 통해 악성코드 설치 |
| 서비스 장애 | 취약점 공격으로 시스템 중단 |
패치 관리는 운영체제와 소프트웨어의 알려진 취약점을 제거하여 침해사고를 예방하기 위해 중요하다. 패치를 적용하지 않으면 공격자가 공개된 취약점을 악용하여 권한 상승, 원격 코드 실행, 악성코드 감염 등을 유발할 수 있다.패치 관리 절차
패치 관리는 무작정 적용하는 것이 아니라 절차가 필요합니다.
기본 흐름은 다음입니다.
자산 파악
→ 취약점 및 패치 정보 확인
→ 중요도 평가
→ 테스트 환경 검증
→ 운영 환경 적용
→ 적용 결과 확인
→ 이력 관리각 단계의 의미는 다음입니다.
| 단계 | 설명 |
|---|---|
| 자산 파악 | 어떤 서버와 소프트웨어가 있는지 확인 |
| 패치 정보 확인 | 어떤 취약점과 패치가 있는지 확인 |
| 중요도 평가 | 긴급 패치인지 일반 패치인지 판단 |
| 테스트 | 서비스 장애 여부 사전 검증 |
| 적용 | 운영 시스템에 패치 반영 |
| 결과 확인 | 정상 적용 여부와 서비스 상태 확인 |
| 이력 관리 | 언제, 누가, 무엇을 패치했는지 기록 |
실기 답안으로는 이렇게 쓸 수 있습니다.
패치 관리는 자산과 소프트웨어 버전을 파악하고, 취약점 및 패치 정보를 확인한 뒤 중요도에 따라 우선순위를 정해 수행한다. 운영 적용 전 테스트 환경에서 검증하고, 적용 후 정상 동작 여부와 패치 이력을 확인해야 한다.패치 적용 시 주의사항
패치는 중요하지만, 운영 시스템에 바로 적용하면 장애가 날 수 있습니다.
따라서 다음을 고려해야 합니다.
| 주의사항 | 이유 |
|---|---|
| 사전 백업 | 패치 실패 시 복구 필요 |
| 테스트 환경 검증 | 서비스 장애 예방 |
| 점검 시간 확보 | 운영 영향 최소화 |
| 롤백 계획 | 문제가 생기면 이전 상태로 복구 |
| 패치 이력 기록 | 관리와 감사에 필요 |
| 긴급 패치 기준 | 고위험 취약점은 빠른 대응 필요 |
패치 적용 전에는 백업과 테스트를 수행하고, 적용 후 정상 동작 여부를 확인해야 한다. 장애 발생에 대비해 롤백 계획과 패치 이력을 관리하는 것이 필요하다.백업이란?
백업은 데이터나 시스템을 장애 또는 사고 발생 전 상태로 복구하기 위해 복사본을 보관하는 것입니다.
백업은 단순한 운영 관리가 아니라 중요한 보안 대책입니다.
왜냐하면 다음 상황에서 복구가 필요하기 때문입니다.
랜섬웨어 감염
파일 삭제
DB 손상
서버 장애
관리자 실수
하드웨어 고장
침해사고 후 시스템 복구백업은 장애, 데이터 손상, 삭제, 랜섬웨어 감염 등 사고 발생 시 시스템과 데이터를 복구하기 위해 사본을 보관하는 보안 대책이다.백업의 종류
백업 방식은 크게 세 가지를 알아야 합니다.
전체 백업
증분 백업
차등 백업전체 백업
전체 백업은 모든 데이터를 백업하는 방식입니다.
| 장점 | 단점 |
|---|---|
| 복구가 단순함 | 시간과 저장공간이 많이 필요 |
전체 백업 = 전부 복사증분 백업
증분 백업은 마지막 백업 이후 변경된 데이터만 백업합니다.
월요일: 전체 백업
화요일: 월요일 이후 변경분만 백업
수요일: 화요일 이후 변경분만 백업
목요일: 수요일 이후 변경분만 백업| 장점 | 단점 |
|---|---|
| 백업 시간과 용량이 적음 | 복구 시 여러 백업본이 필요해 복잡 |
증분 백업 = 직전 백업 이후 변경분차등 백업
차등 백업은 마지막 전체 백업 이후 변경된 데이터 전체를 백업합니다.
월요일: 전체 백업
화요일: 월요일 이후 변경분 백업
수요일: 월요일 이후 변경분 전체 백업
목요일: 월요일 이후 변경분 전체 백업| 장점 | 단점 |
|---|---|
| 증분보다 복구가 쉬움 | 시간이 갈수록 백업 용량 증가 |
차등 백업 = 마지막 전체 백업 이후 변경분전체·증분·차등 백업 비교
| 구분 | 전체 백업 | 증분 백업 | 차등 백업 |
|---|---|---|---|
| 백업 대상 | 모든 데이터 | 직전 백업 이후 변경분 | 마지막 전체 백업 이후 변경분 |
| 백업 시간 | 김 | 짧음 | 중간 |
| 저장공간 | 큼 | 작음 | 중간 |
| 복구 난이도 | 쉬움 | 어려움 | 중간 |
| 복구 시 필요 | 전체 백업본 | 전체 + 모든 증분 | 전체 + 마지막 차등 |
전체 = 전부
증분 = 직전 백업 이후
차등 = 마지막 전체 백업 이후백업 보안 관리
백업도 안전하게 관리해야 합니다.
백업 파일이 유출되면 중요한 정보가 그대로 노출될 수 있습니다.
| 관리 항목 | 설명 |
|---|---|
| 백업 암호화 | 백업본 유출 시 정보 노출 방지 |
| 접근통제 | 승인된 관리자만 접근 |
| 무결성 검증 | 백업본이 변조되지 않았는지 확인 |
| 정기 복구 테스트 | 실제 복구 가능 여부 확인 |
| 오프라인 백업 | 랜섬웨어 확산으로부터 보호 |
| 원격지 보관 | 재해 발생 시 복구 가능 |
| 백업 이력 관리 | 언제, 무엇을 백업했는지 기록 |
백업본은 중요 데이터가 포함될 수 있으므로 암호화와 접근통제를 적용해야 한다. 또한 정기적으로 복구 테스트를 수행하여 실제 복구 가능성을 확인하고, 랜섬웨어나 재해에 대비해 오프라인 또는 원격지 백업을 운영해야 한다.RPO와 RTO
백업과 재해복구에서 자주 나오는 용어가 있습니다.
RPO
RTORPO
RPO는 Recovery Point Objective입니다.
한국어로는 복구 시점 목표입니다.
얼마나 과거 시점까지 데이터 손실을 감수할 수 있는가?예를 들어 RPO가 1시간이면, 사고 발생 시 최대 1시간치 데이터 손실을 감수한다는 뜻입니다.
RTO
RTO는 Recovery Time Objective입니다.
한국어로는 복구 시간 목표입니다.
얼마나 빨리 서비스를 복구해야 하는가?예를 들어 RTO가 4시간이면, 사고 발생 후 4시간 이내에 서비스를 복구해야 한다는 뜻입니다.
| 용어 | 의미 | 질문 |
|---|---|---|
| RPO | 복구 시점 목표 | 데이터 손실을 얼마나 허용할 것인가? |
| RTO | 복구 시간 목표 | 서비스를 얼마나 빨리 복구할 것인가? |
RPO = Point = 어느 시점까지 복구?
RTO = Time = 얼마나 빨리 복구?악성코드란?
악성코드는 사용자나 시스템에 피해를 주기 위해 작성된 악의적인 프로그램 또는 코드입니다.
피해 예시는 다음과 같습니다.
정보 유출
파일 삭제
파일 암호화
시스템 파괴
원격 제어
계정 탈취
서비스 장애
다른 시스템으로 전파악성코드는 정보 유출, 시스템 손상, 서비스 장애, 원격 제어 등 악의적인 행위를 수행하기 위해 제작된 프로그램 또는 코드이다.악성코드의 주요 종류
정보보안기사에서는 악성코드 종류를 구분하는 문제가 자주 나온다.
주요 종류는 다음입니다.
| 종류 | 핵심 특징 |
|---|---|
| 바이러스 | 정상 파일에 감염되어 전파 |
| 웜 | 네트워크를 통해 자기 복제·전파 |
| 트로이목마 | 정상 프로그램처럼 위장 |
| 랜섬웨어 | 파일을 암호화하고 금전 요구 |
| 스파이웨어 | 사용자 정보 몰래 수집 |
| 애드웨어 | 광고 표시, 사용자 추적 |
| 백도어 | 우회 접근 통로 생성 |
| 루트킷 | 악성 행위를 은폐 |
| 키로거 | 키 입력 정보 수집 |
| 봇 | 공격자의 명령을 받아 동작 |
바이러스
바이러스는 정상 파일이나 프로그램에 감염되어 실행될 때 전파되는 악성코드입니다.
정상 파일에 붙는다.
사용자 실행이 필요한 경우가 많다.
감염된 파일을 통해 전파된다.바이러스는 정상 파일이나 프로그램에 감염되어 해당 파일이 실행될 때 함께 실행되고 전파되는 악성코드이다.웜
웜은 네트워크를 통해 스스로 복제하고 전파되는 악성코드입니다.
바이러스와의 차이는 중요합니다.
| 구분 | 바이러스 | 웜 |
|---|---|---|
| 전파 방식 | 파일 감염 | 네트워크 자기 전파 |
| 사용자 실행 | 필요한 경우 많음 | 스스로 전파 가능 |
| 주요 피해 | 파일 감염, 시스템 손상 | 네트워크 과부하, 대량 감염 |
웜은 네트워크 취약점 등을 이용해 스스로 복제·전파되는 악성코드로, 대량 감염과 네트워크 과부하를 유발할 수 있다.트로이목마
트로이목마는 정상 프로그램처럼 위장하여 사용자가 실행하도록 유도하는 악성코드입니다.
겉으로는 정상처럼 보인다.
실제로는 악성 행위를 한다.예를 들어 무료 프로그램, 게임, 문서 파일처럼 위장할 수 있습니다.
트로이목마는 정상 프로그램으로 위장하여 사용자가 실행하도록 유도하고, 실행 후 정보 유출, 백도어 설치, 원격 제어 등의 악성 행위를 수행하는 악성코드이다.랜섬웨어
랜섬웨어는 파일이나 시스템을 암호화한 뒤 복구 대가로 금전을 요구하는 악성코드입니다.
파일 암호화
업무 중단
데이터 손실
금전 요구
정보 유출 협박랜섬웨어 대응은 매우 중요합니다.
| 대응 방안 | 설명 |
|---|---|
| 정기 백업 | 암호화 피해 후 복구 가능 |
| 오프라인 백업 | 백업본까지 암호화되는 것 방지 |
| 보안 패치 | 취약점 악용 차단 |
| 접근권한 최소화 | 감염 확산 범위 축소 |
| 이메일 첨부파일 주의 | 감염 경로 차단 |
| 백신·EDR 사용 | 탐지와 대응 |
| 네트워크 분리 | 확산 방지 |
| 사용자 교육 | 피싱과 악성 첨부파일 예방 |
랜섬웨어는 사용자 파일이나 시스템을 암호화한 후 복구 대가로 금전을 요구하는 악성코드이다. 대응 방안으로는 중요 데이터의 정기적·오프라인 백업, 보안패치 적용, 접근권한 최소화, 이메일 첨부파일 주의, 백신 및 EDR 사용, 감염 시스템 격리 등이 있다.백도어와 루트킷
백도어
백도어는 정상 인증 절차를 우회하여 시스템에 접근할 수 있도록 만든 통로입니다.
공격자가 침입 후 다시 들어오기 위해 설치할 수 있습니다.
백도어 = 몰래 만들어 둔 우회 접속 통로루트킷
루트킷은 악성코드나 공격자의 행위를 숨기기 위한 도구입니다.
예를 들어 악성 프로세스, 파일, 네트워크 연결, 로그 흔적을 숨길 수 있습니다.
루트킷 = 침입 흔적 은폐 도구시험식 비교는 다음과 같습니다.
| 구분 | 핵심 |
|---|---|
| 백도어 | 우회 접근 통로 |
| 루트킷 | 악성 행위 은폐 |
키로거와 스파이웨어
키로거
키로거는 사용자의 키 입력을 기록하는 악성코드입니다.
아이디
비밀번호
계좌번호
메신저 내용이런 정보가 탈취될 수 있습니다.
스파이웨어
스파이웨어는 사용자 정보를 몰래 수집하는 악성코드입니다.
수집 대상은 다음과 같습니다.
웹 방문 기록
개인정보
계정 정보
사용 패턴
시스템 정보키로거는 사용자의 키 입력을 기록하여 계정 정보나 비밀번호를 탈취할 수 있으며, 스파이웨어는 사용자 정보를 몰래 수집하는 악성코드이다.악성코드 감염 징후
악성코드 감염 시 다음 징후가 나타날 수 있습니다.
| 징후 | 설명 |
|---|---|
| CPU·메모리 사용률 급증 | 악성 프로세스 또는 채굴 프로그램 가능 |
| 알 수 없는 프로세스 실행 | 악성코드 실행 가능 |
| 네트워크 트래픽 증가 | 외부 C2 서버 통신 가능 |
| 파일이 갑자기 암호화됨 | 랜섬웨어 가능 |
| 보안 프로그램 비활성화 | 악성코드의 방어 회피 가능 |
| 계정 로그인 실패 증가 | 계정 공격 가능 |
| 이상한 자동 실행 항목 | 지속성 확보 시도 가능 |
| 로그 삭제 흔적 | 침입 흔적 은폐 가능 |
| 중요 파일 변경 | 변조 또는 감염 가능 |
악성코드 감염 징후로는 비정상적인 CPU·메모리 사용률 증가, 알 수 없는 프로세스 실행, 외부 의심 IP와의 통신, 파일 암호화 또는 변조, 보안 프로그램 비활성화, 로그 삭제 흔적 등이 있다.악성코드 대응 절차
악성코드 감염이 의심되면 다음 흐름으로 대응합니다.
탐지
→ 격리
→ 분석
→ 제거
→ 복구
→ 재발 방지각 단계는 다음과 같습니다.
| 단계 | 설명 |
|---|---|
| 탐지 | 감염 징후, 백신 탐지, 로그 확인 |
| 격리 | 감염 시스템을 네트워크에서 분리 |
| 분석 | 감염 경로, 피해 범위, 악성 행위 파악 |
| 제거 | 악성 파일, 프로세스, 자동 실행 항목 제거 |
| 복구 | 백업본 복원, 시스템 정상화 |
| 재발 방지 | 패치, 권한 조정, 보안 설정 강화, 사용자 교육 |
악성코드 감염 시 감염 시스템을 네트워크에서 격리하여 확산을 방지하고, 로그와 프로세스, 파일을 분석하여 감염 경로와 피해 범위를 파악한다. 이후 악성코드를 제거하고 백업본으로 복구한 뒤, 패치 적용, 권한 최소화, 보안 솔루션 강화, 사용자 교육 등 재발 방지 대책을 수립해야 한다.백신, EDR, 보안관제 기초
이번 절에서는 깊게 들어가지 않고 개념만 잡겠습니다.
백신
백신은 악성코드를 탐지하고 치료하거나 격리하는 보안 프로그램입니다.
백신 = 악성코드 탐지·차단·치료EDR
EDR은 Endpoint Detection and Response입니다.
PC나 서버 같은 엔드포인트에서 행위를 모니터링하고, 이상 행위를 탐지·대응하는 솔루션입니다.
EDR = 단말 행위 탐지와 대응백신과 EDR을 단순 비교하면 다음과 같습니다.
| 구분 | 백신 | EDR |
|---|---|---|
| 중심 | 악성코드 탐지 | 행위 탐지와 대응 |
| 대상 | 파일, 시그니처 기반 탐지 중심 | 프로세스, 네트워크, 행위 분석 |
| 역할 | 차단·치료 | 탐지·분석·격리·대응 |
| 관점 | 예방 중심 | 탐지와 대응 강화 |
시험 수준에서는 이렇게 기억하면 됩니다.
백신은 악성코드 탐지와 치료에 초점이 있고, EDR은 엔드포인트의 이상 행위를 탐지·분석·대응하는 데 초점이 있다.보안 설정 강화: 하드닝
하드닝은 시스템을 더 안전하게 만들기 위해 불필요한 기능을 제거하고 보안 설정을 강화하는 작업입니다.
하드닝 = 시스템 보안 강화하드닝 예시는 다음과 같습니다.
| 항목 | 예시 |
|---|---|
| 계정 | 불필요한 계정 삭제, Guest 비활성화 |
| 권한 | 최소권한 적용, 777 권한 제거 |
| 서비스 | 불필요한 서비스 중지 |
| 포트 | 불필요한 포트 차단 |
| 패치 | 최신 보안패치 적용 |
| 로그 | 감사 로그 활성화 |
| 인증 | 강력한 패스워드, MFA |
| 설정 | 기본 설정 변경, 배너 정보 제한 |
시스템 하드닝은 불필요한 계정, 서비스, 포트를 제거하고, 최소권한, 보안패치, 로그 설정, 강력한 인증 등 보안 설정을 적용하여 시스템의 공격 표면을 줄이는 작업이다.학습 내용 연결 정리
서버 보안 점검을 한다고 생각해봅시다.
점검 흐름은 다음과 같습니다.
1. 실행 중인 프로세스를 확인한다.
2. 불필요하거나 의심스러운 프로세스를 찾는다.
3. 열려 있는 서비스와 포트를 확인한다.
4. 사용하지 않는 서비스는 중지하거나 제거한다.
5. 운영체제와 서비스의 보안패치를 확인한다.
6. 중요 데이터의 백업 상태와 복구 가능성을 점검한다.
7. 악성코드 감염 징후를 확인한다.
8. 로그를 분석하여 이상 행위를 찾는다.
9. 발견된 문제에 대해 하드닝을 수행한다.이 흐름이 시스템보안 운영의 핵심입니다.
시험에 나오는 포인트
이번 절 내용 중 필기와 실기에서 중요한 포인트입니다.
| 주제 | 시험 포인트 |
|---|---|
| 프로세스 | 실행 중인 프로그램 |
| 서비스 | 백그라운드에서 기능을 제공하는 프로세스 |
| 데몬 | Linux/Unix 계열의 백그라운드 서비스 |
| 불필요한 서비스 | 공격 표면 증가 |
| 포트 | 외부 접근 지점 |
| Telnet | 평문 원격 접속, 사용 제한 |
| FTP | 평문 전송 위험, 보안 대체 수단 권장 |
| 서비스 권한 | 전용 계정, 최소권한 적용 |
| 패치 관리 | 알려진 취약점 제거 |
| 패치 절차 | 자산 파악, 중요도 평가, 테스트, 적용, 이력 관리 |
| 백업 | 사고 발생 시 복구 수단 |
| 전체 백업 | 모든 데이터 백업 |
| 증분 백업 | 직전 백업 이후 변경분 |
| 차등 백업 | 마지막 전체 백업 이후 변경분 |
| RPO | 복구 시점 목표 |
| RTO | 복구 시간 목표 |
| 바이러스 | 정상 파일 감염 |
| 웜 | 네트워크 자기 전파 |
| 트로이목마 | 정상 프로그램 위장 |
| 랜섬웨어 | 파일 암호화 후 금전 요구 |
| 백도어 | 우회 접근 통로 |
| 루트킷 | 침입 흔적 은폐 |
| 하드닝 | 공격 표면 축소와 보안 설정 강화 |
필기형 문제풀이
문제 1
프로세스에 대한 설명으로 가장 적절한 것은?
A. 시스템에 등록된 사용자 계정이다
B. 백그라운드에서만 동작하는 서비스 설정 파일이다
C. 실행 중인 프로그램이다
D. 네트워크 포트에 적용되는 방화벽 규칙이다
프로세스는 운영체제에서 실행 중인 프로그램입니다.
문제 2
서비스 또는 데몬에 대한 설명으로 적절한 것은?
A. 사용자가 직접 실행한 뒤 바로 종료되는 일반 명령이다
B. 특정 기능을 제공하지 않고 계정 정보만 저장하는 파일이다
C. 포트와 무관하게 로컬에서만 실행되는 임시 프로세스이다
D. 백그라운드에서 지속적으로 특정 기능을 제공하는 프로세스이다
서비스는 백그라운드에서 지속적으로 동작하며 웹, DB, 원격 접속 등의 기능을 제공합니다.
문제 3
불필요한 서비스가 보안상 위험한 주된 이유는?
A. 외부 접근 지점과 취약점 노출 가능성을 줄이기 때문에
B. 공격자가 노릴 수 있는 공격 표면을 증가시키기 때문에
C. 서비스 실행 권한을 항상 일반 사용자로 낮추기 때문에
D. 패치 적용 여부와 관계없이 모든 포트를 닫기 때문에
불필요한 서비스는 외부에서 접근 가능한 지점을 늘려 공격 표면을 증가시킵니다.
문제 4
다음 중 평문 통신으로 인해 사용을 제한하는 것이 바람직한 원격 접속 프로토콜은?
A. SSH
B. HTTPS
C. Telnet
D. SFTP
Telnet은 평문 원격 접속 프로토콜이므로 계정 정보 도청 위험이 있습니다.
문제 5
보안 패치의 주된 목적은?
A. 불필요한 서비스를 모두 활성 상태로 유지하기 위해
B. 알려진 취약점을 수정하여 공격 악용 가능성을 줄이기 위해
C. 취약점 정보를 공개하지 않고 로그만 삭제하기 위해
D. 서비스 계정을 관리자 권한으로 실행하기 위해
보안 패치는 운영체제나 소프트웨어의 알려진 취약점을 수정하기 위한 조치입니다.
문제 6
패치 적용 전 고려해야 할 사항으로 적절하지 않은 것은?
A. 사전 백업
B. 테스트 환경 검증
C. 롤백 계획
D. 운영 영향 평가 없이 동일한 일정으로 일괄 적용
패치는 중요하지만 운영 장애를 막기 위해 백업, 테스트, 롤백 계획, 적용 결과 확인이 필요합니다.
문제 7
증분 백업의 설명으로 적절한 것은?
A. 항상 모든 데이터를 백업한다
B. 마지막 전체 백업 이후 변경된 모든 데이터를 백업한다
C. 직전 백업 이후 변경된 데이터만 백업한다
D. 백업을 전혀 수행하지 않는다
증분 백업은 직전 백업 이후 변경된 데이터만 백업합니다.
문제 8
차등 백업의 설명으로 적절한 것은?
A. 마지막 전체 백업 이후 변경된 데이터를 백업한다
B. 직전 백업 이후 변경된 데이터만 백업한다
C. 전체 백업 없이 변경분만 단독으로 보관한다
D. 가장 최근 증분 백업 이후의 변경분만 백업한다
차등 백업은 마지막 전체 백업 이후 변경된 데이터를 백업합니다.
문제 9
랜섬웨어에 대한 설명으로 가장 적절한 것은?
A. 정상 파일에 기생해 실행 시 함께 동작하는 악성코드이다
B. 네트워크를 통해 스스로 복제·전파되는 악성코드이다
C. 정상 프로그램으로 위장해 사용자를 속이는 악성코드이다
D. 파일을 암호화하고 복구 대가를 요구하는 악성코드이다
랜섬웨어는 파일이나 시스템을 암호화하고 금전을 요구하는 악성코드입니다.
문제 10
웜의 특징으로 적절한 것은?
A. 정상 프로그램으로 위장해 사용자의 실행을 유도한다
B. 네트워크를 통해 스스로 복제·전파될 수 있다
C. 파일을 암호화하고 복구 대가를 요구한다
D. 시스템 침입 흔적을 은폐하는 데 중점을 둔다
웜은 네트워크를 통해 스스로 복제·전파되는 악성코드입니다.
문제 11
RPO의 의미로 적절한 것은?
A. 복구 시간 목표
B. 역할 기반 접근통제
C. 복구 시점 목표
D. 원격 접속 포트
RPO는 Recovery Point Objective, 즉 복구 시점 목표입니다.
문제 12
RTO의 의미로 적절한 것은?
A. 복구 시간 목표
B. 복구 시점 목표
C. 위험 전가
D. 해시 충돌
RTO는 Recovery Time Objective, 즉 복구 시간 목표입니다.
실기형 답안 훈련
실기 예제 1
문제: 불필요한 서비스를 제거해야 하는 이유를 설명하시오.
좋은 답안
불필요한 서비스는 외부에서 접근 가능한 공격 지점을 증가시켜 공격 표면을 확대한다. 이로 인해 취약점 악용, 정보 유출, 권한 상승 등의 위험이 증가하므로 사용하지 않는 서비스는 중지하거나 제거하고 필요한 서비스만 최소한으로 운영해야 한다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 공격 표면 증가 | 매우 중요 |
| 취약점 악용 가능성 | 중요 |
| 정보 유출·권한 상승 위험 | 좋음 |
| 중지 또는 제거 | 필요 |
| 최소 운영 | 좋음 |
실기 예제 2
문제: 패치 관리가 보안상 중요한 이유와 절차를 설명하시오.
좋은 답안
패치 관리는 운영체제와 소프트웨어의 알려진 취약점을 제거하여 공격자의 악용을 방지하기 위해 중요하다. 자산과 버전을 파악하고 패치 중요도를 평가한 뒤 테스트 환경에서 검증하고, 운영 환경에 적용한 후 정상 동작 여부와 패치 이력을 확인해야 한다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 알려진 취약점 제거 | 필수 |
| 공격 악용 방지 | 필수 |
| 자산·버전 파악 | 좋음 |
| 테스트 후 적용 | 중요 |
| 결과 확인·이력 관리 | 중요 |
실기 예제 3
문제: 전체 백업, 증분 백업, 차등 백업의 차이를 설명하시오.
좋은 답안
전체 백업은 모든 데이터를 백업하는 방식으로 복구가 쉽지만 시간과 저장공간이 많이 필요하다. 증분 백업은 직전 백업 이후 변경된 데이터만 백업하여 효율적이지만 복구 시 여러 백업본이 필요하며, 차등 백업은 마지막 전체 백업 이후 변경된 데이터를 백업하여 증분보다 복구가 비교적 쉽다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 전체 = 모든 데이터 | 필요 |
| 증분 = 직전 백업 이후 변경분 | 필수 |
| 차등 = 마지막 전체 백업 이후 변경분 | 필수 |
| 복구 난이도 차이 | 좋음 |
실기 예제 4
문제: 랜섬웨어의 개념과 대응 방안을 설명하시오.
좋은 답안
랜섬웨어는 사용자 파일이나 시스템을 암호화한 뒤 복구 대가로 금전을 요구하는 악성코드이다. 대응 방안으로는 정기적·오프라인 백업, 보안패치 적용, 접근권한 최소화, 의심스러운 이메일 첨부파일 차단, 백신 및 EDR 사용, 감염 시스템 격리 등이 있다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 파일 또는 시스템 암호화 | 필수 |
| 금전 요구 | 필수 |
| 정기 백업 | 매우 중요 |
| 오프라인 백업 | 중요 |
| 패치·권한 최소화 | 중요 |
| 감염 시스템 격리 | 좋음 |
실기 예제 5
문제: 악성코드 감염 시 대응 절차를 설명하시오.
좋은 답안
악성코드 감염이 의심되면 먼저 감염 시스템을 네트워크에서 격리하여 확산을 방지한다. 이후 프로세스, 파일, 로그, 네트워크 연결을 분석하여 감염 경로와 피해 범위를 파악하고, 악성코드 제거와 백업 복구를 수행한 뒤 패치 적용, 권한 점검, 보안 솔루션 강화 등 재발 방지 대책을 수립한다.채점 포인트
| 요소 | 포함 여부 |
|---|---|
| 격리 | 매우 중요 |
| 확산 방지 | 중요 |
| 로그·프로세스 분석 | 중요 |
| 피해 범위 파악 | 중요 |
| 제거·복구 | 필요 |
| 재발 방지 | 필요 |
핵심 요약
| 개념 | 한 줄 요약 |
|---|---|
| 프로세스 | 실행 중인 프로그램 |
| 서비스 | 백그라운드에서 특정 기능을 제공하는 프로세스 |
| 데몬 | Linux/Unix 계열의 백그라운드 서비스 |
| 포트 | 외부에서 서비스에 접근하는 통신 지점 |
| 불필요한 서비스 | 공격 표면을 증가시켜 위험 |
| 서비스 최소화 | 필요한 서비스만 운영하는 보안 원칙 |
| 패치 | 알려진 취약점을 수정하는 업데이트 |
| 패치 관리 | 자산 파악, 테스트, 적용, 이력 관리 |
| 백업 | 사고 발생 시 복구를 위한 사본 |
| 전체 백업 | 모든 데이터를 백업 |
| 증분 백업 | 직전 백업 이후 변경분 백업 |
| 차등 백업 | 마지막 전체 백업 이후 변경분 백업 |
| RPO | 복구 시점 목표 |
| RTO | 복구 시간 목표 |
| 악성코드 | 악의적 행위를 수행하는 프로그램 또는 코드 |
| 바이러스 | 정상 파일에 감염 |
| 웜 | 네트워크로 자기 전파 |
| 트로이목마 | 정상 프로그램처럼 위장 |
| 랜섬웨어 | 파일 암호화 후 금전 요구 |
| 백도어 | 우회 접근 통로 |
| 루트킷 | 악성 행위 은폐 |
| 하드닝 | 불필요한 기능 제거와 보안 설정 강화 |
필수 암기 문장
아래 문장들은 필기와 실기 모두 중요합니다.
프로세스는 실행 중인 프로그램이다.
서비스는 백그라운드에서 지속적으로 특정 기능을 제공하는 프로세스이다.
불필요한 서비스는 공격 표면을 증가시키므로 중지하거나 제거해야 한다.
서비스는 전용 계정으로 실행하고 최소권한 원칙을 적용해야 한다.
보안 패치는 알려진 취약점을 수정하여 공격자의 악용 가능성을 줄이는 조치이다.
패치 적용 전에는 백업과 테스트를 수행하고, 적용 후 정상 동작 여부와 이력을 확인해야 한다.
백업은 장애, 삭제, 랜섬웨어 감염 등 사고 발생 시 데이터를 복구하기 위한 보안 대책이다.
증분 백업은 직전 백업 이후 변경분을 백업하고, 차등 백업은 마지막 전체 백업 이후 변경분을 백업한다.
RPO는 복구 시점 목표이고, RTO는 복구 시간 목표이다.
바이러스는 정상 파일에 감염되고, 웜은 네트워크를 통해 스스로 전파된다.
트로이목마는 정상 프로그램처럼 위장하고, 랜섬웨어는 파일을 암호화한 뒤 금전을 요구한다.
악성코드 감염 시 감염 시스템을 격리하고, 원인과 피해 범위를 분석한 뒤 제거, 복구, 재발 방지 조치를 수행해야 한다.
시스템 하드닝은 불필요한 계정, 서비스, 포트를 제거하고 보안 설정을 강화하여 공격 표면을 줄이는 작업이다.연습 과제
다음 문제에 답한다.
이번 절은 실기에서 자주 쓰이는 문장들이 많으므로 가능하면 직접 작성하는 방식으로 확인한다.
A. 단답형
1. 프로세스란 무엇인가?
2. 서비스란 무엇인가?
3. 불필요한 서비스가 보안상 위험한 이유는 무엇인가?
4. 공격 표면이란 무엇인가?
5. Telnet이 보안상 위험한 이유는 무엇인가?
6. 서비스 실행 시 최소권한 원칙을 적용해야 하는 이유는 무엇인가?
7. 보안 패치란 무엇인가?
8. 패치 관리 절차를 간단히 쓰시오.
9. 패치 적용 전 백업과 테스트가 필요한 이유는 무엇인가?
10. 백업이 보안상 중요한 이유는 무엇인가?
11. 전체 백업, 증분 백업, 차등 백업의 차이를 쓰시오.
12. RPO와 RTO의 차이를 쓰시오.
13. 바이러스와 웜의 차이를 쓰시오.
14. 트로이목마란 무엇인가?
15. 랜섬웨어란 무엇인가?
16. 백도어와 루트킷의 차이를 쓰시오.
17. 악성코드 감염 징후 3가지를 쓰시오.
18. 시스템 하드닝이란 무엇인가?B. 실기형 답안 작성
다음 4문제는 2~3문장으로 작성한다.
19. 불필요한 서비스를 제거해야 하는 이유를 설명하시오.
20. 패치 관리가 보안상 중요한 이유와 절차를 설명하시오.
21. 랜섬웨어의 개념과 대응 방안을 설명하시오.
22. 악성코드 감염 시 대응 절차를 설명하시오.보강 개념: 3-2-1 백업과 복구 테스트
3-2-1 백업은 데이터 사본을 3개 이상 보관하고, 2종류 이상의 저장 매체를 사용하며, 1개 이상은 오프사이트 또는 분리된 위치에 보관하는 원칙이다. 랜섬웨어 대응에서는 여기에 불변 백업과 오프라인 백업을 결합해야 한다.
| 백업 방식 | 핵심 효과 | 주의점 |
|---|---|---|
| 불변 백업 | 정해진 보존 기간 동안 수정·삭제를 막아 랜섬웨어의 백업 파괴를 방지 | 보존 기간, 관리자 권한, 예외 삭제 절차를 엄격히 관리한다. |
| 오프라인 백업 | 운영망과 분리되어 공격자가 네트워크로 접근하기 어렵다 | 복구 시점이 오래되지 않도록 주기와 보관 위치를 관리한다. |
| 복구 테스트 | 백업 파일이 실제로 복구 가능한지 검증한다 | 백업 성공 로그만 믿지 말고 정기적으로 샘플 복구와 전체 복구 훈련을 수행한다. |
실기 답안에서는 백업 정책 수립 → 3-2-1 적용 → 불변·오프라인 백업 → 정기 복구 테스트 → 결과 기록과 개선 순서로 작성한다.
연습 과제 정답 및 해설
단답형 핵심 키워드: 프로세스는 실행 중인 프로그램, 서비스는 백그라운드 제공 기능, 공격 표면은 공격 가능한 노출 지점, Telnet은 평문 전송, 패치는 알려진 취약점 수정, RPO는 복구 시점 목표, RTO는 복구 시간 목표이다. 바이러스는 파일 감염, 웜은 자기 전파, 트로이목마는 정상 프로그램 위장, 랜섬웨어는 파일 암호화 후 금전을 요구한다.
실기형 채점 기준: 불필요한 서비스 제거는 공격 표면 축소와 취약 서비스 차단을 써야 한다. 패치 관리는 자산 식별, 영향 분석, 백업, 테스트, 적용, 검증, 이력 관리를 포함한다. 랜섬웨어와 악성코드 대응은 격리, 원인 분석, 제거, 백업 복구, 재발 방지를 순서대로 쓰면 적절하다.
감점 포인트: 백업을 “해둔다”로만 쓰고 불변·오프라인 백업 또는 복구 테스트를 빠뜨리면 감점한다.