일반적인 악성코드 공격의 흐름
일반적인 악성코드의 흐름은 다음과 같이 3단계로 구분할 수 있습니다.
[정찰 -> 침투] -> [활동 -> 유지/관리] -> [목적 달성 -> 흔적 제거]
각 단계별로 수행되는 활동을 살펴보겠습니다.
1단계: 정찰 -> 침투
간접적인 방법으로 표적 범위를 지정하기 위해 초기 정찰 활동이 수동적인 방법으로 수행됩니다.
취약점을 악용하여 악성코드 침투
2단계: 활동 -> 유지/관리
이미 희생자의 환경에 악성코드 존재
백도어 설치 및 영구적인 백그라운드 데몬 프로세스 설치 등으로 환경 내 자신을 유지
3단계: 목적 달성 -> 흔적 제거
환경에서 악성코드 스스로 흔적을 제거하고 추적을 남기지 않습니다.
작업이 완료되면 악성코드가 제거돼 피해 대상 시스템에서 모든 작업 흔적을 제거합니다.
악성코드 특정 유형
존재 숨기기
패커 및 암호화 기술을 사용하여 코드 압축 후 난독화
목적: 탐지를 피하고 연구자 분석의 진행을 방해
자신의 기능 실행
효과적으로 기능을 수행하려면 악성코드가 시스템 변경이나 시스템 관리자에 의해 감지되지 않도록 보장해야 한다.
DLL 로드 및 안티바이러스 프로세스를 종료하는 것 같은 방어 회피 기술이 일반적으로 사용된다.
특정 유형의 악성코드는 네트워크를 통해 이동하기도 한다. 대부분 유형의 악성코드는 특정 형식의 권한 상승(버퍼 오버플로우 또는 최종 사용자의 사회 공학과 같은 소프트웨어/OS 취약점 악용)을 시도해 플랫폼에 관리자 권한으로 접근하려고 한다.
데이터 수집과 전화로 연결
악성코드는 필요한 모든 데이터(서버/애플리케이션 자격증명, 웹 액세스 로그, 데이터베이스 항목 등)를 수집한 후 데이터를 외부 랠리 지점으로 보낸다.
또한 원격 명령제어(C&C)서버에 '전화로 연결'하고 추가 지침을 받을 수도 있다.
참고
"머신 러닝을 활용한 컴퓨터 보안, 클라렌스 치오, 데이비드 프리먼, 에이콘"
'Security > AI' 카테고리의 다른 글
머신러닝을 활용한 악성코드 분석 - 악성코드 분석(정적 방법 - 정적 분석) (0) | 2022.02.08 |
---|---|
머신러닝을 활용한 악성코드 분석 - 악성코드 분석(정적 방법 - 구조 분석) (0) | 2022.01.27 |
머신러닝을 활용한 악성코드 분석 - 파이썬 스크립트 실행 프로세스 (0) | 2021.11.28 |
머신러닝을 활용한 악성코드 분석 - 빌드 프로세스 (0) | 2021.11.19 |
머신러닝을 활용한 악성코드 분석 - 악성코드 (0) | 2021.11.04 |