Checks
Browse individual security checks available in the Prowler Registry. Filter by cloud provider, severity, or search by check ID.
Browse individual security checks available in the Prowler Registry. Filter by cloud provider, severity, or search by check ID.
teams_external_file_sharing_restricted
Microsoft 365 Teams client settings restrict external file sharing via third-party storage providers to an approved allowlist. Configuration is considered in place when only sanctioned providers are enabled, or when all non-approved providers are disabled.
teams_external_users_cannot_start_conversations
Microsoft 365 Teams external access blocks conversation initiation from unmanaged Teams accounts when AllowTeamsConsumerInbound=false.
teams_meeting_anonymous_user_join_disabled
Microsoft 365 Teams org-wide meeting policy is evaluated to ensure anonymous meeting join is disabled, preventing non-authenticated participants from joining.
teams_meeting_anonymous_user_start_disabled
Microsoft 365 Teams meeting policies disable AllowAnonymousUsersToStartMeeting so anonymous users and dial-in callers cannot start meetings and must wait in the lobby until an authenticated participant joins
teams_meeting_chat_anonymous_users_disabled
Microsoft 365 Teams meeting policies restrict chat so anonymous participants cannot send or read messages.
Accepted configurations include EnabledExceptAnonymous or EnabledInMeetingOnlyForAllExceptAnonymous.
teams_meeting_dial_in_lobby_bypass_disabled
Microsoft 365 Teams meeting policies prevent PSTN dial-in callers from bypassing the lobby (AllowPSTNUsersToBypassLobby=false), requiring admission by organizers or presenters.
teams_meeting_external_chat_disabled
Microsoft 365 Teams meeting policy setting AllowExternalNonTrustedMeetingChat governs whether users can read or send chat messages in meetings hosted by untrusted organizations.
This assesses the org-wide default policy to confirm external meeting chat with non-trusted tenants is blocked.
teams_meeting_external_control_disabled
Microsoft 365 Teams meeting policies govern whether external participants can give, be given, or request control during screen sharing via allowExternalParticipantGiveRequestControl.
Evaluation targets the org-wide default policy to confirm external control actions are blocked.
teams_meeting_external_lobby_bypass_disabled
Teams Meetings global policy restricts lobby bypass so only EveryoneInCompanyExcludingGuests, OrganizerOnly, or InvitedUsers are auto-admitted; all others wait in the lobby.
teams_meeting_presenters_restricted
Teams meeting policy sets the default Who can present to only organizers and co-organizers in the org-wide policy.
This evaluates whether attendees are limited to the attendee role by default rather than joining as presenters.
teams_meeting_recording_disabled
Microsoft 365 Teams Global meeting policy has cloud meeting recording disabled by default (AllowCloudRecording=false).
teams_security_reporting_enabled
Teams messaging policies enable end-user security reporting via AllowSecurityEndUserReporting, letting users report messages from chats, channels, and meetings for security review.
teams_unmanaged_communication_disabled
Microsoft 365 Teams external access configuration for unmanaged Teams accounts is reviewed, expecting the "Teams accounts not managed by an organization" option to be Off, preventing chats with personal Microsoft accounts.
transfer_server_fips_security_policy_enabled
AWS Transfer Family servers (SFTP, FTPS, AS2) are assessed for use of a FIPS security policy (TransferSecurityPolicy-FIPS-*, flagged Fips: true by AWS), which limits file-transfer sessions to the FIPS-enabled set of SSH and TLS algorithms.
transfer_server_in_transit_encryption_enabled
AWS Transfer Family servers are evaluated for presence of the unencrypted FTP protocol among enabled protocols, as opposed to encrypted options like SFTP, FTPS, or AS2.
transfer_server_pqc_ssh_kex_enabled
AWS Transfer Family servers (SFTP, FTPS, AS2) are assessed for use of an approved post-quantum (PQ) hybrid SSH key exchange security policy. Servers whose SecurityPolicyName is not in the configured allowlist of PQ-ready Transfer Family security policies leave file-transfer sessions exposed to harvest-now, decrypt-later attacks.
trustedadvisor_errors_and_warnings
AWS Trusted Advisor check statuses are assessed to identify items in warning or error. The finding reflects the state reported by Trusted Advisor across categories such as Security, Fault Tolerance, Service Limits, and Cost, indicating where configurations or quotas require attention.
trustedadvisor_premium_support_plan_subscribed
AWS account is subscribed to an AWS Premium Support plan (e.g., Business or Enterprise)
user_inactivity_automation_35d_enabled
An Okta Workflows Automation must disable inactive user accounts. The automation must be ACTIVE, on an ACTIVE schedule, evaluate User Inactivity = 35 days (or less), apply to a group covering every user, and trigger Suspended / Deactivated / Deprovisioned. Threshold override: okta_user_inactivity_max_days. N/A when user sourcing is delegated to Active Directory or LDAP.
vm_backup_enabled
Azure VMs are evaluated for protection by Azure Backup by confirming they exist as VM backup items in a Recovery Services vault.
VMs absent from any vault item indicate no configured backup coverage.
vm_desired_sku_size
Azure virtual machines are compared against an organization allowlist of VM size SKUs defined in desired_vm_sku_sizes.
Instances using sizes outside this list are flagged as non-standard.
vm_ensure_attached_disks_encrypted_with_cmk
Attached Azure managed disks (OS and data) are assessed to confirm encryption uses customer-managed keys (CMK) via disk encryption sets rather than platform-managed keys. Scope includes disks currently attached to VMs, evaluating their encryption type to verify CMK is applied.
vm_ensure_unattached_disks_encrypted_with_cmk
Unattached Azure managed disks use Customer-Managed Keys (CMK) for server-side encryption rather than platform-managed keys. Only disks not currently attached to a VM are in scope.
vm_ensure_using_approved_images
Azure VMs are evaluated for use of an approved custom image by inspecting the VM image reference. The expected format is a subscription-scoped ID like /subscriptions/.../providers/Microsoft.Compute/images/<image>, not marketplace, gallery, or community sources.