aws_recon 0.5.17 → 0.5.21

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 89cbf0e8f8c709236ba6149f60a1240423d23de6fc120abe5359ff11e5d443e9
4
- data.tar.gz: d4e93494d56b5aa721a1da29a1f50bce4740b4edbc72380b3da7c43d8ded39ee
3
+ metadata.gz: 803a1b3bd9dcb2439cc97b5985dbe7e1ba86a35b5033860c1ebaef0f4faa3bb6
4
+ data.tar.gz: 2fd62c5eea66194c550c5f2bd16e636937033bddecfbfe3e9688f113ab50100b
5
5
  SHA512:
6
- metadata.gz: 5aac7ceef71d6c839042bf19f1b717dffc74ace6c8eb71dcbe646d25bc563f032f4e575d697f09b17fbe5a288bb36789c565686afdadbaf333c331e3d5ec49b0
7
- data.tar.gz: 311d6fdfa70cb4fc208329eb03ac3777faa2b285a30a9b64a3a217599f388afadc262a910099a9b97d10343774c51c9e78dfabcb6860123a0d34dd9ed376a1fd
6
+ metadata.gz: 28a455a40b01265155c376b74ed2ab5f63106bff99ddfb8da20f83c6fd268c6541e92c353f0acae89936b7c0d62ed4dbaa284c67c609b9836ed313958e07d373
7
+ data.tar.gz: f5017cc1a333dc1e0a7417ff9569728600c06c67dd2407ace47a82309419f3920dc54bb71f069abe794257f3a65ee8b369468e6c07662d9dfd725e8f6c8ae926
data/aws_recon.gemspec CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
24
24
  spec.require_paths = ['lib']
25
25
 
26
- spec.add_dependency 'aws-sdk', '~> 3.0'
26
+ spec.add_dependency 'aws-sdk', '~> 3.1'
27
27
  spec.add_dependency 'parallel', '~> 1.20.1'
28
28
 
29
29
  spec.add_development_dependency 'bundler', '~> 2.2.17'
@@ -98,7 +98,10 @@ class EC2 < Mapper
98
98
  struct.type = 'vpc'
99
99
  struct.arn = "arn:aws:ec2:#{@region}:#{@account}:vpc/#{vpc.vpc_id}" # no true ARN
100
100
  struct.flow_logs = @client
101
- .describe_flow_logs({ filter: [{ name: 'resource-id', values: [vpc.vpc_id] }] })
101
+ .describe_flow_logs({ filter: [{
102
+ name: 'resource-id',
103
+ values: [vpc.vpc_id]
104
+ }] })
102
105
  .flow_logs.first.to_h
103
106
 
104
107
  resources.push(struct.to_h)
@@ -318,8 +321,52 @@ class EC2 < Mapper
318
321
  resources.push(struct.to_h)
319
322
  end
320
323
  end
324
+
325
+ #
326
+ # describe_vpc_endpoints
327
+ #
328
+ @client.describe_vpc_endpoints.each_with_index do |response, page|
329
+ log(response.context.operation_name, page)
330
+
331
+ response.vpc_endpoints.each do |point|
332
+ struct = OpenStruct.new(point.to_h)
333
+ struct.type = 'vpc_endpoint'
334
+ struct.arn = "arn:aws:ec2:#{@region}:#{@account}:vpc_endpoint/#{point.vpc_endpoint_id}" # no true ARN
335
+
336
+ resources.push(struct.to_h)
337
+ end
338
+ end
339
+
340
+ #
341
+ # describe_managed_prefix_lists
342
+ #
343
+ begin
344
+ @client.describe_managed_prefix_lists.each_with_index do |response, page|
345
+ log(response.context.operation_name, page)
346
+
347
+ response.prefix_lists.each do |list|
348
+ struct = OpenStruct.new(list.to_h)
349
+ struct.type = 'prefix_list'
350
+ struct.arn = list.prefix_list_arn
351
+
352
+ resources.push(struct.to_h)
353
+ end
354
+ end
355
+ rescue Aws::EC2::Errors::ServiceError => e
356
+ log_error(e.code)
357
+
358
+ raise e unless suppressed_errors.include?(e.code) && !@options.quit_on_exception
359
+ end
321
360
  end
322
361
 
323
362
  resources
324
363
  end
364
+
365
+ private
366
+
367
+ def suppressed_errors
368
+ %w[
369
+ InvalidAction
370
+ ]
371
+ end
325
372
  end
@@ -53,7 +53,8 @@ class S3 < Mapper
53
53
  { func: 'get_bucket_tagging', key: 'tagging', field: nil },
54
54
  { func: 'get_bucket_logging', key: 'logging', field: 'logging_enabled' },
55
55
  { func: 'get_bucket_versioning', key: 'versioning', field: nil },
56
- { func: 'get_bucket_website', key: 'website', field: nil }
56
+ { func: 'get_bucket_website', key: 'website', field: nil },
57
+ { func: 'get_bucket_ownership_controls', key: 'ownership_controls', field: 'ownership_controls' }
57
58
  ]
58
59
 
59
60
  operations.each do |operation|
@@ -96,6 +97,7 @@ class S3 < Mapper
96
97
  ReplicationConfigurationNotFoundError
97
98
  NoSuchPublicAccessBlockConfiguration
98
99
  ObjectLockConfigurationNotFoundError
100
+ OwnershipControlsNotFoundError
99
101
  ]
100
102
  end
101
103
  end
@@ -87,7 +87,6 @@
87
87
  alias: ses
88
88
  excluded_regions:
89
89
  - ap-east-1
90
- - ap-northeast-3
91
90
  - name: CloudWatch
92
91
  alias: cloudwatch
93
92
  - name: CloudWatchLogs
@@ -1,3 +1,3 @@
1
1
  module AwsRecon
2
- VERSION = "0.5.17"
2
+ VERSION = "0.5.21"
3
3
  end
data/readme.md CHANGED
@@ -37,6 +37,7 @@ AWS Recon handles collection from large accounts by taking advantage of automati
37
37
  - [Pinterest](https://www.pinterest.com/)
38
38
  - [HackerOne](https://www.hackerone.com/)
39
39
  - [MuleSoft](https://www.mulesoft.com/)
40
+ - [Slack](https://slack.com/)
40
41
  - [Drata](https://drata.com/)
41
42
 
42
43
  > ** usage does not imply endorsement
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws_recon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.17
4
+ version: 0.5.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josh Larsen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-09-04 00:00:00.000000000 Z
12
+ date: 2021-12-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: aws-sdk
@@ -17,14 +17,14 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '3.0'
20
+ version: '3.1'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '3.0'
27
+ version: '3.1'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: parallel
30
30
  requirement: !ruby/object:Gem::Requirement
@@ -277,7 +277,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
277
277
  - !ruby/object:Gem::Version
278
278
  version: '0'
279
279
  requirements: []
280
- rubygems_version: 3.0.8
280
+ rubygems_version: 3.2.3
281
281
  signing_key:
282
282
  specification_version: 4
283
283
  summary: A multi-threaded AWS security-focused inventory collection tool.