Skip to content

Commit c14e36d

Browse files
committedSep 9, 2020
get up to date with services for 1.14.55/56
1 parent ef760fd commit c14e36d

File tree

2 files changed

+545
-89
lines changed

2 files changed

+545
-89
lines changed
 

‎libs/aws/brute.py

+477-81
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
This is the main brute library so that we can get an idea what services a particular
55
key has access to. We do this by asking if we have permission on as many services &
66
subfunctions as we can. Printed to screen and logged to db.
7+
8+
https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html
9+
710
'''
811

912
import boto3
@@ -293,8 +296,13 @@ def brute_alexaforbusiness_permissions():
293296
return generic_permission_bruteforcer('alexaforbusiness', tests)
294297

295298

296-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/amplify.html
297-
299+
def brute_amplify_permissions():
300+
'''
301+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/amplify.html
302+
'''
303+
print("### Enumerating AWS Amplify Permissions ###")
304+
tests = [('ListApps', 'list_apps', (), {}, ), ]
305+
return generic_permission_bruteforcer('amplify', tests)
298306

299307

300308
def brute_apigateway_permissions():
@@ -311,18 +319,50 @@ def brute_apigateway_permissions():
311319
('GetUsagePlans', 'get_usage_plans', (), {}, ), ]
312320
return generic_permission_bruteforcer('apigateway', tests)
313321

314-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/apigatewaymanagementapi.html
315322

316-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/apigatewayv2.html
323+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/apigatewaymanagementapi.html
324+
# no functions
325+
326+
327+
def brute_apigatewayv2_permissions():
328+
'''
329+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/apigatewayv2.html
330+
'''
331+
print("### Enumerating AmazonApiGatewayV2 Permissions ###")
332+
tests = [('GetApis', 'get_apis', (), {}, ), ]
333+
return generic_permission_bruteforcer('apigatewayv2', tests)
334+
335+
336+
def brute_appconfig_permissions():
337+
'''
338+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/appconfig.html
339+
'''
340+
print("### Enumerating Amazon AppConfig Permissions ###")
341+
tests = [('ListApplications', 'list_applications', (), {}, ), ]
342+
return generic_permission_bruteforcer('appconfig', tests)
343+
344+
345+
# http://boto3.readthedocs.io/en/latest/reference/services/application-autoscaling.html
346+
# not seeing any functions that dont take args
317347

318-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/appconfig.html
319348

320-
# http://boto3.readthedocs.io/en/latest/reference/services/application-autoscaling.html
321-
# not seeing any functions that dont take args
349+
def brute_applicationinsights_permissions():
350+
'''
351+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/application-insights.html
352+
'''
353+
print("### Enumerating Amazon CloudWatch Application Insights Permissions ###")
354+
tests = [('ListApplications', 'list_applications', (), {}, ), ]
355+
return generic_permission_bruteforcer('application-insights', tests)
356+
322357

323-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/application-insights.html
358+
def brute_appmesh_permissions():
359+
'''
360+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/appmesh.html
361+
'''
362+
print("### Enumerating AWS App Mesh Permissions ###")
363+
tests = [('ListMeshes', 'list_meshes', (), {}, ), ]
364+
return generic_permission_bruteforcer('appmesh', tests)
324365

325-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/appmesh.html
326366

327367
def brute_appstream_permissions():
328368
'''
@@ -334,8 +374,9 @@ def brute_appstream_permissions():
334374
('DescribeStacks', 'describe_stacks', (), {}, ), ]
335375
return generic_permission_bruteforcer('appstream', tests)
336376

337-
# http://boto3.readthedocs.io/en/latest/reference/services/appsync.html
338-
# not seeing any functions that dont take args
377+
378+
# http://boto3.readthedocs.io/en/latest/reference/services/appsync.html
379+
# not seeing any functions that dont take args
339380

340381

341382
def brute_athena_permissions():
@@ -373,7 +414,17 @@ def brute_autoscaling_plans_permissions():
373414
tests = [('DescribeScalingPlans', 'describe_scaling_plans', (), {}, ), ]
374415
return generic_permission_bruteforcer('autoscaling-plans', tests)
375416

376-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/backup.html
417+
418+
def brute_backup_permissions():
419+
'''
420+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/backup.html
421+
'''
422+
print("### Enumerating AWS Backup Permissions ###")
423+
tests = [('ListBackupJobs', 'list_backup_jobs', (), {}, ),
424+
('ListBackupPlans', 'list_backup_plans', (), {}, ),
425+
('ListBackupVaults', 'list_backup_vaults', (), {}, ), ]
426+
return generic_permission_bruteforcer('backup', tests)
427+
377428

378429
def brute_batch_permissions():
379430
'''
@@ -395,13 +446,21 @@ def brute_budgets_permissions():
395446
tests = [('DescribeBudgets', 'describe_budgets', (), {'AccountId': account_id}, ), ]
396447
return generic_permission_bruteforcer('budgets', tests)
397448

398-
# http://boto3.readthedocs.io/en/latest/reference/services/ce.html
399-
# TODO
400-
# http://boto3.readthedocs.io/en/latest/reference/services/ce.html#CostExplorer.Client.get_cost_and_usage
401-
# shoudl work we just need to generate start and end times each run
449+
# http://boto3.readthedocs.io/en/latest/reference/services/ce.html
450+
# TODO
451+
# http://boto3.readthedocs.io/en/latest/reference/services/ce.html#CostExplorer.Client.get_cost_and_usage
452+
# should work we just need to generate start and end times each run
402453

403454

404-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/chime.html
455+
def brute_chime_permissions():
456+
'''
457+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/chime.html
458+
'''
459+
print("### Enumerating Chime Permissions ###")
460+
tests = [('ListAccounts', 'list_accounts', (), {}, ),
461+
('GetGlobalSettings', 'get_global_settings', (), {}, ), ]
462+
return generic_permission_bruteforcer('chime', tests)
463+
405464

406465
def brute_cloud9_permissions():
407466
'''
@@ -541,9 +600,24 @@ def brute_codedeploy_permissions():
541600
('ListOnPremisesInstances', 'list_on_premises_instances', (), {}, ), ]
542601
return generic_permission_bruteforcer('codedeploy', tests)
543602

544-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codeguru-reviewer.html
545603

546-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codeguruprofiler.html
604+
def brute_codegurureviewer_permissions():
605+
'''
606+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codeguru-reviewer.html
607+
'''
608+
print("### Enumerating Amazon CodeGuru Reviewer Permissions ###")
609+
tests = [('ListCodeReviews', 'list_code_reviews', (), {'Type':'PullRequest'}, ),
610+
('ListCodeReviews', 'list_code_reviews', (), {'Type':'RepositoryAnalysis'}, ), ]
611+
return generic_permission_bruteforcer('codeguru-reviewer', tests)
612+
613+
614+
def brute_codeguruprofiler_permissions():
615+
'''
616+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codeguruprofiler.html
617+
'''
618+
print("### Enumerating Amazon CodeGuru Profiler Permissions ###")
619+
tests = [('ListProfilingGroups', 'list_profiling_groups', (), {}, ), ]
620+
return generic_permission_bruteforcer('codeguruprofiler', tests)
547621

548622

549623
def brute_codepipeline_permissions():
@@ -561,12 +635,31 @@ def brute_codestar_permissions():
561635
'''
562636
print("### Enumerating CodeStar Permissions ###")
563637
tests = [('ListProjects', 'list_projects', (), {}, ),
564-
('ListUerProfiles', 'list_user_profiles', (), {}, ), ]
638+
('ListUserProfiles', 'list_user_profiles', (), {}, ), ]
565639
return generic_permission_bruteforcer('codestar', tests)
566640

567-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codestar-connections.html
568641

569-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codestar-notifications.html
642+
def brute_codestarconnections_permissions():
643+
'''
644+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codestar-connections.html
645+
'''
646+
print("### Enumerating AWS CodeStar Connections Permissions ###")
647+
tests = [('ListConnections', 'list_connections', (), {}, ),
648+
#('ListHosts', 'list_hosts', (), {}, ),
649+
]
650+
return generic_permission_bruteforcer('codestar-connections', tests)
651+
652+
653+
def brute_codestarnotifications_permissions():
654+
'''
655+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codestar-notifications.html
656+
'''
657+
print("### Enumerating AWS CodeStar Notifications Permissions ###")
658+
tests = [('ListNotificationRules', 'list_notification_rules', (), {}, ),
659+
('ListTargets', 'list_targets', (), {}, ),
660+
]
661+
return generic_permission_bruteforcer('codestar-notifications', tests)
662+
570663

571664
def brute_cognitoidentity_permissions():
572665
'''
@@ -603,9 +696,26 @@ def brute_comprehend_permissions():
603696
tests = [('ListTopicsDetectionJobs', 'list_topics_detection_jobs', (), {}, ), ]
604697
return generic_permission_bruteforcer('comprehend', tests)
605698

606-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/comprehendmedical.html
607699

608-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/compute-optimizer.html
700+
def brute_comprehendmedical_permissions():
701+
'''
702+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/comprehendmedical.html
703+
'''
704+
print("### Enumerating AWS Comprehend Medical Permissions ###")
705+
tests = [('ListEntitiesDetectionv2Jobs', 'list_entities_detection_v2_jobs', (), {}, ),
706+
('ListIcd10cmInferenceJobs', 'list_icd10_cm_inference_jobs', (), {}, ),
707+
('listPhiDetectionJobs', 'list_phi_detection_jobs', (), {}, ),
708+
('listRxNormInferenceJobs', 'list_rx_norm_inference_jobs', (), {}, ), ]
709+
return generic_permission_bruteforcer('comprehendmedical', tests)
710+
711+
712+
def brute_computeoptimizer_permissions():
713+
'''
714+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/compute-optimizer.html
715+
'''
716+
print("### Enumerating AWS Compute Optimizer Permissions ###")
717+
tests = [('GetRecommendationSummaries', 'get_recommendation_summaries', (), {}, ), ]
718+
return generic_permission_bruteforcer('compute-optimizer', tests)
609719

610720

611721
def brute_configservice_permissions():
@@ -623,10 +733,11 @@ def brute_configservice_permissions():
623733
('DescribeDeliveryChannels', 'describe_delivery_channels', (), {}, ), ]
624734
return generic_permission_bruteforcer('config', tests)
625735

626-
# http://boto3.readthedocs.io/en/latest/reference/services/connect.html
627-
# no functions
736+
# http://boto3.readthedocs.io/en/latest/reference/services/connect.html
737+
# no functions
628738

629-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/connectparticipant.html
739+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/connectparticipant.html
740+
# no functions
630741

631742

632743
def brute_costandusagereportservice_permissions():
@@ -638,7 +749,15 @@ def brute_costandusagereportservice_permissions():
638749
return generic_permission_bruteforcer('cur', tests)
639750

640751

641-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dataexchange.html
752+
def brute_dataexchange_permissions():
753+
'''
754+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dataexchange.html
755+
'''
756+
print("### Enumerating AWS Data Exchange Permissions ###")
757+
tests = [('ListDataSets', 'list_data_sets', (), {}, ),
758+
('ListJobs', 'list_jobs', (), {}, ), ]
759+
return generic_permission_bruteforcer('dataexchange', tests)
760+
642761

643762
def brute_datapipeline_permissions():
644763
'''
@@ -649,7 +768,14 @@ def brute_datapipeline_permissions():
649768
return generic_permission_bruteforcer('datapipeline', tests)
650769

651770

652-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/datasync.html
771+
def brute_datasync_permissions():
772+
'''
773+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/datasync.html
774+
'''
775+
print("### Enumerating AWS DataSync Permissions ###")
776+
tests = [('ListAgents', 'list_agents', (), {}, ),
777+
('ListTasks', 'list_tasks', (), {}, ), ]
778+
return generic_permission_bruteforcer('datasync', tests)
653779

654780

655781
def brute_dax_permissions():
@@ -665,7 +791,14 @@ def brute_dax_permissions():
665791
return generic_permission_bruteforcer('dax', tests)
666792

667793

668-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/detective.html
794+
def brute_detective_permissions():
795+
'''
796+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/detective.html
797+
'''
798+
print("### Enumerating Amazon Detective Permissions ###")
799+
tests = [('ListGraphs', 'list_graphs', (), {}, ), ]
800+
return generic_permission_bruteforcer('detective', tests)
801+
669802

670803
def brute_devicefarm_permissions():
671804
'''
@@ -697,7 +830,13 @@ def brute_applicationdiscoveryservice_permissions():
697830
return generic_permission_bruteforcer_region('discovery', tests, 'us-west-2')
698831

699832

700-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dlm.html
833+
def brute_dlm_permissions():
834+
'''
835+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dlm.html
836+
'''
837+
print("### Enumerating DatabaseMigrationService Permissions ###")
838+
tests = [('GetLifecyclePolicies', 'get_lifecycle_policies', (), {}, ), ]
839+
return generic_permission_bruteforcer('dlm', tests)
701840

702841

703842
def brute_dms_permissions():
@@ -711,7 +850,15 @@ def brute_dms_permissions():
711850
return generic_permission_bruteforcer('dms', tests)
712851

713852

714-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/docdb.html
853+
def brute_docdb_permissions():
854+
'''
855+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/docdb.html
856+
'''
857+
print("### Enumerating DocumentDB with MongoDB Permissions ###")
858+
tests = [('DescribeDBClusters', 'describe_db_clusters', (), {}, ),
859+
('DescribeDBInstances', 'describe_db_instances', (), {}, ),
860+
('DescribeDBEngineVersions', 'describe_db_engine_versions', (), {}, ), ]
861+
return generic_permission_bruteforcer('docdb', tests)
715862

716863

717864
def brute_directoryservice_permissions():
@@ -746,7 +893,8 @@ def brute_dynamodbstreams_permissions():
746893
return generic_permission_bruteforcer('dynamodbstreams', tests)
747894

748895

749-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ebs.html
896+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ebs.html
897+
# no functions that dont require a SnapshotId
750898

751899

752900
def brute_ec2_permissions():
@@ -815,7 +963,8 @@ def brute_ec2_permissions():
815963
return generic_permission_bruteforcer('ec2', tests)
816964

817965

818-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2-instance-connect.html
966+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2-instance-connect.html
967+
# no functions
819968

820969

821970
def brute_ecr_permissions():
@@ -851,9 +1000,22 @@ def brute_efs_permissions():
8511000
return generic_permission_bruteforcer('efs', tests)
8521001

8531002

854-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/eks.html
1003+
def brute_eks_permissions():
1004+
'''
1005+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/eks.html
1006+
'''
1007+
print("### Enumerating Amazon Elastic Kubernetes Service (EKS) Permissions ###")
1008+
tests = [('ListClusters', 'list_clusters', (), {}), ]
1009+
return generic_permission_bruteforcer('eks', tests)
1010+
8551011

856-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/elastic-inference.html
1012+
def brute_elasticinference_permissions():
1013+
'''
1014+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/elastic-inference.html
1015+
'''
1016+
print("### Enumerating Amazon Elastic Inference Permissions ###")
1017+
tests = [('DescribeAccelerators', 'describe_accelerators', (), {}), ]
1018+
return generic_permission_bruteforcer('elastic-inference', tests)
8571019

8581020

8591021
def brute_elasticache_permissions():
@@ -969,13 +1131,39 @@ def brute_fms_permissions():
9691131
return generic_permission_bruteforcer('fms', tests)
9701132

9711133

972-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/forecast.html
1134+
def brute_forecast_permissions():
1135+
'''
1136+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/forecast.html
1137+
'''
1138+
print("### Enumerating Amazon Forecast Permissions ###")
1139+
tests = [('ListDatasets', 'list_datasets', (), {}),
1140+
('ListForecasts', 'list_forecasts', (), {}),
1141+
('ListPredictors', 'list_predictors', (), {}), ]
1142+
return generic_permission_bruteforcer('forecast', tests)
9731143

974-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/forecastquery.html
9751144

976-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/frauddetector.html
1145+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/forecastquery.html
1146+
# no functions
9771147

978-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/fsx.html
1148+
1149+
def brute_frauddetector_permissions():
1150+
'''
1151+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/frauddetector.html
1152+
'''
1153+
print("### Enumerating Amazon Fraud Detector Permissions ###")
1154+
tests = [('GetDetectors', 'get_detectors', (), {}), ]
1155+
return generic_permission_bruteforcer('frauddetector', tests)
1156+
1157+
1158+
def brute_fsx_permissions():
1159+
'''
1160+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/fsx.html
1161+
'''
1162+
print("### Enumerating FSx Permissions ###")
1163+
tests = [('DescribeBackups', 'describe_backups', (), {}),
1164+
('DescribeDataRepositoryTasks', 'describe_data_repository_tasks', (), {}),
1165+
('DescribeFileSystems', 'describe_file_systems', (), {}), ]
1166+
return generic_permission_bruteforcer('fsx', tests)
9791167

9801168

9811169
def brute_gamelift_permissions():
@@ -1002,7 +1190,13 @@ def brute_glacier_permissions():
10021190
return generic_permission_bruteforcer('glacier', tests)
10031191

10041192

1005-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/globalaccelerator.html
1193+
def brute_globalaccelerator_permissions():
1194+
'''
1195+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/globalaccelerator.html
1196+
'''
1197+
print("### Enumerating global Accelerator Permissions ###")
1198+
tests = [('ListAccelerators', 'list_accelerators', (), {}), ]
1199+
return generic_permission_bruteforcer_region('globalaccelerator', tests, 'us-west-2')
10061200

10071201

10081202
def brute_glue_permissions():
@@ -1033,7 +1227,15 @@ def brute_greengrass_permissions():
10331227
return generic_permission_bruteforcer('greengrass', tests)
10341228

10351229

1036-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/groundstation.html
1230+
def brute_groundstation_permissions():
1231+
'''
1232+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/groundstation.html
1233+
'''
1234+
print("### Enumerating Groundstation Permissions ###")
1235+
tests = [('ListConfigs', 'list_configs', (), {}),
1236+
('ListGroundStations', 'list_ground_stations', (), {}),
1237+
('ListSatellites', 'list_satellites', (), {}), ]
1238+
return generic_permission_bruteforcer_region('groundstation', tests, 'us-west-2')
10371239

10381240
def brute_guardduty_permissions():
10391241
'''
@@ -1076,7 +1278,18 @@ def brute_iam_permissions():
10761278
return generic_permission_bruteforcer('iam', tests)
10771279

10781280

1079-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/imagebuilder.html
1281+
def brute_imagebuilder_permissions():
1282+
'''
1283+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/imagebuilder.html
1284+
'''
1285+
print("### Enumerating Image Builder Permissions ###")
1286+
tests = [('ListComponents', 'list_components', (), {}),
1287+
('ListDistributionConfigurations', 'list_distribution_configurations', (), {}),
1288+
('ListImagePipelines', 'list_image_pipelines', (), {}),
1289+
('ListImageRecipes', 'list_image_recipes', (), {}),
1290+
('ListImages', 'list_images', (), {}),
1291+
('ListInfrastructureConfigurations', 'list_infrastructure_configurations', (), {}), ]
1292+
return generic_permission_bruteforcer('imagebuilder', tests)
10801293

10811294

10821295
def brute_importexport_permissions():
@@ -1124,25 +1337,90 @@ def brute_iotdata_permissions():
11241337
# http://boto3.readthedocs.io/en/latest/reference/services/iot-jobs-data.html
11251338
# NO functions to call without data
11261339

1127-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot1click-devices.html
11281340

1129-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot1click-projects.html
1341+
def brute_iot1clickdevices_permissions():
1342+
'''
1343+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot1click-devices.html
1344+
https://docs.aws.amazon.com/general/latest/gr/1click.html
1345+
'''
1346+
print("### Enumerating AWS IoT 1-Click Devices Service Permissions ###")
1347+
tests = [('ListDevices', 'list_devices', (), {}), ]
1348+
return generic_permission_bruteforcer_region('iot1click-devices', tests, 'us-west-2')
1349+
1350+
1351+
def brute_iot1clickprojects_permissions():
1352+
'''
1353+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot1click-projects.html
1354+
'''
1355+
print("### Enumerating AWS IoT 1-Click Projects Service Permissions ###")
1356+
tests = [('ListProjects', 'list_projects', (), {}), ]
1357+
return generic_permission_bruteforcer_region('iot1click-projects', tests, 'us-west-2')
11301358

1131-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotanalytics.html
11321359

1133-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotevents.html
1360+
def brute_iotanalytics_permissions():
1361+
'''
1362+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotanalytics.html
1363+
'''
1364+
print("### Enumerating AWS IoT 1-Click Projects Service Permissions ###")
1365+
tests = [('ListChannels', 'list_channels', (), {}),
1366+
('ListDatasets', 'list_datasets', (), {}),
1367+
('ListDatastores', 'list_datastores', (), {}),
1368+
('ListPipelines', 'list_pipelines', (), {}), ]
1369+
return generic_permission_bruteforcer_region('iotanalytics', tests, 'us-west-2')
11341370

1135-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotevents-data.html
11361371

1137-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotsecuretunneling.html
1372+
def brute_iotevents_permissions():
1373+
'''
1374+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotevents.html
1375+
'''
1376+
print("### Enumerating AWS IoT Events Service Permissions ###")
1377+
tests = [('ListDetectorModels', 'list_detector_models', (), {}),
1378+
('ListInputs', 'list_inputs', (), {}), ]
1379+
return generic_permission_bruteforcer_region('iotevents', tests, 'us-west-2')
11381380

1139-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotsitewise.html
1381+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotevents-data.html
1382+
# need detectorID
11401383

1141-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotthingsgraph.html
11421384

1143-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kafka.html
1385+
def brute_iotsecuretunneling_permissions():
1386+
'''
1387+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotsecuretunneling.html
1388+
'''
1389+
print("### Enumerating AWS IoT Secure Tunneling Permissions ###")
1390+
tests = [('ListTunnels', 'list_tunnels', (), {}), ]
1391+
return generic_permission_bruteforcer_region('iotsecuretunneling', tests, 'us-west-2')
11441392

1145-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kendra.html
1393+
1394+
def brute_iotsitewise_permissions():
1395+
'''
1396+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotsitewise.html
1397+
'''
1398+
print("### Enumerating AWS IoT Sitewise Permissions ###")
1399+
tests = [('ListAssets', 'list_assets', (), {}),
1400+
('ListPortals', 'list_portals', (), {}),
1401+
('ListGateways', 'list_gateways', (), {}), ]
1402+
return generic_permission_bruteforcer_region('iotsitewise', tests, 'us-west-2')
1403+
1404+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotthingsgraph.html
1405+
# no functions
1406+
1407+
1408+
def brute_kafka_permissions():
1409+
'''
1410+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kafka.html
1411+
'''
1412+
print("### Enumerating Kafka Permissions ###")
1413+
tests = [('ListClusters', 'list_clusters', (), {}), ]
1414+
return generic_permission_bruteforcer('kafka', tests)
1415+
1416+
1417+
def brute_kendra_permissions():
1418+
'''
1419+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kendra.html
1420+
'''
1421+
print("### Enumerating Kendra Frontend Service Permissions ###")
1422+
tests = [('ListIndices', 'list_indices', (), {}), ]
1423+
return generic_permission_bruteforcer('kendra', tests)
11461424

11471425

11481426
def brute_kinesis_permissions():
@@ -1153,14 +1431,14 @@ def brute_kinesis_permissions():
11531431
tests = [('ListStreams', 'list_streams', (), {}), ]
11541432
return generic_permission_bruteforcer('kinesis', tests)
11551433

1156-
# http://boto3.readthedocs.io/en/latest/reference/services/kinesis-video-archived-media.html
1157-
# NO functions to call without data
1434+
# http://boto3.readthedocs.io/en/latest/reference/services/kinesis-video-archived-media.html
1435+
# NO functions to call without data
11581436

11591437
# http://boto3.readthedocs.io/en/latest/reference/services/kinesis-video-media.html
11601438
# NO functions to call without data
11611439

1162-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kinesis-video-signaling.html
1163-
1440+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kinesis-video-signaling.html
1441+
# NO functions to call without data
11641442

11651443
def brute_kinesisanalytics_permissions():
11661444
'''
@@ -1171,7 +1449,13 @@ def brute_kinesisanalytics_permissions():
11711449
return generic_permission_bruteforcer('kinesisanalytics', tests)
11721450

11731451

1174-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kinesisanalyticsv2.html
1452+
def brute_kinesisanalyticsv2_permissions():
1453+
'''
1454+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kinesisanalyticsv2.html
1455+
'''
1456+
print("### Enumerating Kinesis Analytics v2 Permissions ###")
1457+
tests = [('ListApplications', 'list_applications', (), {}), ]
1458+
return generic_permission_bruteforcer('kinesisanalyticsv2', tests)
11751459

11761460

11771461
def brute_kinesisvideo_permissions():
@@ -1193,7 +1477,14 @@ def brute_kms_permissions():
11931477
return generic_permission_bruteforcer('kms', tests)
11941478

11951479

1196-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/lakeformation.html
1480+
def brute_lakeformation_permissions():
1481+
'''
1482+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/lakeformation.html
1483+
'''
1484+
print("### Enumerating Lake Formation Permissions ###")
1485+
tests = [('ListPermissions', 'list_permissions', (), {}),
1486+
('ListResources', 'list_resources', (), {}), ]
1487+
return generic_permission_bruteforcer('lakeformation', tests)
11971488

11981489

11991490
def brute_lambda_permissions():
@@ -1227,7 +1518,13 @@ def brute_lexruntime_permissions():
12271518
return generic_permission_bruteforcer('lex-runtime', tests)
12281519

12291520

1230-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/license-manager.html
1521+
def brute_licensemanager_permissions():
1522+
'''
1523+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/license-manager.html
1524+
'''
1525+
print("### Enumerating License Manager Permissions ###")
1526+
tests = [('ListLicenseConfigurations', 'list_license_configurations', (), {}), ]
1527+
return generic_permission_bruteforcer('license-manager', tests)
12311528

12321529

12331530
def brute_lightsail_permissions():
@@ -1265,22 +1562,60 @@ def brute_machinelearning_permissions():
12651562
('DescribeEvaluations', 'describe_evaluations', (), {}), ]
12661563
return generic_permission_bruteforcer('machinelearning', tests)
12671564

1268-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/macie.html
12691565

1270-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/macie2.html
1566+
def brute_macie_permissions():
1567+
'''
1568+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/macie.html
1569+
'''
1570+
print("### Enumerating Macie Permissions ###")
1571+
tests = [('ListMemberAccounts', 'list_member_accounts', (), {}),
1572+
('ListS3Resources', 'list_s3_resources', (), {}), ]
1573+
return generic_permission_bruteforcer('macie', tests)
1574+
1575+
1576+
def brute_macie2_permissions():
1577+
'''
1578+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/macie2.html
1579+
'''
1580+
print("### Enumerating Macie2 Permissions ###")
1581+
tests = [('DescribeBuckets', 'describe_buckets', (), {}),
1582+
('ListFindings', 'list_findings', (), {}),
1583+
('Listmembers', 'list_members', (), {}),]
1584+
return generic_permission_bruteforcer('macie2', tests)
12711585

1272-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/managedblockchain.html
1586+
def brute_managedblockchain_permissions():
1587+
'''
1588+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/managedblockchain.html
1589+
'''
1590+
print("### Enumerating Managed Blockchain Permissions ###")
1591+
tests = [('ListNetworks', 'list_networks', (), {}), ]
1592+
return generic_permission_bruteforcer('managedblockchain', tests)
12731593

1274-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/marketplace-catalog.html
12751594

1595+
def brute_marketplacecatalog_permissions():
1596+
'''
1597+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/marketplace-catalog.html
1598+
needs an entity type for list_entities ??
1599+
'''
1600+
print("### Enumerating Machine Learning Permissions ###")
1601+
tests = [('ListEntities', 'list_entities', (), {}), ]
1602+
return generic_permission_bruteforcer('marketplace-catalog', tests)
12761603

12771604
# http://boto3.readthedocs.io/en/latest/reference/services/marketplace-entitlement.html
1278-
# NO functions to call without arguements
1605+
# NO functions to call without arguments
12791606

12801607
# http://boto3.readthedocs.io/en/latest/reference/services/marketplacecommerceanalytics.html
1281-
# NO functions to call without arguements
1608+
# NO functions to call without arguments
12821609

1283-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/mediaconnect.html
1610+
1611+
def brute_mediaconnect_permissions():
1612+
'''
1613+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/mediaconnect.html
1614+
'''
1615+
print("### Enumerating MediaConnect Permissions ###")
1616+
tests = [('ListEntitlements', 'list_entitlements', (), {}),
1617+
('ListFlows', 'list_flows', (), {}), ]
1618+
return generic_permission_bruteforcer('mediaconnect', tests)
12841619

12851620

12861621
def brute_mediaconvert_permissions():
@@ -1316,7 +1651,14 @@ def brute_mediapackage_permissions():
13161651
return generic_permission_bruteforcer('mediapackage', tests)
13171652

13181653

1319-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/mediapackage-vod.html
1654+
def brute_mediapackagevod_permissions():
1655+
'''
1656+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/mediapackage-vod.html
1657+
'''
1658+
print("### Enumerating MediaPackage VOD Permissions ###")
1659+
tests = [('ListAssets', 'list_assets', (), {}),
1660+
('ListPackagingGroups', 'list_packaging_groups', (), {}), ]
1661+
return generic_permission_bruteforcer('mediapackage-vod', tests)
13201662

13211663

13221664
def brute_mediastore_permissions():
@@ -1332,19 +1674,27 @@ def brute_mediastore_data_permissions():
13321674
'''
13331675
http://boto3.readthedocs.io/en/latest/reference/services/mediastore-data.html
13341676
Could not connect to the endpoint URL: "https://data.mediastore.us-east-1.amazonaws.com/"
1335-
boto3 (1.7.4) bug
1677+
https://docs.aws.amazon.com/general/latest/gr/mediastore.html
13361678
1337-
Update May2020 - i cant find an endpoint to connect to - will comment th is out in recon.py
1679+
Update Sep2020 - i cant find an endpoint to connect to tried us-east-1/us-west-2
1680+
will comment this out in recon.py
13381681
'''
13391682
print("### Enumerating AWS Elemental MediaStore Data Permissions ###")
13401683
tests = [('ListItems', 'list_items', (), {}), ]
1341-
return generic_permission_bruteforcer_region('mediastore-data', tests, 'us-east-1')
1684+
return generic_permission_bruteforcer_region('mediastore-data', tests, 'us-west-2')
13421685

1343-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/mediatailor.html
1686+
1687+
def brute_mediatailor_permissions():
1688+
'''
1689+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/mediatailor.html
1690+
'''
1691+
print("### Enumerating MediaTailor Permissions ###")
1692+
tests = [('ListPlaybackConfigurations', 'list_playback_configurations', (), {}), ]
1693+
return generic_permission_bruteforcer('mediatailor', tests)
13441694

13451695

13461696
# http://boto3.readthedocs.io/en/latest/reference/services/meteringmarketplace.html
1347-
# NO functions to call without arguements
1697+
# NO functions to call without arguments
13481698

13491699

13501700
def brute_mgh_permissions():
@@ -1357,7 +1707,13 @@ def brute_mgh_permissions():
13571707
return generic_permission_bruteforcer_region('mgh', tests, 'us-west-2')
13581708

13591709

1360-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/migrationhub-config.html
1710+
def brute_migrationhubconfig_permissions():
1711+
'''
1712+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/migrationhub-config.html
1713+
'''
1714+
print("### Enumerating migrationhub-config Permissions ###")
1715+
tests = [('DescribeHomeRegionControls', 'describe_home_region_controls', (), {}), ]
1716+
return generic_permission_bruteforcer('migrationhub-config', tests)
13611717

13621718

13631719
def brute_mobile_permissions():
@@ -1391,9 +1747,28 @@ def brute_mturk_permissions():
13911747
return generic_permission_bruteforcer('mturk', tests)
13921748

13931749

1394-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/neptune.html
1750+
def brute_neptune_permissions():
1751+
'''
1752+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/neptune.html
1753+
'''
1754+
print("### Enumerating Neptune Permissions ###")
1755+
tests = [('DescribeDBClusters', 'describe_db_clusters', (), {}),
1756+
('DescribeDBEngineVersions', 'describe_db_engine_versions', (), {}),
1757+
('DescribeDBInstances', 'describe_db_instances', (), {}),
1758+
('DescribeEvents', 'describe_events', (), {}), ]
1759+
return generic_permission_bruteforcer('neptune', tests)
1760+
1761+
1762+
def brute_networkmanager_permissions():
1763+
'''
1764+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/networkmanager.html
1765+
Other functions needs the Global Network ID
1766+
https://docs.aws.amazon.com/general/latest/gr/network_manager.html
1767+
'''
1768+
print("### Enumerating Network Manager Permissions ###")
1769+
tests = [('DescribeGlobalNetworks', 'describe_global_networks', (), {}), ]
1770+
return generic_permission_bruteforcer_region('networkmanager', tests, 'us-west-2')
13951771

1396-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/networkmanager.html
13971772

13981773
def brute_opsworks_permissions():
13991774
'''
@@ -1432,16 +1807,36 @@ def brute_organizations_permissions():
14321807
return generic_permission_bruteforcer('organizations', tests)
14331808

14341809

1435-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/outposts.html
1810+
def brute_outposts_permissions():
1811+
'''
1812+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/outposts.html
1813+
'''
1814+
print("### Enumerating Outposts Service Permissions ###")
1815+
tests = [('ListOutposts', 'list_outposts', (), {}),
1816+
('ListSites', 'list_sites', (), {}),]
1817+
return generic_permission_bruteforcer('outposts', tests)
14361818

1437-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/personalize.html
14381819

1439-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/personalize-events.html
1820+
def brute_personalize_permissions():
1821+
'''
1822+
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/personalize.html
1823+
'''
1824+
print("### Enumerating Personalize Service Permissions ###")
1825+
tests = [('ListCampaigns', 'list_campaigns', (), {}),
1826+
('ListDatasets', 'list_datasets', (), {}),
1827+
('ListRecipes', 'list_recipes', (), {}),]
1828+
return generic_permission_bruteforcer('personalize', tests)
14401829

1441-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/personalize-runtime.html
1830+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/personalize-events.html
1831+
# No functions
14421832

1443-
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/pi.html
14441833

1834+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/personalize-runtime.html
1835+
# No functions
1836+
1837+
1838+
# https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/pi.html
1839+
# No functions
14451840

14461841
def brute_pinpoint_permissions():
14471842
'''
@@ -1451,6 +1846,7 @@ def brute_pinpoint_permissions():
14511846
tests = [('GetApps', 'get_apps', (), {}), ]
14521847
return generic_permission_bruteforcer('pinpoint', tests)
14531848

1849+
14541850
def brute_pinpoint_email_permissions():
14551851
'''
14561852
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/pinpoint-email.html

‎modules/aws/recon.py

+68-8
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
from libs.aws.route53 import *
1313
from libs.aws.sts import *
1414

15-
# maps to available services in boto 1.13.12
15+
# maps to available services in boto 1.14.55
1616

1717

1818
def module_recon_all():
@@ -26,16 +26,24 @@ def module_recon_all():
2626
brute_acm_permissions()
2727
brute_acm_pca_permissions()
2828
brute_alexaforbusiness_permissions()
29+
brute_amplify_permissions()
2930
brute_apigateway_permissions()
30-
# Application Auto Scaling - no usable functions
31+
# apigatewaymanagementapi no functions
32+
brute_apigatewayv2_permissions()
33+
brute_appconfig_permissions()
34+
# application-autoscaling - no functions
35+
brute_applicationinsights_permissions()
36+
brute_appmesh_permissions()
3137
brute_appstream_permissions()
32-
# AppSync - no usable functions
38+
# appsync no functions
3339
brute_athena_permissions()
3440
brute_autoscaling_permissions()
3541
brute_autoscaling_plans_permissions()
42+
brute_backup_permissions()
3643
brute_batch_permissions()
3744
brute_budgets_permissions()
38-
# CostExplorer
45+
# ce (CostExplorer) no functions
46+
brute_chime_permissions()
3947
brute_cloud9_permissions()
4048
brute_clouddirectory_permissions()
4149
brute_cloudformation_permissions()
@@ -49,28 +57,44 @@ def module_recon_all():
4957
brute_codebuild_permissions()
5058
brute_codecommit_permissions()
5159
brute_codedeploy_permissions()
60+
brute_codegurureviewer_permissions()
61+
brute_codeguruprofiler_permissions()
5262
brute_codepipeline_permissions()
5363
brute_codestar_permissions()
64+
brute_codestarconnections_permissions()
65+
brute_codestarnotifications_permissions()
5466
brute_cognitoidentity_permissions()
5567
brute_cognitoidp_permissions()
5668
brute_cognitosync_permissions()
5769
brute_comprehend_permissions()
70+
brute_comprehendmedical_permissions()
71+
brute_computeoptimizer_permissions()
5872
brute_configservice_permissions()
59-
# connect no functions
73+
# connect no functions
74+
# connectparticipant no functions
6075
brute_costandusagereportservice_permissions()
76+
brute_dataexchange_permissions()
6177
brute_datapipeline_permissions()
78+
brute_datasync_permissions()
6279
brute_dax_permissions()
80+
brute_detective_permissions()
6381
brute_devicefarm_permissions()
6482
brute_directconnect_permissions()
6583
brute_applicationdiscoveryservice_permissions()
84+
brute_dlm_permissions()
6685
brute_dms_permissions()
86+
brute_docdb_permissions()
6787
brute_directoryservice_permissions()
6888
brute_dynamodb_permissions()
6989
brute_dynamodbstreams_permissions()
90+
# ebs no functions
7091
brute_ec2_permissions()
92+
# ec2-instance-connect no functions
7193
brute_ecr_permissions()
7294
brute_ecs_permissions()
7395
brute_efs_permissions()
96+
brute_eks_permissions()
97+
brute_elasticinference_permissions()
7498
brute_elasticache_permissions()
7599
brute_elasticbeanstalk_permissions()
76100
brute_elastictranscoder_permissions()
@@ -81,45 +105,81 @@ def module_recon_all():
81105
brute_cloudwatchevents_permissions()
82106
brute_firehose_permissions()
83107
brute_fms_permissions()
108+
brute_forecast_permissions()
109+
# forecastquery no functions
110+
brute_frauddetector_permissions()
111+
brute_fsx_permissions()
84112
brute_gamelift_permissions()
85113
brute_glacier_permissions()
114+
brute_globalaccelerator_permissions()
86115
brute_glue_permissions()
87116
brute_greengrass_permissions()
117+
brute_groundstation_permissions()
88118
brute_guardduty_permissions()
89119
brute_health_permissions()
90120
brute_iam_permissions()
121+
brute_imagebuilder_permissions()
91122
brute_importexport_permissions()
92123
brute_inspector_permissions()
93124
brute_iot_permissions()
94-
# IoTDataPlane no functions
95-
# IoTJobsDataPlane no functions
125+
# iot-data no functions
126+
# iot-jobs-data no functions
127+
brute_iot1clickdevices_permissions()
128+
brute_iot1clickprojects_permissions()
129+
brute_iotanalytics_permissions()
130+
brute_iotevents_permissions()
131+
# iotevents-data no functions
132+
brute_iotsecuretunneling_permissions()
133+
brute_iotsitewise_permissions()
134+
# iotthingsgraph no functions
135+
brute_kafka_permissions()
136+
brute_kendra_permissions()
96137
brute_kinesis_permissions()
97138
# KinesisVideoArchivedMedia no functions
98139
# KinesisVideoMedia no functions
140+
# kinesis-video-signaling no functions
99141
brute_kinesisanalytics_permissions()
142+
brute_kinesisanalyticsv2_permissions()
100143
brute_kinesisvideo_permissions()
101144
brute_kms_permissions()
145+
brute_lakeformation_permissions()
102146
brute_lambda_permissions()
103147
brute_lexmodels_permissions()
104148
# LexRuntimeService no functions
149+
brute_licensemanager_permissions()
105150
brute_lightsail_permissions()
106151
brute_cloudwatchlogs_permissions()
107152
brute_machinelearning_permissions()
153+
brute_macie_permissions()
154+
brute_macie2_permissions()
155+
brute_managedblockchain_permissions()
156+
# marketplace-catalog needs an default entity type
108157
# marketplace-entitlement no functions
109158
# marketplacecommerceanalytics no functions
159+
brute_mediaconnect_permissions()
110160
brute_mediaconvert_permissions()
111161
brute_medialive_permissions()
112162
brute_mediapackage_permissions()
163+
brute_mediapackagevod_permissions()
113164
brute_mediastore_permissions()
114-
# brute_mediastore_data_permissions()
165+
# brute_mediastore_data_permissions() #listed endpoints dont connect
166+
brute_mediatailor_permissions()
115167
# MarketplaceMetering no functions
116168
brute_mgh_permissions()
169+
brute_migrationhubconfig_permissions()
117170
brute_mobile_permissions()
118171
brute_mq_permissions()
119172
brute_mturk_permissions()
173+
brute_neptune_permissions()
174+
brute_networkmanager_permissions() #9/3/20 only us-west-2 endpoint
120175
brute_opsworks_permissions()
121176
brute_opsworkscm_permissions()
122177
brute_organizations_permissions()
178+
brute_outposts_permissions()
179+
brute_personalize_permissions()
180+
# personalize-events no functions
181+
# personalize-runtime no functions
182+
# pi no functions
123183
brute_pinpoint_permissions()
124184
brute_pinpoint_email_permissions()
125185
# pinpoint-sms-voice no functions

0 commit comments

Comments
 (0)
Please sign in to comment.