Andoni A.
876702fd22
feat(image): add --registry-list flag for image discovery
...
Add --registry-list flag that enumerates registry repositories and tags,
then prints a structured listing and exits without scanning. This helps
users discover available images before building --image-filter or
--tag-filter regexes.
2026-02-17 07:44:41 +01:00
Andoni A.
326def4a17
fix(image): handle Basic auth challenge and pre-encoded ECR credentials
...
- Detect Basic auth challenges (non-Bearer) in _ensure_auth()
- Decode base64-wrapped credentials from aws ecr get-authorization-token
- Add unit tests for credential resolution and Basic auth flow
2026-02-16 17:50:05 +01:00
Andoni A.
aa284b8b24
test(image): add comprehensive registry scan mode unit tests
...
69 tests covering:
- Factory auto-detection (OCI, Docker Hub, ECR URL patterns)
- OCI adapter (auth flows, pagination, retry, error handling)
- Docker Hub adapter (namespace extraction, Hub API, token exchange)
- Argument validation (registry flags, Docker Hub namespace)
- Provider integration (enumeration, filtering, max-images, dedup)
2026-02-16 15:42:02 +01:00
Andoni A.
ace36fe76e
feat(image): add registry scan mode with OCI, Docker Hub, and ECR support
...
Add pluggable registry adapter pattern for enumerating and scanning all
container images in a private registry. Supports:
- Generic OCI registries (Harbor, GitLab, JFrog) via /v2/_catalog
- Docker Hub via Hub REST API with namespace-based enumeration
- AWS ECR via standard OCI endpoints with ECR auth token
New CLI flags: --registry, --image-filter, --tag-filter, --max-images,
--registry-insecure
2026-02-16 15:35:55 +01:00
Andoni A.
3a2960fd09
Merge remote-tracking branch 'origin/master' into feat/PROWLER-939-stage-2-registry-auth
2026-02-13 13:31:17 +01:00
Josema Camacho
02b58d8a31
fix(api): mark attack paths scan as failed when celery task fails ( #10065 )
2026-02-13 13:20:38 +01:00
Rubén De la Torre Vico and HugoPBrito
3defbcd386
chore(gcp): enhance metadata for cloudstorage service ( #9640 )
...
Co-authored-by: HugoPBrito <hugopbrit@gmail.com >
2026-02-13 13:17:58 +01:00
Andoni A.
6b0a139361
Merge remote-tracking branch 'origin/master' into feat/PROWLER-939-stage-2-registry-auth
...
# Conflicts:
# prowler/CHANGELOG.md
# prowler/lib/check/models.py
# prowler/providers/common/provider.py
# prowler/providers/image/exceptions/exceptions.py
# prowler/providers/image/image_provider.py
# tests/providers/image/image_provider_test.py
2026-02-13 13:09:51 +01:00
Josema Camacho
ceb4691c36
build(deps): bump cryptography to 44.0.3 and py-ocsf-models to 0.8.1 ( #10059 )
2026-02-13 12:36:38 +01:00
Pepe Fagoaga
4be8831ee1
docs: add proxy/load balancer UI rebuild requirements ( #10064 )
2026-02-13 11:11:05 +01:00
Andoni Alonso
da23d62e6a
docs(image): add Image provider CLI documentation ( #9986 )
2026-02-13 11:00:03 +01:00
Andoni A.
429f807f8c
docs(image): document registry authentication methods
...
- Cover basic auth, token-based auth, and manual docker login
- Document auth method priority and automatic cleanup behavior
- Update troubleshooting section with environment variable references
2026-02-13 10:59:17 +01:00
Rubén De la Torre Vico and HugoPBrito
222db94a48
chore(gcp): enhance metadata for bigquery service ( #9638 )
...
Co-authored-by: HugoPBrito <hugopbrit@gmail.com >
2026-02-13 10:57:31 +01:00
Hugo Pereira Brito
c33565a127
fix(sdk): update openstacksdk to fix pip install on systems without C compiler ( #10055 )
2026-02-13 10:49:01 +01:00
Andoni A.
56535e5b24
fix(image): correct type annotation and remove dead exception handler
...
- Fix CheckReportImage metadata parameter type from dict to str
- Remove redundant re-raise of already-handled exceptions
2026-02-13 10:40:28 +01:00
Pedro Martín
961b247d36
feat(compliance): add csa ccm for the alibabacloud provider ( #10061 )
2026-02-13 10:36:29 +01:00
Rubén De la Torre Vico and HugoPBrito
6abd5186aa
chore(gcp): enhance metadata for apikeys service ( #9637 )
...
Co-authored-by: HugoPBrito <hugopbrit@gmail.com >
2026-02-13 10:35:05 +01:00
Andoni A.
4af9bc99bf
fix(image): use getattr for registry credentials to avoid AttributeError
...
- Use getattr with None defaults for registry auth arguments
- Credentials fall back to TRIVY_USERNAME/TRIVY_PASSWORD env vars in ImageProvider
2026-02-13 08:56:38 +01:00
Andoni A.
0589721505
fix(image): include missing merge changes from stage-1 and docs branches
...
The pre-commit hook stash/restore cycle during the first merge caused
some auto-merged changes to be excluded from the merge commits. This
commit includes the remaining changes: error code renumbering (9000→11000
range), input validation, image config scanners, and docs branch updates.
2026-02-12 22:38:11 +01:00
Pedro Martín
627088e214
feat(compliance): add csa ccm for the oraclecloud provider ( #10057 )
2026-02-12 18:06:51 +01:00
Josema Camacho
93ac38ca90
feat(attack-pahts--aws-queries): The rest of Path Finding paths queries ( #10008 )
2026-02-12 17:09:08 +01:00
Andoni Alonso
aa7490aab4
feat(image): add container image provider for CLI scanning ( #9984 )
2026-02-12 16:36:48 +01:00
Andoni A.
f93cbbdb38
Merge remote-tracking branch 'origin/feat/PROWLER-941-stage-2-b-image-provider-cli-docs' into feat/PROWLER-939-stage-2-registry-auth
...
# Conflicts:
# prowler/CHANGELOG.md
# skills/prowler-attack-paths-query/SKILL.md
# ui/CHANGELOG.md
# ui/components/scans/table/scans/scans-table-with-polling.tsx
2026-02-12 16:34:29 +01:00
Andoni A.
89d2a14468
Merge remote-tracking branch 'origin/feat/PROWLER-939-stage-1-image-provider-mvp-for-cli' into feat/PROWLER-939-stage-2-registry-auth
...
# Conflicts:
# prowler/providers/image/exceptions/exceptions.py
# prowler/providers/image/image_provider.py
# tests/providers/image/image_provider_test.py
2026-02-12 15:57:55 +01:00
Daniel Barranquero
b94c8a5e5e
feat(api): add OpenStack provider support ( #10003 )
2026-02-12 14:40:19 +01:00
Daniel Barranquero and Pepe Fagoaga
e6bea9f25a
feat(oraclecloud): add automated OCI regions updater script and CI workflow ( #10020 )
...
Co-authored-by: Pepe Fagoaga <pepe@prowler.com >
2026-02-12 14:35:43 +01:00
dependabot[bot] and Josema Camacho
1f4e308374
build(deps): bump pillow from 12.1.0 to 12.1.1 in /api ( #10027 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Josema Camacho <josema@prowler.com >
2026-02-12 14:26:03 +01:00
Pedro Martín
4d569d5b79
feat(compliance): add csa ccm for the gcp provider ( #10042 )
2026-02-12 14:13:24 +01:00
Alejandro Bailo
5b038e631a
refactor(ui): centralize provider type filter sanitization in server actions ( #10043 )
2026-02-12 14:12:37 +01:00
Alejandro Bailo
c5707ae9f1
chore(ui): update npm dependencies to fix security vulnerabilities ( #10052 )
2026-02-12 14:02:05 +01:00
Pedro Martín
29090adb03
feat(compliance): add csa ccm for the azure provider ( #10039 )
2026-02-12 13:35:22 +01:00
Hugo Pereira Brito and Andoni Alonso
78bd9adeed
chore(cloudflare): parallelize zone API calls with threading ( #9982 )
...
Co-authored-by: Andoni Alonso <14891798+andoniaf@users.noreply.github.com >
2026-02-12 13:15:51 +01:00
Pedro Martín
f55983a77d
feat(compliance): add csa ccm 4.0 for the aws provider ( #10018 )
2026-02-12 13:10:59 +01:00
Hugo Pereira Brito
52f98f1704
chore(ci): update org members list in PR labeler ( #10053 )
2026-02-12 13:04:35 +01:00
Andoni A.
51c5fda202
Merge remote-tracking branch 'origin/master' into feat/PROWLER-941-stage-2-b-image-provider-cli-docs
2026-02-12 12:04:02 +01:00
Andoni Alonso
3afa98084f
chore(ci): update Josema user for labeling purposes ( #10041 )
2026-02-12 11:46:14 +01:00
Alejandro Bailo
b0ee914825
chore(ui): improve changelog wording for v1.18.2 bug fixes ( #10044 )
2026-02-12 11:30:56 +01:00
Andoni Alonso
eabe488437
feat(aws): update privilege escalation check with pathfinding.cloud patterns ( #9922 )
2026-02-12 09:39:39 +01:00
Andoni A.
bfd8218032
fix(image): address PR review feedback
...
- Change exception error codes from 9000 to 11000 range to avoid Cloudflare conflict
- Add EXTERNAL_TOOL_PROVIDERS constant to replace hardcoded provider tuples
- Add resource_id field to CheckReportImage populated from Trivy finding IDs
- Use resource_id for resource_uid in finding output
- Join image names in summary table instead of showing count
- Clear exceptions __init__.py re-exports
2026-02-12 09:20:26 +01:00
Alejandro Bailo
8104382cc1
fix(ui): reapply filter transition opacity overlay on filter changes ( #10036 )
2026-02-11 22:13:33 +01:00
Alejandro Bailo
592c7bac81
fix(ui): move default muted filter from middleware to client-side hook ( #10034 )
2026-02-11 20:58:58 +01:00
Alejandro Bailo
3aefde14aa
revert: re-integrate signalFilterChange into useUrlFilters ( #10028 ) ( #10032 )
2026-02-11 20:21:58 +01:00
Alejandro Bailo
02f3e77eaf
fix(ui): re-integrate signalFilterChange into useUrlFilters and always reset page on filter change ( #10028 )
2026-02-11 20:06:26 +01:00
Alejandro Bailo
bcd7b2d723
fix(ui): remove useTransition and shared context from useUrlFilters ( #10025 )
2026-02-11 18:57:48 +01:00
Alejandro Bailo and Claude Opus 4.6
86946f3a84
fix(ui): fix findings filter silent reverts by replacing useRelatedFilters effect with pure derivation ( #10021 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-11 17:57:38 +01:00
Andoni Alonso and HugoPBrito
fce1e4f3d2
feat(m365): add defender_safe_attachments_policy_enabled security check ( #9833 )
...
Co-authored-by: HugoPBrito <hugopbrit@gmail.com >
2026-02-11 15:42:11 +01:00
Andoni Alonso and HugoPBrito
5d490fa185
feat(m365): add defender_atp_safe_attachments_and_docs_configured security check ( #9837 )
...
Co-authored-by: HugoPBrito <hugopbrit@gmail.com >
2026-02-11 15:21:06 +01:00
Alejandro Bailo
ea847d8824
fix(ui): use local transitions for filter navigation to prevent silent reverts ( #10017 )
2026-02-11 14:41:03 +01:00
Andoni Alonso and HugoPBrito
c5f7e80b20
feat(m365): add defender_safelinks_policy_enabled security check ( #9832 )
...
Co-authored-by: HugoPBrito <hugopbrit@gmail.com >
2026-02-11 13:03:32 +01:00
Alejandro Bailo
f5345a3982
fix(ui): fix filter navigation and pagination bugs in findings and scans pages ( #10013 )
2026-02-11 11:18:29 +01:00