Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import socket import dns.resolver def resolve_subdomains(primary, potential_subdomains): resolved = set() for subdomain in potential_subdomains: hostname = f"{subdomain}.{primary}" try: socket.gethostbyname(hostname) resolved.add(subdomain) except socket.gaierror: try: answers = dns.resolver.resolve(hostname) if len(answers) > 0: resolved.add(subdomain) except: continue return resolved |
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import socket import dns.resolver def resolve_subdomains(primary, potential_subdomains): resolved = set() for subdomain in potential_subdomains: hostname = f"{subdomain}.{primary}" try: socket.gethostbyname(hostname) resolved.add(subdomain) except socket.gaierror: try: answers = dns.resolver.resolve(hostname) if len(answers) > 0: resolved.add(subdomain) except: continue return resolved |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | import socket import dns.resolver def resolve_subdomains(primary, potential_subdomains): resolved = set() for subdomain in potential_subdomains: hostname = f"{subdomain}.{primary}" try: socket.gethostbyname(hostname) resolved.add(subdomain) except socket.gaierror: try: answers = dns.resolver.resolve(hostname) if len(answers) > 0: resolved.add(subdomain) except: continue return resolved subdomains = resolve_subdomains("deadbits.ai", ["www", "mail", "blog", "vigil", "trs", "vpn", "admin", "test", "dev", "staging", "shop", "store", "ftp", "m", "forum"]) print(subdomains) |
Traceback (most recent call last):
File "/usr/src/app/main.py", line 3, in <module>
import dns.resolver
ModuleNotFoundError: No module named 'dns'
Error Resulting in output: False
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
1 2 3 4 5 6 7 8 9 10 11 12 | import socket def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: try: domain = f"{sub}.{primary}" socket.gethostbyname(domain) resolved.add(sub) except socket.gaierror: continue return resolved |
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 | import socket def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: try: domain = f"{sub}.{primary}" socket.gethostbyname(domain) resolved.add(sub) except socket.gaierror: continue return resolved |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | import socket def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: try: domain = f"{sub}.{primary}" socket.gethostbyname(domain) resolved.add(sub) except socket.gaierror: continue return resolved subdomains = resolve_subdomains("deadbits.ai", ["www", "mail", "blog", "vigil", "trs", "vpn", "admin", "test", "dev", "staging", "shop", "store", "ftp", "m", "forum"]) print(subdomains) |
{'vigil', 'blog', 'trs', 'www'}
Resulting in output: True
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
1 2 3 4 5 6 7 8 9 10 11 12 | import socket def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: hostname = f"{sub}.{primary}" try: socket.gethostbyname(hostname) resolved.add(sub) except socket.gaierror: continue return resolved |
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 | import socket def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: hostname = f"{sub}.{primary}" try: socket.gethostbyname(hostname) resolved.add(sub) except socket.gaierror: continue return resolved |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | import socket def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: hostname = f"{sub}.{primary}" try: socket.gethostbyname(hostname) resolved.add(sub) except socket.gaierror: continue return resolved subdomains = resolve_subdomains("deadbits.ai", ["www", "mail", "blog", "vigil", "trs", "vpn", "admin", "test", "dev", "staging", "shop", "store", "ftp", "m", "forum"]) print(subdomains) |
{'blog', 'trs', 'vigil', 'www'}
Resulting in output: True
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | import socket from dns import resolver, exception def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: try: # Form full domain domain = f"{sub}.{primary}" # Try to resolve using DNS answers = resolver.resolve(domain, 'A') if answers: resolved.add(domain) except (resolver.NXDOMAIN, resolver.NoAnswer, resolver.NoNameservers, resolver.Timeout, socket.gaierror, exception.DNSException): continue return resolved |
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | import socket from dns import resolver, exception def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: try: # Form full domain domain = f"{sub}.{primary}" # Try to resolve using DNS answers = resolver.resolve(domain, 'A') if answers: resolved.add(domain) except (resolver.NXDOMAIN, resolver.NoAnswer, resolver.NoNameservers, resolver.Timeout, socket.gaierror, exception.DNSException): continue return resolved |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | import socket from dns import resolver, exception def resolve_subdomains(primary, potential_subdomains): resolved = set() for sub in potential_subdomains: try: # Form full domain domain = f"{sub}.{primary}" # Try to resolve using DNS answers = resolver.resolve(domain, 'A') if answers: resolved.add(domain) except (resolver.NXDOMAIN, resolver.NoAnswer, resolver.NoNameservers, resolver.Timeout, socket.gaierror, exception.DNSException): continue return resolved subdomains = resolve_subdomains("deadbits.ai", ["www", "mail", "blog", "vigil", "trs", "vpn", "admin", "test", "dev", "staging", "shop", "store", "ftp", "m", "forum"]) print(subdomains) |
Traceback (most recent call last):
File "/usr/src/app/main.py", line 3, in <module>
from dns import resolver, exception
ModuleNotFoundError: No module named 'dns'
Error Resulting in output: False
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
Write a python function that that takes a list of potential subdomains and resolves them against a primary domain. Call your function resolve_subdomains(primary, potential_subdomains). It should return a set of subdomains that actually resolve. Print nothing.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | import socket from typing import List, Set def resolve_subdomains(primary: str, potential_subdomains: List[str]) -> Set[str]: resolved = set() for sub in potential_subdomains: hostname = f"{sub}.{primary}" try: socket.gethostbyname(hostname) resolved.add(hostname) except socket.gaierror: continue return resolved |
I extracted the following code from that output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | import socket from typing import List, Set def resolve_subdomains(primary: str, potential_subdomains: List[str]) -> Set[str]: resolved = set() for sub in potential_subdomains: hostname = f"{sub}.{primary}" try: socket.gethostbyname(hostname) resolved.add(hostname) except socket.gaierror: continue return resolved |
Running the following program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import socket from typing import List, Set def resolve_subdomains(primary: str, potential_subdomains: List[str]) -> Set[str]: resolved = set() for sub in potential_subdomains: hostname = f"{sub}.{primary}" try: socket.gethostbyname(hostname) resolved.add(hostname) except socket.gaierror: continue return resolved subdomains = resolve_subdomains("deadbits.ai", ["www", "mail", "blog", "vigil", "trs", "vpn", "admin", "test", "dev", "staging", "shop", "store", "ftp", "m", "forum"]) print(subdomains) |
{'blog.deadbits.ai', 'trs.deadbits.ai', 'vigil.deadbits.ai', 'www.deadbits.ai'}
Resulting in output: False