
이 스크립트는 네트워크에 노출되어 있으며 인증되지 않은 프로토콜 핸드셰이크를 허용하는 MongoDB 서비스를 식별하는 데 사용됩니다.
mongo_exposure_scanner.py
Python 확인:
python3 --version
| 파일 | 목적 |
|---|---|
mongo_scanner.py | 스캐너 스크립트 |
targets.txt | 대상 호스트 및 포트 |
mongo_exposed_targets.txt | 스캔 결과 (자동 생성) |
targets.txt)지원 형식:
# Host only (default ports used)
10.99.1.52
# Host with specific port
mongo.example.com:3717
# Multiple ports
192.168.1.10:27017,28017
# Port range
172.16.0.20:27017-27030
참고:
# 줄은 무시됨스캐너 실행:
python3 mongo_scanner.py
스크립트가 다음을 입력받습니다:
Enter target file name (default: targets.txt):
옵션:
targets.txt 사용prod_mongo.txtpython3 mongo_scanner.py
Enter target file name (default: targets.txt): prod_mongo.txt
[*] Using target file: prod_mongo.txt
[*] Total host:port pairs: 4
[*] Concurrency: 50 | Timeout: 5s
------------------------------------------------------------
[+] MongoDB OPEN: 10.99.1.52:3717
[-] 192.168.1.10:27017 - Not exposed
------------------------------------------------------------
[*] Done. Results saved to mongo_exposed_targets.txt
mongo_exposed_targets.txt
[2026-01-20 12:34:07] 10.99.1.52:3717 - Unauthenticated MongoDB exposed
[2026-01-20 12:34:07] dds-d9j6c3a7096ded641.mongodb.ap-southeast-5.rds.aliyuncs.com:3717 - Unauthenticated MongoDB exposed
| 상태 | 의미 |
|---|---|
MongoDB OPEN |
MongoDB 서비스가 hello에 응답함 |
Unauthenticated MongoDB exposed | 인증 없이 핸드셰이크 허용됨 |
Not exposed | MongoDB가 아니거나 인증/연결 차단됨 |
Connection refused / timeout | 서비스에 연결할 수 없음 |