mirror of
https://github.com/shmilylty/OneForAll.git
synced 2026-08-26 12:57:50 +08:00
fixed #147
This commit is contained in:
@@ -556,7 +556,7 @@ class Brute(Module):
|
|||||||
brute.py --target d.com --fuzz True --place m.*.d.com --fuzzlist subnames.txt run
|
brute.py --target d.com --fuzz True --place m.*.d.com --fuzzlist subnames.txt run
|
||||||
|
|
||||||
Note:
|
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)
|
--path Result path (default None, automatically generated)
|
||||||
|
|
||||||
|
|
||||||
@@ -614,7 +614,9 @@ class Brute(Module):
|
|||||||
logger.log('INFOR', f'Generating dictionary for {domain}')
|
logger.log('INFOR', f'Generating dictionary for {domain}')
|
||||||
dict_set = set()
|
dict_set = set()
|
||||||
# 如果domain不是self.subdomain 而是self.domain的子域则生成递归爆破字典
|
# 如果domain不是self.subdomain 而是self.domain的子域则生成递归爆破字典
|
||||||
if self.place is None:
|
if self.word:
|
||||||
|
self.place = ''
|
||||||
|
if not self.place:
|
||||||
self.place = '*.' + domain
|
self.place = '*.' + domain
|
||||||
wordlist = self.wordlist
|
wordlist = self.wordlist
|
||||||
main_domain = utils.get_main_domain(domain)
|
main_domain = utils.get_main_domain(domain)
|
||||||
@@ -728,13 +730,15 @@ class Brute(Module):
|
|||||||
if self.check_env:
|
if self.check_env:
|
||||||
utils.check_env()
|
utils.check_env()
|
||||||
self.domains = utils.get_domains(self.target, self.targets)
|
self.domains = utils.get_domains(self.target, self.targets)
|
||||||
all_subdomains = list()
|
|
||||||
for self.domain in self.domains:
|
for self.domain in self.domains:
|
||||||
|
self.results = list() # 置空
|
||||||
|
all_subdomains = list()
|
||||||
self.check_brute_params()
|
self.check_brute_params()
|
||||||
if self.recursive_brute:
|
if self.recursive_brute:
|
||||||
logger.log('INFOR', f'Start recursively brute the 1 layer subdomain'
|
logger.log('INFOR', f'Start recursively brute the 1 layer subdomain'
|
||||||
f' of {self.domain}')
|
f' of {self.domain}')
|
||||||
valid_subdomains = self.main(self.domain)
|
valid_subdomains = self.main(self.domain)
|
||||||
|
|
||||||
all_subdomains.extend(valid_subdomains)
|
all_subdomains.extend(valid_subdomains)
|
||||||
|
|
||||||
# 递归爆破下一层的子域
|
# 递归爆破下一层的子域
|
||||||
@@ -742,8 +746,8 @@ class Brute(Module):
|
|||||||
if self.recursive_brute:
|
if self.recursive_brute:
|
||||||
for layer_num in range(1, self.recursive_depth):
|
for layer_num in range(1, self.recursive_depth):
|
||||||
# 之前已经做过1层子域爆破 当前实际递归层数是layer+1
|
# 之前已经做过1层子域爆破 当前实际递归层数是layer+1
|
||||||
logger.log('INFOR', f'Start recursively brute the {layer_num + 1} layer'
|
logger.log('INFOR', f'Start recursively brute the {layer_num + 1} '
|
||||||
f' subdomain of {self.domain}')
|
f'layer subdomain of {self.domain}')
|
||||||
for subdomain in all_subdomains:
|
for subdomain in all_subdomains:
|
||||||
self.place = '*.' + subdomain
|
self.place = '*.' + subdomain
|
||||||
# 进行下一层子域爆破的限制条件
|
# 进行下一层子域爆破的限制条件
|
||||||
@@ -752,7 +756,7 @@ class Brute(Module):
|
|||||||
valid_subdomains = self.main(subdomain)
|
valid_subdomains = self.main(subdomain)
|
||||||
all_subdomains.extend(valid_subdomains)
|
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:
|
if not self.path:
|
||||||
name = f'{self.domain}_brute_result.{self.format}'
|
name = f'{self.domain}_brute_result.{self.format}'
|
||||||
self.path = settings.result_save_dir.joinpath(name)
|
self.path = settings.result_save_dir.joinpath(name)
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ DESCRIPTION
|
|||||||
|
|
||||||
Note:
|
Note:
|
||||||
--port small/medium/large See details in ./config/setting.py(default small)
|
--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)
|
--path Result path (default None, automatically generated)
|
||||||
|
|
||||||
FLAGS
|
FLAGS
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@ OneForAll命令行界面基于[Fire](https://github.com/google/python-fire/)实
|
|||||||
|
|
||||||
Note:
|
Note:
|
||||||
--port small/medium/large 详见./config/setting.py(默认small)
|
--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,自动生成)
|
--path 结果路径(默认None,自动生成)
|
||||||
|
|
||||||
FLAGS
|
FLAGS
|
||||||
|
|||||||
Reference in New Issue
Block a user