0Pricing
Cloud & IT Cert Prep · 강의

OS 강화: 패치, 기준선 구성, CIS 벤치마크

불필요한 서비스 비활성화, 기준선 구성 적용, CIS 벤치마크 활용 등 OS 강화 기법을 적용하여 공격 표면을 줄입니다.

OS 강화: 패치, 기준선 구성, CIS 벤치마크은(는) CoddyKit의 무료 Cloud & IT Cert Prep 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cloud & IT Cert Prep 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.

OS 강화란 무엇인가

OS 강화는 불필요한 기능을 제거하고 보안 구성을 적용하며 시스템에 최신 패치를 유지하여 운영 체제의 공격 표면을 줄이는 과정입니다. 새로 설치한 운영 체제는 기본적으로 안전하지 않습니다. 사용 편의성을 우선하여 많은 사용자가 원할 수 있지만 대부분의 엔터프라이즈 서버에는 필요하지 않은 서비스와 기능을 활성화하기 때문입니다. 활성화된 모든 서비스, 열린 포트 및 기본 자격 증명은 공격자의 잠재적인 진입점입니다. 강화 작업은 시스템이 운영 환경에 들어가기 전에 이러한 진입점을 체계적으로 차단합니다.

패치 관리

패치 관리는 보안 취약점을 수정하는 소프트웨어 업데이트를 식별하고, 테스트하고, 적용하는 과정입니다. 패치가 적용되지 않은 시스템은 가장 쉽게 악용될 수 있는 대상 중 하나입니다. 주요 침해 사고의 상당수(2017년 Equifax, 2017년 WannaCry)는 이미 알려졌고 패치도 제공되었지만 조직이 적용하지 않은 취약점을 악용했습니다. 성숙한 패치 관리 프로세스는 패치 식별(공급업체 권고 및 CVE 피드 구독), 중요도 분류(Emergency/Critical/High/Medium), 테스트 일정(많은 프레임워크에서 심각한 패치는 48~72시간 이내) 및 배포 검증을 정의합니다.

# Patch criticality SLA example
CVSS Score     SLA           Notes
----------     ----------    ----------------------
9.0 - 10.0     48 hours      Emergency patch cycle
7.0 - 8.9      7 days        Critical patch cycle
4.0 - 6.9      30 days       Standard patch cycle
0.1 - 3.9      90 days       Routine patch cycle

# Verify patch application:
# Windows: Get-HotFix | Where-Object {$_.HotFixID -eq 'KB5023706'}
# Linux:   dpkg -l | grep package_name

불필요한 서비스 비활성화

실행 중인 모든 서비스는 잠재적인 공격 벡터입니다. OS 강화는 서비스 감사로 시작합니다. 실행 중인 모든 서비스를 나열하고 목적을 파악한 다음 시스템 역할에 필요하지 않은 서비스는 비활성화하십시오. Windows Server에서는 Print Spooler, Remote Registry 및 LLMNR과 같은 역할을 필요로 하지 않는 서버에서 자주 비활성화합니다. Linux에서는 rpcbind, cups(인쇄) 및 avahi(mDNS)와 같은 서비스가 일반적인 후보입니다. 원칙은 다음과 같습니다. 필요하지 않으면 비활성화하십시오.

# Windows: disable unnecessary service
SC config 'Spooler' start= disabled
SC stop 'Spooler'

# Linux: disable unused services
systemctl disable cups
systemctl stop cups
systemctl disable avahi-daemon
systemctl stop avahi-daemon

# Verify no unnecessary ports are listening:
ss -tulnp  # Linux
netstat -an | findstr LISTENING  # Windows

불필요한 소프트웨어 제거

설치되어 있지만 사용하지 않는 소프트웨어는 불필요한 위험을 초래합니다. 모든 패키지는 잠재적인 취약점을 만듭니다. 유지 관리가 잘되는 소프트웨어에도 CVE가 존재할 수 있습니다. OS 강화에는 애플리케이션에 필요하지 않은 언어 런타임(웹 서버의 Python, Perl, Ruby) 제거, 개발 도구(운영 시스템의 컴파일러 및 디버거) 제거, OS 이미지에 함께 제공되는 기본 애플리케이션 패키지(FTP 서버, 텔넷 클라이언트 및 SNMP 에이전트) 제거가 포함됩니다. 컨테이너 이미지도 같은 이유로 최소 기본 이미지(Alpine, scratch, distroless)를 사용해야 합니다.

# Remove unused packages (Debian/Ubuntu)
apt purge telnet ftp netcat python2 perl
apt autoremove

# Remove unused packages (RHEL/CentOS)
yum remove telnet ftp nmap-ncat

# Check what is installed:
dpkg -l | grep -i 'telnet\|ftp\|netcat'

기본 Account 보안 강화

알려진 사용자 이름과 Password를 사용하는 기본 Account는 공격자가 가장 먼저 시도하는 대상 중 하나입니다. 강화 단계는 다음과 같습니다. 기본 제공 Administrator Account를 Disable하고, Disable할 수 없다면 이름을 변경합니다(Windows). root Account의 이름을 변경하거나 root SSH 로그인을 제한합니다(Linux). 어플라이언스, 데이터베이스, 애플리케이션의 모든 기본 Password를 변경한 후 운영 환경에 배포합니다. 또한 guest Account를 제거하고 대화형 로그인이 필요하지 않은 서비스 Account를 Disable합니다. Nessus와 같은 scan 도구는 기본 자격 증명을 심각도가 가장 높은 발견 항목으로 표시합니다.

# Linux: disable root SSH login
# Edit /etc/ssh/sshd_config:
PermitRootLogin no
PasswordAuthentication no
AllowUsers admin_user service_user

# Restart SSH:
systemctl restart sshd

# Windows: disable built-in Administrator
net user Administrator /active:no

# Rename (via Group Policy):
# Computer Config > Windows Settings > Security Settings
# > Local Policies > Security Options
# > 'Accounts: Rename administrator account'

파일 시스템 권한과 최소 권한

안전한 파일 시스템 권한은 OS에서 최소 권한 원칙을 적용합니다. 웹 서버 Process에는 자신이 제공하는 디렉터리에 대한 쓰기 Access 권한이 없어야 합니다. 애플리케이션 Account에는 자격 증명이 포함된 구성 파일을 읽을 Access 권한이 없어야 합니다. Linux에서는 setuid 및 setgid binaries가 실행하는 사용자와 관계없이 상승된 Privilege로 실행되므로 감사해야 합니다. Windows에서는 NTFS permissions 및 DACL auditing을 통해 민감한 디렉터리(SAM 하이브, shadow copies, 자격 증명 저장소)에 승인된 Process만 Access할 수 있도록 합니다.

# Find setuid/setgid binaries (Linux)
find / -perm /4000 -o -perm /2000 2>/dev/null

# Secure web root permissions
chown -R root:www-data /var/www/html
chmod -R 755 /var/www/html
chmod 640 /var/www/html/config.php

# Check overly permissive files
find /etc -perm -o+w 2>/dev/null  # world-writable in /etc

CIS Benchmarks

CIS Benchmarks는 특정 OS, 애플리케이션 및 클라우드 플랫폼을 위한 무료 커뮤니티 개발 보안 강화 가이드입니다. 각 벤치마크에는 근거, Remediate 단계 및 감사 명령과 함께 수백 개의 구체적인 구성 권장 사항이 포함되어 있습니다. CIS Benchmarks는 두 가지 프로필 수준을 사용합니다. 수준 1 — 기능을 제한하지 않는 기본적이고 광범위하게 적용 가능한 구성, 수준 2 — 사용성에 영향을 줄 수 있는 높은 보안 환경용 고급 구성입니다. Windows Server, Ubuntu/RHEL, macOS, Docker, Kubernetes, AWS, Azure, GCP, 브라우저 및 데이터베이스용 벤치마크가 제공됩니다.

# CIS Benchmark check example (Linux L1)
# CIS Ubuntu 22.04 - 1.1.1.1 Disable cramfs
modprobe -n -v cramfs 2>&1 | grep -q 'Module cramfs not found'
# Expected: Module cramfs not found OR 'install /bin/false'

# Remediate:
echo 'install cramfs /bin/false' >> /etc/modprobe.d/CIS.conf

# CIS Windows - Account Lockout threshold
# secedit /export /cfg secpol.txt
# Check: LockoutBadCount = 5 (not 0)

기준 구성 관리

보안 기준선은 특정 역할 범주의 모든 시스템이 충족해야 하는 구성 설정을 문서화한 집합입니다. Windows에서는 Group Policy Objects (GPOs)를 통해, Linux에서는 Ansible playbooks, Chef cookbooks 또는 Puppet manifests를 통해 기준선을 적용합니다. 구성 관리 도구는 드리프트 감지를 지원합니다. 시스템이 승인된 기준선에서 벗어나면(예: 서비스가 다시 Enabled되는 경우) 자동 경고와 자동 Remediate를 통해 규정 준수 상태로 되돌릴 수 있습니다. NIST SP 800-128은 연방 시스템을 위한 보안 중심 구성 관리 지침을 제공합니다.

# Ansible hardening playbook snippet
- name: Disable ICMP redirects
  sysctl:
    name: net.ipv4.conf.all.accept_redirects
    value: '0'
    state: present
    reload: yes

- name: Enable address space layout randomization
  sysctl:
    name: kernel.randomize_va_space
    value: '2'
    state: present
    reload: yes

감사 기록 및 모니터링

보안 강화는 단순히 예방만을 의미하지 않습니다. logging 및 모니터링도 그에 못지않게 중요합니다. 감사 Policy를 구성하여 다음을 기록합니다. 인증 이벤트(성공 및 실패), Privilege 상승, 객체 Access(민감한 파일 읽기), Process Creation(명령줄 인수 포함), 네트워크 연결 이벤트. 로컬 공격자가 Administrator 권한으로 이벤트 기록을 삭제하여 흔적을 감출 수 없도록 로그는 거의 실시간으로 중앙 SIEM에 전달해야 합니다. 대부분의 compliance 프레임워크에 따라 로그를 최소 12개월 동안 보관해야 합니다.

# Enable Windows audit policy (Group Policy)
auditpol /set /category:'Logon/Logoff' /success:enable /failure:enable
auditpol /set /category:'Process Creation' /success:enable
auditpol /set /subcategory:'Privilege Use' /success:enable /failure:enable

# Linux: configure auditd for privilege use
echo '-a always,exit -F arch=b64 -S execve -k exec_track' >> /etc/audit/rules.d/audit.rules
echo '-w /etc/sudoers -p wa -k priv_change' >> /etc/audit/rules.d/audit.rules
augenrules --load

자동화된 규정 준수 scan

모든 시스템에서 보안 강화 벤치마크를 수동으로 검증하는 것은 규모가 커지면 현실적으로 어렵습니다. 규정 준수 scan 도구가 이 검사를 자동화합니다. 오픈 소스인 OpenSCAP은 Linux 시스템에 SCAP 콘텐츠를 적용하고 통과, 실패 및 해당 없음 검사를 보여 주는 HTML 보고서를 생성합니다. Nessus에는 CIS 벤치마크 Policy가 포함되어 있습니다. Microsoft Security Compliance Toolkit은 Microsoft 기준선에 따라 Windows 시스템을 평가합니다. 이러한 도구는 정기적으로(매주 또는 매월) 실행되며, 편차가 발견되면 변경 관리 시스템에서 Remediate 티켓을 생성합니다.

# OpenSCAP compliance scan (RHEL/CentOS)
oscap xccdf eval \
  --profile xccdf_org.ssgproject.content_profile_cis \
  --results results.xml \
  --report report.html \
  /usr/share/xml/scap/ssg/content/ssg-rhel9-ds.xml

# Generate remediation script
oscap xccdf generate fix \
  --fix-type bash \
  --result-id '' \
  results.xml > remediation.sh

Group Policy 및 보안 템플릿

Windows 도메인에서 Group Policy Objects (GPOs)는 대규모 환경에 보안 기준선을 적용하고 강제하는 기본 메커니즘입니다. 보안 템플릿(사전 작성되었거나 사용자 지정한 .inf files)을 GPOs로 가져오면 Account Policy, 감사 Policy, 사용자 권한 할당, 보안 Options 및 레지스트리 값을 비롯한 수백 개의 설정을 동시에 구성할 수 있습니다. Security Configuration and Analysis 스냅인은 물론 secedit 명령줄 도구도 현재 설정을 정의된 템플릿과 비교하고 규정 준수 보고서를 생성합니다. GPOs는 시작 시와 정기적인 간격으로 적용되므로 기준선에서 벗어난 설정이 자동으로 수정됩니다.

# Apply security template via secedit
secedit /configure /db %windir%\security\local.sdb \
  /cfg C:\Templates\CIS_Level1_Server2022.inf \
  /log secedit_apply.log

# Analyze current config vs template
secedit /analyze /db %windir%\security\local.sdb \
  /cfg C:\Templates\CIS_Level1_Server2022.inf \
  /log secedit_analysis.log

# View result: settings marked as compliant or non-compliant

빠른 확인

이 lesson에서 다룬 CompTIA Security+ (SY0-701) 개념을 얼마나 이해했는지 확인해 보십시오.

lesson 요약

이 lesson에서 다음을 배웠습니다. OS 보안 강화는 서비스를 Disable하고, 소프트웨어를 제거하며, Account를 보호하고, 최소 권한 권한을 적용하여 공격 표면을 줄입니다. patch 관리는 중요도에 따른 SLA를 사용하여 알려진 취약점을 해결합니다. 또한 CIS Benchmarks는 자동화된 규정 준수 scan 도구를 통해 적용되는 수준 1(기본) 및 수준 2(고급) 구성 지침을 제공합니다. 다음 lesson에서는 Mobile Device Management와 BYOD Policy를 살펴봅니다.

자주 묻는 질문

“OS 강화: 패치, 기준선 구성, CIS 벤치마크” 강의는 무료인가요?

네 — “OS 강화: 패치, 기준선 구성, CIS 벤치마크” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cloud & IT Cert Prep 강의 전체를 잠금 해제할 수 있습니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.

“OS 강화: 패치, 기준선 구성, CIS 벤치마크”에서 뭘 배우나요?

불필요한 서비스 비활성화, 기준선 구성 적용, CIS 벤치마크 활용 등 OS 강화 기법을 적용하여 공격 표면을 줄입니다. 브라우저에서 직접 실행하는 실습 코드로 Cloud & IT Cert Prep을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Cloud & IT Cert Prep을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Cloud & IT Cert Prep은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“OS 강화: 패치, 기준선 구성, CIS 벤치마크” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Cloud & IT Cert Prep 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Cloud & IT Cert Prep 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 안티바이러스, EDR, XDR 플랫폼
  2. OS 강화: 패치, 기준선 구성, CIS 벤치마크
  3. 모바일 기기 관리(MDM) 및 BYOD 정책
  4. 호스트 기반 방화벽 및 애플리케이션 허용 목록
← Cloud & IT Cert Prep(으)로 돌아가기