
Swap 쿠키의 오용을 통해 VPN 세션을 탈취할 수 있는 방법을 시연합니다. 중요: 이 프로젝트는 오직 교육 및 연구 목적으로만 사용됩니다 – 명시적으로 권한이 부여된 환경에서만 사용하십시오.
nxbender는 NetExtender를 통해 VPN 연결을 구축하기 위한 Proof-of-Concept(PoC)입니다.
이 프로젝트는 교육 및 연구 목적으로만 사용됩니다. 명시적으로 권한이 부여된 환경에서만 코드를 사용하십시오.
필요한 패키지는 예를 들어 다음과 같이 설치합니다:
pip install configargparse requests colorlog pyroute2
nxbender는 명령줄 인수와 구성 파일 모두에서 설정을 로드하기 위해 configargparse를 사용합니다.
기본 구성 파일은 /etc/nxbender 및 ~/.nxbender에서 검색됩니다.
구성 파일 예제 (~/.nxbender 등):
# ~/.nxbender
server = vpn.example.com
port = 4433
swap = <dein_swap_cookie>
debug = True
show_ppp_log = False
max_line = 1500
Python을 통해 직접 프로그램을 실행할 수 있습니다. 두 가지 방법이 있습니다:
python -m nxbender
nxbender 폴더가 있는 디렉터리로 이동하여 다음 명령을 실행하세요:
./nxbender/__init__.py -s vpn.example.com -S "<dein_swap_cookie>"
예:
./nxbender/__init__.py -s vpn.example.com -P 4433 -S "SGVsbG9Xb3JsZA=="
여기서 의미는:
-s 또는 --server: VPN 서버 주소.-P 또는 --port: 서버 포트 (기본값: 4433).-S 또는 --swap: 스왑 쿠키 (Base64로 인코딩된 문자열).--debug: 디버그 모드를 활성화합니다.--show-ppp-log: PPP 로그 메시지를 콘솔에 직접 출력합니다.-m 또는 --max-line: PPP 데이터의 한 줄 최대 길이.보안:
이 프로젝트는 PoC로 설계되었습니다. 프로덕션 환경에서의 사용은 본인의 책임입니다. 모든 보안 관련 조치가 취해졌는지 확인하십시오.
루트 권한:
일부 작업(예: 네트워크 경로 설정)에는 루트 권한이 필요합니다. 필요한 경우 sudo로 프로그램을 실행하십시오.
디버깅:
--debug 플래그를 사용하면 더 자세한 오류 메시지와 로그 출력을 얻을 수 있습니다.
PPP 로그:
--show-ppp-log를 사용하면 pppd의 로그 메시지가 콘솔에 표시됩니다.
이 프로젝트는 MIT 라이선스에 따라 제공됩니다.
이 프로젝트는 교육 및 연구 목적으로만 사용됩니다.
저자는 이 코드를 사용하여 발생하는 직접적 또는 간접적 손해에 대해 어떠한 책임도 지지 않습니다.