Repository: prowler-cloud/prowler
Issue category: Bug Report

Issue:
AWS MuteList broken
### Steps to Reproduce

**What command are you running:**

```bash
prowler aws -M json-ocsf -f us-west-2 -w mutelist.yaml --ignore-exit-code-3
```

**Cloud provider you are launching:** AWS

**Environment you have:**

* Single account
* Prowler open source
* Issues with:
  * Prowler installed via Pip
  * Prowler Container
* Prowler Version: 4.5.0 or 4.6.0

**Error:**

```
Something went wrong in accessanalyzer_enabled, please use --log-level ERROR

2024-11-06 20:26:48,299 [File: check.py:617] 	[Module: check]	 ERROR: accessanalyzer_enabled -- AttributeError[33]: 'str' object has no attribute 'get'
Something went wrong in appstream_fleet_maximum_session_duration, please use --log-level ERROR

2024-11-06 20:26:49,877 [File: check.py:617] 	[Module: check]	 ERROR: appstream_fleet_maximum_session_duration -- AttributeError[12]: 'str' object has no attribute 'get'
Something went wrong in appstream_fleet_session_disconnect_timeout, please use --log-level ERROR

2024-11-06 20:26:49,880 [File: check.py:617] 	[Module: check]	 ERROR: appstream_fleet_session_disconnect_timeout -- AttributeError[12]: 'str' object has no attribute 'get'
Something went wrong in appstream_fleet_session_idle_disconnect_timeout, please use --log-level ERROR

2024-11-06 20:26:49,884 [File: check.py:617] 	[Module: check]	 ERROR: appstream_fleet_session_idle_disconnect_timeout -- AttributeError[12]: 'str' object has no attribute 'get'
Something went wrong in autoscaling_find_secrets_ec2_launch_configuration, please use --log-level ERROR

2024-11-06 20:26:50,400 [File: check.py:617] 	[Module: check]	 ERROR: autoscaling_find_secrets_ec2_launch_configuration -- AttributeError[16]: 'str' object has no attribute 'get'
Something went wrong in awslambda_function_no_secrets_in_code, please use --log-level ERROR

2024-11-06 20:26:51,828 [File: check.py:617] 	[Module: check]	 ERROR: awslambda_function_no_secrets_in_code -- AttributeError[13]: 'str' object has no attribute 'get'
Something went wrong in awslambda_function_no_secrets_in_variables, please use --log-level ERROR

2024-11-06 20:26:51,832 [File: check.py:617] 	[Module: check]	 ERROR: awslambda_function_no_secrets_in_variables -- AttributeError[11]: 'str' object has no attribute 'get'
```
More errors follow...

### Expected behavior

Prowler will scan the AWS account and mute findings in the mutelist

### Actual Result with Screenshots or Logs

Prowler scans, but the above errors are displayed and no findings are muted.

### How did you install Prowler?

From pip package (pip install prowler)

### Environment Resource

EKS
Local

### OS used

EKS: `toniblyx/prowler:latest` Docker image
Local: macOS 14.7 Python 3.11

### Prowler version

Prowler 4.6.0

### Pip version

24.0

### Context

_No response_


Hints:
I was able to solve this by updating the arguments to the AWS provider when it is created:
I made this change in the `providers/common/provider.py` file
```diff
10a11
> from prowler.lib.mutelist.models import mutelist_schema
176,177c177,178
<                         arguments.config_file,
<                         arguments.mutelist_file,
---
>                         config_path=arguments.config_file,
>                         mutelist_path=arguments.mutelist_file,
```

The `arguments.mutelist_file` argument was getting passed into the AWS provider as the `config_content` parameter because keyword args were not specified to skip the unused parameters.

Patch:
diff --git a/prowler/providers/common/provider.py b/prowler/providers/common/provider.py
index 3681cdcc262..4e86ad42bbf 100644
--- a/prowler/providers/common/provider.py
+++ b/prowler/providers/common/provider.py
@@ -161,54 +161,54 @@ def init_global_provider(arguments: Namespace) -> None:
             if not isinstance(Provider._global, provider_class):
                 if "aws" in provider_class_name.lower():
                     provider_class(
-                        arguments.aws_retries_max_attempts,
-                        arguments.role,
-                        arguments.session_duration,
-                        arguments.external_id,
-                        arguments.role_session_name,
-                        arguments.mfa,
-                        arguments.profile,
-                        set(arguments.region) if arguments.region else None,
-                        arguments.organizations_role,
-                        arguments.scan_unused_services,
-                        arguments.resource_tag,
-                        arguments.resource_arn,
-                        arguments.config_file,
-                        arguments.mutelist_file,
+                        retries_max_attempts=arguments.aws_retries_max_attempts,
+                        role_arn=arguments.role,
+                        session_duration=arguments.session_duration,
+                        external_id=arguments.external_id,
+                        role_session_name=arguments.role_session_name,
+                        mfa=arguments.mfa,
+                        profile=arguments.profile,
+                        regions=set(arguments.region) if arguments.region else None,
+                        organizations_role_arn=arguments.organizations_role,
+                        scan_unused_services=arguments.scan_unused_services,
+                        resource_tags=arguments.resource_tag,
+                        resource_arn=arguments.resource_arn,
+                        config_path=arguments.config_file,
+                        mutelist_path=arguments.mutelist_file,
                         fixer_config=fixer_config,
                     )
                 elif "azure" in provider_class_name.lower():
                     provider_class(
-                        arguments.az_cli_auth,
-                        arguments.sp_env_auth,
-                        arguments.browser_auth,
-                        arguments.managed_identity_auth,
-                        arguments.tenant_id,
-                        arguments.azure_region,
-                        arguments.subscription_id,
-                        arguments.config_file,
-                        arguments.mutelist_file,
+                        az_cli_auth=arguments.az_cli_auth,
+                        sp_env_auth=arguments.sp_env_auth,
+                        browser_auth=arguments.browser_auth,
+                        managed_identity_auth=arguments.managed_identity_auth,
+                        tenant_id=arguments.tenant_id,
+                        region=arguments.azure_region,
+                        subscription_ids=arguments.subscription_id,
+                        config_path=arguments.config_file,
+                        mutelist_path=arguments.mutelist_file,
                         fixer_config=fixer_config,
                     )
                 elif "gcp" in provider_class_name.lower():
                     provider_class(
-                        arguments.organization_id,
-                        arguments.project_id,
-                        arguments.excluded_project_id,
-                        arguments.credentials_file,
-                        arguments.impersonate_service_account,
-                        arguments.list_project_id,
-                        arguments.config_file,
-                        arguments.mutelist_file,
+                        organization_id=arguments.organization_id,
+                        project_ids=arguments.project_id,
+                        excluded_project_ids=arguments.excluded_project_id,
+                        credentials_file=arguments.credentials_file,
+                        impersonate_service_account=arguments.impersonate_service_account,
+                        list_project_ids=arguments.list_project_id,
+                        config_path=arguments.config_file,
+                        mutelist_path=arguments.mutelist_file,
                         fixer_config=fixer_config,
                     )
                 elif "kubernetes" in provider_class_name.lower():
                     provider_class(
-                        arguments.kubeconfig_file,
-                        arguments.context,
-                        arguments.namespace,
-                        arguments.config_file,
-                        arguments.mutelist_file,
+                        kubeconfig_file=arguments.kubeconfig_file,
+                        context=arguments.context,
+                        namespace=arguments.namespace,
+                        config_path=arguments.config_file,
+                        mutelist_path=arguments.mutelist_file,
                         fixer_config=fixer_config,
                     )
 


Test patch: