
OSINT-Tool zum Suchen, Parsen und Dumpen nur der offenen Elasticsearch- und MongoDB-Verzeichnisse, die die Daten enthalten, deren Offenlegung für Sie von Interesse ist.
![]() | ODBParser |
ODBParser ist ein Tool zur Suche nach personenbezogenen Daten (PII), die in offenen Datenbanken offengelegt werden.
NUR um offengelegte personenbezogene Daten zu identifizieren und Serverbetreiber über unverantwortliche Datenbankwartung zu warnen,
ODER um Datenbanken abzufragen, für die Sie Zugriffsberechtigung haben!
BITTE VERANTWORTUNGSVOLL NUTZEN
Habe dies geschrieben, da ich ein All-in-One-OSINT-Tool erstellen wollte, um offene Datenbanken zu durchsuchen, zu parsen und zu analysieren, um Datenlecks von PII auf Drittanbieter-Servern zu identifizieren. Andere Tools scheinen entweder nur nach offenen Datenbanken zu suchen oder sie zu dumpen, sobald man sie identifiziert hat, und dann wahllos Daten zu sammeln. Aus einer oder zwei Funktionen wurde das, was in diesem Repo ist, daher ist der Code nicht so sauber und hübsch, wie er sein könnte.
Um offene Datenbanken zu identifizieren, können Sie:
Dump-Optionen:
Nachbearbeitung:
Weitere Funktionen:
Siehe die Datei odbconfig.py, um Ihre Parameter festzulegen, denn der eigentliche Sinn des Spiels ist es, die Daten zu exponieren, an denen SIE interessiert sind. Ich habe einige Beispiele in der Konfigurationsdatei bereitgestellt. Spielen Sie damit herum!
Sie können:
Ich empfehle, eine virtuelle Umgebung für ODBParser zu erstellen, um Probleme mit falschen Modulversionen zu vermeiden. Hinweis: Nur getestet mit Python 3.7.3 und Windows 10.
BITTE VERANTWORTUNGSVOLL NUTZEN
Examples: python ODBParser.py -cn US -p 8080 -t users --elastic --shodan --csv --limit 100
python ODBParser.py -ip 192.168.2:8080 --mongo --ignorelogs --nosizelimits
Damage to-date: 0 servers parsed | 0 databases dumped | 0 records pulled
_____________________________________________________________________________
optional arguments:
-h, --help show this help message and exit
Query Options:
--shodan, -sh Add this flag if using Shodan. Specify ES or MDB w/
flags.
--binary, -be Add this flag if using BinaryEdge. Specify ES or MDB
w/ flags.
--ip , -ip Query one server. Add port like so '192.165.2.1:8080'
or will use default ports for each db type. Add ES or
MDB flags to specify parser.
--file , -f Load line-separated IPs from file. Add port or will
assume default ports for each db type. Add ES or MDB
flags to specify parser.
--paste, -v Query line-separated IPs from clipboard. Add port or
will assume default ports for each db type, e.g. 9200
for ES. Add ES or MDB flags to specify parser.
Shodan/BinaryEdge Options:
--limit , -l Max number of results per query. Default is
500.
--port , -p Filter by port.
--country , -cn Filter by country (two-letter country code).
--terms , -t Enter any additional query terms you want here, e.g.
'users'
Dump Options:
--mongo, -mdb Use for IP, Shodan, BinaryEdge & Paste methods to
specify parser.
--elastic, -es Use for IP, Shodan, BinaryEdge & Paste methods to
specify parser.
--properjson, -pj Add this flag if would like out put to be proper JSON
file. Default is one JSON string object per line.
--database , -db Specify database you want to grab. For MDB must be in
format format 'db:collection'. Use with IP arg & 'es'
or 'mdb' flag
--getall, -g Get all indices regardless of fields and
collection/index names (overrides selections in config
file).
--ignorelogs Connect to a server you've already checked out.
--nosizelimits, -n Dump index no matter how big it is. Default max doc
count is 800,000.
--csv Convert JSON dumps into CSV format on the fly. (Puts
JSON files in backup folder in case there is issue
with coversion)
CSV/Post-processing Options:
--convertToCSV , -c Convert JSON file or folder of JSON dumps to CSVs
after the fact. Enter full path or folder name in
current working directory
--dontflatten Use if run into memory issues converting JSON files to
CSV during post-processing.
--basic Use with --convertToCSV flag if your JSON dumps are
not true JSON files, but rather line separated JSON
objects that you got from other sources.
--dontclean, -dc Choose if want to keep useless data when convert to
CSV. See docs for more info.