AI Slop Code RIsk Monitor

prowler-cloud/prowler

Prowler is the world’s most widely used open-source cloud security platform that automates security and compliance across any cloud environment.

13.7 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for prowler-cloud/prowler, a Python project with 14,998 GitHub stars. SynthScan examined 1,699,053 lines of code across 11273 source files, recording 19384 pattern matches distributed across 24 syntactic categories. The legacy adjusted pattern signal is 13.7 (Moderate pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

13.7
Adjusted Signal
13.7
Raw Pattern Score
100%
Time Factor
2026-10-09
Last Push
15.0K
Stars
Python
Language
1.7M
Lines of Code
11.3K
Files
19.4K
Pattern Hits
2026-10-12
Scan Date
0.06
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 38.4/100 · MEDIUM

Can maintainers explain intent, assumptions, and trade-offs? 16195 finding(s).

Hallucinated Dependency & Supply Chain Risk 2.4/100 · LOW

Are imports declared and package/API names verified? 426 finding(s).

Agent Over-Engineering Ratio 42.7/100 · MEDIUM

Are wrappers, guards, and repeated structures necessary? 16616 finding(s).

PR Review Velocity Impact 51.7/100 · HIGH

Which changes need focused human review? 19384 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 32HIGH 675MEDIUM 848LOW 17829

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 19384 distinct pattern matches across 24 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers13781 hits · 12821 pts
SeverityFileLineSnippetContext
LOWui/types/providers-table.ts112export function isProvidersOrganizationRow(CODE
LOW…rowler)/attack-paths/(workflow)/query-builder/page.tsx22export default async function AttackPathsQueryBuilderRedirectPage({CODE
LOW…telist/_components/simple/mute-rule-target-previews.ts14export function formatMuteRuleTargetPreview(CODE
LOW…telist/_components/simple/mute-rule-target-previews.ts31export async function hydrateMuteRuleTargetPreviews(CODE
LOW…ans/config/_components/scan-configurations-manager.tsx34export function ScanConfigurationsManager({CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts226function getRelationshipProviderIds(CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts238function getOrganizationNodeParentId(CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts260function resolveProviderRowsAndIds({CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts300function collectOrganizationRowProviderIds(CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts306function getOrganizationNodeRelationshipId(CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts317function buildOrganizationNodeRows({CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts522 function collectAssignedProviderIds(rows: ProvidersTableRow[]) {CODE
LOWui/app/(prowler)/providers/providers-page.utils.ts541export async function loadProvidersAccountsViewData({CODE
LOW…r)/_overview/threat-score/_components/threat-score.tsx63function convertSectionScoresToTooltipData(CODE
LOW…me/_components/finding-severity-over-time.skeleton.tsx3export function FindingSeverityOverTimeSkeleton() {CODE
LOWui/app/(prowler)/_overview/_lib/lighthouse-banner.ts21export function resolveLighthouseOverviewBannerHref(CODE
LOWui/app/(prowler)/_overview/_lib/lighthouse-banner.ts31export async function getLighthouseOverviewBannerHref(CODE
LOW…prowler)/_overview/_lib/lighthouse-provider-context.ts24export function buildOverviewProviderContextItems({CODE
LOW…w/resources-inventory/resources-inventory-skeleton.tsx37export function ResourcesInventorySkeleton() {CODE
LOW…nventory/_components/resources-inventory-card-item.tsx13export function ResourcesInventoryCardItem({CODE
LOW…-severity/_components/risk-severity-chart.skeleton.tsx3export function RiskSeverityChartSkeleton() {CODE
LOWui/app/(prowler)/lighthouse/config/page.tsx5export default function LighthouseConfigRedirectPage() {CODE
LOW…/app/(prowler)/lighthouse/config/select-model/page.tsx3export default async function LighthouseConfigSelectModelRedirectPage({CODE
LOWui/app/(prowler)/lighthouse/config/connect/page.tsx3export default async function LighthouseConfigConnectRedirectPage({CODE
LOWui/app/(prowler)/lighthouse/_lib/chat-store.ts102function findLastPersistedUserMessageId(CODE
LOWui/app/(prowler)/lighthouse/_lib/chat-store.ts117export function selectLighthouseChatCanSend(CODE
LOWui/app/(prowler)/lighthouse/_lib/chat-store.ts136export function selectLighthouseChatActiveSkill(CODE
LOWui/app/(prowler)/lighthouse/_lib/chat-store.ts147export function createLighthouseChatStore(CODE
LOWui/app/(prowler)/lighthouse/_lib/chat-store.ts594function resolveInitialModelSelection(CODE
LOW…/(prowler)/lighthouse/_lib/panel-chat-message-state.ts11export function subscribePanelChatHasMessages(CODE
LOW…/(prowler)/lighthouse/_lib/panel-chat-message-state.ts18export function getPanelChatActiveSessionId(): string | null {CODE
LOW…/(prowler)/lighthouse/_lib/panel-chat-message-state.ts42export function resetPanelChatMessageState(): void {CODE
LOWui/app/(prowler)/lighthouse/_lib/panel-chat-store.ts20export function getOrCreatePanelChatStore(CODE
LOWui/app/(prowler)/lighthouse/_lib/panel-chat-store.ts20export function getOrCreatePanelChatStore(CODE
LOWui/app/(prowler)/lighthouse/_lib/panel-chat-store.ts55function requestPanelChatSubmission(CODE
LOWui/app/(prowler)/lighthouse/_lib/panel-chat-store.ts81export function flushPendingPanelChatMessage(): void {CODE
LOWui/app/(prowler)/lighthouse/_lib/panel-chat-store.ts94export function getPanelChatStoreForSession(CODE
LOWui/app/(prowler)/lighthouse/_lib/panel-chat-store.ts116export function resetPanelChatStoreForTests(): void {CODE
LOW…/_components/panel/lighthouse-panel-header-actions.tsx22export function LighthousePanelHeaderActions() {CODE
LOW…lighthouse/_components/panel/lighthouse-panel-chat.tsx86export function resetPanelChatConfigCacheForTests(): void {CODE
LOW…e/_components/panel/lighthouse-panel-chat-skeleton.tsx8export function LighthousePanelChatSkeleton() {CODE
LOW…se/_components/chat/lighthouse-chat-store-provider.tsx20export function LighthouseChatStoreProvider({CODE
LOW…r)/lighthouse/_components/chat/decrypted-text-hooks.ts116export function useDecryptedTextController({CODE
LOW…ighthouse/_components/chat/lighthouse-v2-chat-view.tsx300function useLighthouseOutcomeFeedbackSurvey(): LighthouseFeedbackSurvey | null {CODE
LOW…rowler)/lighthouse/_components/chat/message-bubble.tsx226function getAssistantPartGroupType(CODE
LOW…rowler)/lighthouse/_components/chat/message-bubble.tsx278export function LighthouseOutcomeFeedbackControls({CODE
LOW…ler)/lighthouse/_components/chat/streaming-message.tsx46export function StreamingAssistantMessage({CODE
LOW…ler)/lighthouse/_components/chat/streaming-message.tsx157function StreamingReconnectActivity() {CODE
LOW…ler)/lighthouse/_components/chat/streaming-message.tsx201function groupStreamingActivityItems(CODE
LOW…hthouse/_components/chat/lighthouse-feedback-survey.ts72export function resolveLighthouseFeedbackSurvey(CODE
LOW…hthouse/_components/chat/lighthouse-feedback-survey.ts111export function buildLighthouseFeedbackSurveyEvents(CODE
LOW…ighthouse/_components/ai-elements/chain-of-thought.tsx164export function ChainOfThoughtSearchResults({CODE
LOW…ighthouse/_components/ai-elements/chain-of-thought.tsx178export function ChainOfThoughtSearchResult({CODE
LOWui/app/(auth)/invitation/_lib/invitation-errors.ts61export function getInvitationErrorDisplay(CODE
LOWui/components/layout/app-sidebar/sidebar-navigation.tsx54function getCollapsibleActivationKey(item: NavigationCollapsible) {CODE
LOWui/components/layout/app-sidebar/sidebar-navigation.tsx181function CollapsibleNavigationItem({CODE
LOW…omponents/layout/app-sidebar/app-sidebar-mode-store.ts63export function useHydratedAppSidebarMode(): AppSidebarMode {CODE
LOWui/components/layout/app-sidebar/navigation-config.ts86export function filterNavigationByPermissions(CODE
LOWui/components/scans/scans.utils.ts68export function getScanTriggerFilterOptions(CODE
LOWui/components/scans/scans.utils.ts185export function getScanStatusFilterOptions(CODE
13721 more matches not shown…
Cross-File Repetition486 hits · 2430 pts
SeverityFileLineSnippetContext
HIGH…/objectstorage/openstack_objectstorage_service_test.py0test that a failing region doesn't prevent other regions from being listed.STRING
HIGH…es/blockstorage/openstack_blockstorage_service_test.py0test that a failing region doesn't prevent other regions from being listed.STRING
HIGH…rvices/networking/openstack_networking_service_test.py0test that a failing region doesn't prevent other regions from being listed.STRING
HIGH…oviders/openstack/services/image/image_service_test.py0test that a failing region doesn't prevent other regions from being listed.STRING
HIGH…ack/services/compute/openstack_compute_service_test.py0test that a failing region doesn't prevent other regions from being listed.STRING
HIGH…bjectstorage_container_metadata_sensitive_data_test.py0test that a confirmed live secret escalates the finding to critical (fail).STRING
HIGH…/blockstorage_snapshot_metadata_sensitive_data_test.py0test that a confirmed live secret escalates the finding to critical (fail).STRING
HIGH…ta/blockstorage_volume_metadata_sensitive_data_test.py0test that a confirmed live secret escalates the finding to critical (fail).STRING
HIGH…_data/compute_instance_metadata_sensitive_data_test.py0test that a confirmed live secret escalates the finding to critical (fail).STRING
HIGH…/blockstorage_snapshot_metadata_sensitive_data_test.py0test that secrets are correctly attributed to the right metadata keys.STRING
HIGH…ta/blockstorage_volume_metadata_sensitive_data_test.py0test that secrets are correctly attributed to the right metadata keys.STRING
HIGH…_data/compute_instance_metadata_sensitive_data_test.py0test that secrets are correctly attributed to the right metadata keys.STRING
HIGH…leworkspace/services/calendar/calendar_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…ers/googleworkspace/services/chat/chat_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…space/services/marketplace/marketplace_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…/additionalservices/additionalservices_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…googleworkspace/services/groups/groups_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…s/googleworkspace/services/sites/sites_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…s/googleworkspace/services/drive/drive_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…s/googleworkspace/services/gmail/gmail_service_test.py0test early return when _build_service fails to construct the clientSTRING
HIGH…leworkspace/services/calendar/calendar_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…ers/googleworkspace/services/chat/chat_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…ices/security/googleworkspace_security_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…space/services/marketplace/marketplace_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…/additionalservices/additionalservices_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…googleworkspace/services/groups/groups_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…s/googleworkspace/services/sites/sites_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…s/googleworkspace/services/drive/drive_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…s/googleworkspace/services/gmail/gmail_service_test.py0test inner except handler when request.execute() raises during paginationSTRING
HIGH…leworkspace/services/calendar/calendar_service_test.py0test that ou-level and group-level policies are skipped, only customer-level usedSTRING
HIGH…ers/googleworkspace/services/chat/chat_service_test.py0test that ou-level and group-level policies are skipped, only customer-level usedSTRING
HIGH…googleworkspace/services/groups/groups_service_test.py0test that ou-level and group-level policies are skipped, only customer-level usedSTRING
HIGH…s/googleworkspace/services/drive/drive_service_test.py0test that ou-level and group-level policies are skipped, only customer-level usedSTRING
HIGH…s/googleworkspace/services/gmail/gmail_service_test.py0test that ou-level and group-level policies are skipped, only customer-level usedSTRING
HIGH…_warning/calendar_external_invitations_warning_test.py0test pass when no explicit policy is set (none) — google default is secureSTRING
HIGH…dar/calendar_external_sharing_primary_calendar_test.py0test pass when no explicit policy is set (none) — google default is secureSTRING
HIGH…ns/drive_warn_sharing_with_allowlisted_domains_test.py0test pass when no explicit policy is set (none) — google default is secureSTRING
HIGH…drive_shared_drive_disable_download_print_copy_test.py0test pass when no explicit policy is set (none) — google default is secureSTRING
HIGH…on_allowed/drive_shared_drive_creation_allowed_test.py0test pass when no explicit policy is set (none) — google default is secureSTRING
HIGH…g_warn_users/drive_external_sharing_warn_users_test.py0test pass when no explicit policy is set (none) — google default is secureSTRING
HIGH…_warning/calendar_external_invitations_warning_test.py0test no findings returned when the api fetch failedSTRING
HIGH…dar/calendar_external_sharing_primary_calendar_test.py0test no findings returned when the api fetch failedSTRING
HIGH…r/calendar_external_sharing_secondary_calendar_test.py0test no findings returned when the api fetch failedSTRING
HIGH…tion_limited/security_session_duration_limited_test.py0test no findings returned when the api fetch failedSTRING
HIGH…igured/security_advanced_protection_configured_test.py0test no findings returned when the api fetch failedSTRING
HIGH…cess_restricted/security_app_access_restricted_test.py0test no findings returned when the api fetch failedSTRING
HIGH…_policy_strong/security_password_policy_strong_test.py0test no findings returned when the api fetch failedSTRING
HIGH…configured/security_dlp_drive_rules_configured_test.py0test no findings returned when the api fetch failedSTRING
HIGH…ps_disabled/security_less_secure_apps_disabled_test.py0test no findings returned when the api fetch failedSTRING
HIGH…ecovery_enabled/security_user_recovery_enabled_test.py0test no findings returned when the api fetch failedSTRING
HIGH…al_apps_trusted/security_internal_apps_trusted_test.py0test no findings returned when the api fetch failedSTRING
HIGH…onfigured/security_login_challenges_configured_test.py0test no findings returned when the api fetch failedSTRING
HIGH…isabled/security_super_admin_recovery_disabled_test.py0test no findings returned when the api fetch failedSTRING
HIGH…_restricted/marketplace_apps_access_restricted_test.py0test no findings returned when the api fetch failedSTRING
HIGH…ed/additionalservices_external_groups_disabled_test.py0test no findings returned when the api fetch failedSTRING
HIGH…creation_restricted/groups_creation_restricted_test.py0test no findings returned when the api fetch failedSTRING
HIGH…estricted/groups_view_conversations_restricted_test.py0test no findings returned when the api fetch failedSTRING
HIGH…s_restricted/groups_external_access_restricted_test.py0test no findings returned when the api fetch failedSTRING
HIGH…/sites_service_disabled/sites_service_disabled_test.py0test no findings returned when the api fetch failedSTRING
HIGH…_access/drive_shared_drive_members_only_access_test.py0test no findings returned when the api fetch failedSTRING
426 more matches not shown…
Excessive Try-Catch Wrapping1750 hits · 1803 pts
SeverityFileLineSnippetContext
LOWutil/update_oci_regions.py63 except Exception as e:CODE
LOWutil/update_oci_regions.py80 except Exception as e:CODE
LOWutil/update_oci_regions.py120 except Exception as e:CODE
LOWutil/update_oci_regions.py141 except Exception as e:CODE
LOWutil/update_oci_regions.py174 except Exception as e:CODE
LOWutil/update_oci_regions.py245 except Exception as e:CODE
LOWutil/compliance/ccc/from_yaml_to_json.py17 except Exception as e:CODE
MEDIUMutil/compliance/ccc/from_yaml_to_json.py18 print(f"Error loading YAML file: {e}")CODE
LOWutil/compliance/ccc/from_yaml_to_json.py120 except Exception as e:CODE
MEDIUMutil/compliance/ccc/from_yaml_to_json.py121 print(f"Error saving JSON file: {e}")CODE
MEDIUMutil/compliance/ccc/from_yaml_to_json.py135 print(f"Error: File {input_file} does not exist.")CODE
MEDIUMutil/compliance/ccc/from_yaml_to_json.py154 print("Error saving JSON file.")CODE
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py818 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py132 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py291 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py329 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py348 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py361 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py429 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py541 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py699 except Exception as e:CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py891 except Exception as e:CODE
MEDIUMutil/prowler_check_kreator/prowler_check_kreator.py300 print(f"Error: {e}")CODE
LOWutil/prowler_check_kreator/prowler_check_kreator.py302 except Exception as e:CODE
LOWutil/prowler_check_kreator/lib/llms/gemini.py57 except Exception as e:CODE
LOWutil/prowler_check_kreator/lib/llms/gemini.py73 except Exception as e:CODE
LOWutil/prowler-bulk-provisioning/aws_org_generator.py93 except Exception as e:CODE
MEDIUMutil/prowler-bulk-provisioning/nuke_providers.py113 print(f"Error fetching providers (page {page}): {resp.status_code}")CODE
LOW⚡util/prowler-bulk-provisioning/nuke_providers.py132 except Exception as e:CODE
MEDIUM⚡util/prowler-bulk-provisioning/nuke_providers.py133 print(f"Error fetching providers: {e}")CODE
LOWutil/prowler-bulk-provisioning/nuke_providers.py202 except Exception as e:CODE
LOWutil/prowler-bulk-provisioning/nuke_providers.py410 except Exception as e:CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py93 except Exception:CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py123 except Exception:CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py537 except Exception as e:CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py551 except Exception:CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py686 except Exception as e:CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py792 except Exception as e:CODE
LOWtests/lib/check/check_test.py1114 except Exception as e:CODE
LOWprowler/__main__.py230 except Exception:CODE
LOWprowler/__main__.py629 except Exception:CODE
LOWprowler/config/config.py112 except Exception as error:CODE
LOWprowler/config/config.py278 except Exception:CODE
LOWprowler/config/config.py341 except Exception as error:CODE
LOWprowler/config/config.py379 except Exception as error:CODE
MEDIUMprowler/config/config.py263def check_current_version():CODE
LOWprowler/providers/openstack/openstack_provider.py446 except Exception as error:CODE
LOWprowler/providers/openstack/openstack_provider.py492 except Exception as error:CODE
LOWprowler/providers/openstack/openstack_provider.py526 except Exception as error:CODE
LOWprowler/providers/openstack/openstack_provider.py651 except Exception as error:CODE
LOW…nstack/services/objectstorage/objectstorage_service.py32 except Exception as head_error:CODE
LOW…nstack/services/objectstorage/objectstorage_service.py68 except Exception as error:CODE
LOW…penstack/services/blockstorage/blockstorage_service.py59 except Exception as error:CODE
LOW…penstack/services/blockstorage/blockstorage_service.py88 except Exception as error:CODE
LOW…penstack/services/blockstorage/blockstorage_service.py118 except Exception as error:CODE
LOW…rs/openstack/services/networking/networking_service.py96 except Exception as error:CODE
LOW…rs/openstack/services/networking/networking_service.py130 except Exception as error:CODE
LOW…rs/openstack/services/networking/networking_service.py161 except Exception as error:CODE
LOW…rs/openstack/services/networking/networking_service.py195 except Exception as error:CODE
LOW…er/providers/openstack/services/image/image_service.py84 except Exception as error:CODE
1690 more matches not shown…
Decorative Section Separators473 hits · 1650 pts
SeverityFileLineSnippetContext
MEDIUMui/types/organizations.ts1// ─── Const Enums ──────────────────────────────────────────────────────────────COMMENT
MEDIUMui/types/organizations.ts140// ─── Candidate Registration (shared wire shape) ───────────────────────────────COMMENT
MEDIUMui/types/organizations.ts152// ─── AWS Discovery Result (wire) ───────────────────────────────────────────────COMMENT
MEDIUMui/types/organizations.ts186// ─── GCP Discovery Result (wire) ───────────────────────────────────────────────COMMENT
MEDIUMui/types/organizations.ts222// ─── Azure Discovery Result (wire) ─────────────────────────────────────────────COMMENT
MEDIUMui/types/organizations.ts269// ─── Normalized Hierarchy Model (store currency) ───────────────────────────────COMMENT
MEDIUMui/types/organizations.ts313// ─── Secret + Apply Payloads (per-type) ────────────────────────────────────────COMMENT
MEDIUMui/types/organizations.ts419// ─── JSON:API Resource Interfaces ─────────────────────────────────────────────COMMENT
MEDIUMui/types/organizations.ts573// ─── Connection Test Status ───────────────────────────────────────────────────COMMENT
MEDIUM⚡ui/components/filters/apply-filters-button.test.tsx47// ── Future E2E coverage ────────────────────────────────────────────────────COMMENT
MEDIUM⚡ui/components/filters/apply-filters-button.test.tsx53// ──────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡ui/components/filters/apply-filters-button.test.tsx56 // ── No changes ───────────────────────────────────────────────────────────COMMENT
MEDIUMui/components/filters/apply-filters-button.test.tsx114 // ── Has changes ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/components/filters/apply-filters-button.test.tsx187 // ── onApply interaction ──────────────────────────────────────────────────COMMENT
MEDIUMui/components/filters/apply-filters-button.test.tsx237 // ── onDiscard interaction ────────────────────────────────────────────────COMMENT
MEDIUM⚡ui/components/filters/filter-summary-strip.test.tsx45// ── Future E2E coverage ────────────────────────────────────────────────────COMMENT
MEDIUM⚡ui/components/filters/filter-summary-strip.test.tsx50// ──────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM⚡ui/components/filters/filter-summary-strip.test.tsx59 // ── Empty state ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/components/filters/filter-summary-strip.test.tsx76 // ── Chip rendering ───────────────────────────────────────────────────────COMMENT
MEDIUMui/components/filters/filter-summary-strip.test.tsx151 // ── onRemove interaction ─────────────────────────────────────────────────COMMENT
MEDIUM⚡…s/shadcn/table/data-table-filter-custom-batch.test.tsx7// ── next/navigation mock ────────────────────────────────────────────────────COMMENT
MEDIUM⚡…s/shadcn/table/data-table-filter-custom-batch.test.tsx17// ── useUrlFilters mock — tracks whether updateFilter is called ───────────────COMMENT
MEDIUM⚡…s/shadcn/table/data-table-filter-custom-batch.test.tsx22// ── context (optional dependency used by useUrlFilters) ────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx145// ── ClearFiltersButton stub ─────────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx150// ── Other component stubs ───────────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx167// ── Future E2E coverage ────────────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx173// ──────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx200 // ── Default / instant mode ───────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx251 // ── Batch mode ───────────────────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx350 // ── hideClearButton ──────────────────────────────────────────────────────COMMENT
MEDIUM…s/shadcn/table/data-table-filter-custom-batch.test.tsx397 // ── Lazily loaded options ────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts31 // ── Initial state ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts122 // ── Excluded keys ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts147 // ── setPending ─────────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts227 // ── getFilterValue ─────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts293 // ── hasChanges & changeCount ───────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts366 // ── applyAll ───────────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts437 // ── discardAll ─────────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts466 // ── URL sync (back/forward) ────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts498 // ── removePending ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/hooks/use-filter-batch.test.ts526 // ── clearAndApply ──────────────────────────────────────────────────────────COMMENT
MEDIUM⚡…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py147 # ------------------------------------------------------------------COMMENT
MEDIUM⚡…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py149 # ------------------------------------------------------------------COMMENT
MEDIUM⚡…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py274 # ------------------------------------------------------------------COMMENT
MEDIUM⚡…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py276 # ------------------------------------------------------------------COMMENT
MEDIUM⚡…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py452 # ------------------------------------------------------------------COMMENT
MEDIUM⚡…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py454 # ------------------------------------------------------------------COMMENT
MEDIUM…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py175 # ------------------------------------------------------------------COMMENT
MEDIUM…pqc_tls_enabled/elbv2_listener_pqc_tls_enabled_test.py177 # ------------------------------------------------------------------COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py232# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py234# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py905# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py907# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1097# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1099# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1328# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1330# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1487# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1489# ===========================================================================COMMENT
MEDIUM⚡…ts/providers/external/test_dynamic_provider_loading.py1554# ===========================================================================COMMENT
413 more matches not shown…
Deep Nesting1337 hits · 1208 pts
SeverityFileLineSnippetContext
LOWutil/update_aws_services_regions.py42CODE
LOWutil/compliance/ccc/from_yaml_to_json.py22CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py136CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py236CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py298CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py367CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py434CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py502CODE
LOWutil/compliance/compliance_mapper/compliance_mapper.py767CODE
LOWutil/prowler-bulk-provisioning/aws_org_generator.py36CODE
LOWutil/prowler-bulk-provisioning/nuke_providers.py172CODE
LOWutil/prowler-bulk-provisioning/nuke_providers.py254CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py21CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py87CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py164CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py559CODE
LOW…ices/organizations/atlas_organizations_service_test.py118CODE
LOW…ongodbatlas/services/projects/projects_service_test.py89CODE
LOW…ongodbatlas/services/projects/projects_service_test.py177CODE
LOW…ongodbatlas/services/projects/projects_service_test.py211CODE
LOW…oraclecloud/services/identity/identity_service_test.py174CODE
LOW…vm/vm_scaleset_not_empty/vm_scaleset_not_empty_test.py128CODE
LOW…vm/vm_jit_access_enabled/vm_jit_access_enabled_test.py234CODE
LOW…ncer/vm_scaleset_associated_with_load_balancer_test.py134CODE
LOW…iders/aws/services/codebuild/codebuild_service_test.py42CODE
LOW…secretsmanager_has_restrictive_resource_policy_test.py531CODE
LOW…secretsmanager_has_restrictive_resource_policy_test.py791CODE
LOWtests/providers/aws/services/glue/glue_service_test.py17CODE
LOW…cess_block/s3_access_point_public_access_block_test.py338CODE
LOW…bility/s3_bucket_shadow_resource_vulnerability_test.py192CODE
LOW…delegated_admin_and_org_aggregator_all_regions_test.py272CODE
LOW…delegated_admin_and_org_aggregator_all_regions_test.py313CODE
LOW…delegated_admin_and_org_aggregator_all_regions_test.py353CODE
LOW…delegated_admin_and_org_aggregator_all_regions_test.py398CODE
LOW…afv2_webacl_with_rules/wafv2_webacl_with_rules_test.py18CODE
LOW…on/ecs_service_fargate_latest_platform_version_test.py16CODE
LOW…ts/bedrock_agent_role_not_shared_across_agents_test.py51CODE
LOW…ts/bedrock_agent_role_not_shared_across_agents_test.py59CODE
LOW…ts/bedrock_agent_role_not_shared_across_agents_test.py387CODE
LOW…multi_region_enabled_logging_management_events_test.py309CODE
LOW…enabled/cloudtrail_log_file_validation_enabled_test.py88CODE
LOW…_enabled/cloudtrail_cloudwatch_logging_enabled_test.py43CODE
LOW…_enabled/cloudtrail_cloudwatch_logging_enabled_test.py130CODE
LOW…_enabled/cloudtrail_cloudwatch_logging_enabled_test.py217CODE
LOW…region_enabled/cloudtrail_multi_region_enabled_test.py16CODE
LOW…region_enabled/cloudtrail_multi_region_enabled_test.py68CODE
LOW…region_enabled/cloudtrail_multi_region_enabled_test.py144CODE
LOW…region_enabled/cloudtrail_multi_region_enabled_test.py221CODE
LOW…iders/aws/services/awslambda/awslambda_service_test.py457CODE
LOW…/iam_inline_policy_allows_privilege_escalation_test.py897CODE
LOW…iam_inline_policy_no_administrative_privileges_test.py163CODE
LOW…iam_inline_policy_no_administrative_privileges_test.py366CODE
LOW…iam_inline_policy_no_administrative_privileges_test.py572CODE
LOW…alation/iam_policy_allows_privilege_escalation_test.py855CODE
LOW…alation/iam_policy_allows_privilege_escalation_test.py1592CODE
LOW…firewall_in_all_vpc/networkfirewall_in_all_vpc_test.py281CODE
LOW…_by_default/vpc_subnet_no_public_ip_by_default_test.py11CODE
LOW…_by_default/vpc_subnet_no_public_ip_by_default_test.py63CODE
LOW…pc_subnet_different_az/vpc_subnet_different_az_test.py11CODE
LOW…pc_subnet_different_az/vpc_subnet_different_az_test.py76CODE
1277 more matches not shown…
Self-Referential Comments257 hits · 805 pts
SeverityFileLineSnippetContext
MEDIUM…ate_compliance_json_from_csv_for_cis40_microsoft365.py12# Create the output JSON objectCOMMENT
MEDIUMutil/compliance/compliance_mapper/compliance_mapper.py772 # Create a copy of original compliance dataCOMMENT
MEDIUMutil/prowler_check_kreator/prowler_check_kreator.py140 # Create the checkCOMMENT
MEDIUMutil/prowler_check_kreator/lib/templates.py100 # Create a compliant resourceCOMMENT
MEDIUM⚡util/prowler_check_kreator/lib/llms/gemini.py117 "from json import dumps\nfrom unittest import mock\n\nfrom boto3 import client\nfrom moto import mock_aws\n\CODE
MEDIUM…godbatlas/lib/arguments/mongodbatlas_arguments_test.py26 # Create a mock object that has the necessary attributesCOMMENT
MEDIUM…godbatlas/lib/arguments/mongodbatlas_arguments_test.py176 # Create a mock object that mimics the structure used by the init_parser functionCOMMENT
MEDIUM…ings_exists/monitor_diagnostic_settings_exists_test.py106 # Create a valid BlobProperties instanceCOMMENT
MEDIUM…sts/providers/azure/services/apim/apim_service_test.py231 # Create a mock table with the expected structure for LogsQueryLogEntryCOMMENT
MEDIUM…_llm_jacking/apim_threat_detection_llm_jacking_test.py12# Create a mock LogsQueryLogEntry class for testingCOMMENT
MEDIUMtests/providers/gcp/gcp_provider_test.py964 # Create a mock provider with required attributesCOMMENT
MEDIUM…ging/logging_sink_created/logging_sink_created_test.py266 # Create a MagicMock sink object with name=NoneCOMMENT
MEDIUM…ging/logging_sink_created/logging_sink_created_test.py314 # Create a MagicMock sink object without name attributeCOMMENT
MEDIUM…nd_alert_for_project_ownership_changes_enabled_test.py286 # Create a MagicMock metric object with name=NoneCOMMENT
MEDIUM…nd_alert_for_project_ownership_changes_enabled_test.py333 # Create a MagicMock metric object without name attributeCOMMENT
MEDIUM…nd_alert_for_bucket_permission_changes_enabled_test.py286 # Create a MagicMock metric object with name=NoneCOMMENT
MEDIUM…nd_alert_for_bucket_permission_changes_enabled_test.py336 # Create a MagicMock metric object without name attributeCOMMENT
MEDIUM⚡tests/providers/image/lib/registry/test_oci_adapter.py706 # Create a base64 string that decodes to invalid UTF-8COMMENT
MEDIUM⚡tests/providers/iac/iac_provider_test.py843 # Create a mock .git/HEAD file with main branchCOMMENT
MEDIUM⚡tests/providers/iac/iac_provider_test.py857 # Create a mock .git/HEAD file with develop branchCOMMENT
MEDIUM…roviders/github/lib/arguments/github_arguments_test.py28 # Create a mock object that has the necessary attributesCOMMENT
MEDIUM…roviders/github/lib/arguments/github_arguments_test.py156 # Create a mock object that mimics the structure used by the init_parser functionCOMMENT
MEDIUM⚡tests/providers/m365/lib/jwt/jwt_decoder_test.py11 # Create a mock JWT tokenCOMMENT
MEDIUM⚡tests/providers/m365/lib/jwt/jwt_decoder_test.py124 # Create a valid JWTCOMMENT
MEDIUM…ts/providers/m365/lib/arguments/m365_arguments_test.py30 # Create a mock object that has the necessary attributesCOMMENT
MEDIUM…ts/providers/m365/lib/arguments/m365_arguments_test.py305 # Create a mock object that mimics the structure used by the init_parser functionCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py308 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py312 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py1477 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py1480 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py1515 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py1518 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py1557 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py1560 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py2171 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py2174 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py2223 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py2226 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py2314 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/aws_provider_test.py2318 # Create a mock IAM access keysCOMMENT
MEDIUM⚡tests/providers/aws/lib/s3/s3_test.py329 # Create a mock IAM userCOMMENT
MEDIUM⚡tests/providers/aws/lib/s3/s3_test.py332 # Create a mock IAM access keysCOMMENT
MEDIUMtests/providers/aws/lib/s3/s3_test.py358 # Create a mock IAM userCOMMENT
MEDIUMtests/providers/aws/lib/s3/s3_test.py361 # Create a mock IAM access keysCOMMENT
MEDIUMtests/providers/aws/lib/mutelist/aws_mutelist_test.py330 # Create an invalid mutelist by adding an invalid keyCOMMENT
MEDIUM…bility/s3_bucket_shadow_resource_vulnerability_test.py207 # Define the shadow resources we want to simulateCOMMENT
MEDIUM…_logging_enabled/datasync_task_logging_enabled_test.py16 # Create a DataSync client with no tasksCOMMENT
MEDIUM⚡…_logging_enabled/datasync_task_logging_enabled_test.py47 # Create a DataSync task without logging enabledCOMMENT
MEDIUM⚡…_logging_enabled/datasync_task_logging_enabled_test.py57 # Create a DataSync client with the taskCOMMENT
MEDIUM…_logging_enabled/datasync_task_logging_enabled_test.py97 # Create a DataSync task with logging enabledCOMMENT
MEDIUM…_logging_enabled/datasync_task_logging_enabled_test.py107 # Create a DataSync client with the taskCOMMENT
MEDIUM…lb/elb_is_in_multiple_az/elb_is_in_multiple_az_test.py42 # Create a compliant resourceCOMMENT
MEDIUM…lb/elb_is_in_multiple_az/elb_is_in_multiple_az_test.py92 # Create a compliant resourceCOMMENT
MEDIUM…tificate/elb_ssl_listeners_use_acm_certificate_test.py445 # Create a certificate ARN that will NOT be in ACM (simulating IAM certificate or any non-ACM certificate)COMMENT
MEDIUM…aining_enabled/elb_connection_draining_enabled_test.py41 # Create a compliant resourceCOMMENT
MEDIUM…aining_enabled/elb_connection_draining_enabled_test.py100 # Create a compliant resourceCOMMENT
MEDIUM…_enabled/elb_cross_zone_load_balancing_enabled_test.py40 # Create a compliant resourceCOMMENT
MEDIUM…_enabled/elb_cross_zone_load_balancing_enabled_test.py90 # Create a compliant resourceCOMMENT
MEDIUM…_enabled/elb_cross_zone_load_balancing_enabled_test.py145 # Create a non-compliant resourceCOMMENT
MEDIUM⚡…y_attached/bedrock_full_access_policy_attached_test.py228 # Create a compliant role (no AmazonBedrockFullAccess)COMMENT
197 more matches not shown…
Docstring Block Structure136 hits · 680 pts
SeverityFileLineSnippetContext
HIGHutil/update_oci_regions.py85 Fetch all OCI commercial regions using the Identity service API. Args: identity_client (oci.identity.ISTRING
HIGHutil/prowler_check_kreator/lib/templates.py2Load the template for the check file. Args: provider (str): The provider of the service. service (sSTRING
HIGHutil/prowler_check_kreator/lib/templates.py47Load the template for the test file. Args: provider: The provider of the service (e.g., "aws"). serSTRING
HIGHtests/providers/aws/utils.py253Validate a hand-written mocked response against the real AWS API model. Responses returned from a `botocore.client.STRING
HIGHprowler/providers/openstack/openstack_provider.py244Setup session from clouds.yaml content provided as a string. Parses the YAML content directly instead of writinSTRING
HIGHprowler/providers/openstack/openstack_provider.py325Setup session from clouds.yaml configuration file. Args: clouds_yaml_file: Path to clouds.yaml fileSTRING
HIGHprowler/providers/openstack/openstack_provider.py555Test connection to OpenStack without creating a full provider instance. This static method allows testing OpenSSTRING
HIGH…/providers/googleworkspace/googleworkspace_provider.py187 Sets up the Google Workspace session with Service Account and Domain-Wide Delegation. Args: STRING
HIGH…/providers/googleworkspace/googleworkspace_provider.py373 Retrieves Google Workspace identity information using the Admin SDK. Args: session (GoogleSTRING
HIGH…/providers/googleworkspace/googleworkspace_provider.py526Test connection to Google Workspace. Test the connection to Google Workspace using the provided credentials. STRING
HIGHprowler/providers/mongodbatlas/mongodbatlas_provider.py153 Setup MongoDB Atlas session with authentication credentials Args: atlas_public_key: MongoDSTRING
HIGHprowler/providers/mongodbatlas/mongodbatlas_provider.py202 Setup MongoDB Atlas identity information Args: session: MongoDB Atlas session RetSTRING
HIGHprowler/providers/mongodbatlas/lib/service/service.py41 Make HTTP request to MongoDB Atlas API with retry logic Args: method: HTTP method (GET, POSTRING
HIGHprowler/providers/e2enetworks/e2enetworks_provider.py137Create an authenticated E2E Networks API session. Args: api_key: E2E Networks API key. STRING
HIGHprowler/providers/e2enetworks/e2enetworks_provider.py196Test connectivity to the E2E Networks MyAccount API. Args: api_key: E2E Networks API key. Falls bacSTRING
HIGHprowler/providers/oraclecloud/oraclecloud_provider.py292 setup_session sets up an OCI session using the provided credentials. Args: - oci_config_fiSTRING
HIGHprowler/providers/oraclecloud/oraclecloud_provider.py469 set_identity sets the OCI provider identity information. Args: - session: The OCI session.STRING
HIGHprowler/providers/oraclecloud/oraclecloud_provider.py857 Test the connection to OCI with the provided credentials. Args: oci_config_file (str): TheSTRING
HIGH…owler/providers/oraclecloud/lib/arguments/arguments.py67 Validates that the input compartment OCID is valid. Args: ocid (str): The compartment OCID to validateSTRING
HIGHprowler/providers/vercel/vercel_provider.py123Initialize Vercel API session. Credentials can be provided as arguments (for API use) or read from enviSTRING
HIGHprowler/providers/vercel/vercel_provider.py175Fetch user and team metadata for Vercel. Args: session: The Vercel session. Returns: STRING
HIGHprowler/providers/vercel/lib/service/service.py46Make a rate-limit-aware GET request to the Vercel API. Args: path: API path (e.g., "/v9/projects").STRING
HIGHprowler/providers/azure/azure_provider.py130 Initializes the Azure provider. Args: az_cli_auth (bool): Flag indicating whether to use ASTRING
HIGHprowler/providers/azure/azure_provider.py494Returns the Azure credentials object. Set up the Azure session with the specified authentication method. STRING
HIGHprowler/providers/azure/azure_provider.py637Test connection to Azure subscription. Test the connection to an Azure subscription using the provided credentiSTRING
HIGHprowler/providers/azure/azure_provider.py1094 Retrieves a set of regions available across all subscriptions or specific subscriptions if provided. ASTRING
HIGHprowler/providers/azure/azure_provider.py1191 Validates the static credentials for the Azure provider. Args: tenant_id (str): The Azure STRING
HIGHprowler/providers/azure/azure_provider.py1278 Verifies the Azure client credentials using the specified tenant ID, client ID, and client secret. ArgSTRING
HIGH…viders/azure/services/postgresql/postgresql_service.py186Get the ``connection_throttle.enable`` setting for a flexible server. The ``connection_throttle.enable`` serverSTRING
HIGHprowler/providers/linode/linode_provider.py136Initialize Linode SDK client. Credentials can be provided as argument or read from environment variable: STRING
HIGHprowler/providers/linode/linode_provider.py173Validate the requested regions against the live Linode regions list. The ``/v4/regions`` endpoint is public, soSTRING
HIGHprowler/providers/linode/linode_provider.py216Fetch user and account metadata for Linode. The authenticated user's profile is retrieved first to validate theSTRING
HIGHprowler/providers/cloudflare/cloudflare_provider.py171Initialize Cloudflare SDK client. Credentials can be provided as arguments or read from environment variables: STRING
HIGHprowler/providers/cloudflare/cloudflare_provider.py249Fetch user and account metadata for Cloudflare. Args: session: The Cloudflare session. RetSTRING
HIGHprowler/providers/cloudflare/cloudflare_provider.py538Test connection to Cloudflare. Test the connection to Cloudflare using the provided credentials. Args:STRING
HIGHprowler/providers/gcp/gcp_provider.py94 GCP Provider constructor Args: retries_max_attempts: int -> The maximum number of retries STRING
HIGHprowler/providers/gcp/gcp_provider.py350 Setup the GCP session with the provided credentials file or service account to impersonate Args: STRING
HIGHprowler/providers/gcp/gcp_provider.py463 Test the connection to GCP with the provided credentials file or service account to impersonate. If theSTRING
HIGHprowler/providers/gcp/gcp_provider.py898 Validate the static arguments client_id, client_secret and refresh_token of ADC credentials Args: STRING
HIGHprowler/providers/gcp/gcp_provider.py927 Validate the provider ID given the credentials, checking if the provider ID matches with the expected project_iSTRING
HIGHprowler/providers/alibabacloud/alibabacloud_provider.py316 Set up the Alibaba Cloud session. Args: role_arn: ARN of the RAM role to assume STRING
HIGHprowler/providers/alibabacloud/alibabacloud_provider.py492 Validates the Alibaba Cloud credentials using STS GetCallerIdentity. Args: session: The AlSTRING
HIGHprowler/providers/alibabacloud/alibabacloud_provider.py807 Test the connection to Alibaba Cloud with the provided credentials. Args: access_key_id: ASTRING
HIGH…ler/providers/alibabacloud/services/oss/oss_service.py139Call a bucket sub-resource API (GET /?<subresource>) and return its parsed body. The generated OSS SDK methods STRING
HIGHprowler/providers/common/provider.py810Resolve the provider class for a name (built-in or entry-point). Does not call ``sys.exit`` and does not initiaSTRING
HIGHprowler/providers/iac/iac_provider.py620Test connection to IaC repository. Test the connection to the IaC repository using the provided credentials. STRING
HIGHprowler/providers/github/github_provider.py531 Validate that the provider ID (username or organization) is accessible with the given credentials. ArgSTRING
HIGHprowler/providers/github/github_provider.py617Test connection to GitHub. Test the connection to GitHub using the provided credentials. Args: STRING
HIGH…s/github/services/organization/organization_service.py241Fetch the Actions workflow permissions settings of the organization. The API returns a response in the format: STRING
HIGH…iders/github/services/repository/repository_service.py902Retrieve the default GITHUB_TOKEN permissions granted to workflows in the repository. The API returns a responsSTRING
HIGHprowler/providers/huaweicloud/models.py235 Create a service client for the given service and region. Args: service: The service name STRING
HIGHprowler/providers/huaweicloud/huaweicloud_provider.py336 Set up the Huawei Cloud session. Each argument falls back to its environment variable when not provideSTRING
HIGHprowler/providers/huaweicloud/huaweicloud_provider.py435 Assume a Huawei Cloud agency in the target account. Uses the base credentials to call CreateTemporaryASTRING
HIGHprowler/providers/huaweicloud/huaweicloud_provider.py559 Validates the Huawei Cloud credentials using IAM API. Args: session: The Huawei Cloud sessSTRING
HIGHprowler/providers/huaweicloud/huaweicloud_provider.py714 get_regions_to_audit returns the list of regions to audit. Args: regions: List of Huawei CSTRING
HIGHprowler/providers/m365/m365_provider.py136 Initializes the M365 provider. Args: tenant_id (str): The M365 Active Directory tenant ID.STRING
HIGHprowler/providers/m365/m365_provider.py495Returns the M365 credentials object. Set up the M365 session with the specified authentication method. STRING
HIGHprowler/providers/m365/m365_provider.py690Test connection to M365 tenant and PowerShell modules. Test the connection to an M365 tenant and PowerShell modSTRING
HIGHprowler/providers/m365/m365_provider.py1088 Validates the static credentials for the M365 provider. Args: tenant_id (str): The M365 AcSTRING
HIGHprowler/providers/m365/m365_provider.py1196 Verifies the M365 client credentials using the specified tenant ID, client ID, and client secret. ArgsSTRING
76 more matches not shown…
Redundant / Tautological Comments323 hits · 477 pts
SeverityFileLineSnippetContext
LOWutil/compliance/compliance_mapper/compliance_mapper.py401 # Check if it's a model issueCOMMENT
LOWutil/prowler_check_kreator/prowler_check_kreator.py198 # Check if exits check.py, check_metadata.json or check_test.pyCOMMENT
LOW⚡util/prowler-bulk-provisioning/nuke_providers.py125 # Check if there's a next pageCOMMENT
LOWutil/prowler-bulk-provisioning/nuke_providers.py179 # Check if it's a task responseCOMMENT
LOWutil/prowler-bulk-provisioning/nuke_providers.py389 # Check if it was an async deletionCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py58 # Check if the key name suggests sensitive dataCOMMENT
LOW…hub/services/organization/organization_service_test.py459 # Check if Access denied message was logged (could be in warning or error calls)COMMENT
LOW…/github/services/repository/repository_service_test.py435 # Check if Access denied message was loggedCOMMENT
LOW…bility/s3_bucket_shadow_resource_vulnerability_test.py246 # Check if we found all expected shadow resourcesCOMMENT
LOWtests/providers/aws/services/ec2/ec2_service_test.py875 # Check if ENI was added to security groupCOMMENT
LOW⚡tests/lib/utils/utils_test.py478 os.chmod(temp_file.name, 0o644) # Set permissions to 644 (-rw-r--r--)CODE
LOW⚡tests/lib/utils/utils_test.py488 os.chmod(temp_file.name, 0o644) # Set permissions to 644 (-rw-r--r--)CODE
LOW⚡tests/lib/check/check_test.py918 # Check if the checkID in the metadata.json of the checks is correctCOMMENT
LOW⚡tests/lib/check/check_test.py928 # Check if the checkID in the metadata.json of the checks is correctCOMMENT
LOW⚡tests/lib/check/check_test.py940 # Check if the checkID in the metadata.json of the checks is correctCOMMENT
LOW⚡tests/lib/check/check_test.py950 # Check if the checkID in the metadata.json of the checks is correctCOMMENT
LOWtests/lib/outputs/outputs_test.py551 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py593 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py635 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py677 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py721 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py765 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py809 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py853 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py895 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py937 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py979 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py1021 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py1063 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py1105 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py1147 ) # Check if the list was sortedSTRING
LOWtests/lib/outputs/outputs_test.py1189 ) # Check if the list was sortedSTRING
LOWprowler/__main__.py605 # Check if there are any FAIL findingsCOMMENT
LOWprowler/__main__.py1439 # Check if -D was inputCOMMENT
LOWprowler/config/config.yaml528 # Set s3_bucket_object_public_enabled to True to opt in.COMMENT
LOWprowler/providers/openstack/models.py102 # Check if custom output filename was input, if not, set the defaultCOMMENT
LOWprowler/providers/openstack/lib/security_groups.py49 # Check if any of the target ports fall within the rule's rangeCOMMENT
LOWprowler/providers/openstack/lib/arguments/arguments.py96 # Check if clouds.yaml options are used with explicit credential parametersCOMMENT
LOW…rs/openstack/services/networking/networking_service.py76 # Check if this is a default security groupCOMMENT
LOW…/networking_security_group_allows_rdp_from_internet.py22 # Check if any rule allows RDP from 0.0.0.0/0 or ::/0COMMENT
LOW…ing_security_group_allows_all_ingress_from_internet.py34 # Check if from internet (0.0.0.0/0, ::/0, or None with no group)COMMENT
LOW…/networking_security_group_allows_ssh_from_internet.py22 # Check if any rule allows SSH from 0.0.0.0/0 or ::/0COMMENT
LOW…ublic_ip_exposed/compute_instance_public_ip_exposed.py38 # Check if IP is public and not already captured in SDK attributesCOMMENT
LOWprowler/providers/googleworkspace/models.py69 # Check if custom output filename was input, if not, set the defaultCOMMENT
LOW…/providers/googleworkspace/googleworkspace_provider.py205 # Check if delegated_user is provided (required for Domain-Wide Delegation)COMMENT
LOW…/providers/googleworkspace/googleworkspace_provider.py342 # Check if it's a permission/delegation errorCOMMENT
LOW…projects_auditing_enabled/projects_auditing_enabled.py34 # Check if audit configuration is enabledCOMMENT
LOWprowler/providers/oraclecloud/models.py81 # Check if custom output filename was input, if not, set the defaultCOMMENT
LOWprowler/providers/oraclecloud/oraclecloud_provider.py136 # Check if the configuration is scanning exactly one explicit region.COMMENT
LOWprowler/providers/oraclecloud/oraclecloud_provider.py393 # Check if config file existsCOMMENT
LOWprowler/providers/oraclecloud/oraclecloud_provider.py403 # Check if using security token authenticationCOMMENT
LOWprowler/providers/oraclecloud/oraclecloud_provider.py618 # Check if auditing specific region or allCOMMENT
LOWprowler/providers/oraclecloud/lib/mutelist/mutelist.py102 # Check if mutelist has Accounts/Tenancies sectionCOMMENT
LOWprowler/providers/oraclecloud/lib/mutelist/mutelist.py144 # Check if any tag matchesCOMMENT
LOW…owler/providers/oraclecloud/lib/arguments/arguments.py106 # Check if instance principal and config file/profile are used togetherCOMMENT
LOW…cted/database_autonomous_database_access_restricted.py23 # Check if database has no whitelisted IPs and no subnet (unrestricted public access)COMMENT
LOW…cted/database_autonomous_database_access_restricted.py27 # Check if database has whitelisted IPs containing 0.0.0.0/0COMMENT
LOW…ogging_enabled/objectstorage_bucket_logging_enabled.py25 # Check if there is a write-level log configured for this bucketCOMMENT
LOW…ssible/objectstorage_bucket_not_publicly_accessible.py30 # Check if bucket has public accessCOMMENT
LOW…ders/oraclecloud/services/identity/identity_service.py111 # Check if user can use API keysCOMMENT
263 more matches not shown…
Hallucination Indicators32 hits · 320 pts
SeverityFileLineSnippetContext
CRITICALtests/providers/azure/azure_provider_test.py7from azure.core.exceptions import HttpResponseErrorCODE
CRITICAL…s/azure/services/postgresql/postgresql_service_test.py4from azure.core.exceptions import HttpResponseError, ResourceNotFoundErrorCODE
CRITICALtests/providers/m365/m365_provider_test.py1240 from azure.core.exceptions import ClientAuthenticationErrorCODE
CRITICALprowler/providers/azure/azure_provider.py12from azure.core.exceptions import ClientAuthenticationError, HttpResponseErrorCODE
CRITICAL…viders/azure/services/postgresql/postgresql_service.py4from azure.core.exceptions import ResourceNotFoundErrorCODE
CRITICAL…/providers/azure/services/keyvault/keyvault_service.py6from azure.core.exceptions import HttpResponseErrorCODE
CRITICAL…er/providers/azure/services/network/network_service.py5from azure.core.exceptions import ResourceNotFoundErrorCODE
CRITICAL…/providers/azure/services/defender/defender_service.py5from azure.core.exceptions import ClientAuthenticationError, ResourceNotFoundErrorCODE
CRITICAL⚡…ler/providers/cloudflare/services/zone/zone_service.py149 universal_ssl = self.client.ssl.universal.settings.get(zone_id=zone.id)CODE
CRITICALprowler/providers/m365/m365_provider.py9from azure.core.exceptions import ClientAuthenticationError, HttpResponseErrorCODE
CRITICAL⚡…/services/defenderidentity/defenderidentity_service.py78 sensors_response = await self.client.security.identities.sensors.get()CODE
CRITICAL…/services/defenderidentity/defenderidentity_service.py137 await self.client.security.identities.sensors.with_url(CODE
CRITICAL⚡…/services/defenderidentity/defenderidentity_service.py166 await self.client.security.identities.health_issues.get()CODE
CRITICAL…/services/defenderidentity/defenderidentity_service.py221 await self.client.security.identities.health_issues.with_url(CODE
CRITICAL…oviders/m365/services/sharepoint/sharepoint_service.py53 global_settings = await self.client.admin.sharepoint.settings.get()CODE
CRITICAL⚡prowler/providers/m365/services/entra/entra_service.py242 await self.client.identity.conditional_access.policies.get()CODE
CRITICALprowler/providers/m365/services/entra/entra_service.py662 self.client.identity.conditional_access.policies.to_get_request_information()CODE
CRITICALprowler/providers/m365/services/entra/entra_service.py2236 await self.client.role_management.directory.role_definitions.by_unified_role_definition_id(CODE
CRITICALprowler/providers/m365/services/entra/entra_service.py1568 self.client.identity.conditional_access.named_locations.to_get_request_information()STRING
CRITICALprowler/providers/m365/services/entra/entra_service.py1584 self.client.identity.conditional_access.named_locations.with_url(STRING
CRITICALprowler/providers/m365/services/entra/entra_service.py1908 await self.client.role_management.directory.role_assignments.get()STRING
CRITICALprowler/providers/m365/services/entra/entra_service.py1925 role_assignments_response = await self.client.role_management.directory.role_assignments.with_url(STRING
CRITICALapi/src/backend/api/models.py45from django.core.exceptions import ValidationErrorCODE
CRITICALapi/src/backend/api/validators.py7from django.core.exceptions import ValidationErrorCODE
CRITICALapi/src/backend/api/exceptions.py1from django.core.exceptions import ValidationError as django_validation_errorCODE
CRITICALapi/src/backend/api/rls.py5from django.core.exceptions import ValidationErrorCODE
CRITICALapi/src/backend/api/adapters.py15from django.core.exceptions import ValidationErrorCODE
CRITICALapi/src/backend/api/v1/serializers.py69from django.core.exceptions import ValidationError as DjangoValidationErrorCODE
CRITICALapi/src/backend/api/v1/views.py263from django.core.exceptions import ValidationError as DjangoValidationErrorCODE
CRITICALapi/src/backend/api/tests/test_validators.py8from django.core.exceptions import ValidationErrorCODE
CRITICALapi/src/backend/api/tests/test_models.py18from django.core.exceptions import ValidationErrorCODE
CRITICALskills/prowler-test-api/assets/api_test.py344 mock_conn.cursor.return_value.__enter__.return_value.execute.assert_called()CODE
Unused Imports218 hits · 184 pts
SeverityFileLineSnippetContext
LOWutil/check_yanked_pins.py27CODE
LOWutil/prowler-bulk-provisioning/aws_org_generator.py15CODE
LOWutil/prowler-bulk-provisioning/nuke_providers.py26CODE
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py3CODE
LOWtests/providers/openstack/openstack_provider_test.py3CODE
LOW…ware_mfa_enabled/iam_root_hardware_mfa_enabled_test.py15CODE
LOW…/iam/iam_root_mfa_enabled/iam_root_mfa_enabled_test.py13CODE
LOW…_support_role_created/iam_support_role_created_test.py14CODE
LOW…ware_mfa_enabled/iam_user_hardware_mfa_enabled_test.py13CODE
LOW…alation/iam_policy_allows_privilege_escalation_test.py19CODE
LOW…sword_policy_number/iam_password_policy_number_test.py15CODE
LOW…ength_14/iam_password_policy_minimum_length_14_test.py15CODE
LOW…tive_access_key/iam_user_two_active_access_key_test.py13CODE
LOW…sword_policy_symbol/iam_password_policy_symbol_test.py15CODE
LOW…d_policy_reuse_24/iam_password_policy_reuse_24_test.py14CODE
LOW…ole_access/iam_user_mfa_enabled_console_access_test.py12CODE
LOW…policy_uppercase/iam_password_policy_uppercase_test.py14CODE
LOWprowler/config/config.py23CODE
LOW…nstack/services/objectstorage/objectstorage_service.py1CODE
LOW…penstack/services/blockstorage/blockstorage_service.py1CODE
LOW…rs/openstack/services/networking/networking_service.py1CODE
LOW…er/providers/openstack/services/image/image_service.py1CODE
LOW…roviders/openstack/services/compute/compute_service.py1CODE
LOW…providers/googleworkspace/services/rules/lib/alerts.py8CODE
LOWprowler/providers/e2enetworks/lib/api/client.py1CODE
LOWprowler/providers/image/image_provider.py1CODE
LOW…wler/providers/image/lib/registry/dockerhub_adapter.py3CODE
LOWprowler/providers/image/lib/registry/factory.py3CODE
LOWprowler/providers/image/lib/registry/oci_adapter.py3CODE
LOWprowler/providers/image/lib/registry/base.py3CODE
LOWprowler/providers/okta/lib/service/service.py10CODE
LOWprowler/providers/aws/services/acmpca/acmpca_service.py1CODE
LOWprowler/lib/outputs/compliance/compliance.py10CODE
LOW…r/lib/outputs/compliance/universal/universal_output.py17CODE
LOW…er/lib/outputs/compliance/universal/ocsf_compliance.py32CODE
LOWdocs/scripts/generate_provider_cards.py13CODE
LOWcontrib/inventory-graph/inventory_graph.py17CODE
LOWcontrib/inventory-graph/lib/inventory_output.py14CODE
LOWscripts/check_test_init_files.py4CODE
LOWapi/src/backend/tasks/jobs/attack_paths/__init__.py1CODE
LOWapi/src/backend/tasks/jobs/attack_paths/__init__.py2CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py2CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py2CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py2CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py2CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py2CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py11CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py11CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py11CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py11CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py11CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py11CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py21CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py26CODE
158 more matches not shown…
Fake / Example Data154 hits · 174 pts
SeverityFileLineSnippetContext
LOW…ery-builder/_components/query-parameters-form.test.tsx120 "placeholder",CODE
LOW⚡…/_components/config/lighthouse-v2-config-page.test.tsx279 "placeholder",CODE
LOW⚡…/_components/config/lighthouse-v2-config-page.test.tsx285 "placeholder",CODE
LOW⚡…/_components/config/lighthouse-v2-config-page.test.tsx289 "placeholder",CODE
LOW…/_components/config/lighthouse-v2-config-page.test.tsx305 expect(screen.getByLabelText("API key")).not.toHaveAttribute("placeholder");CODE
LOW…oviders/wizard/steps/dynamic-credentials-step.test.tsx152 expect(apiUrl).toHaveAttribute("placeholder", "https://api.acme.com");CODE
LOW…s/via-credentials/googleworkspace-credentials-form.tsx47 placeholder="admin@example.com"CODE
LOW…components/integrations/jira/jira-integration-form.tsx176 placeholder="user@example.com"CODE
LOW…components/users/profile/api-keys/table-cells.test.tsx27 userEmail: "user@example.com",CODE
LOW…components/users/table/data-table-row-actions.test.tsx39 name: "Jane Doe",CODE
LOWui/actions/auth/auth.test.ts31 name: "Jane Doe",CODE
LOWui/actions/auth/auth.test.ts82 name: "Jane Doe",CODE
LOWui/actions/auth/auth.test.ts114 name: "Jane Doe",CODE
LOW…bjectstorage_container_metadata_sensitive_data_test.py265 metadata={"api_key": "placeholder"},CODE
LOW…/blockstorage_snapshot_metadata_sensitive_data_test.py368 metadata={"api_key": "placeholder"},CODE
LOW…ta/blockstorage_volume_metadata_sensitive_data_test.py428 metadata={"api_key": "placeholder"},CODE
LOW…_data/compute_instance_metadata_sensitive_data_test.py608 metadata={"api_key": "placeholder"},CODE
LOW…_data/compute_instance_metadata_sensitive_data_test.py677 metadata={"api_key": "placeholder"},CODE
LOWtests/providers/azure/azure_provider_test.py261 token="fake_token", expires_on=9999999999CODE
LOWtests/providers/azure/azure_provider_test.py302 token="fake_token", expires_on=9999999999CODE
LOWtests/providers/azure/azure_provider_test.py1047 mock_post.return_value.json.return_value = {"access_token": "fake-token"}CODE
LOW…ional_email_configured_with_a_security_contact_test.py100 emails=["test@test.com"],CODE
LOWtests/providers/linode/linode_fixtures.py10EMAIL = "admin@example.com"CODE
LOW…s/administration/linode_administration_service_test.py10def _mock_user(username="admin", email="admin@example.com", tfa=True, restricted=False):CODE
LOW…s/administration/linode_administration_service_test.py45 _mock_user("admin", "admin@example.com", True, False),CODE
LOW…er_2fa_enabled/administration_user_2fa_enabled_test.py38 email="admin@example.com",CODE
LOWtests/providers/gcp/gcp_fixtures.py20 provider.session._service_account_email = "test@test.com"CODE
LOWtests/providers/gcp/gcp_fixtures.py1158 "principalEmail": "user@example.com",CODE
LOWtests/providers/m365/m365_provider_test.py260 token="fake_token", expires_on=9999999999CODE
LOW⚡tests/providers/m365/lib/jwt/jwt_decoder_test.py15 "name": "John Doe",CODE
LOWtests/providers/m365/lib/jwt/jwt_decoder_test.py40 assert result["name"] == "John Doe"CODE
LOW…abled/defender_safe_attachments_policy_enabled_test.py140 users=["user@example.com"],CODE
LOW…abled/defender_safe_attachments_policy_enabled_test.py225 users=["user@example.com"],CODE
LOW…abled/defender_safe_attachments_policy_enabled_test.py304 users=["user@example.com"],CODE
LOW…abled/defender_safe_attachments_policy_enabled_test.py371 users=["user@example.com"],CODE
LOW…y_notifications_internal_users_malware_enabled_test.py37 internal_sender_admin_address="admin@example.com",CODE
LOW⚡…y_notifications_internal_users_malware_enabled_test.py89 internal_sender_admin_address="admin@example.com",CODE
LOW⚡…y_notifications_internal_users_malware_enabled_test.py97 internal_sender_admin_address="admin@example.com",CODE
LOW⚡…y_notifications_internal_users_malware_enabled_test.py107 users=["user@example.com"],CODE
LOW…y_notifications_internal_users_malware_enabled_test.py169 internal_sender_admin_address="admin@example.com",CODE
LOW…y_notifications_internal_users_malware_enabled_test.py257 internal_sender_admin_address="admin@example.com",CODE
LOW…y_notifications_internal_users_malware_enabled_test.py267 users=["user@example.com"],CODE
LOW⚡…y_notifications_internal_users_malware_enabled_test.py495 internal_sender_admin_address="admin@example.com",CODE
LOW⚡…y_notifications_internal_users_malware_enabled_test.py503 internal_sender_admin_address="admin@example.com",CODE
LOW⚡…y_notifications_internal_users_malware_enabled_test.py511 internal_sender_admin_address="admin@example.com",CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py38 notify_limit_exceeded_addresses=["admin@example.com"],CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py39 notify_sender_blocked_addresses=["admin@example.com"],CODE
LOW⚡…r_antispam_outbound_policy_forwarding_disabled_test.py92 notify_limit_exceeded_addresses=["admin@example.com"],CODE
LOW⚡…r_antispam_outbound_policy_forwarding_disabled_test.py93 notify_sender_blocked_addresses=["admin@example.com"],CODE
LOW⚡…r_antispam_outbound_policy_forwarding_disabled_test.py101 notify_limit_exceeded_addresses=["admin@example.com"],CODE
LOW⚡…r_antispam_outbound_policy_forwarding_disabled_test.py102 notify_sender_blocked_addresses=["admin@example.com"],CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py178 notify_limit_exceeded_addresses=["admin@example.com"],CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py179 notify_sender_blocked_addresses=["admin@example.com"],CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py273 notify_limit_exceeded_addresses=["admin@example.com"],CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py274 notify_sender_blocked_addresses=["admin@example.com"],CODE
LOW…r_antispam_outbound_policy_forwarding_disabled_test.py422 users=["user@example.com"],CODE
LOW…olicy_comprehensive_attachments_filter_applied_test.py40 internal_sender_admin_address="admin@example.com",CODE
LOW…olicy_comprehensive_attachments_filter_applied_test.py93 internal_sender_admin_address="admin@example.com",CODE
LOW…olicy_comprehensive_attachments_filter_applied_test.py101 internal_sender_admin_address="admin@example.com",CODE
LOW…olicy_comprehensive_attachments_filter_applied_test.py172 internal_sender_admin_address="admin@example.com",CODE
94 more matches not shown…
Empty Error Handlers31 hits · 155 pts
SeverityFileLineSnippetContext
HIGHutil/prowler-bulk-provisioning/nuke_providers.py191except (json.JSONDecodeError, ValueError, KeyError):CODE
HIGH…prowler-bulk-provisioning/prowler_bulk_provisioning.py551except Exception:CODE
HIGH…ts/providers/m365/lib/arguments/m365_arguments_test.py506except SystemExit:CODE
HIGH…ts/providers/external/test_dynamic_provider_loading.py1077except BaseException:CODE
HIGH…ts/providers/external/test_dynamic_provider_loading.py2900except BaseException:CODE
HIGH…ers/mongodbatlas/services/clusters/clusters_service.py38except (KeyError, IndexError, AttributeError):CODE
HIGHprowler/providers/llm/llm_provider.py398except queue.Empty:CODE
HIGHprowler/providers/llm/llm_provider.py410except queue.Empty:CODE
HIGHprowler/providers/llm/llm_provider.py441except queue.Empty:CODE
HIGHprowler/providers/azure/lib/service/service.py50except Exception:CODE
HIGHprowler/providers/alibabacloud/lib/service/service.py150except Exception:CODE
HIGHprowler/providers/github/github_provider.py562except Exception:CODE
HIGHprowler/providers/github/github_provider.py449except Exception:CODE
HIGHprowler/providers/huaweicloud/lib/service/service.py177except Exception:CODE
HIGHprowler/providers/aws/aws_provider.py1017except ModuleNotFoundError:CODE
HIGHprowler/providers/aws/lib/service/service.py109except Exception:CODE
HIGH…/providers/aws/services/codebuild/codebuild_service.py82except Exception:CODE
HIGHprowler/providers/kubernetes/lib/service/service.py40except Exception:CODE
HIGHprowler/lib/utils/utils.py8except ImportError:CODE
HIGHprowler/lib/check/custom_checks_metadata.py144except ValueError:CODE
HIGHprowler/lib/check/custom_checks_metadata.py128except ValueError:CODE
HIGHprowler/lib/check/custom_checks_metadata.py158except ValueError:CODE
HIGHprowler/lib/outputs/sarif/sarif.py188except (ValueError, IndexError):CODE
HIGHapi/src/backend/api/db_utils.py276except Exception:CODE
HIGHapi/src/backend/api/db_utils.py349except Exception:CODE
HIGHapi/src/backend/api/v1/mixins.py338except Task.DoesNotExist:CODE
HIGHapi/src/backend/api/v1/mixins.py369except TaskResult.DoesNotExist:CODE
HIGHapi/src/backend/api/v1/serializers.py294except AttributeError:CODE
HIGHapi/src/backend/api/attack_paths/retryable_session.py154except Exception:CODE
HIGHapi/src/backend/api/attack_paths/sink/factory.py91except Exception: # pragma: no cover - best-effortCODE
HIGHapi/src/backend/api/attack_paths/sink/neptune.py167except Exception: # pragma: no cover - best-effortCODE
Over-Commented Block140 hits · 134 pts
SeverityFileLineSnippetContext
LOW.pre-commit-config.yaml1# Priority tiers (lower = runs first, same priority = concurrent):COMMENT
LOWpyproject.toml401override-dependencies = [COMMENT
LOW.grype.yaml1# Findings excluded from the Grype gate, each with a reason.COMMENT
LOW.grype.yaml21 # Trivy 0.74.0 still embeds grpc 1.82.1, while the 1.83.1 fix is not in any release.COMMENT
LOW.grype.yaml121 # drop it, yet python:3.12.14-slim-trixie reports it too. Prowler never extracts tarCOMMENT
LOW.trivyignore.yaml1# Trivy suppressions for the prowlercloud/prowler SDK and API container images.COMMENT
LOW.trivyignore.yaml21#COMMENT
LOW.trivyignore.yaml61COMMENT
LOW.trivyignore.yaml181 - "pkg:npm/%40modelcontextprotocol%2Fsdk@1.27.1"COMMENT
LOWui/vitest.integration.setup.ts21// page invokes one, it runs in the browser and reaches `auth()` fromCOMMENT
LOWui/pnpm-workspace.yaml21 # Next.js 16.3.8 requests sharp ^0.35.4; pinned to fixCOMMENT
LOWui/pnpm-workspace.yaml41 "esbuild": "0.28.1"COMMENT
LOWui/pnpm-workspace.yaml81 # but the override unifies the tree on a patched version.COMMENT
LOWui/pnpm-workspace.yaml101 "fast-uri": "3.1.6"COMMENT
LOWui/pnpm-workspace.yaml121COMMENT
LOWui/pnpm-workspace.yaml141 # esbuild: Go binary. Downloads the pre-compiled binary matching the current platform/architecture.COMMENT
LOW…/query-builder/_components/graph/attack-path-graph.tsx301 // full graph) swap the data prop, which leaves the previous viewportCOMMENT
LOWui/app/(prowler)/lighthouse/_lib/stream-url.ts1// Same-origin path for the Lighthouse v2 SSE proxy route handler.COMMENT
LOWui/tests/scans/scans-page.ts21 readonly viewScanLink: Locator;COMMENT
LOW…s/providers/wizard/provider-wizard-modal.utils.test.ts341 expect(destination).toBe("AWS Organizations");COMMENT
LOWui/components/icons/compliance/IconCompliance.tsx21import NIS2Logo from "./nis2.svg";COMMENT
LOWui/actions/mute-rules/mute-rules.ts401COMMENT
LOWui/lib/integrations.ts1import { readBoolEnv, readEnv } from "@/lib/runtime-env";COMMENT
LOWui/lib/external-urls.ts41// CloudFormation template URL for the ProwlerScan role.COMMENT
LOWui/lib/external-urls.ts61// `getAWSCredentialsTemplateLinks` below.COMMENT
LOWui/lib/compliance/asd-essential-eight.tsx61 // normalize to "1. Patch applications" so the leading clause number readsCOMMENT
LOWui/lib/onboarding/first-run-marker.ts1// Durable "this browser already went through the first-run redirect" memory.COMMENT
LOWutil/update_aws_services_regions.py21COMMENT
LOWtests/providers/azure/services/app/app_service_test.py21# auth_enabled=True,COMMENT
LOWtests/providers/azure/services/app/app_service_test.py41# category="AppServiceAuditLogs",COMMENT
LOW…iders/azure/services/keyvault/keyvault_service_test.py21# id="id",COMMENT
LOW…iders/azure/services/keyvault/keyvault_service_test.py41# location="location",COMMENT
LOW…/iam_inline_policy_allows_privilege_escalation_test.py21 # def test_iam_inline_policy_allows_privilege_escalation_sts(self):COMMENT
LOW…/iam_inline_policy_allows_privilege_escalation_test.py41 # "prowler.providers.common.provider.Provider.get_global_provider",COMMENT
LOW…alation/iam_policy_allows_privilege_escalation_test.py21 AWS_ACCOUNT_NUMBER,COMMENT
LOW…alation/iam_policy_allows_privilege_escalation_test.py41 # with mock.patch(COMMENT
LOWtests/providers/aws/services/acm/acm_service_test.py121 # Test ACM SessionCOMMENT
LOW…s/providers/aws/services/athena/athena_service_test.py81 default_workgroup_name = "primary"COMMENT
LOWtests/lib/check/check_test.py701 }COMMENT
LOWtests/lib/check/check_test.py721 # with mock.patch(COMMENT
LOWtests/lib/check/check_test.py741 # "iam_avoid_root_usage",COMMENT
LOWtests/lib/check/check_test.py761 # "expected": set(),COMMENT
LOWprowler/config/config.yaml1# AWS ConfigurationCOMMENT
LOWprowler/config/config.yaml41 # Mutelist:COMMENT
LOWprowler/config/config.yaml101 fargate_windows_latest_version: "1.0.0"COMMENT
LOWprowler/config/config.yaml181 # ]COMMENT
LOWprowler/config/config.yaml481COMMENT
LOWprowler/config/config.yaml501 secrets_ignore_files: []COMMENT
LOWprowler/config/config.yaml541# Azure ConfigurationCOMMENT
LOWprowler/config/config.yaml641 # Maximum age in days for disk snapshots before they are considered outdatedCOMMENT
LOWprowler/config/config.yaml681 "TLS_RSA_WITH_AES_128_GCM_SHA256",COMMENT
LOWprowler/config/config.yaml741 - "master"COMMENT
LOWprowler/config/config.yaml761 - "_TOKEN"COMMENT
LOWprowler/config/config.yaml781 # with an explicit risk acceptance.COMMENT
LOWprowler/config/config.yaml801 # range: 0 or 0.1..100 — non-zero rates below 0.1 are rejected because theyCOMMENT
LOWprowler/config/config.yaml821 # alibabacloud.ram_user_console_access_unusedCOMMENT
LOW…/googleworkspace/services/security/security_service.py261 # order on every scan.COMMENT
LOWprowler/providers/azure/services/entra/entra_service.py41COMMENT
LOW…roviders/okta/services/network/network_zone_service.py61 all_zones, err = await _paginate_shared(COMMENT
LOWprowler/providers/aws/aws_provider.py341 # Default to the current (post-assume) session so DescribeAccount runsCOMMENT
80 more matches not shown…
Cross-Language Confusion21 hits · 130 pts
SeverityFileLineSnippetContext
HIGH…oraclecloud/services/identity/identity_service_test.py126 """OCI can return `matching_rule` and `description` as null; theSTRING
HIGH…/providers/m365/lib/powershell/m365_powershell_test.py217 tenant_id="def-456 && whoami",CODE
HIGH…viders/m365/services/exchange/exchange_service_test.py424 # return null; null must keep the platform default (enabled).COMMENT
HIGH…orced/kms_key_enclave_attestation_not_enforced_test.py516 # A policy with Statement=null (JSON null, Python None) must notCOMMENT
HIGH…ed/eks_cluster_vpc_cni_network_policy_enforced_test.py195 '{"enableNetworkPolicy": null}',CODE
HIGH⚡tests/contrib/wazuh/prowler_wrapper_security_test.py100 malicious_profile = f"test && touch {test_file}"CODE
HIGHtests/lib/outputs/html/html_test.py620 tagStack.push(tagName);CODE
HIGHprowler/lib/outputs/html/html.py379 tagStack.push(tagName);CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py388buildGraph(null);CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py391sel.addEventListener("change", () => buildGraph(sel.value || null));CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py391sel.addEventListener("change", () => buildGraph(sel.value || null));CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py394document.getElementById("link-distance").addEventListener("input", () => buildGraph(sel.value || null));CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py394document.getElementById("link-distance").addEventListener("input", () => buildGraph(sel.value || null));CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py395document.getElementById("charge-strength").addEventListener("input", () => buildGraph(sel.value || null));CODE
HIGH⚡contrib/inventory-graph/lib/inventory_output.py395document.getElementById("charge-strength").addEventListener("input", () => buildGraph(sel.value || null));CODE
HIGHcontrib/inventory-graph/lib/inventory_output.py337 d.fx = null; d.fy = null;CODE
HIGH⚡api/src/backend/tasks/tests/test_orphan_recovery.py42 assert decode_celery_field('{"enabled": true, "scan_id": null}', {}) == {CODE
HIGHapi/src/backend/api/filters.py386 included. Providers with no connection attempt (status is null) areCODE
HIGH⚡api/src/backend/api/tests/test_cypher_sanitizer.py409 "CALL apoc.load.csvParams('http://evil.com/', {}, null) YIELD list RETURN list",CODE
HIGH…rver/prowler_mcp_server/prowler_app/tools/providers.py74 - Connection status: Connected (true), Failed (false), Not Tested (null)STRING
HIGH…/prowler_mcp_server/prowler_app/models/integrations.py212 f"must be a boolean or null, got {unexpected!r}."CODE
Structural Annotation Overuse64 hits · 112 pts
SeverityFileLineSnippetContext
LOWui/components/integrations/s3/s3-integration-form.tsx145 : // Step 1: No required fields since role_arn and external_id are optionalCODE
LOWui/actions/users/tenants.ts362 // Step 1: Switch to the target tenant (current token is still valid)COMMENT
LOWui/actions/users/tenants.ts402 // Step 2: Delete the old tenant using the NEW tokenCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py828 # Step 1: Load compliance fileCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py834 # Step 2: Field selectionCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py838 # Step 3: Load Prowler checksCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py842 # Step 4: Add check codeCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py846 # Step 5: Process all requirementsCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py851 # Step 6: Generate output fileCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py183 # Step 1: Build provider creation payload (minimal)COMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py195 # Step 2: Build secret creation payload if credentials are providedCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py463 # Step 1: Create providerCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py479 # Step 2: Create secret if providedCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py501 # Step 3: Test connection if requestedCOMMENT
LOW⚡…ds_instance_inside_vpc/rds_instance_inside_vpc_test.py44 # Step 1: Create the VPCCOMMENT
LOW⚡…/services/defenderidentity/defenderidentity_service.py76 # Step 1: Call the APICOMMENT
LOW…/services/defenderidentity/defenderidentity_service.py98 # Step 2: Parse the responseCOMMENT
LOW⚡…/services/defenderidentity/defenderidentity_service.py163 # Step 1: Call the APICOMMENT
LOW…/services/defenderidentity/defenderidentity_service.py187 # Step 2: Parse the responseCOMMENT
LOW…derxdr_endpoint_privileged_user_exposed_credentials.py41 # Step 1: Check MDE statusCOMMENT
LOW…derxdr_endpoint_privileged_user_exposed_credentials.py96 # Step 2: MDE is active with devices - check for exposed credentialsCOMMENT
LOW⚡prowler/providers/aws/services/s3/s3_service.py646 # NOTE: This function is restricted to the us-west-2 region due to AWS limitations on Multi-Region Access PointsCOMMENT
LOWcontrib/k8s/helm/prowler-app/README.md40### Step 1: Create Required SecretsCOMMENT
LOWcontrib/k8s/helm/prowler-app/README.md97### Step 2: Configure ValuesCOMMENT
LOWcontrib/k8s/helm/prowler-app/README.md123### Step 3: Install the ChartCOMMENT
LOW.github/agents/issue-triage.md59### Step 1: Extract Structured FieldsCOMMENT
LOW.github/agents/issue-triage.md77### Step 2: Classify the IssueCOMMENT
LOW.github/agents/issue-triage.md90### Step 3: Search for Duplicates and Related IssuesCOMMENT
LOW.github/agents/issue-triage.md100### Step 4: InvestigateCOMMENT
LOW.github/agents/issue-triage.md135### Step 5: Root Cause and Issue SeverityCOMMENT
LOW.github/agents/issue-triage.md151### Step 6: Build the Coding Agent PlanCOMMENT
LOW.github/agents/issue-triage.md161### Step 7: Assess Complexity and Agent ReadinessCOMMENT
LOW.github/agents/issue-triage.md177### Step 8: Apply LabelsCOMMENT
LOW.github/scripts/slack-messages/README.md241# Step 1: Notify when push startsCOMMENT
LOW.github/scripts/slack-messages/README.md257# Step 2: Build and push containerCOMMENT
LOW.github/scripts/slack-messages/README.md265# Step 3: Determine push statusCOMMENT
LOW.github/scripts/slack-messages/README.md278# Step 4: Notify when push completes (success or failure)COMMENT
LOW.github/scripts/slack-messages/README.md302# Step 1: Send deployment start notificationCOMMENT
LOW.github/scripts/slack-messages/README.md322# Step 2: Run your deployment stepsCOMMENT
LOW.github/scripts/slack-messages/README.md331# Step 3: Determine status (calculated internally, not configured)COMMENT
LOW.github/scripts/slack-messages/README.md364# Step 4: Update the same Slack message (using calculated values)COMMENT
LOWapi/src/backend/api/attack_paths/cypher_sanitizer.py27# Step 1 - String / comment protectionCOMMENT
LOWapi/src/backend/api/attack_paths/cypher_sanitizer.py33# Step 2 - Clause splittingCOMMENT
LOW⚡api/src/backend/api/attack_paths/cypher_sanitizer.py105 # Step 1: Protect strings and comments (single pass, leftmost-first)COMMENT
LOW⚡api/src/backend/api/attack_paths/cypher_sanitizer.py114 # Step 2: Split by clause keywordsCOMMENT
LOWapi/src/backend/api/attack_paths/cypher_sanitizer.py135 # Step 5: Restore protected regionsCOMMENT
LOW⚡skills/prowler-provider/assets/provider.py56 # Step 1: Setup session (authentication)COMMENT
LOW⚡skills/prowler-provider/assets/provider.py60 # Step 2: Setup identity (who is authenticated)COMMENT
LOW⚡skills/prowler-provider/assets/provider.py63 # Step 3: Load audit configCOMMENT
LOW⚡skills/prowler-provider/assets/provider.py71 # Step 4: Load fixer configCOMMENT
LOW⚡skills/prowler-provider/assets/provider.py74 # Step 5: Load mutelistCOMMENT
LOWskills/prowler-readme-table/SKILL.md23### Step 1: Collect Stats via CLICOMMENT
LOWskills/prowler-readme-table/SKILL.md44### Step 2: Batch ExtractionCOMMENT
LOWskills/prowler-readme-table/SKILL.md57### Step 3: Update the TableCOMMENT
LOWskills/prowler-changelog/SKILL.md118### Step 1: Determine Affected Component(s)COMMENT
LOWskills/prowler-changelog/SKILL.md133### Step 2: Create the fragment(s)COMMENT
LOWskills/prowler-changelog/SKILL.md139### Step 3: Check pending fragmentsCOMMENT
LOWskills/django-migration-psql/SKILL.md134### Step 1: create indexes on actual partitionsCOMMENT
LOWskills/django-migration-psql/SKILL.md171### Step 2: register the index with DjangoCOMMENT
LOW⚡…rver/prowler_mcp_server/prowler_app/tools/providers.py244 # Step 1: Check if provider already existsCOMMENT
4 more matches not shown…
Verbosity Indicators35 hits · 68 pts
SeverityFileLineSnippetContext
LOWui/components/integrations/s3/s3-integration-form.tsx145 : // Step 1: No required fields since role_arn and external_id are optionalCODE
LOWui/actions/users/tenants.ts362 // Step 1: Switch to the target tenant (current token is still valid)COMMENT
LOWui/actions/users/tenants.ts402 // Step 2: Delete the old tenant using the NEW tokenCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py828 # Step 1: Load compliance fileCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py834 # Step 2: Field selectionCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py838 # Step 3: Load Prowler checksCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py842 # Step 4: Add check codeCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py846 # Step 5: Process all requirementsCOMMENT
LOW⚡util/compliance/compliance_mapper/compliance_mapper.py851 # Step 6: Generate output fileCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py183 # Step 1: Build provider creation payload (minimal)COMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py195 # Step 2: Build secret creation payload if credentials are providedCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py463 # Step 1: Create providerCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py479 # Step 2: Create secret if providedCOMMENT
LOW…prowler-bulk-provisioning/prowler_bulk_provisioning.py501 # Step 3: Test connection if requestedCOMMENT
LOW⚡…ds_instance_inside_vpc/rds_instance_inside_vpc_test.py44 # Step 1: Create the VPCCOMMENT
LOW⚡…/services/defenderidentity/defenderidentity_service.py76 # Step 1: Call the APICOMMENT
LOW…/services/defenderidentity/defenderidentity_service.py98 # Step 2: Parse the responseCOMMENT
LOW⚡…/services/defenderidentity/defenderidentity_service.py163 # Step 1: Call the APICOMMENT
LOW…/services/defenderidentity/defenderidentity_service.py187 # Step 2: Parse the responseCOMMENT
LOW…derxdr_endpoint_privileged_user_exposed_credentials.py41 # Step 1: Check MDE statusCOMMENT
LOW…derxdr_endpoint_privileged_user_exposed_credentials.py96 # Step 2: MDE is active with devices - check for exposed credentialsCOMMENT
LOWapi/src/backend/api/v1/mixins.py299 # Add kwargs filters - we need to check if the task kwargs contain our parametersCOMMENT
LOW⚡api/src/backend/api/attack_paths/cypher_sanitizer.py105 # Step 1: Protect strings and comments (single pass, leftmost-first)COMMENT
LOW⚡api/src/backend/api/attack_paths/cypher_sanitizer.py114 # Step 2: Split by clause keywordsCOMMENT
LOWapi/src/backend/api/attack_paths/cypher_sanitizer.py135 # Step 5: Restore protected regionsCOMMENT
LOW⚡skills/prowler-provider/assets/provider.py56 # Step 1: Setup session (authentication)COMMENT
LOW⚡skills/prowler-provider/assets/provider.py60 # Step 2: Setup identity (who is authenticated)COMMENT
LOW⚡skills/prowler-provider/assets/provider.py63 # Step 3: Load audit configCOMMENT
LOW⚡skills/prowler-provider/assets/provider.py71 # Step 4: Load fixer configCOMMENT
LOW⚡skills/prowler-provider/assets/provider.py74 # Step 5: Load mutelistCOMMENT
LOW⚡…rver/prowler_mcp_server/prowler_app/tools/providers.py244 # Step 1: Check if provider already existsCOMMENT
LOW⚡…rver/prowler_mcp_server/prowler_app/tools/providers.py247 # Step 2: Create or update providerCOMMENT
LOW⚡…rver/prowler_mcp_server/prowler_app/tools/providers.py255 # Step 3: Handle credentials if provided and capture secret responseCOMMENT
LOW⚡…rver/prowler_mcp_server/prowler_app/tools/providers.py262 # Step 4: Test connectionCOMMENT
LOW⚡…rver/prowler_mcp_server/prowler_app/tools/providers.py265 # Step 5: Get final provider state with relationshipsCOMMENT
AI Structural Patterns72 hits · 64 pts
SeverityFileLineSnippetContext
LOW…linode/services/compute/linode_compute_service_test.py10CODE
LOW…onal_access_policy_sign_in_frequency_all_users_test.py32CODE
LOW…red/entra_access_review_guest_users_configured_test.py13CODE
LOW…cy_corporate_device_sign_in_frequency_enforced_test.py24CODE
LOW…intune_enrollment_sign_in_frequency_every_time_test.py26CODE
LOW…al_access_policy_mdm_compliant_device_required_test.py29CODE
LOW…tional_access_policy_token_protection_enforced_test.py24CODE
LOW…ra_conditional_access_policy_no_exclusion_gaps_test.py26CODE
LOW…nal_access_policy_no_deleted_object_references_test.py19CODE
LOW…_access_policy_authentication_transfer_blocked_test.py23CODE
LOW…ntra_access_review_privileged_roles_configured_test.py13CODE
LOW…rs/okta/services/network_zone/network_zone_fixtures.py20CODE
LOW…/okta/services/application/application_service_test.py44CODE
LOW…ders/okta/services/application/application_fixtures.py55CODE
LOW…/okta/services/authenticator/authenticator_fixtures.py26CODE
LOWtests/providers/aws/utils.py104CODE
LOW…k_agent_role_not_shared_across_agents_versions_test.py48CODE
LOWprowler/providers/openstack/openstack_provider.py54CODE
LOWprowler/providers/openstack/openstack_provider.py159CODE
LOWprowler/providers/openstack/openstack_provider.py540CODE
LOW…/providers/googleworkspace/googleworkspace_provider.py76CODE
LOWprowler/providers/mongodbatlas/mongodbatlas_provider.py46CODE
LOWprowler/providers/e2enetworks/e2enetworks_provider.py38CODE
LOWprowler/providers/oraclecloud/oraclecloud_provider.py74CODE
LOWprowler/providers/oraclecloud/oraclecloud_provider.py280CODE
LOWprowler/providers/oraclecloud/oraclecloud_provider.py843CODE
LOWprowler/providers/vercel/vercel_provider.py45CODE
LOWprowler/providers/azure/azure_provider.py112CODE
LOWprowler/providers/azure/azure_provider.py625CODE
LOWprowler/providers/cloudflare/cloudflare_provider.py59CODE
LOWprowler/providers/gcp/gcp_provider.py74CODE
LOWprowler/providers/gcp/gcp_provider.py453CODE
LOWprowler/providers/alibabacloud/alibabacloud_provider.py130CODE
LOWprowler/providers/alibabacloud/alibabacloud_provider.py306CODE
LOWprowler/providers/alibabacloud/alibabacloud_provider.py795CODE
LOWprowler/providers/image/image_provider.py78CODE
LOWprowler/providers/iac/iac_provider.py41CODE
LOWprowler/providers/github/github_provider.py106CODE
LOWprowler/providers/huaweicloud/huaweicloud_provider.py67CODE
LOWprowler/providers/huaweicloud/huaweicloud_provider.py326CODE
LOWprowler/providers/m365/m365_provider.py115CODE
LOWprowler/providers/m365/m365_provider.py676CODE
LOWprowler/providers/okta/okta_provider.py95CODE
LOWprowler/providers/scaleway/scaleway_provider.py46CODE
LOWprowler/providers/stackit/stackit_provider.py93CODE
LOWprowler/providers/aws/aws_provider.py113CODE
LOWprowler/providers/aws/aws_provider.py1477CODE
LOWprowler/providers/aws/lib/s3/s3.py74CODE
LOWprowler/providers/aws/lib/s3/s3.py262CODE
LOWprowler/providers/aws/lib/security_hub/security_hub.py92CODE
LOWprowler/providers/aws/lib/security_hub/security_hub.py465CODE
LOWprowler/providers/aws/lib/session/aws_set_up_session.py32CODE
LOWprowler/providers/kubernetes/kubernetes_provider.py70CODE
LOWprowler/lib/scan/scan.py48CODE
LOWprowler/lib/check/checks_loader.py13CODE
LOWprowler/lib/outputs/jira/jira.py1578CODE
LOWprowler/lib/outputs/jira/jira.py2274CODE
LOWprowler/lib/outputs/jira/jira.py3051CODE
LOWapi/src/backend/tasks/jobs/threatscore_utils.py357CODE
LOWapi/src/backend/tasks/jobs/report.py652CODE
12 more matches not shown…
Modern AI Meta-Vocabulary22 hits · 59 pts
SeverityFileLineSnippetContext
MEDIUMui/tests/scans/scans.spec.ts6// Scans E2E suite scaffoldCOMMENT
MEDIUM…ble/resource-detail-drawer/lighthouse-skills-block.tsx15// Finding-detail CTA: a grid of launchable agentic workflows plusCOMMENT
MEDIUMui/components/side-panel/global-side-panel.test.tsx403 // Given: the user is on the agentic chat page with the panel openCOMMENT
MEDIUM…uts/compliance/config_status_renderer_coverage_test.py22# Base/dispatch modules that orchestrate renderers but never emit a status row.COMMENT
MEDIUM⚡…ance/aws_well_architected/aws_well_architected_test.py179 expected_csv = f"PROVIDER;DESCRIPTION;ACCOUNTID;REGION;ASSESSMENTDATE;REQUIREMENTS_ID;REQUIREMENTS_DESCRIPTION;RCODE
MEDIUM⚡…ance/aws_well_architected/aws_well_architected_test.py179 expected_csv = f"PROVIDER;DESCRIPTION;ACCOUNTID;REGION;ASSESSMENTDATE;REQUIREMENTS_ID;REQUIREMENTS_DESCRIPTION;RCODE
MEDIUM…wler/providers/aws/services/bedrock/bedrock_service.py82 # a definite "no guardrails", so it must not become a MANUAL finding.COMMENT
MEDIUM…k_guardrail_prompt_attack_filter_enabled.metadata.json22 "https://support.icompaas.com/support/solutions/articles/62000233535-ensure-prompt-attack-filter-is-configured-at-hiCODE
MEDIUM…k_guardrail_prompt_attack_filter_enabled.metadata.json23 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html"CODE
MEDIUM⚡…_enabled/bedrock_agent_guardrail_enabled.metadata.json19 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-create.html",CODE
MEDIUM⚡…_enabled/bedrock_agent_guardrail_enabled.metadata.json21 "https://www.trendmicro.com/trendaivisiononecloudriskmanagement/knowledge-base/aws/Bedrock/protect-agent-sessions-wiCODE
MEDIUM⚡…_enabled/bedrock_agent_guardrail_enabled.metadata.json22 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html"CODE
MEDIUM…configured/bedrock_guardrails_configured.metadata.json19 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html",CODE
MEDIUM…configured/bedrock_guardrails_configured.metadata.json20 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-create.html"CODE
MEDIUM…rail_contextual_grounding_filter_enabled.metadata.json18 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-contextual-grounding-check.html",CODE
MEDIUM⚡…ail_sensitive_information_filter_enabled.metadata.json21 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-sensitive-filters.html",CODE
MEDIUM⚡…ail_sensitive_information_filter_enabled.metadata.json22 "https://www.trendmicro.com/trendaivisiononecloudriskmanagement/knowledge-base/aws/Bedrock/guardrails-with-pii-mask-CODE
MEDIUM⚡…ail_sensitive_information_filter_enabled.metadata.json23 "https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html"CODE
MEDIUM…providers/aws/services/iam/lib/privilege_escalation.py313 # reads the execution role credentials from MMDS, bypassing the agent and guardrails.COMMENT
MEDIUMskills/README.md3This directory contains **Agent Skills** following the [Agent Skills open standard](https://agentskills.io). Skills provCODE
MEDIUMskills/prowler-compliance/SKILL.md1085# Requirements with config guardrails (empty arrays are truthy in jq — check length)COMMENT
MEDIUMmcp_server/AGENTS.md74├── server.py # Main orchestrationCODE
AI Slop Vocabulary22 hits · 40 pts
SeverityFileLineSnippetContext
MEDIUM…ra_conditional_access_policy_no_exclusion_gaps_test.py423 # user-1 is covered, so it must not appear as a gap (whitespace-robust).COMMENT
MEDIUM⚡…ance/aws_well_architected/aws_well_architected_test.py179 expected_csv = f"PROVIDER;DESCRIPTION;ACCOUNTID;REGION;ASSESSMENTDATE;REQUIREMENTS_ID;REQUIREMENTS_DESCRIPTION;RCODE
MEDIUM…ge_enabled/gmail_comprehensive_mail_storage_enabled.py8 """Check that comprehensive mail storage is enabled.STRING
MEDIUM…s/zone/zone_waf_enabled/zone_waf_enabled.metadata.json23 "Terraform": "```hcl\n# Enable WAF managed rulesets for comprehensive protection\nresource \"cloudflare_ruleset\" CODE
MEDIUM…wler/providers/aws/services/ec2/lib/security_groups.py75 # Combine IPv4 and IPv6 ranges to facilitate a single check loop.COMMENT
MEDIUMprowler/compliance/azure/cis_6.0_azure.json129 "AuditProcedure": "Azure Databricks administrators can monitor and revoke personal access tokens within their CODE
MEDIUMprowler/compliance/azure/cis_4.0_azure.json986 "AuditProcedure": "Azure Databricks administrators can monitor and revoke personal access tokens within their CODE
MEDIUMprowler/compliance/azure/cis_5.0_azure.json129 "AuditProcedure": "Azure Databricks administrators can monitor and revoke personal access tokens within their CODE
MEDIUM⚡prowler/compliance/m365/cis_7.0_m365.json593 "AuditProcedure": "For this control, a Level 2 comprehensive attachment policy is defined as one that includesCODE
LOWprowler/lib/outputs/compliance/compliance_output.py45 # Compliance reports are always CSV, so just use the last suffixCOMMENT
LOWapi/src/backend/tasks/jobs/scan.py2703 # scan just set. Skip and let the newer scan's reset task do the work; ifSTRING
MEDIUM⚡…/prowler-compliance/assets/audit_framework_template.py57# for a comprehensive mapping cheat sheet built from a 172-AR CCC audit.COMMENT
MEDIUM…_server/prowler_mcp_server/prowler_app/tools/muting.py303 """Retrieve comprehensive details about a specific mute rule by its ID.STRING
LOW…_server/prowler_mcp_server/prowler_app/tools/muting.py432 # No updates provided, just return current stateCOMMENT
MEDIUM…erver/prowler_mcp_server/prowler_app/tools/findings.py188 """Retrieve comprehensive details about a specific security finding by its ID.STRING
MEDIUM…erver/prowler_mcp_server/prowler_app/tools/findings.py225 # Return comprehensive fields including temporal metadataCOMMENT
MEDIUM…p_server/prowler_mcp_server/prowler_app/tools/scans.py136 """Retrieve comprehensive details about a specific scan by its ID.STRING
MEDIUM…rver/prowler_mcp_server/prowler_app/tools/resources.py184 """Retrieve comprehensive details about a specific resource by its ID.STRING
MEDIUM…rver/prowler_mcp_server/prowler_app/models/findings.py160 """Detailed security finding with comprehensive information for deep analysis.STRING
MEDIUM…ver/prowler_mcp_server/prowler_app/models/resources.py47 """Detailed resource with comprehensive information for deep analysis.STRING
MEDIUMmcp_server/prowler_mcp_server/prowler_hub/server.py312 """Retrieve comprehensive details about a specific security check by its ID.STRING
MEDIUMmcp_server/prowler_mcp_server/prowler_hub/server.py663 """Retrieve comprehensive details about a specific compliance framework by its ID.STRING
Modern Structural Boilerplate22 hits · 22 pts
SeverityFileLineSnippetContext
LOW…ler/providers/alibabacloud/services/rds/rds_service.py26 def _set_region_id(request, regional_client) -> None:CODE
LOWprowler/providers/common/provider.py321 def set_global_provider(global_provider: "Provider") -> None:CODE
LOW…roviders/okta/services/network/network_zone_service.py42 def _set_retrieval_error(self, message: str) -> None:CODE
LOW⚡contrib/aws/simulate_policy/simulate_policy_service.py11logger = logging.getLogger(__name__)CODE
LOWapi/src/backend/tasks/jobs/attack_paths/__init__.py4__all__ = [CODE
LOWapi/src/backend/tasks/jobs/reports/__init__.py104__all__ = [CODE
LOWapi/src/backend/api/compliance.py11logger = logging.getLogger(__name__)CODE
LOWapi/src/backend/api/health.py32logger = logging.getLogger(__name__)CODE
LOWapi/src/backend/api/authentication.py20logger = logging.getLogger(__name__)CODE
LOWapi/src/backend/api/sse/__init__.py13__all__ = ["BaseSSEViewSet", "make_channel_name"]CODE
LOWapi/src/backend/api/attack_paths/__init__.py9__all__ = [CODE
LOWapi/src/backend/api/attack_paths/retryable_session.py10logger = logging.getLogger(__name__)CODE
LOWapi/src/backend/api/attack_paths/ingest/__init__.py20__all__ = [CODE
LOWapi/src/backend/api/attack_paths/queries/__init__.py11__all__ = [CODE
LOWapi/src/backend/api/attack_paths/sink/neo4j.py31logger = logging.getLogger(__name__)CODE
LOWapi/src/backend/api/attack_paths/sink/__init__.py21__all__ = [CODE
LOWapi/src/backend/api/attack_paths/sink/neptune.py45logger = logging.getLogger(__name__)CODE
LOWmcp_server/prowler_mcp_server/__init__.py12__all__ = ["__version__", "__author__", "__email__"]CODE
LOW…rver/prowler_mcp_server/prowler_app/models/__init__.py19__all__ = [CODE
LOWmcp_server/prowler_mcp_server/lib/__init__.py3__all__ = ["logger"]CODE
LOWmcp_server/prowler_mcp_server/prowler_hub/__init__.py3__all__ = ["prowler_hub_mcp"]CODE
LOWmcp_server/tests/helpers/__init__.py32__all__ = [CODE
Example Usage Blocks4 hits · 6 pts
SeverityFileLineSnippetContext
LOWcontrib/reverse-proxy/docker-compose.reverse-proxy.yml6# Usage:COMMENT
LOW.github/scripts/osv-scan.sh24# Usage:COMMENT
LOWskills/setup.sh9# Usage:COMMENT
LOWskills/prowler-compliance/assets/configs/ccc.yaml3# Usage:COMMENT
Magic Placeholder Names1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHutil/compliance/compliance_mapper/README.md121 export OPENAI_API_KEY="your-api-key-here"CODE
Overly Generic Function Names2 hits · 2 pts
SeverityFileLineSnippetContext
LOWui/public/mockServiceWorker.js129async function handleRequest(event, requestId, requestInterceptedAt) {CODE
LOW…_content/awslambda_layer_no_secrets_in_content_test.py37def helper():CODE
Dead Code1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMapi/src/backend/tasks/tests/test_attack_paths_scan.py1800CODE