MCPcopy Create free account

hub / github.com/Cytmo/waf-prowler / functions

Functions152 in github.com/Cytmo/waf-prowler

↓ 8 callersMethodget_logger
(self)
src/utils/logUtils.py:84
↓ 7 callersFunctionrandom_case
Randomly changes the case of each character in the text.
src/utils/prowler_mutant_methods.py:114
↓ 5 callersFunctionNopCloser
NopCloser returns an io.ReadCloser with a no-op Close method wrapping the provided io.Reader. It is similar to io.NopCloser in Go 1.16+.
src/test-payloads/gowaf_modified.go:32
↓ 4 callersFunctionhtml_entity_bypass
使用 HTML 实体编码对输入的 payload 进行编码,以尝试绕过安全限制。 参数: payload (str): 需要进行 HTML 实体编码的原始 payload 返回: str: 编码后的 payload
src/utils/prowler_mutant_methods.py:161
↓ 4 callersFunctioninsert_comments
Insert random comments or spaces in the text to break up keywords.
src/utils/prowler_mutant_methods.py:119
↓ 4 callersFunctioninsert_line_breaks
Helper function to insert CR/LF characters randomly in the text.
src/utils/prowler_mutant_methods.py:700
↓ 4 callersFunctionunicode_obfuscate
Helper function to encode ASCII characters into their Unicode equivalent.
src/utils/prowler_mutant_methods.py:654
↓ 3 callersFunctioncreate_new_model
创建新的 PPO 模型
src/utils/prowler_rl.py:629
↓ 3 callersMethodextract_features
(self, request: Dict[str, Any])
src/utils/prowler_feature_extract.py:121
↓ 3 callersFunctiongarbage_character_bypass
在输入的 payload 中添加随机垃圾字符,以尝试绕过基于正则表达式的安全过滤器。 参数: payload (str): 需要添加垃圾字符的原始 payload 返回: str: 添加垃圾字符后的 payload
src/utils/prowler_mutant_methods.py:244
↓ 3 callersMethodget_payload
(self)
src/utils/prowler_rl.py:587
↓ 3 callersFunctioninsert_spaces
Insert random comments or spaces in the text to break up keywords.
src/utils/prowler_mutant_methods.py:128
↓ 3 callersFunctionmutant_methods_change_request_method
(headers, url, method, data, files)
src/utils/prowler_mutant_methods.py:70
↓ 3 callersFunctionnewline_bypass
在输入的 payload 中插入换行符,以尝试绕过基于正则表达式的安全过滤器。 参数: payload (str): 需要进行换行符插入的原始 payload 返回: str: 插入换行符后的 payload
src/utils/prowler_mutant_methods.py:200
↓ 3 callersFunctionprowler_begin_to_send_payloads
(host,port,payloads,waf=False,PAYLOAD_MUTANT_ENABLED=False,enable_shortcut=True,enable_dd=False,rl=False)
src/utils/prowler_process_requests.py:274
↓ 3 callersFunctionrun_payload
(payload, host, port, waf=False)
src/utils/prowler_process_requests.py:225
↓ 3 callersFunctiontab_bypass
在输入的 payload 中插入换行符,以尝试绕过基于正则表达式的安全过滤器。 参数: payload (str): 需要进行换行符插入的原始 payload 返回: str: 插入换行符后的 payload
src/utils/prowler_mutant_methods.py:222
↓ 3 callersFunctionunicode_normalize
使用 Unicode 字符对输入的 payload 进行编码,以尝试绕过安全限制。 参数: payload (str): 需要进行 Unicode 编码的原始 payload 返回: str: 编码后的 payload
src/utils/prowler_mutant_methods.py:137
↓ 2 callersMethod_get_state
(self)
src/utils/prowler_rl.py:381
↓ 2 callersMethod_reset_environment
(self)
src/utils/prowler_rl.py:352
↓ 2 callersMethod_update_payload_from_mutation_results
(self, payloads)
src/utils/prowler_rl.py:509
↓ 2 callersFunctiondouble_encode
使用双重编码对输入的 payload 进行编码,以尝试绕过安全过滤器。 参数: payload (str): 需要进行双重编码的原始 payload 返回: str: 双重编码后的 payload
src/utils/prowler_mutant_methods.py:185
↓ 2 callersFunctionextract_features
(payload)
src/utils/prowler_rl_based_mutant.py:35
↓ 2 callersFunctionget_payloads_from_folder
(folder_path,plain=False)
src/utils/prowler_parse_raw_payload.py:93
↓ 2 callersMethodlearn
(self, state_vector, action, reward, next_state_vector)
src/utils/prowler_rl_based_mutant.py:77
↓ 2 callersMethodlog_result
(self, data)
src/utils/recordResUtils.py:48
↓ 2 callersFunctionprocess_requests
(headers, url, method, data=None, files=None)
src/utils/prowler_process_requests.py:143
↓ 2 callersFunctionprowler_begin_to_mutant_payloads
(headers, url, method, data,files=None,memory=None,deep_mutant=False,dd_enabled=False,enable_shortcut=True)
src/utils/prowler_mutant.py:65
↓ 2 callersFunctionprowler_begin_to_sniff_payload
(path,plain=False)
src/utils/prowler_parse_raw_payload.py:125
↓ 2 callersMethodreset
(self, *, seed=None, options=None)
src/utils/prowler_rl.py:365
↓ 2 callersMethodstep
(self, action)
src/utils/prowler_rl.py:425
↓ 2 callersFunctiontest_model
测试模型在特定环境中的性能
src/utils/prowler_rl.py:759
↓ 2 callersFunctionurl_encode_payload
Helper function to URL encode a given payload.
src/utils/prowler_mutant_methods.py:572
↓ 1 callersFunctionParseFormCopy
(req *http.Request)
src/test-payloads/gowaf_modified.go:36
↓ 1 callersFunctionParseFormCopy
(req *http.Request)
test-wafs/a-simple-waf/gowaf/gowaf_source.go:30
↓ 1 callersFunctionParseFormCopy
(req *http.Request)
test-wafs/a-simple-waf/gowaf/gowaf_modified.go:30
↓ 1 callersFunctionParseMultiFormCopy
(req *http.Request)
src/test-payloads/gowaf_modified.go:53
↓ 1 callersFunctionParseMultiFormCopy
(req *http.Request)
test-wafs/a-simple-waf/gowaf/gowaf_source.go:47
↓ 1 callersFunctionParseMultiFormCopy
(req *http.Request)
test-wafs/a-simple-waf/gowaf/gowaf_modified.go:47
↓ 1 callersMethod_apply_mutation
(self, action)
src/utils/prowler_rl.py:486
↓ 1 callersMethod_apply_special_mutation
(self)
src/utils/prowler_rl.py:460
↓ 1 callersMethod_calculate_reward
(self)
src/utils/prowler_rl.py:519
↓ 1 callersMethod_initialize_payload
(self, payload_for_rl)
src/utils/prowler_rl.py:342
↓ 1 callersMethod_record_action
(self, action)
src/utils/prowler_rl.py:447
↓ 1 callersMethod_restore_payload
(self)
src/utils/prowler_rl.py:456
↓ 1 callersMethodcheck_response_text
(self, url, response_text)
src/utils/recordResUtils.py:52
↓ 1 callersFunctioncheck_url_reachable
检查目标网址是否可达
src/main.py:172
↓ 1 callersMethodchoose_action
(self, state_vector)
src/utils/prowler_rl_based_mutant.py:65
↓ 1 callersFunctionchunked_body
(data)
src/utils/prowler_mutant_methods.py:1458
↓ 1 callersFunctionconfigure_settings
(args)
src/main.py:46
↓ 1 callersFunctiondd_mutant
(headers,url,method,data,files)
src/utils/prowler_mutant.py:15
↓ 1 callersFunctiondeduplicate_results
(results)
src/main.py:79
↓ 1 callersFunctiondetectAttack
(req *http.Request)
src/test-payloads/gowaf_modified.go:70
↓ 1 callersFunctiondetectAttack
(req *http.Request)
test-wafs/a-simple-waf/gowaf/gowaf_source.go:65
↓ 1 callersFunctiondetectAttack
(req *http.Request)
test-wafs/a-simple-waf/gowaf/gowaf_modified.go:64
↓ 1 callersMethodextract_body_features
(self, body: Union[str, Dict[str, Any]])
src/utils/prowler_feature_extract.py:98
↓ 1 callersMethodextract_features
(self, payload)
src/utils/prowler_rl.py:369
↓ 1 callersMethodextract_header_features
(self, headers: Dict[str, str])
src/utils/prowler_feature_extract.py:76
↓ 1 callersMethodextract_method_feature
(self, method: str)
src/utils/prowler_feature_extract.py:71
↓ 1 callersMethodextract_url_features
(self, url: str)
src/utils/prowler_feature_extract.py:47
↓ 1 callersFunctiongenerate_combinations
生成两两组合的变异方法
src/utils/prowler_mutant_methods.py:1860
↓ 1 callersFunctiongenerate_statistic
(results)
src/main.py:101
↓ 1 callersFunctionget_unformatted_payload
(json_path)
src/utils/prowler_parse_raw_payload.py:10
↓ 1 callersFunctionget_weighted_mutant_methods
(mutant_methods_config)
src/utils/prowler_mutant_methods.py:1618
↓ 1 callersFunctionhandle_gzip_response
(response)
src/utils/prowler_process_requests.py:63
↓ 1 callersFunctionhandle_gzip_response
(response)
src/utils/prowler_rl.py:73
↓ 1 callersFunctionhandle_html_response
(response)
src/utils/prowler_process_requests.py:31
↓ 1 callersFunctionhandle_html_response
(response)
src/utils/prowler_rl.py:39
↓ 1 callersFunctionhandle_json_response
(response)
src/utils/prowler_process_requests.py:23
↓ 1 callersFunctionhandle_json_response
(response)
src/utils/prowler_rl.py:30
↓ 1 callersFunctionhandle_text_response
(response)
src/utils/prowler_process_requests.py:73
↓ 1 callersFunctionhandle_text_response
(response)
src/utils/prowler_rl.py:84
↓ 1 callersFunctionhandle_xml_response
(response)
src/utils/prowler_process_requests.py:54
↓ 1 callersFunctionhandle_xml_response
(response)
src/utils/prowler_rl.py:63
↓ 1 callersMethodinit_logger
(self)
src/utils/logUtils.py:25
↓ 1 callersFunctioninitialize_model
初始化模型,如果已存在则加载模型,否则创建新模型
src/utils/prowler_rl.py:597
↓ 1 callersMethodload_data
(self)
src/utils/recordResUtils.py:30
↓ 1 callersFunctionmain
(args)
src/main.py:186
↓ 1 callersFunctionparse_arguments
配置命令行参数
src/main.py:19
↓ 1 callersFunctionparse_response
(response)
src/utils/prowler_process_requests.py:83
↓ 1 callersFunctionparse_response
(response)
src/utils/prowler_rl.py:93
↓ 1 callersFunctionprocess_requests
(headers, url, method, data=None, files=None)
src/utils/prowler_rl.py:170
↓ 1 callersFunctionprowler_begin_to_mutant_payload_with_rl
Parameters: headers: dict, 请求头 url: str, 请求URL method: str, 请求方法 data: 请求体 files: 请求文件 attempts:
src/utils/prowler_rl.py:842
↓ 1 callersFunctionprowler_begin_to_mutant_payloads
(headers, url, method, data, files=None, deep_mutant=False)
src/utils/prowler_rl_based_mutant.py:85
↓ 1 callersFunctionprowler_feature_extract
(request: Dict[str, Any])
src/utils/prowler_feature_extract.py:139
↓ 1 callersFunctionrun_payload
(payload, host=None, port=None, waf=True)
src/utils/prowler_rl.py:203
↓ 1 callersFunctionrun_payload_for_rl
(payload, host=None, port=None, waf=True)
src/utils/prowler_process_requests.py:176
↓ 1 callersFunctionsend_request
(headers, url, method, data, files)
src/utils/prowler_rl_based_mutant.py:44
↓ 1 callersFunctionsend_requests
(prep_request, timeout=HTTP_CONNECTION_TIMEOUT)
src/utils/prowler_process_requests.py:106
↓ 1 callersFunctionsend_requests
(prep_request, timeout=0.1)
src/utils/prowler_rl.py:117
↓ 1 callersMethodsetup_logger
(self)
src/utils/logUtils.py:36
↓ 1 callersFunctiontrain_model
遍历 payloads 并逐个训练模型
src/utils/prowler_rl.py:663
↓ 1 callersMethodupdate_file_name
(self)
src/utils/recordResUtils.py:25
↓ 1 callersFunctionupdate_memory
更新内存文件
src/main.py:121
Method__init__
(self)
src/utils/prowler_feature_extract.py:14
Method__init__
(self, mutant_methods, reward_function)
src/utils/prowler_rl_based_mutant.py:60
Method__init__
(self, directory='result')
src/utils/recordResUtils.py:12
Method__init__
(self, enabled_methods, payload_for_rl)
src/utils/prowler_rl.py:292
Method__new__
(cls)
src/utils/logUtils.py:19
Functiongenerate_unique_id
(entry)
src/main.py:73
next →1–100 of 152, ranked by callers