Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
pentest-pivoting — 침투 테스트 / CTF 챌린지를 위한 네트워크 피벗팅의 간결한 가이드 | Kitploit
도구/GitHubGitHub/t3l3machus/pentest-pivoting
Web Proxies & InterceptionLateral MovementNetwork SecurityCTFPenetration TestingLearning & EducationRed TeamingCurated Resources
GitHubt3l3machus/pentest-pivoting

pentest-pivoting

침투 테스트 / CTF 챌린지를 위한 네트워크 피벗팅의 간결한 가이드

저장소 보기
22844432년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

피보팅 가이드

목차

  1. 중요 참고 사항
  2. SSH 동적 포트 포워딩
  3. SSH 원격 포트 포워딩
  4. SSH 로컬 포트 포워딩
  5. 이중 피보팅
  6. sshuttle
  7. Chisel
  8. Burpsuite를 프록시로 사용하기
  9. 유용한 리소스

중요 참고 사항

  • SOCKS 프록시 테스트에 ICMP 에코 요청(ping)을 사용하지 마십시오.
    SOCKS는 프록시 서버를 통해 클라이언트와 서버 간에 네트워크 패킷을 교환하는 인터넷 프로토콜입니다. 실제로 SOCKS 서버는 임의의 IP 주소로의 TCP 연결을 프록시하고 UDP 패킷이 전달될 수 있는 수단을 제공합니다. 피벗 터널 너머의 호스트에 SSH를 시도하거나 HTTP GET 요청을 보내는 등 TCP 기반 프로토콜로 테스트해야 합니다.

  • NMAP은 TCP connect 스캔(-sT)과 ping 없음(-Pn)과 함께 사용해야 합니다
    이는 버전 스캔(-sV) 및 스크립트 스캔(-sC)에도 적용됩니다. -sT 및 -Pn과 함께 사용해야 합니다.
    예시:

    root@kitploit:~
    proxychains nmap -sT -Pn -p- x.x.x.x
    proxychains nmap -sT -Pn -sV -sC -p 21,80,443,445 x.x.x.x
    

    팁: naabu를 피해 머신에 업로드하고 멋지게 스캔할 수 있습니다.

  • proxychains와 함께 스크립트 및 바이너리 사용하기
    proxychains 사용 시 한 가지 팁은, 해석형 프로그램(예: Python 스크립트)을 실행할 때 스크립트에 shebang이 있더라도 그 스크립트 앞에 Python 바이너리를 명시적으로 지정하는 것이 좋다는 것입니다. 예:

    root@kitploit:~
    proxychains4 [-q -f proxychains.conf] python python_script.py
    

    이렇게 인터프리터를 명시적으로 지정하지 않으면, 스크립트에서 생성된 트래픽이 의도한 대로 프록시를 통해 라우팅되지 않고 네트워크 연결이 실패할 수 있습니다. 팁 출처

  • 때때로 답답할 수 있는 stdout을 피하려면 /etc/proxychains.conf에서 "quite mode" 줄의 주석을 해제하십시오.
    이것은 단순한 제안일 뿐입니다.

SSH 동적 포트 포워딩

로컬(SSH 클라이언트) 머신에 SOCKS 프록시 서버 역할을 하는 소켓을 만들 수 있습니다. 클라이언트가 이 포트에 연결하면 연결이 원격(SSH 서버) 머신으로 전달된 다음 대상 머신의 동적 포트로 전달됩니다.

설정 방법:

  1. /etc/proxychains.conf를 편집하고 다음을 적용하십시오:

    • Dynamic chain의 주석을 해제합니다.
    • Strict chain과 Random chain을 주석 처리합니다.
    • 문서 끝(프록시 목록)에 socks4 127.0.0.1 9050 줄을 추가하고 저장한 후 파일을 닫습니다. *물론 다른 포트를 사용할 수도 있습니다.
  2. SSH 동적 포트 포워딩을 설정합니다:

root@kitploit:~
ssh -D 127.0.0.1:9050 user@victim-IP

사용 예시:
x.x.x.x가 터널링된 네트워크에 속한 호스트의 IP 주소인 경우:

root@kitploit:~
proxychains nmap -sT -Pn -p- x.x.x.x
proxychains smbmap -H x.x.x.x
proxychains ssh [email protected]

터널을 통해 firefox를 사용하려면:

root@kitploit:~
proxychains firefox

SSH 원격 포트 포워딩

피벗 터널을 통해 리버스 셸을 얻는 방법을 찾고 있다면 바로 이것이 필요합니다. 원격(피해자) 머신의 포트를 로컬(공격자) 머신의 포트로 전달할 수 있습니다.

설정 방법:

  1. 피해자 머신에 SSH로 접속합니다.

  2. /etc/ssh/sshd_config를 편집하고 다음을 적용하십시오:

    • GatewayPorts no 줄의 주석을 해제하고 Yes로 변경합니다. 저장하고 파일을 닫습니다.

    *이것은 매우 중요하며 많은 온라인 가이드가 이를 언급하지 않습니다. 이 작업을 수행하지 않으면 0.0.0.0이 아닌 127.0.0.1에서만 터널을 설정할 수 있으며, 결국 localhost가 아닌 다른 호스트에서 발생한 트래픽은 전달되지 않게 됩니다.

    • 변경 사항을 적용하려면 SSH 서비스를 다시 시작하십시오. sudo service ssh restart
    • 종료하고 자신의 머신으로 돌아갑니다.
  3. SSH 원격 포트 포워딩을 설정합니다:
    기본적으로 위에서 언급한 대로 설정한 후에는 명령어가 다음과 같이 간단합니다:

root@kitploit:~
ssh -R 2222:*:2222 user@victim-IP

작동 여부를 테스트하려면 다음을 수행할 수 있습니다:
공격자 머신(원격 포워딩을 구성한 포트, 이 예에서는 2222)에 리스너(예: netcat)를 설정하고 피해자 머신에서 자신(localhost)으로 요청을 보냅니다. 이 예에서는 nc 127.0.0.1 2222가 됩니다. 공격자 머신이 연결을 수신하면 a) 작동한다는 뜻이고 b) 피보팅 호스트에서 victimip:2222로의 모든 연결이 공격자 머신으로 전달된다는 뜻입니다.

다음과 같이 여러 포트를 설정할 수 있습니다:

root@kitploit:~
ssh -R 2222:*:2222 -R 3333:*:3333 user@victim-IP

주의: 외부 호스트(피보팅 네트워크)의 요청은 공격자 머신으로 다시 전달되려면 피해자 IP 주소로 보내야 합니다.

*피해자 머신에서 공격자 머신으로 SSH 연결하여 원격 포트 포워딩을 구현할 수도 있습니다.

SSH 로컬 포트 포워딩

로컬 포트 포워딩을 사용하면 로컬(공격자) 머신의 포트를 원격(피해자) 머신의 포트로 전달할 수 있습니다. 피해자의 로컬 포트를 스캔할 때 특히 유용합니다.

사용법:

root@kitploit:~
ssh user@victim-IP -L 8888:127.0.0.1:8086

이제 예를 들어 nmap을 사용하여 피해자 머신의 8086 포트를 다음과 같이 스캔할 수 있습니다:

root@kitploit:~
nmap -Pn -n -p8888 -sV 127.0.0.1

이중 피보팅

SSH 동적 포트 포워딩과 Proxychains를 사용하여 이중 피보팅을 구현하는 방법의 예입니다.

개념:
다음과 같은 4대의 머신이 있다고 가정합니다.

IP역할
10.10.10.10공격자
10.10.10.11Jumphost1
172.16.1.12Jumphost2
172.16.2.13Jumphost3

공격자는 Jumphost1에 도달할 수 있습니다.
Jumphost1은 Jumphost2에 도달할 수 있습니다.
Jumphost2는 Jumphost3에 도달할 수 있습니다.

  1. Jumphost2에 도달하려면 앞서 언급한 SSH 동적 포트 포워딩 지침을 Jumphost1을 대상으로 수행합니다.
  2. Jumphost3에 도달하려면 /etc/proxychains.conf를 편집하고 문서 끝에 프록시 항목을 하나 더 추가합니다. 이제 proxychains.conf의 끝부분은 다음과 같이 보일 것입니다:
root@kitploit:~
...
socks4 127.0.0.1 9050
socks4 127.0.0.1 9999
  1. Jumphost1에 SSH로 접속하고 Jumphost2에 대해 또 다른 동적 포트 포워딩을 설정합니다 (선택한 로컬 포트는 proxychains.conf의 두 번째 프록시 항목에 설정한 포트와 동일해야 합니다):
root@kitploit:~
ssh -D 127.0.0.1:9999 user@Jumphost2

이제 Jumphost3에 도달할 수 있어야 합니다.

sshuttle

sshuttle을 사용하면 해당 서버에 python 2.3 이상이 설치되어 있는 한, ssh를 통해 내 머신에서 원격 서버로 VPN 연결을 만들 수 있습니다. 작동하려면 로컬 머신에서 root 액세스 권한이 있어야 하지만 서버에서는 일반 계정을 사용할 수 있습니다. 단일 클라이언트 머신에서 sshuttle을 동시에 여러 번 실행하여 매번 다른 서버에 연결할 수 있으므로, 동시에 둘 이상의 VPN에 접속할 수 있습니다. sshuttle github 저장소를 확인하십시오.

사용법:
172.16.2.0/16 네트워크로 피보팅하려고 한다고 가정합니다:

root@kitploit:~
sshuttle -vvr root@victim 172.16.2.0/16

SSH 키를 사용하려면:

root@kitploit:~
sshuttle -vvr root@victim --ssh-cmd 'ssh -i ~/.ssh/id_rsa' 172.16.2.0/16

Chisel

Chisel은 HTTP를 통해 전송되고 SSH로 보호되는 빠른 TCP/UDP 터널입니다. 클라이언트와 서버를 모두 포함하는 단일 실행 파일입니다. Go(golang)로 작성되었습니다. 엄청나게 멋지고 유용합니다.

설치:
칼리(Kali)에 chisel을 쉽게 설치할 수 있습니다:

root@kitploit:~
apt install chisel

사용하려면 chisel 바이너리를 피해자 머신에 업로드해야 합니다. 사전 컴파일된 버전은 여기에서 다운로드할 수 있습니다.

로컬 포트 포워딩 예시
공격자 머신에서:

root@kitploit:~
chisel server -p 8000 --reverse

피해자 머신에서:

root@kitploit:~
./chisel_1.7.7_linux_amd64 client attacker-ip:8000 R:1234:127.0.0.1:8443

이것은 공격자 머신의 1234 포트에서 피해자 머신의 8443 포트로 트래픽을 전달합니다.

Burpsuite를 프록시로 사용하기

Burpsuite는 프록시 설정 기능을 지원하며, 이는 매우 유용하고 강력한 기능입니다.

설정 방법:
Burpsuite를 실행하고 다음을 적용하십시오:

  • Proxy/Options로 이동하여 Proxy Listeners 섹션에서 add를 클릭합니다.
  • 바인딩 포트와 인터페이스를 설정합니다.
  • 두 번째 탭에서 트래픽을 리디렉션할 호스트와 포트를 설정합니다.

SSH 동적 포트 포워딩 또는 sshuttle 설정과 함께 사용하면, localhost 바인딩 포트로 트래픽을 보내 원하는 호스트로 트래픽을 피보팅하는 데 Burpsuite를 사용할 수 있습니다. 터널을 통한 gobuster dir 브루트포스의 유용한 예시입니다 (포트 2222를 리디렉션 포트로 설정했다고 가정):

root@kitploit:~
gobuster dir -u http://127.0.0.1:2222 -t 40 -w /some/dirlist.txt

유용한 리소스

  • https://artkond.com/2017/03/23/pivoting-guide/
  • https://catharsis.net.au/blog/network-pivoting-and-tunneling-guide/
  • https://medium.com/cyberxerx/how-to-setup-proxychains-in-kali-linux-by-terminal-618e2039b663
도구 다운로드