mirror of https://github.com/MISP/misp-modules
parent
4e3300d66c
commit
4f923d6606
1 changed files with 0 additions and 62 deletions
@ -1,62 +0,0 @@ |
||||
import json |
||||
import os |
||||
import subprocess |
||||
import requests |
||||
import tempfile |
||||
|
||||
misperrors = {'error': 'Error'} |
||||
mispattributes = {'input': ['domain'], 'output': ['domain']} |
||||
|
||||
# possible module-types: 'expansion', 'hover' or both |
||||
moduleinfo = {'version': '1', 'author': 'Hannah Ward', |
||||
'description': 'Attempt to brute force subdomains', |
||||
'module-type': ['expansion']} |
||||
|
||||
# config fields that your code expects from the site admin |
||||
moduleconfig = ["use_top_n_subdomains"] |
||||
|
||||
domains = requests.get("http://hannah-ward.uk/Subdomain_List.txt").text.split("\n")[:-1] |
||||
|
||||
def handler(q=False): |
||||
global domains |
||||
|
||||
if q is False: |
||||
return False |
||||
request = json.loads(q) |
||||
|
||||
r = {"results": []} |
||||
|
||||
f = tempfile.NamedTemporaryFile(delete=False, prefix="domains", mode="w") |
||||
print("Saving domains to {}".format(f.name)) |
||||
f.write("\n".join(domains[:int(request["config"]["use_top_n_subdomains"])])) |
||||
|
||||
f.close() |
||||
|
||||
print("Searching for subdomains of {}".format(request["domain"])) |
||||
print("Using {} domains".format(request["config"]["use_top_n_subdomains"])) |
||||
|
||||
print("Turning on tor...") |
||||
#subprocess.call([".","torsocks","on"]) |
||||
proc = subprocess.Popen(["knockpy", "-w", f.name, request["domain"]], |
||||
stdout=subprocess.PIPE |
||||
) |
||||
|
||||
os.remove(f.name) |
||||
|
||||
print("Turning off tor...") |
||||
#subprocess.call([".","torsocks","off"]) |
||||
out,err = proc.communicate() |
||||
|
||||
r["results"] = {'values':out.split("\n"), "types":'domain'} |
||||
|
||||
return r |
||||
|
||||
|
||||
def introspection(): |
||||
return mispattributes |
||||
|
||||
|
||||
def version(): |
||||
moduleinfo['config'] = moduleconfig |
||||
return moduleinfo |
||||
|
Loading…
Reference in new issue