google-cloud-security_center-v1 0.35.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/security_center/v1/security_center/paths.rb +52 -0
  4. data/lib/google/cloud/security_center/v1/version.rb +1 -1
  5. data/lib/google/cloud/securitycenter/v1/backup_disaster_recovery_pb.rb +45 -0
  6. data/lib/google/cloud/securitycenter/v1/database_pb.rb +1 -1
  7. data/lib/google/cloud/securitycenter/v1/exfiltration_pb.rb +1 -1
  8. data/lib/google/cloud/securitycenter/v1/file_pb.rb +2 -1
  9. data/lib/google/cloud/securitycenter/v1/finding_pb.rb +9 -1
  10. data/lib/google/cloud/securitycenter/v1/indicator_pb.rb +2 -1
  11. data/lib/google/cloud/securitycenter/v1/kubernetes_pb.rb +2 -1
  12. data/lib/google/cloud/securitycenter/v1/load_balancer_pb.rb +42 -0
  13. data/lib/google/cloud/securitycenter/v1/log_entry_pb.rb +46 -0
  14. data/lib/google/cloud/securitycenter/v1/mitre_attack_pb.rb +1 -1
  15. data/lib/google/cloud/securitycenter/v1/org_policy_pb.rb +44 -0
  16. data/proto_docs/google/cloud/securitycenter/v1/backup_disaster_recovery.rb +90 -0
  17. data/proto_docs/google/cloud/securitycenter/v1/database.rb +10 -5
  18. data/proto_docs/google/cloud/securitycenter/v1/exfiltration.rb +3 -0
  19. data/proto_docs/google/cloud/securitycenter/v1/file.rb +17 -0
  20. data/proto_docs/google/cloud/securitycenter/v1/finding.rb +12 -0
  21. data/proto_docs/google/cloud/securitycenter/v1/indicator.rb +15 -0
  22. data/proto_docs/google/cloud/securitycenter/v1/kubernetes.rb +29 -0
  23. data/proto_docs/google/cloud/securitycenter/v1/load_balancer.rb +36 -0
  24. data/proto_docs/google/cloud/securitycenter/v1/log_entry.rb +58 -0
  25. data/proto_docs/google/cloud/securitycenter/v1/mitre_attack.rb +123 -53
  26. data/proto_docs/google/cloud/securitycenter/v1/org_policy.rb +37 -0
  27. data/proto_docs/google/cloud/securitycenter/v1/source.rb +2 -2
  28. metadata +12 -116
@@ -45,9 +45,26 @@ module Google
45
45
  # @!attribute [rw] contents
46
46
  # @return [::String]
47
47
  # Prefix of the file contents as a JSON-encoded string.
48
+ # @!attribute [rw] disk_path
49
+ # @return [::Google::Cloud::SecurityCenter::V1::File::DiskPath]
50
+ # Path of the file in terms of underlying disk/partition identifiers.
48
51
  class File
49
52
  include ::Google::Protobuf::MessageExts
50
53
  extend ::Google::Protobuf::MessageExts::ClassMethods
54
+
55
+ # Path of the file in terms of underlying disk/partition identifiers.
56
+ # @!attribute [rw] partition_uuid
57
+ # @return [::String]
58
+ # UUID of the partition (format
59
+ # https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)
60
+ # @!attribute [rw] relative_path
61
+ # @return [::String]
62
+ # Relative path of the file in the partition as a JSON encoded string.
63
+ # Example: /home/user1/executable_file.sh
64
+ class DiskPath
65
+ include ::Google::Protobuf::MessageExts
66
+ extend ::Google::Protobuf::MessageExts::ClassMethods
67
+ end
51
68
  end
52
69
  end
53
70
  end
@@ -212,9 +212,21 @@ module Google
212
212
  # @!attribute [rw] kernel_rootkit
213
213
  # @return [::Google::Cloud::SecurityCenter::V1::KernelRootkit]
214
214
  # Signature of the kernel rootkit.
215
+ # @!attribute [rw] org_policies
216
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::OrgPolicy>]
217
+ # Contains information about the org policies associated with the finding.
215
218
  # @!attribute [rw] application
216
219
  # @return [::Google::Cloud::SecurityCenter::V1::Application]
217
220
  # Represents an application associated with the finding.
221
+ # @!attribute [rw] backup_disaster_recovery
222
+ # @return [::Google::Cloud::SecurityCenter::V1::BackupDisasterRecovery]
223
+ # Fields related to Backup and DR findings.
224
+ # @!attribute [rw] log_entries
225
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::LogEntry>]
226
+ # Log entries that are relevant to the finding.
227
+ # @!attribute [rw] load_balancers
228
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::LoadBalancer>]
229
+ # The load balancers associated with the finding.
218
230
  class Finding
219
231
  include ::Google::Protobuf::MessageExts
220
232
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -50,6 +50,9 @@ module Google
50
50
  # @!attribute [rw] yara_rule_signature
51
51
  # @return [::Google::Cloud::SecurityCenter::V1::Indicator::ProcessSignature::YaraRuleSignature]
52
52
  # Signature indicating that a YARA rule was matched.
53
+ # @!attribute [rw] signature_type
54
+ # @return [::Google::Cloud::SecurityCenter::V1::Indicator::ProcessSignature::SignatureType]
55
+ # Describes the type of resource associated with the signature.
53
56
  class ProcessSignature
54
57
  include ::Google::Protobuf::MessageExts
55
58
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -89,6 +92,18 @@ module Google
89
92
  include ::Google::Protobuf::MessageExts
90
93
  extend ::Google::Protobuf::MessageExts::ClassMethods
91
94
  end
95
+
96
+ # Possible resource types to be associated with a signature.
97
+ module SignatureType
98
+ # The default signature type.
99
+ SIGNATURE_TYPE_UNSPECIFIED = 0
100
+
101
+ # Used for signatures concerning processes.
102
+ SIGNATURE_TYPE_PROCESS = 1
103
+
104
+ # Used for signatures concerning disks.
105
+ SIGNATURE_TYPE_FILE = 2
106
+ end
92
107
  end
93
108
  end
94
109
  end
@@ -52,6 +52,9 @@ module Google
52
52
  # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::AccessReview>]
53
53
  # Provides information on any Kubernetes access reviews (privilege checks)
54
54
  # relevant to the finding.
55
+ # @!attribute [rw] objects
56
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Kubernetes::Object>]
57
+ # Kubernetes objects related to the finding.
55
58
  class Kubernetes
56
59
  include ::Google::Protobuf::MessageExts
57
60
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -205,6 +208,32 @@ module Google
205
208
  include ::Google::Protobuf::MessageExts
206
209
  extend ::Google::Protobuf::MessageExts::ClassMethods
207
210
  end
211
+
212
+ # Kubernetes object related to the finding, uniquely identified by GKNN.
213
+ # Used if the object Kind is not one of Pod, Node, NodePool, Binding, or
214
+ # AccessReview.
215
+ # @!attribute [rw] group
216
+ # @return [::String]
217
+ # Kubernetes object group, such as "policy.k8s.io/v1".
218
+ # @!attribute [rw] kind
219
+ # @return [::String]
220
+ # Kubernetes object kind, such as "Namespace".
221
+ # @!attribute [rw] ns
222
+ # @return [::String]
223
+ # Kubernetes object namespace. Must be a valid DNS label. Named
224
+ # "ns" to avoid collision with C++ namespace keyword. For details see
225
+ # https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.
226
+ # @!attribute [rw] name
227
+ # @return [::String]
228
+ # Kubernetes object name. For details see
229
+ # https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.
230
+ # @!attribute [rw] containers
231
+ # @return [::Array<::Google::Cloud::SecurityCenter::V1::Container>]
232
+ # Pod containers associated with this finding, if any.
233
+ class Object
234
+ include ::Google::Protobuf::MessageExts
235
+ extend ::Google::Protobuf::MessageExts::ClassMethods
236
+ end
208
237
  end
209
238
  end
210
239
  end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V1
24
+ # Contains information related to the load balancer associated with the
25
+ # finding.
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # The name of the load balancer associated with the finding.
29
+ class LoadBalancer
30
+ include ::Google::Protobuf::MessageExts
31
+ extend ::Google::Protobuf::MessageExts::ClassMethods
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V1
24
+ # An individual entry in a log.
25
+ # @!attribute [rw] cloud_logging_entry
26
+ # @return [::Google::Cloud::SecurityCenter::V1::CloudLoggingEntry]
27
+ # An individual entry in a log stored in Cloud Logging.
28
+ class LogEntry
29
+ include ::Google::Protobuf::MessageExts
30
+ extend ::Google::Protobuf::MessageExts::ClassMethods
31
+ end
32
+
33
+ # Metadata taken from a [Cloud Logging
34
+ # LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
35
+ # @!attribute [rw] insert_id
36
+ # @return [::String]
37
+ # A unique identifier for the log entry.
38
+ # @!attribute [rw] log_id
39
+ # @return [::String]
40
+ # The type of the log (part of `log_name`. `log_name` is the resource name of
41
+ # the log to which this log entry belongs). For example:
42
+ # `cloudresourcemanager.googleapis.com/activity`. Note that this field is not
43
+ # URL-encoded, unlike the `LOG_ID` field in `LogEntry`.
44
+ # @!attribute [rw] resource_container
45
+ # @return [::String]
46
+ # The organization, folder, or project of the monitored resource that
47
+ # produced this log entry.
48
+ # @!attribute [rw] timestamp
49
+ # @return [::Google::Protobuf::Timestamp]
50
+ # The time the event described by the log entry occurred.
51
+ class CloudLoggingEntry
52
+ include ::Google::Protobuf::MessageExts
53
+ extend ::Google::Protobuf::MessageExts::ClassMethods
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -99,24 +99,28 @@ module Google
99
99
 
100
100
  # MITRE ATT&CK techniques that can be referenced by SCC findings.
101
101
  # See: https://attack.mitre.org/techniques/enterprise/
102
+ # Next ID: 59
102
103
  module Technique
103
104
  # Unspecified value.
104
105
  TECHNIQUE_UNSPECIFIED = 0
105
106
 
106
- # T1595
107
- ACTIVE_SCANNING = 1
107
+ # T1036
108
+ MASQUERADING = 49
108
109
 
109
- # T1595.001
110
- SCANNING_IP_BLOCKS = 2
110
+ # T1036.005
111
+ MATCH_LEGITIMATE_NAME_OR_LOCATION = 50
111
112
 
112
- # T1105
113
- INGRESS_TOOL_TRANSFER = 3
113
+ # T1037
114
+ BOOT_OR_LOGON_INITIALIZATION_SCRIPTS = 37
114
115
 
115
- # T1106
116
- NATIVE_API = 4
116
+ # T1037.005
117
+ STARTUP_ITEMS = 38
117
118
 
118
- # T1129
119
- SHARED_MODULES = 5
119
+ # T1046
120
+ NETWORK_SERVICE_DISCOVERY = 32
121
+
122
+ # T1057
123
+ PROCESS_DISCOVERY = 56
120
124
 
121
125
  # T1059
122
126
  COMMAND_AND_SCRIPTING_INTERPRETER = 6
@@ -124,89 +128,155 @@ module Google
124
128
  # T1059.004
125
129
  UNIX_SHELL = 7
126
130
 
127
- # T1496
128
- RESOURCE_HIJACKING = 8
129
-
130
- # T1090
131
- PROXY = 9
131
+ # T1069
132
+ PERMISSION_GROUPS_DISCOVERY = 18
132
133
 
133
- # T1090.002
134
- EXTERNAL_PROXY = 10
134
+ # T1069.003
135
+ CLOUD_GROUPS = 19
135
136
 
136
- # T1090.003
137
- MULTI_HOP_PROXY = 11
137
+ # T1071
138
+ APPLICATION_LAYER_PROTOCOL = 45
138
139
 
139
- # T1568
140
- DYNAMIC_RESOLUTION = 12
140
+ # T1071.004
141
+ DNS = 46
141
142
 
142
- # T1552
143
- UNSECURED_CREDENTIALS = 13
143
+ # T1072
144
+ SOFTWARE_DEPLOYMENT_TOOLS = 47
144
145
 
145
146
  # T1078
146
147
  VALID_ACCOUNTS = 14
147
148
 
149
+ # T1078.001
150
+ DEFAULT_ACCOUNTS = 35
151
+
148
152
  # T1078.003
149
153
  LOCAL_ACCOUNTS = 15
150
154
 
151
155
  # T1078.004
152
156
  CLOUD_ACCOUNTS = 16
153
157
 
154
- # T1498
155
- NETWORK_DENIAL_OF_SERVICE = 17
156
-
157
- # T1069
158
- PERMISSION_GROUPS_DISCOVERY = 18
159
-
160
- # T1069.003
161
- CLOUD_GROUPS = 19
158
+ # T1090
159
+ PROXY = 9
162
160
 
163
- # T1567
164
- EXFILTRATION_OVER_WEB_SERVICE = 20
161
+ # T1090.002
162
+ EXTERNAL_PROXY = 10
165
163
 
166
- # T1567.002
167
- EXFILTRATION_TO_CLOUD_STORAGE = 21
164
+ # T1090.003
165
+ MULTI_HOP_PROXY = 11
168
166
 
169
167
  # T1098
170
168
  ACCOUNT_MANIPULATION = 22
171
169
 
170
+ # T1098.001
171
+ ADDITIONAL_CLOUD_CREDENTIALS = 40
172
+
172
173
  # T1098.004
173
174
  SSH_AUTHORIZED_KEYS = 23
174
175
 
175
- # T1543
176
- CREATE_OR_MODIFY_SYSTEM_PROCESS = 24
176
+ # T1098.006
177
+ ADDITIONAL_CONTAINER_CLUSTER_ROLES = 58
177
178
 
178
- # T1539
179
- STEAL_WEB_SESSION_COOKIE = 25
179
+ # T1105
180
+ INGRESS_TOOL_TRANSFER = 3
180
181
 
181
- # T1578
182
- MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE = 26
182
+ # T1106
183
+ NATIVE_API = 4
184
+
185
+ # T1110
186
+ BRUTE_FORCE = 44
187
+
188
+ # T1129
189
+ SHARED_MODULES = 5
190
+
191
+ # T1134
192
+ ACCESS_TOKEN_MANIPULATION = 33
193
+
194
+ # T1134.001
195
+ TOKEN_IMPERSONATION_OR_THEFT = 39
183
196
 
184
197
  # T1190
185
198
  EXPLOIT_PUBLIC_FACING_APPLICATION = 27
186
199
 
187
- # T1556
188
- MODIFY_AUTHENTICATION_PROCESS = 28
200
+ # T1484
201
+ DOMAIN_POLICY_MODIFICATION = 30
189
202
 
190
203
  # T1485
191
204
  DATA_DESTRUCTION = 29
192
205
 
193
- # T1484
194
- DOMAIN_POLICY_MODIFICATION = 30
206
+ # T1489
207
+ SERVICE_STOP = 52
195
208
 
196
- # T1562
197
- IMPAIR_DEFENSES = 31
209
+ # T1490
210
+ INHIBIT_SYSTEM_RECOVERY = 36
198
211
 
199
- # T1046
200
- NETWORK_SERVICE_DISCOVERY = 32
212
+ # T1496
213
+ RESOURCE_HIJACKING = 8
201
214
 
202
- # T1134
203
- ACCESS_TOKEN_MANIPULATION = 33
215
+ # T1498
216
+ NETWORK_DENIAL_OF_SERVICE = 17
217
+
218
+ # T1526
219
+ CLOUD_SERVICE_DISCOVERY = 48
220
+
221
+ # T1528
222
+ STEAL_APPLICATION_ACCESS_TOKEN = 42
223
+
224
+ # T1531
225
+ ACCOUNT_ACCESS_REMOVAL = 51
226
+
227
+ # T1539
228
+ STEAL_WEB_SESSION_COOKIE = 25
229
+
230
+ # T1543
231
+ CREATE_OR_MODIFY_SYSTEM_PROCESS = 24
204
232
 
205
233
  # T1548
206
234
  ABUSE_ELEVATION_CONTROL_MECHANISM = 34
207
235
 
208
- # T1078.001
209
- DEFAULT_ACCOUNTS = 35
236
+ # T1552
237
+ UNSECURED_CREDENTIALS = 13
238
+
239
+ # T1556
240
+ MODIFY_AUTHENTICATION_PROCESS = 28
241
+
242
+ # T1562
243
+ IMPAIR_DEFENSES = 31
244
+
245
+ # T1562.001
246
+ DISABLE_OR_MODIFY_TOOLS = 55
247
+
248
+ # T1567
249
+ EXFILTRATION_OVER_WEB_SERVICE = 20
250
+
251
+ # T1567.002
252
+ EXFILTRATION_TO_CLOUD_STORAGE = 21
253
+
254
+ # T1568
255
+ DYNAMIC_RESOLUTION = 12
256
+
257
+ # T1570
258
+ LATERAL_TOOL_TRANSFER = 41
259
+
260
+ # T1578
261
+ MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE = 26
262
+
263
+ # T1578.001
264
+ CREATE_SNAPSHOT = 54
265
+
266
+ # T1580
267
+ CLOUD_INFRASTRUCTURE_DISCOVERY = 53
268
+
269
+ # T1588
270
+ OBTAIN_CAPABILITIES = 43
271
+
272
+ # T1595
273
+ ACTIVE_SCANNING = 1
274
+
275
+ # T1595.001
276
+ SCANNING_IP_BLOCKS = 2
277
+
278
+ # T1613
279
+ CONTAINER_AND_RESOURCE_DISCOVERY = 57
210
280
  end
211
281
  end
212
282
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module SecurityCenter
23
+ module V1
24
+ # Contains information about the org policies associated with the finding.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # The resource name of the org policy.
28
+ # Example:
29
+ # "organizations/\\{organization_id}/policies/\\{constraint_name}"
30
+ class OrgPolicy
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -49,9 +49,9 @@ module Google
49
49
  # outdated or insecure libraries."
50
50
  # @!attribute [rw] canonical_name
51
51
  # @return [::String]
52
- # The canonical name of the finding. It's either
52
+ # The canonical name of the finding source. It's either
53
53
  # "organizations/\\{organization_id}/sources/\\{source_id}",
54
- # "folders/\\{folder_id}/sources/\\{source_id}" or
54
+ # "folders/\\{folder_id}/sources/\\{source_id}", or
55
55
  # "projects/\\{project_number}/sources/\\{source_id}",
56
56
  # depending on the closest CRM ancestor of the resource associated with the
57
57
  # finding.