OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 // | 4 // |
5 // Client side phishing and malware detection request and response | 5 // Client side phishing and malware detection request and response |
6 // protocol buffers. Those protocol messages should be kept in sync | 6 // protocol buffers. Those protocol messages should be kept in sync |
7 // with the server implementation. | 7 // with the server implementation. |
8 // | 8 // |
9 // If you want to change this protocol definition or you have questions | 9 // If you want to change this protocol definition or you have questions |
10 // regarding its format please contact chrome-anti-phishing@googlegroups.com. | 10 // regarding its format please contact chrome-anti-phishing@googlegroups.com. |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
201 message CertificateChain { | 201 message CertificateChain { |
202 // A single link in the chain. | 202 // A single link in the chain. |
203 message Element { | 203 message Element { |
204 // DER-encoded X.509 representation of the certificate. | 204 // DER-encoded X.509 representation of the certificate. |
205 optional bytes certificate = 1; | 205 optional bytes certificate = 1; |
206 // Fields 2 - 7 are only used on the server. | 206 // Fields 2 - 7 are only used on the server. |
207 } | 207 } |
208 repeated Element element = 1; | 208 repeated Element element = 1; |
209 } | 209 } |
210 | 210 |
211 // This is an OS X only message to report extended attribute informations. | |
212 // Extended attributes on OS X are used for various security mechanisms, | |
213 // which makes them interesting to Chrome. | |
214 message ExtendedAttr { | |
215 // This is the name of the extended attribute. | |
216 required string key = 1; | |
217 // This is the value of the extended attribute. | |
218 optional bytes value = 2; | |
219 } | |
220 | |
211 message SignatureInfo { | 221 message SignatureInfo { |
212 // All certificate chains for each of the binary's signers. Multiple chains | 222 // All certificate chains for each of the binary's signers. Multiple chains |
213 // may be present if the binary or any certificate has multiple signers. | 223 // may be present if the binary or any certificate has multiple signers. |
214 // Absence of certificate chains does not imply that the binary is not | 224 // Absence of certificate chains does not imply that the binary is not |
215 // signed (in that case, SignedData blobs extracted from the binary may be | 225 // signed (in that case, SignedData blobs extracted from the binary may be |
216 // preset), but does mean that trust has not been verified. | 226 // preset), but does mean that trust has not been verified. |
217 repeated CertificateChain certificate_chain = 1; | 227 repeated CertificateChain certificate_chain = 1; |
218 | 228 |
219 // True if the signature was trusted on the client. | 229 // True if the signature was trusted on the client. |
220 optional bool trusted = 2; | 230 optional bool trusted = 2; |
221 | 231 |
222 // On Windows, PKCS#7 SignedData blobs extracted from a portable executable | 232 // On Windows, PKCS#7 SignedData blobs extracted from a portable executable |
223 // image's attribute certificate table. The presence of these does not imply | 233 // image's attribute certificate table. The presence of these does not imply |
224 // that the signatures were deemed trusted by the client. | 234 // that the signatures were deemed trusted by the client. |
225 // On Mac, this is the code signature blob referenced by the | 235 // On Mac, this is the code signature blob referenced by the |
226 // LC_CODE_SIGNATURE load command. | 236 // LC_CODE_SIGNATURE load command. |
227 repeated bytes signed_data = 3; | 237 repeated bytes signed_data = 3; |
238 | |
239 // On OS X, code signing data can be contained in the extended attributes of | |
240 // a file. As GateKeeper respects this signature, we look for it and collect | |
Mark Mentovai
2015/10/16 23:04:23
lowercase k
| |
241 // it. | |
242 repeated ExtendedAttr xattr = 4; | |
228 } | 243 } |
229 | 244 |
230 // This field will only be set if the binary is signed. | 245 // This field will only be set if the binary is signed. |
231 optional SignatureInfo signature = 5; | 246 optional SignatureInfo signature = 5; |
232 | 247 |
233 // True if the download was user initiated. | 248 // True if the download was user initiated. |
234 optional bool user_initiated = 6; | 249 optional bool user_initiated = 6; |
235 | 250 |
236 // Fields 7 and 8 are only used on the server. | 251 // Fields 7 and 8 are only used on the server. |
237 | 252 |
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
414 WEAK_LEGACY_OBSOLETE = 2; | 429 WEAK_LEGACY_OBSOLETE = 2; |
415 CHANGED = 3; | 430 CHANGED = 3; |
416 UNTRUSTED_UNKNOWN_VALUE = 4; | 431 UNTRUSTED_UNKNOWN_VALUE = 4; |
417 } | 432 } |
418 | 433 |
419 optional string path = 1; | 434 optional string path = 1; |
420 optional string atomic_value = 2; | 435 optional string atomic_value = 2; |
421 repeated string split_key = 3; | 436 repeated string split_key = 3; |
422 optional ValueState value_state = 4; | 437 optional ValueState value_state = 4; |
423 } | 438 } |
439 | |
424 message BinaryIntegrityIncident { | 440 message BinaryIntegrityIncident { |
425 optional string file_basename = 1; | 441 optional string file_basename = 1; |
426 optional ClientDownloadRequest.SignatureInfo signature = 2; | 442 optional ClientDownloadRequest.SignatureInfo signature = 2; |
443 optional ClientDownloadRequest.ImageHeaders image_headers = 3; | |
444 optional int32 sec_error = 4; | |
427 } | 445 } |
446 | |
428 message BlacklistLoadIncident { | 447 message BlacklistLoadIncident { |
429 optional string path = 1; | 448 optional string path = 1; |
430 optional ClientDownloadRequest.Digests digest = 2; | 449 optional ClientDownloadRequest.Digests digest = 2; |
431 optional string version = 3; | 450 optional string version = 3; |
432 optional bool blacklist_initialized = 4; | 451 optional bool blacklist_initialized = 4; |
433 optional ClientDownloadRequest.SignatureInfo signature = 5; | 452 optional ClientDownloadRequest.SignatureInfo signature = 5; |
434 optional ClientDownloadRequest.ImageHeaders image_headers = 6; | 453 optional ClientDownloadRequest.ImageHeaders image_headers = 6; |
435 } | 454 } |
436 message VariationsSeedSignatureIncident { | 455 message VariationsSeedSignatureIncident { |
437 optional string variations_seed_signature = 1; | 456 optional string variations_seed_signature = 1; |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
564 message EnvironmentRequest { optional int32 dll_index = 1; } | 583 message EnvironmentRequest { optional int32 dll_index = 1; } |
565 | 584 |
566 repeated EnvironmentRequest environment_requests = 3; | 585 repeated EnvironmentRequest environment_requests = 3; |
567 } | 586 } |
568 | 587 |
569 message DownloadMetadata { | 588 message DownloadMetadata { |
570 optional uint32 download_id = 1; | 589 optional uint32 download_id = 1; |
571 | 590 |
572 optional ClientIncidentReport.DownloadDetails download = 2; | 591 optional ClientIncidentReport.DownloadDetails download = 2; |
573 } | 592 } |
OLD | NEW |