From b0aa204efecc79a5de0eeab9b1085954cf0db970 Mon Sep 17 00:00:00 2001 From: cmc Date: Mon, 24 Jul 2017 14:35:17 -0700 Subject: [PATCH] refactor, tidy up, split out config --- cloudwatch_describe_alarms_and_metrics.py | 18 ++------------ datapipeline_list_pipelines.py | 19 ++------------ dynamodb_list_tables.py | 19 ++------------ ec2_get_all_instances.py | 19 +------------- ec2_get_instance_volumes.py | 19 +------------- ec2_review_encrypted_volumes.py | 18 +------------- elasticbeanstalk_describe.py | 21 ++-------------- emr_list_clusters.py | 19 +------------- iam_pwn.py | 22 ++--------------- lambda_list_functions_and_mappings.py | 20 ++------------- logging_list_monitoring_configuration.py | 2 +- opsworks_describe_stacks.py | 18 ++------------ rds_describe_db_instances.py | 18 +------------- recon_find_all_permissions.py | 18 ++------------ s3_list_bucket_contents.py | 23 +++++------------ s3_list_bucket_contents_fromfile.py | 30 ++++++----------------- s3_list_buckets_and_contents.py | 20 ++------------- s3_list_buckets_for_acct.py | 20 ++------------- 18 files changed, 40 insertions(+), 303 deletions(-) diff --git a/cloudwatch_describe_alarms_and_metrics.py b/cloudwatch_describe_alarms_and_metrics.py index 34fb491..bdb7101 100644 --- a/cloudwatch_describe_alarms_and_metrics.py +++ b/cloudwatch_describe_alarms_and_metrics.py @@ -2,23 +2,9 @@ example calling cloudwatch functions decribe alarms, describe alarm history, list metrics ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.cloudwatch import * - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY describe_alarms(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) describe_alarm_history(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) -list_metrics(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +list_metrics(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/datapipeline_list_pipelines.py b/datapipeline_list_pipelines.py index e47037f..6a2597b 100644 --- a/datapipeline_list_pipelines.py +++ b/datapipeline_list_pipelines.py @@ -1,23 +1,8 @@ ''' data pipeline example ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.datapipeline import * - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY - -list_pipelines(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +list_pipelines(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/dynamodb_list_tables.py b/dynamodb_list_tables.py index 37548a6..06fc57f 100644 --- a/dynamodb_list_tables.py +++ b/dynamodb_list_tables.py @@ -1,23 +1,8 @@ ''' dynamoDB examples ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.dynamodb import * - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY list_dynamodb_tables(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) -list_dynamodb_tables_detailed(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +list_dynamodb_tables_detailed(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/ec2_get_all_instances.py b/ec2_get_all_instances.py index 750bc46..7989079 100644 --- a/ec2_get_all_instances.py +++ b/ec2_get_all_instances.py @@ -1,24 +1,7 @@ ''' This file is used to list ec2 instances ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.ec2 import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY get_instance_details(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/ec2_get_instance_volumes.py b/ec2_get_instance_volumes.py index 980a309..56aba16 100644 --- a/ec2_get_instance_volumes.py +++ b/ec2_get_instance_volumes.py @@ -1,25 +1,8 @@ ''' This file is used to list volumes of ec2 instances ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.ec2 import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY get_instance_volume_details(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) get_instance_volume_details2(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/ec2_review_encrypted_volumes.py b/ec2_review_encrypted_volumes.py index 8d95cc2..eb33724 100644 --- a/ec2_review_encrypted_volumes.py +++ b/ec2_review_encrypted_volumes.py @@ -2,23 +2,7 @@ ''' This file is used to list EBS volumes and whether or not they are encrypted. This is only for "in-use" (running) volumes. ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.ec2 import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY review_encrypted_volumes(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/elasticbeanstalk_describe.py b/elasticbeanstalk_describe.py index bfa8c21..dcd9e1e 100644 --- a/elasticbeanstalk_describe.py +++ b/elasticbeanstalk_describe.py @@ -1,28 +1,11 @@ ''' This file is used to perform some ElasticBeanstalk actions ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.elasticbeanstalk import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY #describe_applications(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) #describe_application_versions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) #describe_configuration_options(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) describe_environments(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) -describe_events(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +describe_events(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/emr_list_clusters.py b/emr_list_clusters.py index e237b40..a1938c1 100644 --- a/emr_list_clusters.py +++ b/emr_list_clusters.py @@ -1,25 +1,8 @@ ''' This file is used to perform some EMR actions ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.emr import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY list_clusters(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/iam_pwn.py b/iam_pwn.py index 6bf1e43..a9e24e1 100644 --- a/iam_pwn.py +++ b/iam_pwn.py @@ -1,27 +1,9 @@ ''' if you have root or IAM access gather user info, manipulate access keys or passwords, make backdoor account ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.iam import * from libs.sts import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY ='' - - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY get_accountid(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) check_root_account(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) @@ -31,4 +13,4 @@ get_password_policy(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) #change_user_console_password(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, 'pythons3', 'PS#EDCasd123456!@') #create_user(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY,'leethax') #make_admin(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY,'leethax') -#make_backdoor_account(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY,'leethax','PS#EDCasd123456!@') \ No newline at end of file +#make_backdoor_account(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY,'leethax','PS#EDCasd123456!@') diff --git a/lambda_list_functions_and_mappings.py b/lambda_list_functions_and_mappings.py index 935d5b4..9b6949e 100644 --- a/lambda_list_functions_and_mappings.py +++ b/lambda_list_functions_and_mappings.py @@ -1,24 +1,8 @@ ''' This file is used to list lambda functions and event mappings ''' - -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.aws_lambda import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY list_functions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) -list_event_source_mappings(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +list_event_source_mappings(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/logging_list_monitoring_configuration.py b/logging_list_monitoring_configuration.py index 0843ce2..a0fb1be 100644 --- a/logging_list_monitoring_configuration.py +++ b/logging_list_monitoring_configuration.py @@ -57,4 +57,4 @@ for region in regions: ruleresponse = describe_configuration_recorders(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, region) print ruleresponse -print_section_header_and_footer("END OF CONFIG SERVICE REVIEW", True) \ No newline at end of file +print_section_header_and_footer("END OF CONFIG SERVICE REVIEW", True) diff --git a/opsworks_describe_stacks.py b/opsworks_describe_stacks.py index 73c69a8..b1a33de 100644 --- a/opsworks_describe_stacks.py +++ b/opsworks_describe_stacks.py @@ -1,18 +1,4 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.opsworks import * +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' - - -describe_stacks(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +describe_stacks(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/rds_describe_db_instances.py b/rds_describe_db_instances.py index 9f7ef1b..6ea63ec 100644 --- a/rds_describe_db_instances.py +++ b/rds_describe_db_instances.py @@ -1,20 +1,4 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - from libs.rds import * - -pp = pprint.PrettyPrinter(indent=5, width=80) - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY ='' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY describe_db_instances(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/recon_find_all_permissions.py b/recon_find_all_permissions.py index 6e48a44..ab97858 100644 --- a/recon_find_all_permissions.py +++ b/recon_find_all_permissions.py @@ -1,20 +1,6 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.brute import * from libs.s3 import * - -#insert AWS key, will figure out how to pull this in from a single file for all scripts - - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY check_root_account(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) brute_acm_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) @@ -37,7 +23,7 @@ brute_cognitoidentity_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) brute_cognitoidp_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) brute_cognitosync_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) brute_configservice_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) - #brute_costandusagereportservice_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) #Could not connect to the endpoint URL: "https://cur.us-west-2.amazonaws.com/" +#brute_costandusagereportservice_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) #Could not connect to the endpoint URL: "https://cur.us-west-2.amazonaws.com/" brute_datapipeline_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) brute_devicefarm_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) brute_directconnect_permissions(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/s3_list_bucket_contents.py b/s3_list_bucket_contents.py index 487e0ad..21e3757 100644 --- a/s3_list_bucket_contents.py +++ b/s3_list_bucket_contents.py @@ -1,21 +1,10 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - +import sys from libs.s3 import * +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY -#insert AWS key, will figure out how to pull this in from a single file for all scripts - - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY = '' +if len(sys.argv) < 2: + print "must specify bucket: {} ".format(sys.argv[0]) + sys.exit(-1) #Attempt to list the contents of the bucket -get_s3bucket_policy(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY,'myfuckingbucket') +get_s3bucket_policy(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, sys.argv[1]) diff --git a/s3_list_bucket_contents_fromfile.py b/s3_list_bucket_contents_fromfile.py index 49a238c..0bde934 100644 --- a/s3_list_bucket_contents_fromfile.py +++ b/s3_list_bucket_contents_fromfile.py @@ -1,25 +1,11 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.s3 import * - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY ='' - +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY #open a list of possible buckets and attempt to list the contents -f = open('test.txt', 'r') -for line in f: - line = line.strip() - if not line: - continue - else: - get_s3bucket_policy(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY,line) +with open('bucket_list.txt', 'r') as f: + for line in f: + line = line.strip() + if not line: + continue + else: + get_s3bucket_policy(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, line) diff --git a/s3_list_buckets_and_contents.py b/s3_list_buckets_and_contents.py index 93f2a5e..474d287 100644 --- a/s3_list_buckets_and_contents.py +++ b/s3_list_buckets_and_contents.py @@ -1,20 +1,4 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.s3 import * +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -#AWS_ACCESS_KEY_ID = '' -#AWS_SECRET_ACCESS_KEY ='' - - -get_s3objects_for_account_detailed(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +get_s3objects_for_account_detailed(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) diff --git a/s3_list_buckets_for_acct.py b/s3_list_buckets_for_acct.py index e0a41a0..518bc1e 100644 --- a/s3_list_buckets_for_acct.py +++ b/s3_list_buckets_for_acct.py @@ -1,20 +1,4 @@ -import boto3 -import botocore - -import json -import urllib -import logging -import sys,os -import pprint - -pp = pprint.PrettyPrinter(indent=5, width=80) - from libs.s3 import * +from config import AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY -#insert AWS key, will figure out how to pull this in from a single file for all scripts - -AWS_ACCESS_KEY_ID = '' -AWS_SECRET_ACCESS_KEY ='' - - -get_s3objects_for_account(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) \ No newline at end of file +get_s3objects_for_account(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)