Skip to content

Commit d8df551

Browse files
authored
Merge pull request #5 from opengovern/feat-updating-to-integrations
Feat updating to integrations
2 parents 5a6bb6b + 4915a04 commit d8df551

File tree

2,853 files changed

+20479
-54477
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,853 files changed

+20479
-54477
lines changed

compliance/controls/aws/aws_account_alternate_contact_security_registered.yaml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
ID: aws_account_alternate_contact_security_registered
22
Title: "Security contact information should be provided for an AWS account"
33
Description: "This control checks if an AWS Web Services (AWS) account has security contact information. The control fails if security contact information is not provided for the account."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
86
QueryToExecute: |
@@ -36,26 +34,28 @@ Query:
3634
left join alternate_security_contact as c on c.account_id = a.account_id;
3735
PrimaryTable: aws_account
3836
ListOfTables:
39-
- aws_account
40-
- aws_account_alternate_contact
37+
- aws_account
38+
- aws_account_alternate_contact
4139
Parameters: []
4240
Severity: low
4341
Tags:
4442
category:
45-
- Compliance
43+
- Compliance
4644
cis:
47-
- "true"
45+
- "true"
4846
cis_item_id:
49-
- "1.18"
47+
- "1.18"
5048
cis_level:
51-
- "1"
49+
- "1"
5250
cis_section_id:
53-
- "1"
51+
- "1"
5452
cis_type:
55-
- not_scored
53+
- not_scored
5654
cis_version:
57-
- v1.2.0
55+
- v1.2.0
5856
plugin:
59-
- aws
57+
- aws
6058
service:
61-
- AWS/IAM
59+
- AWS/IAM
60+
IntegrationTypeName:
61+
- aws_cloud

compliance/controls/aws/aws_account_part_of_organizations.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
ID: aws_account_part_of_organizations
22
Title: "AWS account should be part of AWS Organizations"
33
Description: "Ensure that an AWS account is part of AWS Organizations. The rule is non-compliant if an AWS account is not part of AWS Organizations or AWS Organizations master account ID does not match rule parameter MasterAccountId."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
86
QueryToExecute: |
@@ -23,21 +21,23 @@ Query:
2321
aws_account;
2422
PrimaryTable: aws_account
2523
ListOfTables:
26-
- aws_account
24+
- aws_account
2725
Parameters: []
2826
Severity: medium
2927
Tags:
3028
category:
31-
- Compliance
29+
- Compliance
3230
cis_controls_v8_ig1:
33-
- "true"
31+
- "true"
3432
gxp_21_cfr_part_11:
35-
- "true"
33+
- "true"
3634
nist_800_53_rev_5:
37-
- "true"
35+
- "true"
3836
nist_csf:
39-
- "true"
37+
- "true"
4038
plugin:
41-
- aws
39+
- aws
4240
service:
43-
- AWS/IAM
41+
- AWS/IAM
42+
IntegrationTypeName:
43+
- aws_cloud
Lines changed: 21 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,48 @@
11
ID: aws_acm_certificate_expires_30_days
22
Title: "ACM certificates should not expire within 30 days"
33
Description: "Ensure network integrity is protected by ensuring X509 certificates are issued by AWS ACM."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
8-
QueryToExecute: |
9-
select
10-
certificate_arn as resource,
11-
og_account_id as og_account_id,
12-
og_resource_id as og_resource_id,
13-
case
14-
when renewal_eligibility = 'INELIGIBLE' then 'skip'
15-
when date(not_after) - date(current_date) >= 30 then 'ok'
16-
else 'alarm'
17-
end as status,
18-
case
19-
when renewal_eligibility = 'INELIGIBLE' then title || ' not eligible for renewal.'
20-
else title || ' expires ' || to_char(not_after, 'DD-Mon-YYYY') ||
21-
' (' || extract(day from not_after - current_date) || ' days).'
22-
end as reason
23-
24-
, region, account_id
25-
from
26-
aws_acm_certificate;
6+
QueryToExecute: "select\n certificate_arn as resource,\n og_account_id as og_account_id,\n og_resource_id as og_resource_id,\n case\n when renewal_eligibility = 'INELIGIBLE' then 'skip'\n when date(not_after) - date(current_date) >= 30 then 'ok'\n else 'alarm'\n end as status,\n case\n when renewal_eligibility = 'INELIGIBLE' then title || ' not eligible for renewal.'\n else title || ' expires ' || to_char(not_after, 'DD-Mon-YYYY') ||\n ' (' || extract(day from not_after - current_date) || ' days).'\n end as reason\n \n , region, account_id\nfrom\n aws_acm_certificate;\n"
277
PrimaryTable: aws_acm_certificate
288
ListOfTables:
29-
- aws_acm_certificate
9+
- aws_acm_certificate
3010
Parameters: []
3111
Severity: high
3212
Tags:
3313
category:
34-
- Compliance
14+
- Compliance
3515
cisa_cyber_essentials:
36-
- "true"
16+
- "true"
3717
fedramp_low_rev_4:
38-
- "true"
18+
- "true"
3919
fedramp_moderate_rev_4:
40-
- "true"
20+
- "true"
4121
ffiec:
42-
- "true"
22+
- "true"
4323
gdpr:
44-
- "true"
24+
- "true"
4525
hipaa_final_omnibus_security_rule_2013:
46-
- "true"
26+
- "true"
4727
hipaa_security_rule_2003:
48-
- "true"
28+
- "true"
4929
nist_800_171_rev_2:
50-
- "true"
30+
- "true"
5131
nist_800_53_rev_4:
52-
- "true"
32+
- "true"
5333
nist_800_53_rev_5:
54-
- "true"
34+
- "true"
5535
nist_csf:
56-
- "true"
36+
- "true"
5737
pci_dss_v321:
58-
- "true"
38+
- "true"
5939
plugin:
60-
- aws
40+
- aws
6141
rbi_cyber_security:
62-
- "true"
42+
- "true"
6343
service:
64-
- AWS/ACM
44+
- AWS/ACM
6545
soc_2:
66-
- "true"
46+
- "true"
47+
IntegrationTypeName:
48+
- aws_cloud
Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,14 @@
11
ID: aws_acm_certificate_no_failed_certificate
22
Title: "Ensure that ACM certificates are not in failed state"
33
Description: "This control ensures that ACM certificates are not in failed state."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
8-
QueryToExecute: |-
9-
select
10-
certificate_arn as resource,
11-
og_account_id as og_account_id,
12-
og_resource_id as og_resource_id,
13-
case
14-
when status in ('VALIDATION_TIMED_OUT', 'FAILED') then 'alarm'
15-
else 'ok'
16-
end as status,
17-
title || ' status is ' || status || '.' as reason
18-
19-
20-
from
21-
aws_acm_certificate;
6+
QueryToExecute: "select\n certificate_arn as resource,\n og_account_id as og_account_id,\n og_resource_id as og_resource_id,\n case\n when status in ('VALIDATION_TIMED_OUT', 'FAILED') then 'alarm'\n else 'ok'\n end as status,\n title || ' status is ' || status || '.' as reason\n \n \nfrom\n aws_acm_certificate;"
227
PrimaryTable: aws_acm_certificate
238
ListOfTables:
24-
- aws_acm_certificate
9+
- aws_acm_certificate
2510
Parameters: []
2611
Severity: low
2712
Tags: {}
13+
IntegrationTypeName:
14+
- aws_cloud
Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,14 @@
11
ID: aws_acm_certificate_no_pending_validation_certificate
22
Title: "Ensure that ACM certificates are not in pending validation state"
33
Description: "This control ensures that ACM certificates are not in pending validation state. When certificates are not validated within 72 hours after the request is made, those certificates become invalid."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
8-
QueryToExecute: |-
9-
select
10-
certificate_arn as resource,
11-
og_account_id as og_account_id,
12-
og_resource_id as og_resource_id,
13-
case
14-
when status = 'PENDING_VALIDATION' then 'info'
15-
else 'ok'
16-
end as status,
17-
title || ' status is ' || status || '.' as reason
18-
19-
20-
from
21-
aws_acm_certificate;
6+
QueryToExecute: "select\n certificate_arn as resource,\n og_account_id as og_account_id,\n og_resource_id as og_resource_id,\n case\n when status = 'PENDING_VALIDATION' then 'info'\n else 'ok'\n end as status,\n title || ' status is ' || status || '.' as reason\n \n \nfrom\n aws_acm_certificate;"
227
PrimaryTable: aws_acm_certificate
238
ListOfTables:
24-
- aws_acm_certificate
9+
- aws_acm_certificate
2510
Parameters: []
2611
Severity: low
2712
Tags: {}
13+
IntegrationTypeName:
14+
- aws_cloud

compliance/controls/aws/aws_acm_certificate_no_wildcard_domain_name.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
ID: aws_acm_certificate_no_wildcard_domain_name
22
Title: "ACM certificates should not use wildcard certificates"
33
Description: "Ensure that ACM single domain name certificates are used instead of wildcard certificates within your AWS account in order to follow security best practices and protect each domain/subdomain with its own unique private key."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
86
QueryToExecute: |-
@@ -22,7 +20,9 @@ Query:
2220
aws_acm_certificate;
2321
PrimaryTable: aws_acm_certificate
2422
ListOfTables:
25-
- aws_acm_certificate
23+
- aws_acm_certificate
2624
Parameters: []
2725
Severity: low
2826
Tags: {}
27+
IntegrationTypeName:
28+
- aws_cloud
Lines changed: 4 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,14 @@
11
ID: aws_acm_certificate_not_expired
22
Title: "Ensure that all the expired ACM certificates are removed"
33
Description: "This control ensures that all expired ACM certificates are removed from AWS account."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
8-
QueryToExecute: |-
9-
select
10-
certificate_arn as resource,
11-
og_account_id as og_account_id,
12-
og_resource_id as og_resource_id,
13-
case
14-
when renewal_eligibility = 'INELIGIBLE' then 'skip'
15-
when date(not_after) < (current_date - interval '1' minute) then 'alarm'
16-
else 'ok'
17-
end as status,
18-
case
19-
when renewal_eligibility = 'INELIGIBLE' then title || ' not eligible for renewal.'
20-
when date(not_after) < (current_date - interval '1' minute) then title || ' expired ' || to_char(not_after, 'DD-Mon-YYYY') ||
21-
' (' || extract(day from not_after - current_date) || ' days ago).'
22-
else title || ' expires ' || to_char(not_after, 'DD-Mon-YYYY') ||
23-
' (' || extract(day from not_after - current_date) || ' days).'
24-
end as reason
25-
26-
27-
from
28-
aws_acm_certificate;
6+
QueryToExecute: "select\n certificate_arn as resource,\n og_account_id as og_account_id,\n og_resource_id as og_resource_id,\n case\n when renewal_eligibility = 'INELIGIBLE' then 'skip'\n when date(not_after) < (current_date - interval '1' minute) then 'alarm'\n else 'ok'\n end as status,\n case\n when renewal_eligibility = 'INELIGIBLE' then title || ' not eligible for renewal.'\n when date(not_after) < (current_date - interval '1' minute) then title || ' expired ' || to_char(not_after, 'DD-Mon-YYYY') ||\n ' (' || extract(day from not_after - current_date) || ' days ago).'\n else title || ' expires ' || to_char(not_after, 'DD-Mon-YYYY') ||\n ' (' || extract(day from not_after - current_date) || ' days).'\n end as reason\n \n \nfrom\n aws_acm_certificate;"
297
PrimaryTable: aws_acm_certificate
308
ListOfTables:
31-
- aws_acm_certificate
9+
- aws_acm_certificate
3210
Parameters: []
3311
Severity: low
3412
Tags: {}
13+
IntegrationTypeName:
14+
- aws_cloud
Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,14 @@
11
ID: aws_acm_certificate_rsa_key_length_2048_bits_or_greater
22
Title: "RSA certificates managed by ACM should use a key length of at least 2,048 bits"
33
Description: "This control checks whether RSA certificates managed by AWS Certificate Manager use a key length of at least 2,048 bits. The control fails if the key length is smaller than 2,048 bits."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
8-
QueryToExecute: |-
9-
select
10-
certificate_arn as resource,
11-
og_account_id as og_account_id,
12-
og_resource_id as og_resource_id,
13-
case
14-
when not key_algorithm like 'RSA-%' then 'skip'
15-
when key_algorithm = 'RSA_1024' then 'alarm'
16-
else 'ok'
17-
end as status,
18-
case
19-
when not key_algorithm like 'RSA-%' then title || ' is not a RSA certificate.'
20-
when key_algorithm = 'RSA_1024' then title || ' is using 1024 bits key length.'
21-
else title || ' is using ' || split_part(key_algorithm, '-', 2) || ' bits key length.'
22-
end as reason
23-
24-
25-
from
26-
aws_acm_certificate;
6+
QueryToExecute: "select\n certificate_arn as resource,\n og_account_id as og_account_id,\n og_resource_id as og_resource_id,\n case\n when not key_algorithm like 'RSA-%' then 'skip'\n when key_algorithm = 'RSA_1024' then 'alarm'\n else 'ok'\n end as status,\n case\n when not key_algorithm like 'RSA-%' then title || ' is not a RSA certificate.'\n when key_algorithm = 'RSA_1024' then title || ' is using 1024 bits key length.'\n else title || ' is using ' || split_part(key_algorithm, '-', 2) || ' bits key length.'\n end as reason\n \n \nfrom\n aws_acm_certificate;"
277
PrimaryTable: aws_acm_certificate
288
ListOfTables:
29-
- aws_acm_certificate
9+
- aws_acm_certificate
3010
Parameters: []
3111
Severity: low
3212
Tags: {}
13+
IntegrationTypeName:
14+
- aws_cloud

compliance/controls/aws/aws_acm_certificate_transparency_logging_enabled.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
ID: aws_acm_certificate_transparency_logging_enabled
22
Title: "ACM certificates should have transparency logging enabled"
33
Description: "Ensure ACM certificates transparency logging is enabled as certificate transparency logging guards against SSL/TLS certificates issued by mistake or by a compromised certificate authority."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
86
QueryToExecute: |-
@@ -24,7 +22,9 @@ Query:
2422
aws_acm_certificate;
2523
PrimaryTable: aws_acm_certificate
2624
ListOfTables:
27-
- aws_acm_certificate
25+
- aws_acm_certificate
2826
Parameters: []
2927
Severity: low
3028
Tags: {}
29+
IntegrationTypeName:
30+
- aws_cloud
Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,14 @@
11
ID: aws_acmpca_root_certificate_authority_disabled
22
Title: "AWS Private CA root certificate authority should be disabled"
33
Description: "This control checks if AWS Private CA has a root certificate authority (CA) that is disabled. The control fails if the root CA is enabled."
4-
Connector:
5-
- aws
64
Query:
75
Engine: CloudQL-v0.0.1
8-
QueryToExecute: |-
9-
select
10-
arn as resource,
11-
og_account_id as og_account_id,
12-
og_resource_id as og_resource_id,
13-
case
14-
when type <> 'ROOT' then 'skip'
15-
when status = 'DISABLED' then 'ok'
16-
else 'alarm'
17-
end as status,
18-
case
19-
when type <> 'ROOT' then title || ' is not root CA.'
20-
when status = 'DISABLED' then title || ' root CA disabled.'
21-
else title || ' root CA not disabled.'
22-
end as reason
23-
24-
25-
from
26-
aws_acmpca_certificate_authority;
6+
QueryToExecute: "select\n arn as resource,\n og_account_id as og_account_id,\n og_resource_id as og_resource_id,\n case\n when type <> 'ROOT' then 'skip'\n when status = 'DISABLED' then 'ok'\n else 'alarm'\n end as status,\n case\n when type <> 'ROOT' then title || ' is not root CA.'\n when status = 'DISABLED' then title || ' root CA disabled.'\n else title || ' root CA not disabled.'\n end as reason\n \n \nfrom\n aws_acmpca_certificate_authority;"
277
PrimaryTable: aws_acmpca_certificate_authority
288
ListOfTables:
29-
- aws_acmpca_certificate_authority
9+
- aws_acmpca_certificate_authority
3010
Parameters: []
3111
Severity: low
3212
Tags: {}
13+
IntegrationTypeName:
14+
- aws_cloud

0 commit comments

Comments
 (0)