Merge pull request #15 from usmankhan7327/fix-dnsdumpster-token

Fix DNSDumpster CSRF token IndexError
This commit is contained in:
fleetcaptain 2025-11-06 19:36:10 -07:00 committed by GitHub
commit d3f151479d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 8 additions and 3 deletions

View File

@ -692,14 +692,19 @@ class DNSdumpster(enumratorBaseThreaded):
return self.get_response(resp) return self.get_response(resp)
def get_csrftoken(self, resp): def get_csrftoken(self, resp):
csrf_regex = re.compile("<input type=\"hidden\" name=\"csrfmiddlewaretoken\" value=\"(.*?)\">", re.S) csrf_regex = re.compile(r'name=["\']csrfmiddlewaretoken["\'] value=["\']([^"\']+)["\']')
token = csrf_regex.findall(resp)[0] matches = csrf_regex.findall(resp)
return token.strip() if not matches:
print("[!] Could not find CSRF token in response. The site may have changed or blocked the request.")
return None
return matches[0]
def enumerate(self): def enumerate(self):
self.lock = threading.BoundedSemaphore(value=70) self.lock = threading.BoundedSemaphore(value=70)
resp = self.req('GET', self.base_url) resp = self.req('GET', self.base_url)
token = self.get_csrftoken(resp) token = self.get_csrftoken(resp)
if not token:
return []
params = {'csrfmiddlewaretoken': token, 'targetip': self.domain} params = {'csrfmiddlewaretoken': token, 'targetip': self.domain}
post_resp = self.req('POST', self.base_url, params) post_resp = self.req('POST', self.base_url, params)
self.extract_domains(post_resp) self.extract_domains(post_resp)