Prowler scans for secrets stored in plaintext within the audited environment using Kingfisher, an open-source secret-scanning engine. By default these scans run fully offline, so no data leaves the audited environment. Discovered secrets can optionally be validated against the provider APIs to confirm whether they are live — see Validating Discovered Secrets.The checks with this functionality are the following.AWS:
Passing secret values directly on the command line exposes them in process listings and shell history. Prowler CLI displays a warning when this pattern is detected. Use the SHODAN_API_KEY environment variable instead.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Prowler Documentation","colors":{"primary":"#000000","light":"#10B981","dark":"#10B981"},"logo":{"light":"https://mintcdn.com/prowler/9AoCN7Q_gXN7wF7l/images/prowler-logo-black.png?fit=max\u0026auto=format\u0026n=9AoCN7Q_gXN7wF7l\u0026q=85\u0026s=ef04b156a66c645df9b007510a0e9586","dark":"https://mintcdn.com/prowler/9AoCN7Q_gXN7wF7l/images/prowler-logo-white.png?fit=max\u0026auto=format\u0026n=9AoCN7Q_gXN7wF7l\u0026q=85\u0026s=10f457b5b22bff6da704089ae1c7dab7"},"favicon":"https://mintcdn.com/prowler/su_yXbKgm6vDhiMb/favicon.ico?fit=max\u0026auto=format\u0026n=su_yXbKgm6vDhiMb\u0026q=85\u0026s=430f271ddae7adaa2e4122f946e4e86d","navbar":{"links":[{"href":"https://hub.prowler.com","label":"Prowler Hub"},{"href":"https://cloud.prowler.com","label":"Prowler Cloud"}]},"footer":{"socials":{"x-twitter":"https://x.com/prowlercloud","github":"https://github.com/prowler-cloud/prowler","linkedin":"https://www.linkedin.com/company/prowler-security","youtube":"https://www.youtube.com/@prowlercloud","slack":"https://goto.prowler.com/slack","website":"https://prowler.com"}},"banner":{"content":"Prowler App is now Prowler Local Server, and Prowler Enterprise is now Prowler Private Cloud. See [Prowler product families](/getting-started/products). Check the [latest changes](/changelog).","dismissible":false},"contextual":{"options":["copy","view",{"title":"Request a feature","description":"Open a feature request on GitHub","icon":"plus","href":"https://github.com/prowler-cloud/prowler/issues/new?template=feature-request.yml"},{"title":"Report an issue","description":"Open a bug report on GitHub","icon":"bug","href":"https://github.com/prowler-cloud/prowler/issues/new?template=bug_report.yml"}],"display":"header"},"markdown":{"instructions":"Prowler product naming: Prowler App is now Prowler Local Server, and Prowler Enterprise is now Prowler Private Cloud. Always use the current names when answering. The full product reference is at /getting-started/products: Open Source projects are Prowler CLI, Prowler Local Server, Prowler Local Dashboard, and Prowler SDK; Prowler Products are Prowler Cloud, Prowler Private Cloud, Prowler Hub, Prowler Lighthouse AI, and Prowler MCP."},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/prowler-cloud/prowler"},{"anchor":"Slack","icon":"slack","href":"https://goto.prowler.com/slack"},{"anchor":"YouTube","icon":"youtube","href":"https://www.youtube.com/@prowlercloud"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"prowler","hasAudioNarration":false,"actualSubdomain":"prowler","customDomains":["docs.prowler.com"],"gitSource":{"type":"github","owner":"prowler-cloud","repo":"prowler","deployBranch":"master","contentDirectory":"docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae36849fa750f92078314fa","collectionId":"016303ef-ee49-4c28-82b7-218831a034cf","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae36849fa750f92078314fa"},"feedback":{"thumbs":true,"agentFeedback":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"DISABLED","enabled":"DISABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aea6a192cb0ad81e1410ee5","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Guides","count":130},{"language":"default","tag":"Providers","count":75},{"language":"default","tag":"Prowler Cloud","count":40},{"language":"default","tag":"Developer Guide","count":32},{"language":"default","tag":"Getting Started","count":27},{"language":"default","tag":"CLI","count":16},{"language":"default","tag":"Concepts","count":14},{"language":"default","tag":"Prowler Products","count":13},{"language":"default","tag":"AWS","count":11},{"language":"default","tag":"Miscellaneous","count":9}],"searchSettings":{"isFiltersEnabled":false}},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".version-badge-link,.version-badge-link:active,.version-badge-link:focus,.version-badge-link:hover,.version-badge-link:visited{display:inline-block;text-decoration:none!important;background-image:none!important;border-bottom:none!important;color:inherit;transition:opacity .15s ease-in-out}.version-badge-link:hover{opacity:.85}.version-badge-container{display:inline-block;margin:0 0 1rem;padding:0}.version-badge{display:inline-flex;align-items:center;margin:0;padding:.375rem .75rem;background:linear-gradient(135deg,#1a1a1a 0,#000 100%);color:#fff;border-radius:1.25rem;font-weight:400;font-size:.875rem;line-height:1.25rem;border:1px solid rgba(0,0,0,.15);box-shadow:none}.version-badge-label{font-weight:400;opacity:1}.version-badge-version{background:rgba(255,255,255,.12);padding:.125rem .5rem;border-radius:.875rem;font-family:ui-monospace,SFMono-Regular,'SF Mono',Menlo,Monaco,'Cascadia Code','Roboto Mono',Consolas,'Courier New',monospace;font-weight:600;font-size:.875rem;color:#fff;border:0}.dark .version-badge{background:#55b685;color:#000;border:2px solid rgba(85,182,133,.3);box-shadow:none}.dark .version-badge-version{background:rgba(0,0,0,.1);color:#000;border:0}div:has(+ul a[href=\"/security/encryption\"]) h3 span::after,li[data-title=\"Prowler Cloud\"]>button span:first-child::after,li[data-title=\"Prowler Lighthouse AI\"]>button span:first-child::after,li[data-title=\"Prowler MCP\"]>button span:first-child::after,li[data-title=\"Prowler for AI Agents\"]>button span:first-child::after,li[data-title=Providers]>button span:first-child::after,li[data-title=Scans]>button span:first-child::after,li[id=\"/getting-started/products/prowler-private-cloud-aws-marketplace\"] a>div>div>span:first-child::after,li[id=\"/user-guide/compliance/tutorials/cross-provider-compliance\"] a>div>div>span:first-child::after,li[id=\"/user-guide/compliance/tutorials/cross-provider-type-compliance\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-alerts\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-app-attack-paths-active-queries\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-app-findings-triage\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-app-scan-configuration\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-app-slack-integration\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-cloud-aws-organizations\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-cloud-azure-management-groups\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-cloud-gcp-organizations\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-cloud-lighthouse-multi-llm\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-import-findings\"] a>div>div>span:first-child::after,li[id=\"/user-guide/tutorials/prowler-scan-scheduling\"] a>div>div>span:first-child::after{content:\"\";display:inline-block;width:.875rem;height:.875rem;margin-left:.375rem;vertical-align:-.125rem;background:url(/images/icons/cloud-bold.svg) no-repeat center/contain}@media (min-width:1024px){#sidebar{width:20rem!important}div[class*=\"pl-[23.7rem]\"]{padding-left:25.7rem!important}}@media (min-width:1280px){div[class*=\"(100%-28rem)\"]{width:calc(100% - 30rem)!important}}"}],"page":{"pagePath":"user-guide/cli/tutorials/pentesting","slug":"/user-guide/cli/tutorials/pentesting","pageMetadata":{"title":"Pentesting","description":null,"href":"/user-guide/cli/tutorials/pentesting"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Prowler has some checks that analyse pentesting risks (Secrets, Internet Exposed, AuthN, AuthZ, and more).`}),`\n`,_jsx(Heading,{level:`2`,id:`detect-secrets`,children:`Detect Secrets`}),`\n`,_jsxs(_components.p,{children:[`Prowler scans for secrets stored in plaintext within the audited environment using `,_jsx(_components.a,{href:`https://github.com/mongodb/kingfisher`,children:`Kingfisher`}),`, an open-source secret-scanning engine. By default these scans run fully offline, so no data leaves the audited environment. Discovered secrets can optionally be validated against the provider APIs to confirm whether they are live — see `,_jsx(_components.a,{href:`/user-guide/cli/tutorials/configuration_file#validating-discovered-secrets`,children:`Validating Discovered Secrets`}),`.`]}),`\n`,_jsx(_components.p,{children:`The checks with this functionality are the following.`}),`\n`,_jsx(_components.p,{children:`AWS:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`apigateway_restapi_no_secrets_in_stage_variables`}),`\n`,_jsx(_components.li,{children:`autoscaling_find_secrets_ec2_launch_configuration`}),`\n`,_jsx(_components.li,{children:`awslambda_function_no_secrets_in_code`}),`\n`,_jsx(_components.li,{children:`awslambda_function_no_secrets_in_variables`}),`\n`,_jsx(_components.li,{children:`cloudformation_stack_outputs_find_secrets`}),`\n`,_jsx(_components.li,{children:`cloudwatch_log_group_no_secrets_in_logs`}),`\n`,_jsx(_components.li,{children:`codebuild_project_no_secrets_in_variables`}),`\n`,_jsx(_components.li,{children:`ec2_instance_secrets_user_data`}),`\n`,_jsx(_components.li,{children:`ec2_launch_template_no_secrets`}),`\n`,_jsx(_components.li,{children:`ecs_task_definitions_no_environment_secrets`}),`\n`,_jsx(_components.li,{children:`glue_etl_jobs_no_secrets_in_arguments`}),`\n`,_jsx(_components.li,{children:`ssm_document_secrets`}),`\n`,_jsx(_components.li,{children:`stepfunctions_statemachine_no_secrets_in_definition`}),`\n`]}),`\n`,_jsx(_components.p,{children:`OpenStack:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`compute_instance_metadata_sensitive_data`}),`\n`,_jsx(_components.li,{children:`blockstorage_volume_metadata_sensitive_data`}),`\n`,_jsx(_components.li,{children:`blockstorage_snapshot_metadata_sensitive_data`}),`\n`,_jsx(_components.li,{children:`objectstorage_container_metadata_sensitive_data`}),`\n`]}),`\n`,_jsx(_components.p,{children:`To execute the secret-scanning checks, run the following command:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`prowler \u003cprovider> --categories secrets`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`internet-exposed-resources`,children:`Internet Exposed Resources`}),`\n`,_jsx(_components.p,{children:`Several checks analyse resources that are exposed to the Internet, these are:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`apigateway_restapi_public`}),`\n`,_jsx(_components.li,{children:`appstream_fleet_default_internet_access_disabled`}),`\n`,_jsx(_components.li,{children:`awslambda_function_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`ec2_ami_public`}),`\n`,_jsx(_components.li,{children:`ec2_ebs_public_snapshot`}),`\n`,_jsx(_components.li,{children:`ec2_instance_internet_facing_with_instance_profile`}),`\n`,_jsx(_components.li,{children:`ec2_instance_port_X_exposed_to_internet (where X is the port number)`}),`\n`,_jsx(_components.li,{children:`ec2_instance_public_ip`}),`\n`,_jsx(_components.li,{children:`ec2_networkacl_allow_ingress_any_port`}),`\n`,_jsx(_components.li,{children:`ec2_securitygroup_allow_wide_open_public_ipv4`}),`\n`,_jsx(_components.li,{children:`ec2_securitygroup_allow_ingress_from_internet_to_any_port`}),`\n`,_jsx(_components.li,{children:`ecr_repositories_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`eks_control_plane_endpoint_access_restricted`}),`\n`,_jsx(_components.li,{children:`eks_endpoints_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`elbv2_internet_facing`}),`\n`,_jsx(_components.li,{children:`kms_key_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`opensearch_service_domains_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`rds_instance_no_public_access`}),`\n`,_jsx(_components.li,{children:`rds_snapshots_public_access`}),`\n`,_jsx(_components.li,{children:`s3_bucket_policy_public_write_access`}),`\n`,_jsx(_components.li,{children:`s3_bucket_public_access`}),`\n`,_jsx(_components.li,{children:`sagemaker_notebook_instance_without_direct_internet_access_configured`}),`\n`,_jsx(_components.li,{children:`sns_topics_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`sqs_queues_not_publicly_accessible`}),`\n`,_jsx(_components.li,{children:`network_public_ip_shodan`}),`\n`]}),`\n`,_jsx(_components.p,{children:`To execute Internet-exposed related checks, you can run the following command:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`prowler \u003cprovider> --categories internet-exposed`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`shodan`,children:`Shodan`}),`\n`,_jsxs(_components.p,{children:[`Prowler can check whether any public IPs in cloud environments are exposed in Shodan using the `,_jsx(_components.code,{children:`-N`}),`/`,_jsx(_components.code,{children:`--shodan`}),` option.`]}),`\n`,_jsx(Heading,{level:`4`,id:`using-the-environment-variable-recommended`,children:`Using the Environment Variable (Recommended)`}),`\n`,_jsxs(_components.p,{children:[`Set the `,_jsx(_components.code,{children:`SHODAN_API_KEY`}),` environment variable to avoid exposing the API key in process listings and shell history:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`export SHODAN_API_KEY=\u003cshodan_api_key>`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Then run Prowler with the `,_jsx(_components.code,{children:`--shodan`}),` flag (no value needed):`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`prowler aws --shodan -c ec2_elastic_ip_shodan`})}),`\n`]})})}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`prowler azure --shodan -c network_public_ip_shodan`})}),`\n`]})})}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`prowler gcp --shodan -c compute_public_address_shodan`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`4`,id:`using-the-cli-flag`,children:`Using the CLI Flag`}),`\n`,_jsx(_components.p,{children:`Alternatively, pass the API key directly on the command line:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellsession`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellsession`,children:_jsxs(_components.code,{language:`shellsession`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#D4D4D4`},children:`prowler aws --shodan \u003cshodan_api_key> -c ec2_elastic_ip_shodan`})}),`\n`]})})}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Passing secret values directly on the command line exposes them in process listings and shell history. Prowler CLI displays a warning when this pattern is detected. Use the `,_jsx(_components.code,{children:`SHODAN_API_KEY`}),` environment variable instead.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Pentesting","description":null,"href":"/user-guide/cli/tutorials/pentesting"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Detect Secrets","slug":"detect-secrets","depth":2,"children":[]},{"title":"Internet Exposed Resources","slug":"internet-exposed-resources","depth":2,"children":[{"title":"Shodan","slug":"shodan","depth":3,"children":[]},{"title":"Using the Environment Variable (Recommended)","slug":"using-the-environment-variable-recommended","depth":4,"children":[]},{"title":"Using the CLI Flag","slug":"using-the-cli-flag","depth":4,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/prowler/519a27d344d55662/reo.js"],"subdomain":"prowler","siteName":"Prowler Documentation","title":"Pentesting - Prowler Documentation","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-03T23:11:40.989Z","originalFileLocation":"user-guide/cli/tutorials/pentesting.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Prowler Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Pentesting - Prowler Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Prowler Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://prowler.mintlify.app/_mintlify/api/og/v2?division=CLI\u0026amp;title=Pentesting\u0026amp;theme=78957b732394beb632f3b0ee\u0026amp;signature=32215ab545a8c3be77f90807e8e0af1ac039e80c7329492914f3e5ae1bf0a5d9\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Pentesting - Prowler Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://prowler.mintlify.app/_mintlify/api/og/v2?division=CLI\u0026amp;title=Pentesting\u0026amp;theme=78957b732394beb632f3b0ee\u0026amp;signature=32215ab545a8c3be77f90807e8e0af1ac039e80c7329492914f3e5ae1bf0a5d9\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/prowler/9tmK8gDkk9C9T-Po/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Prowler Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#000000\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/user-guide/cli/tutorials/pentesting.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.prowler.com/#organization\",\"name\":\"Prowler Documentation\",\"url\":\"https://docs.prowler.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/prowler/9AoCN7Q_gXN7wF7l/images/prowler-logo-black.png?fit=max\u0026auto=format\u0026n=9AoCN7Q_gXN7wF7l\u0026q=85\u0026s=ef04b156a66c645df9b007510a0e9586\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.prowler.com#website\",\"name\":\"Prowler Documentation\",\"url\":\"https://docs.prowler.com\",\"publisher\":{\"@id\":\"https://docs.prowler.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting#webpage\",\"url\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting\",\"name\":\"Pentesting\",\"dateModified\":\"2026-11-03T23:11:40.989Z\",\"isPartOf\":{\"@id\":\"https://docs.prowler.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"CLI\",\"item\":\"https://docs.prowler.com/user-guide/cli/tutorials/misc\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pentesting\",\"item\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting#article\",\"headline\":\"Pentesting\",\"name\":\"Pentesting\",\"url\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting\",\"mainEntityOfPage\":{\"@id\":\"https://docs.prowler.com/user-guide/cli/tutorials/pentesting#webpage\"},\"dateModified\":\"2026-11-03T23:11:40.989Z\",\"publisher\":{\"@id\":\"https://docs.prowler.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.prowler.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Prowler Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Prowler Documentation","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/prowler-cloud/prowler"},{"anchor":"Slack","icon":"slack","href":"https://goto.prowler.com/slack"},{"anchor":"YouTube","icon":"youtube","href":"https://www.youtube.com/@prowlercloud"}]},"tabs":[{"tab":"Getting Started","pages":[{"title":"Getting Started","href":"/introduction"}]},{"tab":"Guides","groups":[{"group":"Prowler Cloud","pages":[{"title":"Prowler Cloud","sidebarTitle":"Getting Started","href":"/user-guide/tutorials/prowler-app"},{"group":"Authentication \u0026 Access","pages":[{"title":"API Keys","href":"/user-guide/tutorials/prowler-app-api-keys"},{"title":"Managing Organizations (Multi-Tenant)","sidebarTitle":"Organizations","href":"/user-guide/tutorials/prowler-app-multi-tenant"},{"title":"SAML Single Sign-On (SSO)","sidebarTitle":"SAML SSO","href":"/user-guide/tutorials/prowler-app-sso"},{"title":"Social Login Configuration","sidebarTitle":"Social Login","href":"/user-guide/tutorials/prowler-app-social-login"},{"title":"Managing Users and Role-Based Access Control (RBAC)","sidebarTitle":"Users \u0026 RBAC","href":"/user-guide/tutorials/prowler-app-rbac"}]},{"group":"Attack Paths","pages":[{"title":"Attack Paths","sidebarTitle":"Overview","href":"/user-guide/tutorials/prowler-app-attack-paths"},{"title":"Active Queries","sidebarTitle":"Active Queries","href":"/user-guide/tutorials/prowler-app-attack-paths-active-queries"}]},{"group":"Compliance","pages":[{"title":"Compliance","sidebarTitle":"Overview","href":"/user-guide/compliance/tutorials/compliance"},{"title":"Cross-Provider Type Compliance","sidebarTitle":"Cross-Provider Type Compliance","href":"/user-guide/compliance/tutorials/cross-provider-type-compliance"},{"title":"Cross-Provider Compliance","sidebarTitle":"Cross-Provider Compliance","href":"/user-guide/compliance/tutorials/cross-provider-compliance"},{"title":"Prowler ThreatScore","href":"/user-guide/compliance/tutorials/threatscore"}]},{"group":"Findings","pages":[{"title":"Alerts","sidebarTitle":"Alerts","href":"/user-guide/tutorials/prowler-alerts"},{"title":"Finding Groups","sidebarTitle":"Groups","href":"/user-guide/tutorials/prowler-app-finding-groups"},{"title":"Findings Triage","sidebarTitle":"Triage","href":"/user-guide/tutorials/prowler-app-findings-triage"}]},{"group":"Integrations","pages":[{"title":"Amazon S3 Integration","sidebarTitle":"Amazon S3","href":"/user-guide/tutorials/prowler-app-s3-integration"},{"title":"AWS Security Hub Integration","sidebarTitle":"AWS Security Hub","href":"/user-guide/tutorials/prowler-app-security-hub-integration"},{"title":"Jira Integration","sidebarTitle":"Jira","href":"/user-guide/tutorials/prowler-app-jira-integration"},{"title":"Slack Integration","sidebarTitle":"Slack","href":"/user-guide/tutorials/prowler-app-slack-integration"}]},{"group":"Mutelist","pages":[{"title":"Advanced Mutelist","href":"/user-guide/tutorials/prowler-app-mute-findings"},{"title":"Simple Mutelist","href":"/user-guide/tutorials/prowler-app-simple-mutelist"}]},{"group":"Providers","pages":[{"title":"AWS Organizations","href":"/user-guide/tutorials/prowler-cloud-aws-organizations"},{"title":"Azure Management Groups","href":"/user-guide/tutorials/prowler-cloud-azure-management-groups"},{"title":"GCP Organizations","href":"/user-guide/tutorials/prowler-cloud-gcp-organizations"}]},{"group":"Scans","pages":[{"title":"Scan Configuration","sidebarTitle":"Configuration","href":"/user-guide/tutorials/prowler-app-scan-configuration"},{"title":"Import Findings","sidebarTitle":"Import Findings","href":"/user-guide/tutorials/prowler-import-findings"},{"title":"Scan Scheduling","sidebarTitle":"Scheduling","href":"/user-guide/tutorials/prowler-scan-scheduling"}]},{"group":"Tutorials","pages":[{"title":"AWS Organizations Bulk Provisioning in Prowler","href":"/user-guide/tutorials/aws-organizations-bulk-provisioning"},{"title":"Bulk Provider Provisioning in Prowler","href":"/user-guide/tutorials/bulk-provider-provisioning"},{"title":"Entra ID Configuration","href":"/user-guide/tutorials/prowler-app-sso-entra"},{"title":"SAML SSO: Google Workspace","href":"/user-guide/tutorials/prowler-app-sso-google-workspace"}]}]},{"group":"Prowler for MSPs and MSSPs","pages":[{"title":"Sign Up and Sign In to Prowler for MSPs and MSSPs","sidebarTitle":"Sign Up and Sign In","href":"/user-guide/tutorials/prowler-for-msps-sign-up"},{"title":"Managing Your Partner Organization","sidebarTitle":"Your Partner Organization","href":"/user-guide/tutorials/prowler-for-msps-organization"},{"title":"Managing Your Team in Prowler for MSPs and MSSPs","sidebarTitle":"Managing Your Team","href":"/user-guide/tutorials/prowler-for-msps-team"},{"title":"Onboarding Customers and Accessing Their Tenants","sidebarTitle":"Onboarding Customers","href":"/user-guide/tutorials/prowler-for-msps-customers"},{"title":"Billing and Customer Plans in Prowler for MSPs and MSSPs","sidebarTitle":"Billing and Plans","href":"/user-guide/tutorials/prowler-for-msps-billing"},{"title":"Customizing Your Branding in Prowler for MSPs and MSSPs","sidebarTitle":"Branding","href":"/user-guide/tutorials/prowler-for-msps-branding"}]},{"group":"Prowler Lighthouse AI","pages":[{"group":"Prowler Cloud","pages":[{"title":"Using Multiple LLM Providers","sidebarTitle":"Multiple LLM Providers","href":"/user-guide/tutorials/prowler-cloud-lighthouse-multi-llm"}]},{"group":"Prowler Local Server","pages":[{"title":"Overview","href":"/getting-started/products/prowler-lighthouse-ai"},{"title":"How It Works","href":"/user-guide/tutorials/prowler-app-lighthouse"},{"title":"Using Multiple LLM Providers with Lighthouse","sidebarTitle":"Multiple LLM Providers","href":"/user-guide/tutorials/prowler-app-lighthouse-multi-llm"}]}]},{"group":"Prowler for AI Agents","pages":[{"title":"Connect Your AI Agent to Prowler","sidebarTitle":"Overview","href":"/user-guide/ai-agents/index"},{"title":"Connect Claude Code to Prowler MCP Server","sidebarTitle":"Claude Code","href":"/user-guide/ai-agents/claude-code"},{"title":"Connect the Claude App Chat to Prowler MCP Server","sidebarTitle":"Claude App (Chat)","href":"/user-guide/ai-agents/claude-desktop"},{"title":"Connect Codex / ChatGPT Desktop to Prowler MCP Server","sidebarTitle":"Codex / ChatGPT","href":"/user-guide/ai-agents/codex"},{"title":"Connect Cursor to Prowler MCP Server","sidebarTitle":"Cursor","href":"/user-guide/ai-agents/cursor"},{"title":"Connect VS Code and GitHub Copilot to Prowler MCP Server","sidebarTitle":"VS Code / Copilot","href":"/user-guide/ai-agents/vscode"}]},{"group":"CI/CD","pages":[{"title":"GitHub Action","href":"/user-guide/tutorials/prowler-app-github-action"},{"title":"Run Prowler in CI/CD and Send Findings to Prowler Cloud","href":"/user-guide/cookbooks/cicd-pipeline"}]},{"group":"CLI","pages":[{"title":"Miscellaneous","href":"/user-guide/cli/tutorials/misc"},{"title":"Reporting in Prowler","href":"/user-guide/cli/tutorials/reporting"},{"title":"Prowler Local Dashboard","href":"/user-guide/cli/tutorials/dashboard"},{"title":"Configuration File","href":"/user-guide/cli/tutorials/configuration_file"},{"title":"Logging","href":"/user-guide/cli/tutorials/logging"},{"title":"Mutelisting","href":"/user-guide/cli/tutorials/mutelist"},{"group":"Integrations","pages":[{"title":"AWS Security Hub Integration with Prowler","href":"/user-guide/providers/aws/securityhub"},{"title":"Integrations","href":"/user-guide/cli/tutorials/integrations"},{"title":"Sending Reports to an AWS S3 Bucket","href":"/user-guide/providers/aws/s3"}]},{"title":"Prowler Fixers (Remediations)","href":"/user-guide/cli/tutorials/fixer"},{"title":"Check Aliases","href":"/user-guide/cli/tutorials/check-aliases"},{"title":"Custom Checks Metadata","description":null,"href":"/user-guide/cli/tutorials/custom-checks-metadata"},{"title":"Pentesting","href":"/user-guide/cli/tutorials/pentesting"},{"title":"Scanning Unused Services","description":null,"href":"/user-guide/cli/tutorials/scan-unused-services"},{"title":"Quick Inventory","href":"/user-guide/cli/tutorials/quick-inventory"},{"group":"Tutorials","pages":[{"title":"Parallel Execution","href":"/user-guide/cli/tutorials/parallel-execution"}]}]},{"group":"Providers","pages":[{"group":"Organizations","pages":[{"title":"Organizations Across Cloud Providers","href":"/user-guide/organizations"},{"title":"AWS Organizations in Prowler","href":"/user-guide/providers/aws/organizations"},{"title":"Scanning a Specific GCP Organization","href":"/user-guide/providers/gcp/organization"},{"title":"Azure Management Groups in Prowler","href":"/user-guide/providers/azure/management-groups"}]},{"group":"Alibaba Cloud","pages":[{"title":"Getting Started With Alibaba Cloud on Prowler","href":"/user-guide/providers/alibabacloud/getting-started-alibabacloud"},{"title":"Alibaba Cloud Authentication in Prowler","href":"/user-guide/providers/alibabacloud/authentication"}]},{"group":"AWS","pages":[{"title":"Getting Started With AWS on Prowler","href":"/user-guide/providers/aws/getting-started-aws"},{"title":"AWS Authentication in Prowler","href":"/user-guide/providers/aws/authentication"},{"title":"AWS Assume Role in Prowler (CLI)","href":"/user-guide/providers/aws/role-assumption"},{"title":"AWS Organizations in Prowler","href":"/user-guide/providers/aws/organizations"},{"title":"AWS Regions and Partitions","href":"/user-guide/providers/aws/regions-and-partitions"},{"title":"Tag-based scan","href":"/user-guide/providers/aws/tag-based-scan"},{"title":"Resource ARN-based Scanning","href":"/user-guide/providers/aws/resource-arn-based-scan"},{"title":"Boto3 Retrier and Timeout Configuration in Prowler","href":"/user-guide/providers/aws/boto3-configuration"},{"title":"Threat Detection in AWS with Prowler","href":"/user-guide/providers/aws/threat-detection"},{"title":"Installing Prowler in AWS CloudShell","href":"/user-guide/providers/aws/cloudshell"},{"title":"Scanning Multiple AWS Accounts with Prowler","href":"/user-guide/providers/aws/multiaccount"}]},{"group":"Azure","pages":[{"title":"Getting Started With Azure on Prowler","href":"/user-guide/providers/azure/getting-started-azure"},{"title":"Azure Authentication in Prowler","href":"/user-guide/providers/azure/authentication"},{"title":"Using Non-Default Azure Regions","href":"/user-guide/providers/azure/use-non-default-cloud"},{"title":"Azure Management Groups in Prowler","href":"/user-guide/providers/azure/management-groups"},{"title":"Azure Subscription Scope","href":"/user-guide/providers/azure/subscriptions"},{"title":"Azure Resource Group Scope","href":"/user-guide/providers/azure/resource-groups"},{"title":"Creating a Prowler Service Principal Application","href":"/user-guide/providers/azure/create-prowler-service-principal"}]},{"group":"Cloudflare","pages":[{"title":"Getting Started With Cloudflare on Prowler","href":"/user-guide/providers/cloudflare/getting-started-cloudflare"},{"title":"Cloudflare Authentication in Prowler","href":"/user-guide/providers/cloudflare/authentication"}]},{"group":"E2E Networks","pages":[{"title":"Getting Started With E2E Networks on Prowler","href":"/user-guide/providers/e2enetworks/getting-started-e2enetworks"},{"title":"E2E Networks Authentication in Prowler","href":"/user-guide/providers/e2enetworks/authentication"}]},{"group":"GitHub","pages":[{"title":"Getting Started with GitHub","href":"/user-guide/providers/github/getting-started-github"},{"title":"GitHub Authentication in Prowler","href":"/user-guide/providers/github/authentication"}]},{"group":"Google Cloud","pages":[{"title":"Getting Started With GCP on Prowler","href":"/user-guide/providers/gcp/getting-started-gcp"},{"title":"GCP Authentication in Prowler","href":"/user-guide/providers/gcp/authentication"},{"title":"GCP Project Scanning in Prowler","href":"/user-guide/providers/gcp/projects"},{"title":"Scanning a Specific GCP Organization","href":"/user-guide/providers/gcp/organization"},{"title":"GCP Retry Configuration in Prowler","href":"/user-guide/providers/gcp/retry-configuration"}]},{"group":"Google Workspace","pages":[{"title":"Getting Started With Google Workspace on Prowler","href":"/user-guide/providers/googleworkspace/getting-started-googleworkspace"},{"title":"Google Workspace Authentication in Prowler","href":"/user-guide/providers/googleworkspace/authentication"}]},{"group":"Huawei Cloud","pages":[{"title":"Getting Started With Huawei Cloud on Prowler","href":"/user-guide/providers/huaweicloud/getting-started-huaweicloud"},{"title":"Huawei Cloud Authentication in Prowler","href":"/user-guide/providers/huaweicloud/authentication"}]},{"group":"IaC","pages":[{"title":"Getting Started with the IaC Provider","href":"/user-guide/providers/iac/getting-started-iac"},{"title":"IaC Authentication in Prowler","href":"/user-guide/providers/iac/authentication"}]},{"group":"Image","pages":[{"title":"Getting Started with the Image Provider","href":"/user-guide/providers/image/getting-started-image"},{"title":"Image Authentication in Prowler","href":"/user-guide/providers/image/authentication"}]},{"group":"Kubernetes","pages":[{"title":"Getting Started with Kubernetes","href":"/user-guide/providers/kubernetes/getting-started-k8s"},{"title":"Miscellaneous","href":"/user-guide/providers/kubernetes/misc"}]},{"group":"Linode","pages":[{"title":"Getting Started With Linode on Prowler","href":"/user-guide/providers/linode/getting-started-linode"},{"title":"Linode Authentication in Prowler","href":"/user-guide/providers/linode/authentication"}]},{"group":"LLM","pages":[{"title":"Getting Started With LLM on Prowler","href":"/user-guide/providers/llm/getting-started-llm"}]},{"group":"Microsoft 365","pages":[{"title":"Getting Started With Microsoft 365 on Prowler","href":"/user-guide/providers/microsoft365/getting-started-m365"},{"title":"Microsoft 365 Authentication in Prowler","href":"/user-guide/providers/microsoft365/authentication"},{"title":"Installing PowerShell","href":"/user-guide/providers/microsoft365/use-of-powershell"}]},{"group":"MongoDB Atlas","pages":[{"title":"Getting Started with MongoDB Atlas","href":"/user-guide/providers/mongodbatlas/getting-started-mongodbatlas"},{"title":"MongoDB Atlas Authentication in Prowler","href":"/user-guide/providers/mongodbatlas/authentication"}]},{"group":"Okta","pages":[{"title":"Getting Started With Okta on Prowler","href":"/user-guide/providers/okta/getting-started-okta"},{"title":"Okta Authentication in Prowler","href":"/user-guide/providers/okta/authentication"},{"title":"Okta Rate Limit Configuration in Prowler","href":"/user-guide/providers/okta/retry-configuration"}]},{"group":"OpenStack","pages":[{"title":"Getting Started With OpenStack","href":"/user-guide/providers/openstack/getting-started-openstack"},{"title":"OpenStack Authentication in Prowler","href":"/user-guide/providers/openstack/authentication"}]},{"group":"Oracle Cloud Infrastructure","pages":[{"title":"Getting Started with Oracle Cloud Infrastructure (OCI)","href":"/user-guide/providers/oci/getting-started-oci"},{"title":"Oracle Cloud Infrastructure (OCI) Authentication in Prowler","href":"/user-guide/providers/oci/authentication"}]},{"group":"Scaleway","pages":[{"title":"Getting Started With Scaleway on Prowler","href":"/user-guide/providers/scaleway/getting-started-scaleway"},{"title":"Scaleway Authentication in Prowler","href":"/user-guide/providers/scaleway/authentication"}]},{"group":"StackIT","pages":[{"title":"Getting Started With StackIT","href":"/user-guide/providers/stackit/getting-started-stackit"},{"title":"StackIT Authentication","href":"/user-guide/providers/stackit/authentication"}]},{"group":"Vercel","pages":[{"title":"Getting Started With Vercel on Prowler","href":"/user-guide/providers/vercel/getting-started-vercel"},{"title":"Vercel Authentication in Prowler","href":"/user-guide/providers/vercel/authentication"}]}]},{"group":"Cookbooks","pages":[{"title":"Run Kubernetes In-Cluster and Send Findings to Prowler Cloud","href":"/user-guide/cookbooks/kubernetes-in-cluster"},{"title":"Run Prowler in CI/CD and Send Findings to Prowler Cloud","href":"/user-guide/cookbooks/cicd-pipeline"},{"title":"Visualize Multi-Cloud CIS Benchmarks With Power BI","href":"/user-guide/cookbooks/powerbi-cis-benchmarks"}]}]},{"tab":"Developer Guide","pages":[{"title":"Developer Guide","href":"/developer-guide/introduction"}]},{"tab":"Security","pages":[{"title":"Security","href":"/security"}]},{"tab":"Support","pages":[{"title":"Support","href":"/support"}]},{"tab":"Troubleshooting","pages":[{"title":"Troubleshooting","href":"/troubleshooting"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]},{"tab":"About Us","icon":"https://mintlify.s3.us-west-1.amazonaws.com/prowler/favicon.ico","href":"https://prowler.com/about#team"}]},"basePath":"","title":"Pentesting - Prowler Documentation","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["10e4515597"],"chunks":["BannerMarkdown-DIeMibn4.js","dist-DJnKvr0g.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-B2v50t8t.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js"]}