사이버 보안 ProxyChains: 익명성의 가면

발행: (2025년 12월 28일 오전 02:09 GMT+9)
6 min read
원문: Dev.to

Source: Dev.to

ProxyChains: 무엇인가요?

ProxyChains는 특정 애플리케이션이 만드는 모든 TCP 연결을 일련의 프록시(SOCKS 또는 HTTP 등)를 통해 강제 전송하도록 하는 UNIX/Linux 유틸리티입니다. 이를 통해 IP 주소를 숨기고 목적지 서버에 도달하기 전에 여러 중간자를 거치게 하여 익명성을 높이고 요청의 실제 출처를 파악하기 어렵게 만듭니다.

ProxyChains의 작동 방식

ProxyChains는 동적으로 링크된 프로그램의 동적 링커 설정을 수정하여 동작합니다. 외부 TCP 연결을 가로채고 구성된 프록시 체인을 통해 라우팅합니다. 일반적인 흐름은 다음과 같습니다:

  1. 애플리케이션이 TCP 연결을 시작합니다.
  2. ProxyChains가 요청을 가로챕니다.
  3. 정의된 순서대로 프록시를 통해 요청이 전달됩니다.
  4. 최종 목적지는 마지막 프록시에서 전달된 트래픽을 받습니다.

Tor(The Onion Router)와 결합하면 IP 주소가 숨겨질 뿐만 아니라 자원봉사자가 운영하는 분산된 릴레이 네트워크를 통해 재전송되어 익명성이 더욱 강화됩니다.

실제 사례: 러시아 군사 사이버 행위자(2024) 연구

CISA가 공동으로 발표한 권고에 따르면, 러시아 군사 사이버 행위자들은 CrackMapExec와 같은 도구와 함께 ProxyChains를 사용해 대규모 Active Directory 환경을 자동으로 평가하면서 탐지를 회피했습니다. 프록시를 체인으로 연결함으로써 위협 행위자는 다음을 수행할 수 있었습니다:

  • 내부 피해자의 IP 주소를 위조.
  • 네트워크를 은밀하게 횡방향 이동.

이 사례는 적이 프록시 체이닝을 이용해 핵심 인프라에 더 깊이 접근하면서 탐지를 피하는 방법을 보여줍니다.

예시 구성

ProxyChains 설정 파일은 일반적으로 /etc/proxychains.conf에 위치합니다. 기본 예시는 다음과 같습니다:

# /etc/proxychains.conf
[ProxyList]
# format:  type  ip  port
socks5  127.0.0.1 9050
http    192.168.1.100 8080
socks4  10.0.0.5 1080

체인 방식

  • Dynamic Chain – 나열된 순서대로 프록시를 시도하며, 실패한 프록시는 건너뜁니다.
  • Strict Chain – 정확히 정의된 순서대로 프록시를 사용해야 하며, 하나라도 실패하면 중단합니다.
  • Random – 각 연결마다 무작위 프록시를 선택합니다.

Note: ProxyChains는 Linux 배포판에서만 완전하게 지원됩니다.

ProxyChains 실습

ProxyChains를 이용한 Nmap 사용

proxychains nmap -sT -Pn scanme.nmap.org

ProxyChains를 이용한 Firefox 실행

proxychains firefox

ProxyChains를 사용하는 이유

  • 익명성: 원본 IP 주소를 숨깁니다.
  • IP 기반 제한 우회: IP 필터링 및 지리적 차단을 회피합니다.
  • 탐지 회피: 공격자와 펜테스터가 은밀하게 활동할 수 있도록 돕습니다.
  • Tor와 연계: Tor 네트워크를 통해 라우팅함으로써 익명성을 더욱 강화합니다.

제한 사항

  • TCP 트래픽에만 적용됩니다.
  • 연결 속도가 크게 느려질 수 있습니다.
  • 프록시 목록을 수동으로 업데이트해야 합니다.
  • 정적으로 컴파일된 바이너리와 호환되지 않습니다.

결론

ProxyChains는 은밀함과 익명성이 중요한 사이버 보안 툴킷에 효과적인 추가 도구입니다. 사이버 연구원, 펜테스터, 레드팀 구성원이라면 ProxyChains 사용법을 이해함으로써 적의 전술을 파악하고 대응 방안을 마련할 수 있습니다.

은밀하게 행동하세요. 안전을 유지하세요.

참고 문헌

위에 제시된 정보와 방법은 교육 목적에 한해 제공됩니다. 무단 해킹은 불법이며, 저자와 출판자는 이 내용의 오용에 대해 책임을 지지 않습니다.

Back to Blog

관련 글

더 보기 »