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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
nodexp — NodeXP - Node.js 취약점을 탐지 및 악용할 수 있는 Server Side Javascript Injection 도구 | Kitploit
도구/GitHubGitHub/esmog/nodexp
Vulnerability ScannersPayload GenerationExploitationWeb Application ExploitationPenetration Testing
GitHubesmog/nodexp

nodexp

NodeXP - Node.js 취약점을 탐지 및 악용할 수 있는 Server Side Javascript Injection 도구

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

NodeXP - Node.js 서비스 탐지 및 익스플로잇 도구!

NodeXP는 Python 2.7로 작성된 통합 도구로, Node.js 서비스의 가능한 취약점을 탐지하고 S(erver)S(ide)J(avascript)I(njection) 공격을 기반으로 자동화된 방식으로 익스플로잇할 수 있습니다.

시작하기 - 설치 및 사용법

Git 저장소를 클론하여 NodeXP를 다운로드하세요:

root@kitploit:~
git clone https://github.com/esmog/nodexp

모든 옵션 목록을 보려면 다음을 실행하세요:

root@kitploit:~
python2.7 nodexp -h

POST 및 GET 사례에 대한 예시:

root@kitploit:~
python2.7 nodexp.py --url="http://nodegoat.herokuapp.com/contributions" --pdata="preTax=[INJECT_HERE]" -c="connect.sid=s:i6fKU7kSLPX1l00WkOxDmEfncptcZP1v.fy9whjYW0fGAvbavzYSBz1C2ZhheDuQ1SU5qpgVzbTA"
python2.7 nodexp.py --url="http://nodegoat.herokuapp.com/contributions" --pdata="preTax=[INJECT_HERE]" -c="connect.sid=s:i6fKU7kSLPX1l00WkOxDmEfncptcZP1v.fy9whjYW0fGAvbavzYSBz1C2ZhheDuQ1SU5qpgVzbTA" --tech=blind

python2.7 nodexp.py --url="http://192.168.64.30/?name=[INJECT_HERE]" -c="connect.sid=s:i6fKU7kSLPX1l00WkOxDmEfncptcZP1v.fy9whjYW0fGAvbavzYSBz1C2ZhheDuQ1SU5qpgVzbTA"
python2.7 nodexp.py --url="http://192.168.64.30/?name=[INJECT_HERE]" -c="connect.sid=s:i6fKU7kSLPX1l00WkOxDmEfncptcZP1v.fy9whjYW0fGAvbavzYSBz1C2ZhheDuQ1SU5qpgVzbTA" --tech=blind

테스트베드 설정 및 사용

NodeXP에 익숙해지려면 제공된 Node.js 테스트 서비스(/testbeds)를 설정하고 도구 사용을 시작해야 할 수 있습니다. Node.js 서버가 실행 중인 로컬 머신이 필요합니다.

먼저 GET 및 POST 디렉토리에 'body-parser'와 'express' 패키지를 설치해야 합니다.

로컬 머신의 'testbeds/GET' 디렉토리로 이동하여 터미널에 아래 명령어를 붙여넣으세요:

root@kitploit:~
npm install express --save
	

'testbeds/POST' 디렉토리로 이동하여 터미널에 아래 명령어를 붙여넣으세요:

root@kitploit:~
npm install body-parser --save
nmp install express --save

패키지를 올바르게 설치한 후에는 'node' 명령어와 원하는 js 파일(예: node eval.js)을 실행하여 각 서비스를 실행할 수 있습니다.

서버가 실행되고 나면 NodeXP를 실행하여 해당 서비스들을 테스트할 준비가 된 것입니다!

GET 사례에 대한 예시는 아래와 같습니다:

root@kitploit:~
python2.7 nodexp.py --url=http://localiprunningnodejsserver:3001/?name=[INJECT_HERE]

POST 사례에 대한 예시는 아래와 같습니다:

root@kitploit:~
python2.7 nodexp.py --url=http://localiprunningnodejsserver:3001/post.js --pdata=username=[INJECT_HERE]

페이로드 파일 유지 및 업데이트

블라인드 기반 인젝션과 결과 기반 인젝션 기술 모두에서 사용되는 페이로드는 "/files/blind_payloads.txt"와 "/files/payloads.txt"에 저장됩니다.

페이로드는 텍스트 파일의 홀수 줄에 작성되며, 결과 기반 인젝션의 경우 예상 응답이 "payloads.txt" 파일의 짝수 줄에 쉼표로 구분된 목록으로 작성됩니다. "blind_payloads.txt" 파일의 짝수 줄은 비어 있습니다.

인젝션 프로세스를 중지하기 위해 "---end(nextline)---end"가 블라인드 및 결과 기반 인젝션 모두에서 페이로드 파싱 및 인젝션을 중지할 수 있는 구분자로 사용됩니다.

모든 사용자는 위 지침을 따르는 한 자신의 페이로드로 페이로드 txt 파일을 유지 및 업데이트할 수 있습니다.

면책 조항

이 도구의 목적은 순수하게 학술적이며, 제 석사 논문을 수행하기 위해 개발되었습니다. 또한 Node.js 서비스에 대한 침투 테스트 과정에서 유용할 수 있습니다. 다른 악의적이거나 불법적인 사용은 강력히 권장되지 않으며, 이 연구의 목적에 명백히 포함되지 않습니다.

전제 조건

  • Python 2.7
  • Metasploit Framework
  • msfvenom
  • Kali Linux (또는 Metasploit Framework가 설치된 다른 Linux 배포판)

NodeXP 테스트베드

  • GET 및 POST 사례에 대한 Node.js 파일을 여기에서 다운로드하여 실행하세요
  • Nodegoat을 방문하거나 로컬 머신에 Nodegoat를 설치하세요!

사용된 도구

  • Python 2.7

버전 관리

NodeXP - 버전 1.2.2

업데이트 노트

  • IDS 규칙(Snort, Suricata) 추가: NodeXP를 사용한 서버 사이드 자바스크립트 인젝션 시도 탐지용
  • 바인드 셸 기능 및 자동 페이로드 생성 추가.
  • 리버스 SSL 셸 기능 및 자동 페이로드 생성 추가.
  • 결과 기반 탐지 기술에서 정적 및 동적 페이로드 모두 지원
  • 결과 기반 탐지 기술에서 수학 연산 및 문자열 연결 지원.
  • RNN(순환 신경망)을 통한 새로운 페이로드 생성을 위한 외부 모듈 추가(베타).

저자

  • Dimitris Antonaropoulos - esmog
도구 다운로드