secator 0.19.1__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.

Files changed (213) hide show
  1. secator-0.19.1/.coderabbit.yaml +148 -0
  2. secator-0.19.1/.docker/Dockerfile.alpine +35 -0
  3. secator-0.19.1/.docker/Dockerfile.arch +36 -0
  4. secator-0.19.1/.docker/Dockerfile.debian +38 -0
  5. secator-0.19.1/.docker/Dockerfile.kali +37 -0
  6. secator-0.19.1/.docker/Dockerfile.osx +40 -0
  7. secator-0.19.1/.docker/Dockerfile.ubuntu +37 -0
  8. secator-0.19.1/.docker/build_all.sh +42 -0
  9. secator-0.19.1/.dockerignore +4 -0
  10. secator-0.19.1/.flake8 +3 -0
  11. secator-0.19.1/.gitignore +143 -0
  12. secator-0.19.1/CHANGELOG.md +577 -0
  13. secator-0.19.1/CONTRIBUTING.md +88 -0
  14. secator-0.19.1/Dockerfile +1 -0
  15. secator-0.19.1/LICENSE +60 -0
  16. secator-0.19.1/PKG-INFO +439 -0
  17. secator-0.19.1/README.md +368 -0
  18. secator-0.19.1/SECURITY.md +14 -0
  19. secator-0.19.1/cloudbuild.yaml +15 -0
  20. secator-0.19.1/helm/.helmignore +23 -0
  21. secator-0.19.1/helm/Chart.yaml +7 -0
  22. secator-0.19.1/helm/templates/redis-service.yaml +11 -0
  23. secator-0.19.1/helm/templates/redis.yaml +26 -0
  24. secator-0.19.1/helm/templates/secator-manager.yaml +22 -0
  25. secator-0.19.1/helm/templates/secator-worker.yaml +29 -0
  26. secator-0.19.1/helm/values.yaml +58 -0
  27. secator-0.19.1/pyproject.toml +98 -0
  28. secator-0.19.1/scripts/download_cves.sh +15 -0
  29. secator-0.19.1/scripts/generate_tools_md_table.py +131 -0
  30. secator-0.19.1/scripts/install.sh +32 -0
  31. secator-0.19.1/scripts/install_asciinema.sh +7 -0
  32. secator-0.19.1/scripts/install_go.sh +22 -0
  33. secator-0.19.1/scripts/install_ruby.sh +11 -0
  34. secator-0.19.1/scripts/msf/exploit_cve.rc +11 -0
  35. secator-0.19.1/scripts/msf/ftp_anonymous.rc +5 -0
  36. secator-0.19.1/scripts/msf/ftp_version.rc +5 -0
  37. secator-0.19.1/scripts/msf/ftp_vsftpd_234_backdoor.rc +5 -0
  38. secator-0.19.1/scripts/msf/redis.rc +4 -0
  39. secator-0.19.1/scripts/stories/STORY.md +81 -0
  40. secator-0.19.1/scripts/stories/aliases.sh +18 -0
  41. secator-0.19.1/scripts/stories/demo.sh +29 -0
  42. secator-0.19.1/scripts/stories/fmt.sh +18 -0
  43. secator-0.19.1/scripts/stories/input.sh +15 -0
  44. secator-0.19.1/scripts/stories/pipe.sh +11 -0
  45. secator-0.19.1/scripts/stories/short_demo.sh +13 -0
  46. secator-0.19.1/scripts/update_tools.sh +35 -0
  47. secator-0.19.1/secator/.gitignore +162 -0
  48. secator-0.19.1/secator/__init__.py +0 -0
  49. secator-0.19.1/secator/celery.py +451 -0
  50. secator-0.19.1/secator/celery_signals.py +138 -0
  51. secator-0.19.1/secator/celery_utils.py +320 -0
  52. secator-0.19.1/secator/cli.py +1841 -0
  53. secator-0.19.1/secator/cli_helper.py +394 -0
  54. secator-0.19.1/secator/click.py +87 -0
  55. secator-0.19.1/secator/config.py +662 -0
  56. secator-0.19.1/secator/configs/__init__.py +0 -0
  57. secator-0.19.1/secator/configs/profiles/__init__.py +0 -0
  58. secator-0.19.1/secator/configs/profiles/aggressive.yaml +8 -0
  59. secator-0.19.1/secator/configs/profiles/http_headless.yaml +6 -0
  60. secator-0.19.1/secator/configs/profiles/http_record.yaml +6 -0
  61. secator-0.19.1/secator/configs/profiles/insane.yaml +8 -0
  62. secator-0.19.1/secator/configs/profiles/paranoid.yaml +8 -0
  63. secator-0.19.1/secator/configs/profiles/polite.yaml +8 -0
  64. secator-0.19.1/secator/configs/profiles/sneaky.yaml +8 -0
  65. secator-0.19.1/secator/configs/profiles/tor.yaml +5 -0
  66. secator-0.19.1/secator/configs/scans/__init__.py +0 -0
  67. secator-0.19.1/secator/configs/scans/domain.yaml +20 -0
  68. secator-0.19.1/secator/configs/scans/host.yaml +14 -0
  69. secator-0.19.1/secator/configs/scans/network.yaml +14 -0
  70. secator-0.19.1/secator/configs/scans/subdomain.yaml +20 -0
  71. secator-0.19.1/secator/configs/scans/url.yaml +11 -0
  72. secator-0.19.1/secator/configs/workflows/__init__.py +0 -0
  73. secator-0.19.1/secator/configs/workflows/cidr_recon.yaml +30 -0
  74. secator-0.19.1/secator/configs/workflows/code_scan.yaml +11 -0
  75. secator-0.19.1/secator/configs/workflows/host_recon.yaml +71 -0
  76. secator-0.19.1/secator/configs/workflows/subdomain_recon.yaml +84 -0
  77. secator-0.19.1/secator/configs/workflows/url_bypass.yaml +10 -0
  78. secator-0.19.1/secator/configs/workflows/url_crawl.yaml +55 -0
  79. secator-0.19.1/secator/configs/workflows/url_dirsearch.yaml +34 -0
  80. secator-0.19.1/secator/configs/workflows/url_fuzz.yaml +43 -0
  81. secator-0.19.1/secator/configs/workflows/url_params_fuzz.yaml +32 -0
  82. secator-0.19.1/secator/configs/workflows/url_vuln.yaml +80 -0
  83. secator-0.19.1/secator/configs/workflows/user_hunt.yaml +24 -0
  84. secator-0.19.1/secator/configs/workflows/wordpress.yaml +33 -0
  85. secator-0.19.1/secator/cve.py +718 -0
  86. secator-0.19.1/secator/decorators.py +7 -0
  87. secator-0.19.1/secator/definitions.py +165 -0
  88. secator-0.19.1/secator/exporters/__init__.py +14 -0
  89. secator-0.19.1/secator/exporters/_base.py +3 -0
  90. secator-0.19.1/secator/exporters/console.py +10 -0
  91. secator-0.19.1/secator/exporters/csv.py +37 -0
  92. secator-0.19.1/secator/exporters/gdrive.py +123 -0
  93. secator-0.19.1/secator/exporters/json.py +16 -0
  94. secator-0.19.1/secator/exporters/table.py +36 -0
  95. secator-0.19.1/secator/exporters/txt.py +28 -0
  96. secator-0.19.1/secator/hooks/__init__.py +0 -0
  97. secator-0.19.1/secator/hooks/gcs.py +65 -0
  98. secator-0.19.1/secator/hooks/mongodb.py +281 -0
  99. secator-0.19.1/secator/installer.py +657 -0
  100. secator-0.19.1/secator/loader.py +127 -0
  101. secator-0.19.1/secator/output_types/__init__.py +45 -0
  102. secator-0.19.1/secator/output_types/_base.py +108 -0
  103. secator-0.19.1/secator/output_types/certificate.py +78 -0
  104. secator-0.19.1/secator/output_types/error.py +42 -0
  105. secator-0.19.1/secator/output_types/exploit.py +57 -0
  106. secator-0.19.1/secator/output_types/info.py +24 -0
  107. secator-0.19.1/secator/output_types/ip.py +42 -0
  108. secator-0.19.1/secator/output_types/port.py +52 -0
  109. secator-0.19.1/secator/output_types/progress.py +36 -0
  110. secator-0.19.1/secator/output_types/record.py +36 -0
  111. secator-0.19.1/secator/output_types/stat.py +41 -0
  112. secator-0.19.1/secator/output_types/state.py +29 -0
  113. secator-0.19.1/secator/output_types/subdomain.py +42 -0
  114. secator-0.19.1/secator/output_types/tag.py +51 -0
  115. secator-0.19.1/secator/output_types/target.py +38 -0
  116. secator-0.19.1/secator/output_types/url.py +94 -0
  117. secator-0.19.1/secator/output_types/user_account.py +41 -0
  118. secator-0.19.1/secator/output_types/vulnerability.py +99 -0
  119. secator-0.19.1/secator/output_types/warning.py +24 -0
  120. secator-0.19.1/secator/report.py +140 -0
  121. secator-0.19.1/secator/rich.py +130 -0
  122. secator-0.19.1/secator/runners/__init__.py +12 -0
  123. secator-0.19.1/secator/runners/_base.py +1227 -0
  124. secator-0.19.1/secator/runners/_helpers.py +217 -0
  125. secator-0.19.1/secator/runners/celery.py +18 -0
  126. secator-0.19.1/secator/runners/command.py +1153 -0
  127. secator-0.19.1/secator/runners/scan.py +87 -0
  128. secator-0.19.1/secator/runners/task.py +81 -0
  129. secator-0.19.1/secator/runners/workflow.py +168 -0
  130. secator-0.19.1/secator/scans/__init__.py +29 -0
  131. secator-0.19.1/secator/serializers/__init__.py +8 -0
  132. secator-0.19.1/secator/serializers/dataclass.py +39 -0
  133. secator-0.19.1/secator/serializers/json.py +20 -0
  134. secator-0.19.1/secator/serializers/regex.py +25 -0
  135. secator-0.19.1/secator/tasks/__init__.py +8 -0
  136. secator-0.19.1/secator/tasks/_categories.py +489 -0
  137. secator-0.19.1/secator/tasks/arjun.py +96 -0
  138. secator-0.19.1/secator/tasks/bbot.py +371 -0
  139. secator-0.19.1/secator/tasks/bup.py +116 -0
  140. secator-0.19.1/secator/tasks/cariddi.py +162 -0
  141. secator-0.19.1/secator/tasks/dalfox.py +87 -0
  142. secator-0.19.1/secator/tasks/dirsearch.py +84 -0
  143. secator-0.19.1/secator/tasks/dnsx.py +124 -0
  144. secator-0.19.1/secator/tasks/feroxbuster.py +93 -0
  145. secator-0.19.1/secator/tasks/ffuf.py +123 -0
  146. secator-0.19.1/secator/tasks/fping.py +75 -0
  147. secator-0.19.1/secator/tasks/gau.py +57 -0
  148. secator-0.19.1/secator/tasks/gf.py +36 -0
  149. secator-0.19.1/secator/tasks/gitleaks.py +79 -0
  150. secator-0.19.1/secator/tasks/gospider.py +84 -0
  151. secator-0.19.1/secator/tasks/grype.py +84 -0
  152. secator-0.19.1/secator/tasks/h8mail.py +73 -0
  153. secator-0.19.1/secator/tasks/httpx.py +165 -0
  154. secator-0.19.1/secator/tasks/katana.py +162 -0
  155. secator-0.19.1/secator/tasks/maigret.py +87 -0
  156. secator-0.19.1/secator/tasks/mapcidr.py +37 -0
  157. secator-0.19.1/secator/tasks/msfconsole.py +179 -0
  158. secator-0.19.1/secator/tasks/naabu.py +79 -0
  159. secator-0.19.1/secator/tasks/nmap.py +486 -0
  160. secator-0.19.1/secator/tasks/nuclei.py +125 -0
  161. secator-0.19.1/secator/tasks/searchsploit.py +110 -0
  162. secator-0.19.1/secator/tasks/subfinder.py +48 -0
  163. secator-0.19.1/secator/tasks/testssl.py +277 -0
  164. secator-0.19.1/secator/tasks/trivy.py +98 -0
  165. secator-0.19.1/secator/tasks/wafw00f.py +103 -0
  166. secator-0.19.1/secator/tasks/wpprobe.py +113 -0
  167. secator-0.19.1/secator/tasks/wpscan.py +192 -0
  168. secator-0.19.1/secator/template.py +263 -0
  169. secator-0.19.1/secator/thread.py +24 -0
  170. secator-0.19.1/secator/tree.py +196 -0
  171. secator-0.19.1/secator/utils.py +834 -0
  172. secator-0.19.1/secator/utils_test.py +287 -0
  173. secator-0.19.1/secator/workflows/__init__.py +29 -0
  174. secator-0.19.1/tests/__init__.py +0 -0
  175. secator-0.19.1/tests/fixtures/h8mail_breach.txt +1 -0
  176. secator-0.19.1/tests/fixtures/ls.py +38 -0
  177. secator-0.19.1/tests/fixtures/msfconsole_input.rc +4 -0
  178. secator-0.19.1/tests/fixtures/nmap_output.xml +33 -0
  179. secator-0.19.1/tests/integration/__init__.py +0 -0
  180. secator-0.19.1/tests/integration/all.yaml +17 -0
  181. secator-0.19.1/tests/integration/inputs.py +49 -0
  182. secator-0.19.1/tests/integration/outputs.py +464 -0
  183. secator-0.19.1/tests/integration/setup.sh +19 -0
  184. secator-0.19.1/tests/integration/teardown.sh +18 -0
  185. secator-0.19.1/tests/integration/test_addons.py +23 -0
  186. secator-0.19.1/tests/integration/test_celery.py +210 -0
  187. secator-0.19.1/tests/integration/test_scans.py +60 -0
  188. secator-0.19.1/tests/integration/test_tasks.py +107 -0
  189. secator-0.19.1/tests/integration/test_tasks_categories.py +53 -0
  190. secator-0.19.1/tests/integration/test_worker.py +92 -0
  191. secator-0.19.1/tests/integration/test_workflows.py +141 -0
  192. secator-0.19.1/tests/integration/wordlist.txt +15 -0
  193. secator-0.19.1/tests/integration/wordlist_dns.txt +4 -0
  194. secator-0.19.1/tests/integration/wordpress_toolbox/Dockerfile +17 -0
  195. secator-0.19.1/tests/integration/wordpress_toolbox/Makefile +27 -0
  196. secator-0.19.1/tests/performance/__init__.py +0 -0
  197. secator-0.19.1/tests/performance/loadtester.py +75 -0
  198. secator-0.19.1/tests/performance/test_worker.py +31 -0
  199. secator-0.19.1/tests/template/test_templates.py +62 -0
  200. secator-0.19.1/tests/unit/__init__.py +0 -0
  201. secator-0.19.1/tests/unit/test_celery.py +127 -0
  202. secator-0.19.1/tests/unit/test_cli.py +285 -0
  203. secator-0.19.1/tests/unit/test_command.py +268 -0
  204. secator-0.19.1/tests/unit/test_config.py +156 -0
  205. secator-0.19.1/tests/unit/test_offline.py +46 -0
  206. secator-0.19.1/tests/unit/test_runners.py +439 -0
  207. secator-0.19.1/tests/unit/test_runners_helpers.py +242 -0
  208. secator-0.19.1/tests/unit/test_scans.py +0 -0
  209. secator-0.19.1/tests/unit/test_serializers.py +50 -0
  210. secator-0.19.1/tests/unit/test_tasks.py +58 -0
  211. secator-0.19.1/tests/unit/test_tasks_categories.py +23 -0
  212. secator-0.19.1/tests/unit/test_template.py +203 -0
  213. secator-0.19.1/tests/unit/test_utils.py +40 -0
@@ -0,0 +1,148 @@
1
+ language: en-US
2
+ tone_instructions: ''
3
+ early_access: false
4
+ enable_free_tier: true
5
+ reviews:
6
+ profile: chill
7
+ request_changes_workflow: false
8
+ high_level_summary: true
9
+ high_level_summary_placeholder: '@coderabbitai summary'
10
+ high_level_summary_in_walkthrough: false
11
+ auto_title_placeholder: '@coderabbitai'
12
+ auto_title_instructions: ''
13
+ review_status: true
14
+ commit_status: true
15
+ fail_commit_status: false
16
+ collapse_walkthrough: false
17
+ changed_files_summary: true
18
+ sequence_diagrams: true
19
+ assess_linked_issues: true
20
+ related_issues: true
21
+ related_prs: true
22
+ suggested_labels: true
23
+ auto_apply_labels: false
24
+ suggested_reviewers: true
25
+ auto_assign_reviewers: false
26
+ poem: true
27
+ labeling_instructions: []
28
+ path_filters: []
29
+ path_instructions: []
30
+ abort_on_close: true
31
+ disable_cache: false
32
+ auto_review:
33
+ enabled: true
34
+ auto_incremental_review: false
35
+ ignore_title_keywords: []
36
+ labels: []
37
+ drafts: false
38
+ base_branches: []
39
+ finishing_touches:
40
+ docstrings:
41
+ enabled: true
42
+ unit_tests:
43
+ enabled: true
44
+ tools:
45
+ ast-grep:
46
+ rule_dirs: []
47
+ util_dirs: []
48
+ essential_rules: true
49
+ packages: []
50
+ shellcheck:
51
+ enabled: true
52
+ ruff:
53
+ enabled: true
54
+ markdownlint:
55
+ enabled: true
56
+ github-checks:
57
+ enabled: true
58
+ timeout_ms: 90000
59
+ languagetool:
60
+ enabled: true
61
+ enabled_rules: []
62
+ disabled_rules: []
63
+ enabled_categories: []
64
+ disabled_categories: []
65
+ enabled_only: false
66
+ level: default
67
+ biome:
68
+ enabled: true
69
+ hadolint:
70
+ enabled: true
71
+ swiftlint:
72
+ enabled: true
73
+ phpstan:
74
+ enabled: true
75
+ level: default
76
+ golangci-lint:
77
+ enabled: true
78
+ yamllint:
79
+ enabled: true
80
+ gitleaks:
81
+ enabled: true
82
+ checkov:
83
+ enabled: true
84
+ detekt:
85
+ enabled: true
86
+ eslint:
87
+ enabled: true
88
+ rubocop:
89
+ enabled: true
90
+ buf:
91
+ enabled: true
92
+ regal:
93
+ enabled: true
94
+ actionlint:
95
+ enabled: true
96
+ pmd:
97
+ enabled: true
98
+ cppcheck:
99
+ enabled: true
100
+ semgrep:
101
+ enabled: true
102
+ circleci:
103
+ enabled: true
104
+ clippy:
105
+ enabled: true
106
+ sqlfluff:
107
+ enabled: true
108
+ prismaLint:
109
+ enabled: true
110
+ pylint:
111
+ enabled: false
112
+ oxc:
113
+ enabled: true
114
+ shopifyThemeCheck:
115
+ enabled: true
116
+ luacheck:
117
+ enabled: true
118
+ brakeman:
119
+ enabled: true
120
+ chat:
121
+ auto_reply: true
122
+ integrations:
123
+ jira:
124
+ usage: auto
125
+ linear:
126
+ usage: auto
127
+ knowledge_base:
128
+ opt_out: false
129
+ web_search:
130
+ enabled: true
131
+ learnings:
132
+ scope: auto
133
+ issues:
134
+ scope: auto
135
+ jira:
136
+ usage: auto
137
+ project_keys: []
138
+ linear:
139
+ usage: auto
140
+ team_keys: []
141
+ pull_requests:
142
+ scope: auto
143
+ code_generation:
144
+ docstrings:
145
+ language: en-US
146
+ path_instructions: []
147
+ unit_tests:
148
+ path_instructions: []
@@ -0,0 +1,35 @@
1
+ FROM alpine:3.21 AS builder
2
+
3
+ ENV PATH="${PATH}:/root/.local/bin"
4
+ RUN apk add --no-cache \
5
+ flock \
6
+ gcc \
7
+ musl-dev \
8
+ linux-headers \
9
+ pipx \
10
+ python3-dev
11
+ COPY . /code
12
+ WORKDIR /code
13
+
14
+ RUN pipx install --pip-args="--no-cache-dir" . && \
15
+ secator install addons worker && \
16
+ secator install addons gdrive && \
17
+ secator install addons gcs && \
18
+ secator install addons mongodb && \
19
+ secator install addons redis && \
20
+ secator install addons dev
21
+
22
+ FROM python:3.12-alpine3.21
23
+ ARG flavor=full
24
+ ARG build_from_source=false
25
+ ENV TERM="xterm-256color"
26
+ ENV PATH="${PATH}:/root/.local/bin"
27
+ ENV GOBIN="/root/.local/bin"
28
+ COPY --from=builder /root/.local /root/.local
29
+ RUN apk add --no-cache \
30
+ flock \
31
+ pipx \
32
+ sudo
33
+ RUN if [ "$build_from_source" = "true" ]; then secator config set security.force_source_install 1; fi
34
+ RUN if [ "$flavor" != "lite" ]; then secator install tools --cleanup --fail-fast; fi
35
+ ENTRYPOINT ["secator"]
@@ -0,0 +1,36 @@
1
+ FROM archlinux:latest
2
+
3
+ ENV PATH="${PATH}:/root/.local/bin"
4
+ ENV GOBIN="/root/.local/bin"
5
+ RUN pacman -Syu --noconfirm && \
6
+ pacman -S --noconfirm \
7
+ base-devel \
8
+ bash \
9
+ curl \
10
+ git \
11
+ go \
12
+ jq \
13
+ openssl \
14
+ proxychains \
15
+ proxychains-ng \
16
+ python \
17
+ python-pip \
18
+ python-pipx \
19
+ ruby \
20
+ rubygems \
21
+ sudo \
22
+ unzip \
23
+ vim \
24
+ wget
25
+ COPY . /code
26
+ WORKDIR /code
27
+ RUN pipx install . && \
28
+ secator install addons worker && \
29
+ secator install addons gdrive && \
30
+ secator install addons gcs && \
31
+ secator install addons mongodb && \
32
+ secator install addons redis && \
33
+ secator install addons dev
34
+ RUN if [ "$build_from_source" = "true" ]; then secator config set security.force_source_install 1; fi
35
+ RUN if [ "$flavor" != "lite" ]; then secator install tools --cleanup --fail-fast; fi
36
+ ENTRYPOINT ["secator"]
@@ -0,0 +1,38 @@
1
+ FROM debian:latest
2
+
3
+ ENV PATH="${PATH}:/root/.local/bin"
4
+ ENV GOBIN="/root/.local/bin"
5
+ RUN apt update -y && \
6
+ apt install -y \
7
+ bash \
8
+ build-essential \
9
+ curl \
10
+ git \
11
+ golang-go \
12
+ jq \
13
+ openssl \
14
+ pipx \
15
+ python3 \
16
+ python3-pip \
17
+ python3-venv \
18
+ proxychains \
19
+ proxychains-ng \
20
+ ruby-full \
21
+ rubygems \
22
+ sudo \
23
+ unzip \
24
+ vim \
25
+ wget
26
+ COPY . /code
27
+ WORKDIR /code
28
+ RUN pipx install . && \
29
+ secator install addons worker && \
30
+ secator install addons gdrive && \
31
+ secator install addons gcs && \
32
+ secator install addons mongodb && \
33
+ secator install addons redis && \
34
+ secator install addons dev
35
+ RUN secator install langs go
36
+ RUN if [ "$build_from_source" = "true" ]; then secator config set security.force_source_install 1; fi
37
+ RUN if [ "$flavor" != "lite" ]; then secator install tools --cleanup --fail-fast; fi
38
+ ENTRYPOINT ["secator"]
@@ -0,0 +1,37 @@
1
+ FROM kalilinux/kali-rolling:latest
2
+
3
+ ENV PATH="${PATH}:/root/.local/bin"
4
+ ENV GOBIN="/root/.local/bin"
5
+ RUN apt update -y && \
6
+ apt install -y \
7
+ bash \
8
+ build-essential \
9
+ curl \
10
+ git \
11
+ golang-go \
12
+ jq \
13
+ openssl \
14
+ pipx \
15
+ python3 \
16
+ python3-pip \
17
+ python3-venv \
18
+ proxychains \
19
+ proxychains-ng \
20
+ ruby-full \
21
+ rubygems \
22
+ sudo \
23
+ unzip \
24
+ vim \
25
+ wget
26
+ COPY . /code
27
+ WORKDIR /code
28
+ RUN pipx install . && \
29
+ secator install addons worker && \
30
+ secator install addons gdrive && \
31
+ secator install addons gcs && \
32
+ secator install addons mongodb && \
33
+ secator install addons redis && \
34
+ secator install addons dev
35
+ RUN if [ "$build_from_source" = "true" ]; then secator config set security.force_source_install 1; fi
36
+ RUN if [ "$flavor" != "lite" ]; then secator install tools --cleanup --fail-fast; fi
37
+ ENTRYPOINT ["secator"]
@@ -0,0 +1,40 @@
1
+ FROM sickcodes/docker-osx:latest
2
+
3
+ ENV PATH="${PATH}:/home/arch/.local/bin"
4
+ ENV GOBIN="/home/arch/.local/bin"
5
+ RUN /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
6
+ RUN echo >> /home/arch/.bashrc
7
+ RUN echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> /home/arch/.bashrc
8
+ RUN sudo pacman -Syu --noconfirm && \
9
+ sudo pacman -S --noconfirm -y \
10
+ base-devel \
11
+ bash \
12
+ curl \
13
+ git \
14
+ go \
15
+ jq \
16
+ openssl \
17
+ proxychains \
18
+ proxychains-ng \
19
+ python \
20
+ python-pip \
21
+ python-pipx \
22
+ ruby \
23
+ rubygems \
24
+ sudo \
25
+ unzip \
26
+ vim \
27
+ wget
28
+ COPY . /code
29
+ WORKDIR /code
30
+ USER arch
31
+ RUN pipx install . && \
32
+ secator install addons worker && \
33
+ secator install addons gdrive && \
34
+ secator install addons gcs && \
35
+ secator install addons mongodb && \
36
+ secator install addons redis && \
37
+ secator install addons dev
38
+ RUN if [ "$build_from_source" = "true" ]; then secator config set security.force_source_install 1; fi
39
+ RUN if [ "$flavor" != "lite" ]; then secator install tools --cleanup --fail-fast; fi
40
+ ENTRYPOINT ["secator"]
@@ -0,0 +1,37 @@
1
+ FROM ubuntu:latest
2
+
3
+ ENV PATH="${PATH}:/root/.local/bin"
4
+ ENV GOBIN="/root/.local/bin"
5
+ RUN apt update -y && \
6
+ apt install -y \
7
+ bash \
8
+ build-essential \
9
+ curl \
10
+ git \
11
+ golang-go \
12
+ jq \
13
+ openssl \
14
+ pipx \
15
+ python3 \
16
+ python3-pip \
17
+ python3-venv \
18
+ proxychains \
19
+ proxychains-ng \
20
+ ruby-full \
21
+ rubygems \
22
+ sudo \
23
+ unzip \
24
+ vim \
25
+ wget
26
+ COPY . /code
27
+ WORKDIR /code
28
+ RUN pipx install . && \
29
+ secator install addons worker && \
30
+ secator install addons gdrive && \
31
+ secator install addons gcs && \
32
+ secator install addons mongodb && \
33
+ secator install addons redis && \
34
+ secator install addons dev
35
+ RUN if [ "$build_from_source" = "true" ]; then secator config set security.force_source_install 1; fi
36
+ RUN if [ "$flavor" != "lite" ]; then secator install tools --cleanup --fail-fast; fi
37
+ ENTRYPOINT ["secator"]
@@ -0,0 +1,42 @@
1
+ #!/bin/bash
2
+
3
+ # Define an array of distributions
4
+ DISTROS=("alpine" "arch" "debian" "kali" "osx" "ubuntu")
5
+ BUILDER=$(which docker || which podman || which buildah)
6
+
7
+ if [ -z "$BUILDER" ]; then
8
+ echo "Error: No container builder found (docker, podman, or buildah required)"
9
+ exit 1
10
+ fi
11
+
12
+ echo "Using builder: $BUILDER"
13
+
14
+ mkdir -p .docker/logs/
15
+
16
+ # Function to build an image
17
+ build_image() {
18
+ local DISTRO=$1
19
+ local DOCKERFILE=".docker/Dockerfile.${DISTRO}"
20
+ local STDOUT_LOG=".docker/logs/${DISTRO}.stdout"
21
+ local STDERR_LOG=".docker/logs/${DISTRO}.stderr"
22
+ local IMAGE_NAME="secator-${DISTRO}"
23
+
24
+ if [ -f "$DOCKERFILE" ]; then
25
+ echo "🚀 Building $IMAGE_NAME using $DOCKERFILE..."
26
+ $BUILDER build -t "$IMAGE_NAME" -f "$DOCKERFILE" . > $STDOUT_LOG 2> $STDERR_LOG && \
27
+ echo "✅ Successfully built $IMAGE_NAME" || \
28
+ echo "❌ Failed to build $IMAGE_NAME"
29
+ else
30
+ echo "⚠️ Dockerfile $DOCKERFILE not found, skipping..."
31
+ fi
32
+ }
33
+
34
+ # Iterate through the distributions and build in parallel
35
+ for DISTRO in "${DISTROS[@]}"; do
36
+ build_image "$DISTRO" &
37
+ done
38
+
39
+ # Wait for all background jobs to finish
40
+ wait
41
+
42
+ echo "🎉 All parallel builds completed!"
@@ -0,0 +1,4 @@
1
+ .docker/logs
2
+ .git
3
+ .github
4
+ .gitignore
secator-0.19.1/.flake8 ADDED
@@ -0,0 +1,3 @@
1
+ [flake8]
2
+ extend-ignore = W191,E101,E128,E265,W605
3
+ max-line-length = 120
@@ -0,0 +1,143 @@
1
+ # Build logs
2
+ .docker/logs
3
+
4
+ # Byte-compiled / optimized / DLL files
5
+ __pycache__/
6
+ *.py[cod]
7
+ *$py.class
8
+ #*.txt
9
+ #*.sh
10
+
11
+ # Others
12
+ *.json
13
+ *.yml
14
+ resume.cfg
15
+
16
+ # C extensions
17
+ *.so
18
+
19
+ # Distribution / packaging
20
+ .Python
21
+ build/
22
+ develop-eggs/
23
+ dist/
24
+ downloads/
25
+ eggs/
26
+ .eggs/
27
+ lib/
28
+ lib64/
29
+ parts/
30
+ sdist/
31
+ var/
32
+ wheels/
33
+ pip-wheel-metadata/
34
+ share/python-wheels/
35
+ *.egg-info/
36
+ .installed.cfg
37
+ *.egg
38
+ MANIFEST
39
+
40
+ # PyInstaller
41
+ # Usually these files are written by a python script from a template
42
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
43
+ *.manifest
44
+ *.spec
45
+
46
+ # Installer logs
47
+ pip-log.txt
48
+ pip-delete-this-directory.txt
49
+
50
+ # Unit test / coverage reports
51
+ htmlcov/
52
+ .tox/
53
+ .nox/
54
+ .coverage
55
+ .coverage.*
56
+ .cache
57
+ nosetests.xml
58
+ coverage.xml
59
+ *.cover
60
+ *.py,cover
61
+ .hypothesis/
62
+ .pytest_cache/
63
+
64
+ # Translations
65
+ *.mo
66
+ *.pot
67
+
68
+ # Django stuff:
69
+ *.log
70
+ local_settings.py
71
+ db.sqlite3
72
+ db.sqlite3-journal
73
+
74
+ # Flask stuff:
75
+ instance/
76
+ .webassets-cache
77
+
78
+ # Scrapy stuff:
79
+ .scrapy
80
+
81
+ # Sphinx documentation
82
+ docs/_build/
83
+
84
+ # PyBuilder
85
+ target/
86
+
87
+ # Jupyter Notebook
88
+ .ipynb_checkpoints
89
+
90
+ # IPython
91
+ profile_default/
92
+ ipython_config.py
93
+
94
+ # pyenv
95
+ .python-version
96
+
97
+ # pipenv
98
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
99
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
100
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
101
+ # install all needed dependencies.
102
+ #Pipfile.lock
103
+
104
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
105
+ __pypackages__/
106
+
107
+ # Celery stuff
108
+ celerybeat-schedule
109
+ celerybeat.pid
110
+
111
+ # SageMath parsed files
112
+ *.sage.py
113
+
114
+ # Environments
115
+ .env
116
+ .venv
117
+ env/
118
+ venv/
119
+ ENV/
120
+ env.bak/
121
+ venv.bak/
122
+
123
+ # Spyder project settings
124
+ .spyderproject
125
+ .spyproject
126
+
127
+ # Rope project settings
128
+ .ropeproject
129
+
130
+ # mkdocs documentation
131
+ /site
132
+
133
+ # mypy
134
+ .mypy_cache/
135
+ .dmypy.json
136
+ dmypy.json
137
+
138
+ # Pyre type checker
139
+ .pyre/
140
+
141
+ # Project
142
+ .git/
143
+ images/