Skip to content

Commit

Permalink
fuzz 咋被我提交没了....
Browse files Browse the repository at this point in the history
  • Loading branch information
ldbfpiaoran committed May 6, 2021
1 parent 13ecef9 commit 771c3e7
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
2 changes: 1 addition & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 9 additions & 1 deletion subdns.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@

class Subscan:
def __init__(self, paras={}):
self.is_fuzz = paras['fuzz'] if paras.get('fuzz') else False
self.fuzz_data = paras['fd'] if paras.get('fd') else ""
self.deep = paras['deep'] if paras.get('deep') else 5
self.test = paras['test'] if paras.get('test') else False
self.check_analysis = True if paras.get('analysis_domain') else False # 通过cname 判断泛解析 这个方法极度损耗性能相当于查询两遍dns
Expand Down Expand Up @@ -173,7 +175,7 @@ def save_and_next(self, subname, ips, num=1):
f.write(subname+"\t"+str(ips)+"\n")
sub_deep = self.get_deep(subname)
sub_text = subname.replace("."+self.domain, "")
if sub_deep <= self.deep: # 域名深度
if sub_deep <= self.deep and not self.is_fuzz: # 域名深度
self.deep_domain.append(sub_text)
except Exception as e:
log.error(str(e))
Expand All @@ -189,6 +191,8 @@ async def start_brute(self):
for line in f:
domain = line.strip().lower()
if not self.check_bk_domain(domain):
if self.is_fuzz:
domain = self.fuzz_data.replace("FUZZ", domain)
self.queue.put_nowait(domain)
brute_tasks = [self.loop.create_task(self.brute_domain()) for _ in range(2000)]
await self.queue.join()
Expand Down Expand Up @@ -226,6 +230,7 @@ def main():
"-u", "--domain", type=str, help='Designated domain name')
parser.add_argument("-s", "--deep", type=int, help='Domain depth', default=5)
parser.add_argument("-c", "--check_bk", type=bool, help='check random subdomain', default=True)
parser.add_argument("-fd", "--fuzz_data", type=str, help='FUZZ data')
parser.add_argument("-an", "--analysis_domain", type=str, help='analysis cname')
parser.add_argument(
"-n",
Expand All @@ -236,6 +241,9 @@ def main():

args = parser.parse_args()
params = {}
if args.fuzz_data:
params['fuzz'] = True
params['fd'] = args.fuzz_data
if args.domain is None:
log.error("Please input domain such as python subdns.py -u baidu.com")
sys.exit()
Expand Down

0 comments on commit 771c3e7

Please sign in to comment.