hhkb.dev

BLOG

2025-12-23 / 레드팀인프라구축 · 06

탄력적 IP 할당

1. 개요 및 필요성

탄력적 IP(Elastic IP, EIP)는 클라우드 인스턴스에 붙일 수 있는 고정 공인 IP다. AWS EC2는 기본적으로 인스턴스를 중지했다가 다시 시작하면 공인 IP가 바뀔 수 있는데, 이 점이 레드팀 작전에는 치명적이다.

1.1. IP 변경 시 문제점

IP가 바뀌면 아래 문제가 바로 생긴다.

  • Zombie Agent 발생: 이미 감염된 비컨은 기존 IP로 계속 콜백을 보낸다. 서버 IP가 바뀌면 연결이 사실상 끊긴다.
  • DNS 관리 부담: 리다이렉터 IP가 바뀔 때마다 DNS A 레코드를 수정해야 하고, 전파(Propagation) 시간 동안 연결이 불안정해질 수 있다.

그래서 최소한 리다이렉터 서버만큼은 EIP를 붙여서 고정 IP를 유지하는 편이 안전하다.

2. AWS Elastic IP 설정 절차

설정 절차는 단순하다.

  1. EIP를 먼저 할당한다.
    • AWS 콘솔 -> EC2 -> 네트워크 및 보안 -> 탄력적 IP
    • 탄력적 IP 주소 할당을 누르고 기본값으로 할당한다.
  2. 주소를 연결(Association)한다.
    • 생성된 EIP를 선택하고 탄력적 IP 주소 연결을 실행한다.
    • 인스턴스: 실행 중인 Redirector 인스턴스 선택
    • 프라이빗 IP: 해당 인스턴스의 내부 IP 선택
    • 마지막으로 연결을 확정한다.

3. 작전 간 관리 및 주의사항

운영 중에는 아래 항목을 같이 챙겨야 한다.

  • DNS 업데이트: EIP를 붙인 직후 도메인 관리 사이트(Namecheap 등)에서 DNS A 레코드를 새 EIP로 바꿔야 한다.
  • 비용 관리: EIP는 연결된 인스턴스가 실행 중일 때는 무료지만, 인스턴스가 꺼져 있거나 EIP가 미연결 상태면 시간당 요금이 붙는다.
  • 작전 종료 시:
    1. EIP 연결을 해제한다(Dissociate).
    2. EIP를 릴리스한다(Release). 이걸 빼먹으면 인스턴스를 지워도 비용이 계속 나갈 수 있다.