1. Cobalt Strike의 주요 기능 및 구조 이해
1.1. Cobalt Strike의 개념 및 구성 요소
- 정의
- Red Teaming 및 모의 침투 테스트에 활용되는 공격 시뮬레이션 프레임워크
- 실제 공격 시나리오를 구현하고 다양한 공격 기법을 적용할 수 있도록 지원
- 주요 구성 요소
- Client
- 사용자 인터페이스 제공 및 명령 입력/모니터링 역할
- Teamserver와 실시간 통신하며 작업을 관리
- Teamserver
- 중앙 통제 서버로서 Client와 Beacon 간의 명령 전달 및 세션 관리 수행
- 다수의 세션과 로그를 통합 관리
- Listener
- 외부에서 들어오는 Beacon의 연결 요청을 수신하는 진입점
- HTTP, HTTPS, DNS 등 다양한 프로토콜과 포트를 지원하여 탐지를 회피
- Beacon
- 목표 시스템 내 삽입되어 지속적인 C2(Channel) 통신을 수행하는 에이전트
- 주기적 통신을 통해 명령을 수신, 실행 후 결과를 보고
- Client
1.2. 전체 아키텍처 및 공격 기법
- 구조적 흐름
- Client에서 명령 입력 → Teamserver로 전달
- Teamserver가 Listener를 통해 Beacon에 명령 전파
- Beacon이 목표 시스템에서 명령 실행 후 결과를 Teamserver로 보고 → Client에서 모니터링
- 보안 및 은폐 기법
- 통신 암호화 및 주기적(주기+무작위 지연) Beaconing을 통한 탐지 회피
- Listener 설정 시 정상 웹 트래픽과 유사하게 구성하여 탐지 어려움
- 기본 공격 기법
- 초기 침투: 피싱, 익스플로잇 등 다양한 벡터를 통한 목표 시스템 접근
- 후속 활동: Beacon을 이용한 원격 제어, 내부 이동(Lateral Movement), 권한 상승 등
2. Beacon 설정 및 실습
2.1. Beacon의 역할과 통신 방식
- Beacon의 역할
- 목표 시스템 내에 설치되어 지속적인 C2 통신 채널 제공
- 명령 수신 후 해당 명령을 실행하고, 실행 결과를 보고
- 통신 방식
- 주기적 통신 (Polling): 설정된 간격에 따라 Teamserver와 통신하며 명령을 확인
- 은폐 기법: 통신 내용 암호화, 주기 및 통신 간격에 무작위 지연(jitter) 적용
- 프로토콜 활용: HTTP, HTTPS, DNS 등 다양한 프로토콜을 사용하여 네트워크 환경에 최적화
2.2. Listener 설정 및 Beacon 생성 방법
- Listener 설정 단계
- 프로토콜 및 포트 선택
- HTTP/HTTPS: 정상 웹 트래픽과 유사하게 구성하여 네트워크 모니터링 회피
- DNS: DNS 쿼리 위장 통신으로 은밀한 연결 확보
- Listener 생성 절차
- Cobalt Strike 인터페이스 내 Listener 메뉴 선택
- 목표 환경에 맞춰 프로토콜, 포트, 암호화 옵션 등 세부 설정 적용
- 환경 검증
- Listener 설정 후 테스트 Beacon을 통해 정상적으로 연결되는지 확인
- 네트워크 트래픽과 로그를 분석하여 설정의 유효성 점검
- 프로토콜 및 포트 선택
- Beacon 생성 및 배포
- Payload 생성
- Listener 설정 완료 후, EXE, DLL, 스크립트 등 다양한 형태의 Beacon Payload 생성
- Payload 전달 및 실행
- 사회공학 기법이나 취약점 이용 등 다양한 방법을 통해 목표 시스템에 전달
- 실행 후 Beacon이 Listener와 정상 통신하는지 실시간 모니터링
- Payload 생성
- 실습 시 참고 코드 예제
- # Beacon 통신 주기 및 jitter 설정 예제 (pseudo command) set beacon_interval 10 # 10초마다 통신 set beacon_jitter 20 # 통신 주기에 20% 무작위 지연 적용
2.3. 실습 예제 및 로그 분석
- 실습 시나리오
- 테스트 환경 구축: 가상 머신 및 안전한 테스트 네트워크에서 실습 진행
- 단계별 실습 진행:
- Listener 설정 및 검증
- Beacon Payload 생성
- 목표 시스템에 Payload 전달 및 실행
- Beacon의 통신 로그와 결과 분석
- 로그 분석 포인트
- Beacon의 주기적 통신 패턴 및 응답 시간 확인
- 암호화된 통신 데이터의 디코딩 및 이상 징후 탐지
- 네트워크 트래픽 모니터링을 통해 정상/비정상 트래픽 식별
📎 참고 자료
- "Cobalt Strike 공식 문서", Cobalt Strike
- "Red Teaming 및 모의 침투 테스트 기법", 관련 보안 블로그 및 백서 참고
'Univ' 카테고리의 다른 글
[2024 동계 모각코] 2025-01-21(화) 결과 (0) | 2025.01.21 |
---|---|
[2024 동계 모각코] 2025-01-21(화) (0) | 2025.01.21 |
[2024 동계 모각코] 2025-01-14(화) (0) | 2025.01.14 |
[2024 동계 모각코] 2025-01-07(화) 결과 (0) | 2025.01.08 |
[2024 동계 모각코] 2025-01-07(화) (0) | 2025.01.07 |