secator 0.16.2__tar.gz → 0.16.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of secator might be problematic. Click here for more details.
- {secator-0.16.2 → secator-0.16.3}/CHANGELOG.md +12 -0
- {secator-0.16.2 → secator-0.16.3}/PKG-INFO +1 -1
- {secator-0.16.2 → secator-0.16.3}/pyproject.toml +1 -1
- {secator-0.16.2 → secator-0.16.3}/secator/celery.py +14 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/url_crawl.yaml +9 -12
- {secator-0.16.2 → secator-0.16.3}/secator/hooks/mongodb.py +3 -3
- {secator-0.16.2 → secator-0.16.3}/secator/runners/_base.py +1 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/bup.py +1 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/dalfox.py +1 -6
- {secator-0.16.2 → secator-0.16.3}/.coderabbit.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/Dockerfile.alpine +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/Dockerfile.arch +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/Dockerfile.debian +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/Dockerfile.kali +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/Dockerfile.osx +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/Dockerfile.ubuntu +0 -0
- {secator-0.16.2 → secator-0.16.3}/.docker/build_all.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/.dockerignore +0 -0
- {secator-0.16.2 → secator-0.16.3}/.flake8 +0 -0
- {secator-0.16.2 → secator-0.16.3}/.gitignore +0 -0
- {secator-0.16.2 → secator-0.16.3}/CONTRIBUTING.md +0 -0
- {secator-0.16.2 → secator-0.16.3}/Dockerfile +0 -0
- {secator-0.16.2 → secator-0.16.3}/LICENSE +0 -0
- {secator-0.16.2 → secator-0.16.3}/README.md +0 -0
- {secator-0.16.2 → secator-0.16.3}/SECURITY.md +0 -0
- {secator-0.16.2 → secator-0.16.3}/cloudbuild.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/.helmignore +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/Chart.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/templates/redis-service.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/templates/redis.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/templates/secator-manager.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/templates/secator-worker.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/helm/values.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/download_cves.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/generate_tools_md_table.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/install.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/install_asciinema.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/install_go.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/install_ruby.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/msf/exploit_cve.rc +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/msf/ftp_anonymous.rc +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/msf/ftp_version.rc +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/msf/ftp_vsftpd_234_backdoor.rc +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/msf/redis.rc +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/STORY.md +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/aliases.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/demo.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/fmt.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/input.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/pipe.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/stories/short_demo.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/scripts/update_tools.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/.gitignore +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/celery_signals.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/celery_utils.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/cli.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/cli_helper.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/click.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/config.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/aggressive.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/http_headless.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/http_record.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/insane.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/paranoid.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/polite.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/sneaky.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/profiles/tor.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/scans/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/scans/domain.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/scans/host.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/scans/network.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/scans/subdomain.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/scans/url.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/cidr_recon.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/code_scan.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/host_recon.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/subdomain_recon.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/url_bypass.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/url_dirsearch.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/url_fuzz.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/url_params_fuzz.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/url_vuln.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/user_hunt.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/configs/workflows/wordpress.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/cve.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/decorators.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/definitions.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/_base.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/console.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/csv.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/gdrive.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/json.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/table.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/exporters/txt.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/hooks/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/hooks/gcs.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/installer.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/loader.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/_base.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/certificate.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/error.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/exploit.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/info.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/ip.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/port.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/progress.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/record.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/stat.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/state.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/subdomain.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/tag.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/target.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/url.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/user_account.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/vulnerability.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/output_types/warning.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/report.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/rich.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/_helpers.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/celery.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/command.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/scan.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/task.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/runners/workflow.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/scans/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/serializers/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/serializers/dataclass.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/serializers/json.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/serializers/regex.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/_categories.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/arjun.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/bbot.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/cariddi.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/dirsearch.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/dnsx.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/feroxbuster.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/ffuf.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/fping.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/gau.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/gf.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/gitleaks.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/gospider.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/grype.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/h8mail.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/httpx.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/katana.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/maigret.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/mapcidr.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/msfconsole.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/naabu.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/nmap.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/nuclei.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/searchsploit.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/subfinder.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/testssl.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/trivy.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/wafw00f.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/wpprobe.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tasks/wpscan.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/template.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/thread.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/tree.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/utils.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/utils_test.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/secator/workflows/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/fixtures/h8mail_breach.txt +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/fixtures/ls.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/fixtures/msfconsole_input.rc +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/fixtures/nmap_output.xml +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/all.yaml +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/inputs.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/outputs.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/setup.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/teardown.sh +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_addons.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_celery.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_scans.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_tasks.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_tasks_categories.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_worker.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/test_workflows.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/wordlist.txt +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/wordlist_dns.txt +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/wordpress_toolbox/Dockerfile +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/integration/wordpress_toolbox/Makefile +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/performance/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/performance/loadtester.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/performance/test_worker.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/template/test_templates.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/__init__.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_celery.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_cli.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_command.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_config.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_offline.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_runners.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_runners_helpers.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_scans.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_serializers.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_tasks.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_tasks_categories.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_template.py +0 -0
- {secator-0.16.2 → secator-0.16.3}/tests/unit/test_utils.py +0 -0
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.16.3](https://github.com/freelabz/secator/compare/v0.16.2...v0.16.3) (2025-06-11)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* bup file flag ([#690](https://github.com/freelabz/secator/issues/690)) ([83d83d7](https://github.com/freelabz/secator/commit/83d83d72c5c523ea44dcc3cb78f478c935ed4127))
|
|
9
|
+
* **celery:** add no_live_updates to skip backend updates ([#695](https://github.com/freelabz/secator/issues/695)) ([c99599c](https://github.com/freelabz/secator/commit/c99599caa219312e8ca2e190d8353960ca4f2633))
|
|
10
|
+
* **dalfox:** use jsonl option instead of json ([#692](https://github.com/freelabz/secator/issues/692)) ([c406e34](https://github.com/freelabz/secator/commit/c406e346a4011b0c57efd7b6d5e518ee6d7953e6))
|
|
11
|
+
* **mongodb:** add all output types ([#696](https://github.com/freelabz/secator/issues/696)) ([af98935](https://github.com/freelabz/secator/commit/af989352662f53903768c268347e6046db9dd8fd))
|
|
12
|
+
* show info message for mark_runner_started / mark_runner_completed ([#694](https://github.com/freelabz/secator/issues/694)) ([ed0f6cb](https://github.com/freelabz/secator/commit/ed0f6cb1464c962fc6f65381762fd23330f9aa85))
|
|
13
|
+
* **workflow:** put cariddi in crawlers group ([#693](https://github.com/freelabz/secator/issues/693)) ([a9e1afd](https://github.com/freelabz/secator/commit/a9e1afd97256aefc33d179d9e3d4091f24b332b2))
|
|
14
|
+
|
|
3
15
|
## [0.16.2](https://github.com/freelabz/secator/compare/v0.16.1...v0.16.2) (2025-06-06)
|
|
4
16
|
|
|
5
17
|
|
|
@@ -100,6 +100,8 @@ def update_state(celery_task, task, force=False):
|
|
|
100
100
|
"""Update task state to add metadata information."""
|
|
101
101
|
if not IN_CELERY_WORKER_PROCESS:
|
|
102
102
|
return
|
|
103
|
+
if task.no_live_updates:
|
|
104
|
+
return
|
|
103
105
|
if not force and not should_update(CONFIG.runners.backend_update_frequency, task.last_updated_celery):
|
|
104
106
|
return
|
|
105
107
|
task.last_updated_celery = time()
|
|
@@ -223,8 +225,16 @@ def forward_results(results):
|
|
|
223
225
|
results[ix] = item['results']
|
|
224
226
|
elif 'results' in results:
|
|
225
227
|
results = results['results']
|
|
228
|
+
|
|
229
|
+
if IN_CELERY_WORKER_PROCESS:
|
|
230
|
+
console.print(Info(message=f'Forwarding {len(results)} results'))
|
|
231
|
+
|
|
226
232
|
results = flatten(results)
|
|
227
233
|
results = deduplicate(results, attr='_uuid')
|
|
234
|
+
|
|
235
|
+
if IN_CELERY_WORKER_PROCESS:
|
|
236
|
+
console.print(Info(message=f'Forwarded {len(results)} flattened and deduplicated results'))
|
|
237
|
+
|
|
228
238
|
return results
|
|
229
239
|
|
|
230
240
|
|
|
@@ -240,6 +250,8 @@ def mark_runner_started(results, runner, enable_hooks=True):
|
|
|
240
250
|
Returns:
|
|
241
251
|
list: Runner results
|
|
242
252
|
"""
|
|
253
|
+
if IN_CELERY_WORKER_PROCESS:
|
|
254
|
+
console.print(Info(message=f'Runner {runner.unique_name} has started, running mark_started'))
|
|
243
255
|
debug(f'Runner {runner.unique_name} has started, running mark_started', sub='celery')
|
|
244
256
|
if results:
|
|
245
257
|
runner.results = forward_results(results)
|
|
@@ -260,6 +272,8 @@ def mark_runner_completed(results, runner, enable_hooks=True):
|
|
|
260
272
|
Returns:
|
|
261
273
|
list: Final results
|
|
262
274
|
"""
|
|
275
|
+
if IN_CELERY_WORKER_PROCESS:
|
|
276
|
+
console.print(Info(message=f'Runner {runner.unique_name} has finished, running mark_completed'))
|
|
263
277
|
debug(f'Runner {runner.unique_name} has finished, running mark_completed', sub='celery')
|
|
264
278
|
results = forward_results(results)
|
|
265
279
|
runner.enable_hooks = enable_hooks
|
|
@@ -9,7 +9,7 @@ input_types:
|
|
|
9
9
|
options:
|
|
10
10
|
crawlers:
|
|
11
11
|
type: list
|
|
12
|
-
help: Crawlers to use
|
|
12
|
+
help: Crawlers to use
|
|
13
13
|
default: ['gau', 'katana']
|
|
14
14
|
internal: True
|
|
15
15
|
|
|
@@ -36,17 +36,14 @@ tasks:
|
|
|
36
36
|
description: Crawl URLs
|
|
37
37
|
if: "'gospider' in opts.crawlers"
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
- target.name
|
|
48
|
-
- url.url
|
|
49
|
-
if: opts.hunt_patterns
|
|
39
|
+
cariddi:
|
|
40
|
+
description: Hunt URLs patterns
|
|
41
|
+
info: True
|
|
42
|
+
secrets: True
|
|
43
|
+
errors: True
|
|
44
|
+
juicy_extensions: 1
|
|
45
|
+
juicy_endpoints: True
|
|
46
|
+
if: opts.hunt_patterns
|
|
50
47
|
|
|
51
48
|
httpx:
|
|
52
49
|
description: Run HTTP probes on crawled URLs
|
|
@@ -6,7 +6,7 @@ from bson.objectid import ObjectId
|
|
|
6
6
|
from celery import shared_task
|
|
7
7
|
|
|
8
8
|
from secator.config import CONFIG
|
|
9
|
-
from secator.output_types import
|
|
9
|
+
from secator.output_types import OUTPUT_TYPES
|
|
10
10
|
from secator.runners import Scan, Task, Workflow
|
|
11
11
|
from secator.utils import debug, escape_mongodb_url
|
|
12
12
|
|
|
@@ -78,7 +78,7 @@ def update_runner(self):
|
|
|
78
78
|
|
|
79
79
|
|
|
80
80
|
def update_finding(self, item):
|
|
81
|
-
if type(item) not in
|
|
81
|
+
if type(item) not in OUTPUT_TYPES:
|
|
82
82
|
return item
|
|
83
83
|
start_time = time.time()
|
|
84
84
|
client = get_mongodb_client()
|
|
@@ -120,7 +120,7 @@ def find_duplicates(self):
|
|
|
120
120
|
def load_finding(obj):
|
|
121
121
|
finding_type = obj['_type']
|
|
122
122
|
klass = None
|
|
123
|
-
for otype in
|
|
123
|
+
for otype in OUTPUT_TYPES:
|
|
124
124
|
if finding_type == otype.get_name():
|
|
125
125
|
klass = otype
|
|
126
126
|
item = klass.load(obj)
|
|
@@ -117,6 +117,7 @@ class Runner:
|
|
|
117
117
|
|
|
118
118
|
# Runner process options
|
|
119
119
|
self.no_poll = self.run_opts.get('no_poll', False)
|
|
120
|
+
self.no_live_updates = self.run_opts.get('no_live_updates', False)
|
|
120
121
|
self.no_process = not self.run_opts.get('process', True)
|
|
121
122
|
self.piped_input = self.run_opts.get('piped_input', False)
|
|
122
123
|
self.piped_output = self.run_opts.get('piped_output', False)
|
|
@@ -27,7 +27,7 @@ class dalfox(VulnHttp):
|
|
|
27
27
|
input_flag = 'url'
|
|
28
28
|
file_flag = 'file'
|
|
29
29
|
# input_chunk_size = 1
|
|
30
|
-
json_flag = '--format
|
|
30
|
+
json_flag = '--format jsonl'
|
|
31
31
|
version_flag = 'version'
|
|
32
32
|
opt_prefix = '--'
|
|
33
33
|
opt_key_map = {
|
|
@@ -65,11 +65,6 @@ class dalfox(VulnHttp):
|
|
|
65
65
|
proxy_http = True
|
|
66
66
|
profile = 'cpu'
|
|
67
67
|
|
|
68
|
-
@staticmethod
|
|
69
|
-
def on_line(self, line):
|
|
70
|
-
line = line.rstrip(',')
|
|
71
|
-
return line
|
|
72
|
-
|
|
73
68
|
@staticmethod
|
|
74
69
|
def on_json_loaded(self, item):
|
|
75
70
|
if item.get('type', '') == 'V':
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|