jyamethyst21 님의 블로그

생성형AI를 활용한 악성코드 분석 및 대응 본문

보안 & IT 지식 🌺

생성형AI를 활용한 악성코드 분석 및 대응

jyamethyst21 2026. 3. 30. 17:05

운영체제(OS)와 설치의 메커니즘

  • 운영체제 구조
    • 커널(Kernel): 하드웨어 속성을 제어하는 핵심 영역.
    • 쉘(Shell): 사용자의 명령어 인터페이스.
  • 시스템 콜(System Call): 쉘에서 커널로 명령을 전달하는 행위이며, 반드시 관리자 권한이 필요함
  • 설치의 정의: 관리자 권한을 이용해 운영체제 커널에 명령을 내릴 수 있는 통로(빨대)를 만드는 행위
  • 해킹의 정의: 설계자가 의도하지 않은 동작을 유발하고, 사용자 권한을 관리자 권한으로 높여 무분별한 시스템 콜을 유발하는 행위

대상별 보안 관리의 차이 (사용자 vs 이용자)

관리 주체 기업 내부(AD 조인 등) 불특정 다수(고객)
환경 통제된 환경, 망분리 적용 매우 다양함(구형 PC, 모바일, 태블릿)
권한 통제 관리자 권한 제거 가능 권한 제어 불가 (고객 이탈 우려)
보안 수준 화이트리스트 기반 강력한 통제 최소한의 보안 프로그램 설치 강제
상태 최신 패치 및 업데이트 관리 패치 미비, OS 지원 종료(EOS) 포함

 

보안 프로그램의 기술적 문제 및 보안 위협

사용자 환경의 불편함

  • 중복 설치: 각 기관마다 서로 다른 제품을 사용하여 PC 리소스 낭비 및 프로그램 간 충돌 유발
  • 시스템 불안정: 커널(Kernel) 호환성 문제로 인한 BSOD(Blue Screen of Death) 발생 및 PC 성능 저하
  • 보안 불신: "보안은 불편한 것"이라는 인식을 심어주어 실제 위협에 대한 경각심을 낮춤

공급망 보안(Supply Chain Attack)의 취약성

  • 공격 대상의 변화: 보안이 강력한 은행 서버 대신, 상대적으로 보안이 취약한 중소 보안 소프트웨어 개발사를 타격
  • 효율적인 공격: 보안 업체의 업데이트 서버나 소스코드를 탈취하면 해당 프로그램을 사용하는 수많은 고객사(은행, 공공기관 등)에 악성코드를 동시에 유포 가능

주요 보안 프로그램의 종류와 역할

통합 설치 프로그램 버전 업데이트 확인 및 OS/소프트웨어 간 호환성 체크
실시간 감시 패킷 하이재킹 모니터링 및 앱 변조 감시
키보드 해킹 방지 키로거(Keylogger) 차단, 난수 발생을 통한 평문 유출 방지
인증서 보안 오버레이 공격(Overlay Attack) 감지 및 차단
온라인 백신 (MAM) 앱 구동 중에만 동작하는 보안(Mobile Application Management)
문서 보안 출력물 워터마크 삽입, 화면 캡처 및 녹화 차단

참고: MDM vs MAM

  • MDM (Mobile Device Management): 디바이스 전체를 통제 (관리자 권한 필요, 주로 내부 임직원용)
  • MAM (Mobile Application Management): 특정 앱이 구동될 때만 보안 적용 (고객 사이드 보안용)

 

보안 프로그램의 구조적 취약점과 운영체제(OS)의 이해

커널 모드와 사용자 모드의 이해

운영체제는 핵심인 커널(Kernel) 을 중심으로 하드웨어와 소프트웨어 자원을 관리하며, 실행 프로세스는 권한에 따라 두 가지 모드로 구분됨

커널 모드 (Kernel Mode)

  • 특징: 가장 높은 권한을 가지며 하드웨어를 직접 통제함
  • 주요 관리: 메모리, 프로세스 스케줄링, 장치 드라이버, 파일 시스템 관리
  • 위험성: 커널 모드 코드에 오류가 발생하면 시스템 전체가 충돌하며 BSOD(Blue Screen of Death) 가 발생함
  • 보안 관련: 하드웨어 수준의 데이터 수집이 필요한 보안 프로그램(EDR 등)은 주로 커널 모드에서 동작함

사용자 모드 (User Mode)

  • 특징: 일반 응용 프로그램(엑셀, 웹 브라우저 등)이 실행되는 영역
  • 제한: 하드웨어 직접 접근이 불가능하며, 자원이 필요할 경우 System Call을 통해 커널에 요청함
  • 오류 발생: 잘못된 메모리 접근 시 Segmentation Fault (SIGSEGV)가 발생하며 해당 프로세스만 종료됨

크라우드스트라이크(CrowdStrike) 사태 분석

2024년 7월 19일 발생한 글로벌 IT 대란을 통해 보안 프로그램의 구조적 위험성을 확인

사고 원인 및 특징

  • 원인: 보안 솔루션 팔콘(Falcon)의 실시간 업데이트 파일(C-00000291*.sys)과 윈도우 커널 간의 충돌
  • BSOD: 커널 모드에서 동작하는 보안 프로그램의 오류가 시스템 전체 마비를 초래
  • 부팅 시퀀스(Boot Sequence): 보안 프로그램은 악성코드보다 먼저 실행되기 위해 부팅 최상단에 바인딩되어 있어, 오류 발생 시 안전모드 진입 등 수동 조치가 매우 어려움

향후 대응 전략

  • 배포 전략 개선: 카나리(Canary) 업데이트 등 단계적 배포 및 교차 검증 필수
  • 벤더 다변화: 윈도우 외 맥(Mac), 리눅스(Linux) 등 OS 환경을 분산하여 의존성 감소
  • 커널 구조 개편: MS는 메모리 안정성이 높은 러스트(Rust) 언어를 커널에 도입하여 기존 C/C++ 기반의 불안정성 해소 추진 중

윈도우(Windows) 운영체제 구조

윈도우는 하드웨어와 응용 프로그램 사이에서 다양한 관리자(Manager)를 통해 시스템을 운영함

주요 구성 요소

  • HAL (Hardware Abstraction Layer): 하드웨어와 OS 사이의 번역기 역할을 하는 추상화 계층
  • 서브시스템 관리자: 메모리 관리자, 프로세스 관리자, 장치 관리자, 파일 관리자로 구성
  • PE(Portable Executable) 파일: 사용자 모드에서 실행되는 윈도우 표준 실행 파일 형식. 해커의 주요 공격 대상이 됨

파일 시스템 보안

  • NTFS: 현재 윈도우 표준 파일 시스템으로 권한 설정 및 보안 기능 지원
  • 보안 솔루션: 문서 중앙화, DRM(저작권 관리), DLP(데이터 유출 방지), 파일 무예화 기술 등이 파일 시스템 계층에서 동작

정보보호 솔루션 체계 및 분류

기업 보안 관리자는 서비스 레벨(SLA)에 따라 다양한 보안 시스템을 운영함

시스템 보안 백신(AV), EDR, USB 매체 제어, 키보드 보안
콘텐츠 보안 DRM, DLP, DB 암호화, 개인정보 필터링
네트워크 보안 방화벽(WAF), IDS/IPS, VPN, NAC
인증 및 관리 PKI, 통합인증(SSO), OTP, 로그 관리(SIEM)

 

참고: 금융권의 경우 '전자금융감독규정 [별표 2]'의 정보보호 시스템 분류표를 기준으로 약 38~50여 종의 보안 솔루션을 운영함

 

PE 구조 및 권한 체계의 이해

PE 파일과 YARA 탐지 원리

PE(Portable Executable) 파일 개요

  • 정의: 설치 없이 어디서든 실행 가능한 윈도우 실행 파일 형식(EXE, DLL 등)
  • 구조: 헤더(Header), 바디(Body), 섹션 테이블(Section Table) 등으로 구성
  • 분석 실무: 실제 실행 가능한 형태가 아니더라도 구조(Structure)만 설계하여 악성 여부를 판단하는 정적 분석 모델로 활용 가능

YARA를 이용한 패턴 탐지

  • 특징: 파일 내부의 특정 문자열이나 바이너리 패턴을 식별하는 정적 분석 도구
  • 한계: 패턴 기반 탐지(AV, EDR 방식)이므로 코드 변종이나 난독화 발생 시 탐지가 어려움
  • 분석 도구: 텍스트 에디터로 읽을 수 없는 바이너리 데이터를 확인하기 위해 헥스 에디터(Hex Editor) 활용 필요

악성코드 공격 시나리오 및 체인

사이버 킬체인 구성 예시

  1. 사회공학적 기법: 이메일에 비밀번호가 걸린 압축 파일 첨부
  2. 매크로 실행: 사용자가 엑셀(XLSM) 실행 시 VBA 매크로 동작
  3. 페이로드 드롭: 매크로가 특정 경로에 PE 파일을 생성 및 실행
  4. 시스템 조작: 방화벽 해제, UAC 컨트롤 끄기, 시간 변경 등 관리자 권한 행위 수행

프롬프트 우회 및 생성형 AI 활용

  • 가드레일 우회: 복잡한 악성 체인을 한 번에 요청하면 차단되므로, 기능을 세분화하여 개별 프롬프트로 요청 후 병합하는 방식 권장
  • 도구별 특성
    • Claude: 가드레일 매우 강력 (상)
    • GPT: 보안 필터링 높음 (중상)
    • Gemini: 비교적 유연함 (중하)
    • 로컬 LLM: 가드레일 거의 없음 (하), 보안 테스트 코드 생성에 유리

운영체제 계정 및 권한 관리

리눅스(Linux) 권한 체계

  • 계정: 루트(Root, UID 0)와 일반 사용자(UID 1000+)로 구분
  • 특수 권한
    • SetUID (S): 일반 사용자가 실행 시 일시적으로 파일 소유자(관리자) 권한을 획득
    • 주요 점검: SUID, SGID 설정이 불필요하게 부여된 경우 권한 상승 취약점으로 분류됨
  • 관리 명령어: chmod, find / -perm -4000 (SetUID 검색) 등

윈도우(Windows) 권한 체계

  • 특징: 리눅스보다 세부적이며 서비스(Service) 중심의 프로비셔닝 관리.
  • 관리 도구
    • AD(Active Directory): 중앙 집중식 정책 관리
    • 스냅인(Snap-in): lusrmgr.msc (로컬 사용자/그룹), services.msc (서비스 관리)
    • SID(Security Identifier): 사용자/그룹의 고유 식별자
  • 명령어 및 툴
    • whoami /user: 현재 사용자의 SID 확인
    • PSGetSID: Sysinternals 도구로 SID 확인 및 관리

권한 상승(Privilege Escalation) 기법

윈도우에서의 권한 상승 원리

  • 윈도우는 리눅스의 SetUID 같은 기능이 없으므로, 프로세스 가로채기나 쉘(Shell) 탈취 방식을 사용
  • 관리자 권한으로 실행 중인 프로세스에 접근하여 해당 권한을 훔쳐 쓰는 것이 핵심

레이스 컨디셔닝(Race Conditioning)

  • 시스템 권한이 낮은 사용자가 관리자 권한 프로세스의 실행 경로에 끼어들어 권한을 획득하는 기법
  • RCE(Remote Code Execution) 취약점을 통해 원격에서 관리자 쉘을 획득하는 공격이 대표적