From 5e2da897d5f205a43702a87a0ddac003efa0813e Mon Sep 17 00:00:00 2001 From: Jing Ling Date: Wed, 30 Sep 2020 17:52:58 +0800 Subject: [PATCH] fixed #147 --- brute.py | 16 ++++++++++------ docs/en-us/usage_help.md | 4 ++-- docs/usage_help.md | 4 ++-- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/brute.py b/brute.py index cd73a7f..73e17a4 100644 --- a/brute.py +++ b/brute.py @@ -556,7 +556,7 @@ class Brute(Module): brute.py --target d.com --fuzz True --place m.*.d.com --fuzzlist subnames.txt run Note: - --format rst/csv/tsv/json/yaml/html/jira/xls/xlsx/dbf/latex/ods (result format) + --format csv/json (result format) --path Result path (default None, automatically generated) @@ -614,7 +614,9 @@ class Brute(Module): logger.log('INFOR', f'Generating dictionary for {domain}') dict_set = set() # 如果domain不是self.subdomain 而是self.domain的子域则生成递归爆破字典 - if self.place is None: + if self.word: + self.place = '' + if not self.place: self.place = '*.' + domain wordlist = self.wordlist main_domain = utils.get_main_domain(domain) @@ -728,13 +730,15 @@ class Brute(Module): if self.check_env: utils.check_env() self.domains = utils.get_domains(self.target, self.targets) - all_subdomains = list() for self.domain in self.domains: + self.results = list() # 置空 + all_subdomains = list() self.check_brute_params() if self.recursive_brute: logger.log('INFOR', f'Start recursively brute the 1 layer subdomain' f' of {self.domain}') valid_subdomains = self.main(self.domain) + all_subdomains.extend(valid_subdomains) # 递归爆破下一层的子域 @@ -742,8 +746,8 @@ class Brute(Module): if self.recursive_brute: for layer_num in range(1, self.recursive_depth): # 之前已经做过1层子域爆破 当前实际递归层数是layer+1 - logger.log('INFOR', f'Start recursively brute the {layer_num + 1} layer' - f' subdomain of {self.domain}') + logger.log('INFOR', f'Start recursively brute the {layer_num + 1} ' + f'layer subdomain of {self.domain}') for subdomain in all_subdomains: self.place = '*.' + subdomain # 进行下一层子域爆破的限制条件 @@ -752,7 +756,7 @@ class Brute(Module): valid_subdomains = self.main(subdomain) all_subdomains.extend(valid_subdomains) - logger.log('INFOR', f'Finished {self.source} module\'s brute {self.domain}') + logger.log('INFOR', f'Finished {self.source} module to brute {self.domain}') if not self.path: name = f'{self.domain}_brute_result.{self.format}' self.path = settings.result_save_dir.joinpath(name) diff --git a/docs/en-us/usage_help.md b/docs/en-us/usage_help.md index 46b64da..42cce71 100644 --- a/docs/en-us/usage_help.md +++ b/docs/en-us/usage_help.md @@ -40,7 +40,7 @@ DESCRIPTION Note: --port small/medium/large See details in ./config/setting.py(default small) - --format rst/csv/tsv/json/yaml/html/jira/xls/xlsx/dbf/latex/ods (result format) + --format csv/json (result format) --path Result path (default None, automatically generated) FLAGS @@ -220,4 +220,4 @@ FLAGS Result format (default csv) --show=SHOW Displays the exported data in terminal (default False) -``` \ No newline at end of file +``` diff --git a/docs/usage_help.md b/docs/usage_help.md index d1f3dc1..39231c9 100644 --- a/docs/usage_help.md +++ b/docs/usage_help.md @@ -39,7 +39,7 @@ OneForAll命令行界面基于[Fire](https://github.com/google/python-fire/)实 Note: --port small/medium/large 详见./config/setting.py(默认small) - --format rst/csv/tsv/json/yaml/html/jira/xls/xlsx/dbf/latex/ods (结果格式,默认CSV) + --format csv/json (结果格式,默认CSV) --path 结果路径(默认None,自动生成) FLAGS @@ -222,4 +222,4 @@ OneForAll命令行界面基于[Fire](https://github.com/google/python-fire/)实 导出格式(默认xlsx) --show=SHOW 终端显示导出数据(默认False) - ``` \ No newline at end of file + ```