네트워크 피버팅 - 툴
Pivoting에 자주 쓰이는 도구 간단 정리
Network Pivoting - Tools
Neo-reGeorg
https://github.com/L-codes/Neo-reGeorg/blob/master/README-en.md
만약 탈취한 원격 명령 실행이 가능한 서버가 웹 서버라면 SSH 접속 정보가 없는 환경에서도 강제로 SOCK5 통신을 생성이 가능하다. Neo-reGeorg 도구는 jsp, asp, php, go를 지원한다.
가장 범용적으로 사용되는 jsp, php asp에 대한 사용법을 알아보자.
먼저 SOCK5 통신 오픈에 사용할 코드를 생성한다.
JSP
생성된 jsp 코드를 테스트용 웹 서버에 업로드한다.
이후 neoreg.py를 통해 SOCK5 통신을 열면 127.0.0.1:1080이 활성화되는 것을 확인할 수 있다.
활성된 SOCK5 포트를 사용한 proxychains을 통해 내부망 접근이 가능하다.
PHP
동일하게 테스트용 웹 서버에 tunnel.php 파일을 업로드한다.
이후 neoreg.py를 통해 SOCK5 통신을 열면 127.0.0.1:1080이 활성화되는 것을 확인할 수 있다.
활성된 SOCK5 포트를 사용한 proxychains을 통해 내부망 접근이 가능하다.
ASP
동일하게 테스트용 웹 서버에 tunnel.asp 파일을 업로드한다.
이후 neoreg.py를 통해 SOCK5 통신을 열면 127.0.0.1:1080이 활성화되는 것을 확인할 수 있다.
활성된 SOCK5 포트를 사용한 proxychains을 통해 내부망 접근이 가능하다.
이 처럼 Neo-reGeorg 도구를 활용하여 SSH 서비스에 대한 접속 정보가 없더라도 강제로 SOCK5 통신을 생성하여 proxychain 사용이 가능하다.
chisel
https://github.com/jpillora/chisel
만약 탈취한 원격 명령 실행이 가능한 서버가 웹 서버가 아니더라도 chisel을 사용하여 강제로 sock5 포트를 열어서 proxychains을 사용할 수 있다. 해당 도구는 바이너리 형태로 제공되며 리눅스, 윈도우 모두 지원하기에 활용도가 매우 높다.
Linux
Window
단, 대부분 윈도우 서버는 윈도우 디펜더에서 chisel.exe를 악성코드로 탐지하고 있다. 탈취한 윈도우 서버의 권한이 높을 경우(Administrator, SYSTEM) 제외 폴더 지정을 통해 우회할 수 있다.
다음과 같이 연결 시, 127.0.0.1:1080 SOCK5 통신이 활성화되는 것을 확인할 수 있다.
활성된 SOCK5 포트를 사용한 proxychains을 통해 내부망 접근이 가능하다.
이 처럼 chicel 도구를 활용하여 SSH 서비스에 대한 접속 정보가 없고 탈취한 서버가 웹서버가 아니더라도 강제로 SOCK5 통신을 생성하여 proxychain 사용이 가능하다.
Rpivot
https://github.com/klsecservices/rpivot
Rpivot 도구는 chisel과 유사하지만 바이너리 형태가 아닌 python 2 소스코드 형태의 도구이며 sock4 통신을 열 수 있다. 해당 도구를 사용하여 강제로 sock4 포트를 열어서 proxychains을 사용할 수 있다.
sock4 이므로 /etc/proxychains.conf 를 sock4로 수정 적용하여야 한다.
Linux
Window
다음과 같이 연결 시, 127.0.0.1:1080 SOCK5 통신이 활성화되는 것을 확인할 수 있다.
활성된 SOCK4 포트를 사용한 proxychains을 통해 내부망 접근이 가능하다.
해당 도구는 바이너리 형태가 아니기 때문에 python 2가 필요합니다. 대상 서버에 임의 설치가 불가한 상황이라면 python2 포터블을 활용할 수 있다.
for window
https://github.com/sganis/pyportable/releases/download/v2.7.10rc1/pyportable-2.7.10rc1.zip
이 처럼 rpivot 도구를 활용하여 SSH 서비스에 대한 접속 정보가 없고 탈취한 서버가 웹서버가 아니더라도 강제로 SOCK4 통신을 생성하여 proxychain 사용이 가능하다.
따라서, 주어진 환경에 맞춰 chisel과 rpivot 중 유동적으로 사용하자.
Last updated