logging.proto 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. // Copyright 2022 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.cloud.ids.logging.v1;
  16. import "google/protobuf/duration.proto";
  17. import "google/protobuf/timestamp.proto";
  18. option go_package = "google.golang.org/genproto/googleapis/cloud/ids/logging/v1;logging";
  19. option java_multiple_files = true;
  20. option java_outer_classname = "LoggingProto";
  21. option java_package = "com.google.cloud.ids.logging.v1";
  22. // A threat detected by Cloud IDS.
  23. message ThreatLog {
  24. // Describes the type of severity of the threat.
  25. enum Severity {
  26. // Default value - should never be used.
  27. SEVERITY_UNSPECIFIED = 0;
  28. LOW = 2;
  29. MEDIUM = 3;
  30. HIGH = 4;
  31. CRITICAL = 5;
  32. INFORMATIONAL = 6;
  33. }
  34. enum Direction {
  35. // Default value - permitted since Direction is optional.
  36. DIRECTION_UNDEFINED = 0;
  37. // Ingress traffic.
  38. CLIENT_TO_SERVER = 1;
  39. // Egress traffic.
  40. SERVER_TO_CLIENT = 2;
  41. }
  42. // Name of the threat, e,g. "Suspicious HTTP Evasion"
  43. string name = 1;
  44. // Unique ID of the threat.
  45. string threat_id = 13;
  46. // The time of the alert.
  47. google.protobuf.Timestamp alert_time = 2;
  48. // Severity of threat.
  49. Severity alert_severity = 19;
  50. // The type of the threat, e.g. "Spyware".
  51. string type = 4;
  52. // Category (sub-type) of the threat, e.g. "code-execution".
  53. string category = 18;
  54. // The source IP Address of the packet, e.g. "35.191.8.79"
  55. string source_ip_address = 5;
  56. // The source port of the packet, e.g. 8080
  57. int32 source_port = 6;
  58. // The destination IP Address of the packet, e.g. "192.168.100.2"
  59. string destination_ip_address = 7;
  60. // The destination port of the packet, e.g. 100
  61. int32 destination_port = 8;
  62. // The IP protocol of the packet, e.g. "TCP".
  63. string ip_protocol = 9;
  64. // The direction of the packet - an optional field.
  65. Direction direction = 10;
  66. // ID of the Layer 4 session of the threat.
  67. string session_id = 14;
  68. // Number of sessions with same source IP, destination IP, application, and
  69. // type seen within 5 seconds.
  70. string repeat_count = 15;
  71. // Application associated with the session.
  72. string application = 16;
  73. // Variable field. URI or filename of the relevant threat, if applicable.
  74. string uri_or_filename = 17;
  75. // CVE IDs of the threat.
  76. repeated string cves = 20;
  77. // Details of the threat reported by the IDS VM
  78. string details = 11;
  79. // The network associated with the IDS Endpoint.
  80. string network = 12;
  81. }
  82. // Traffic detected by Cloud IDS.
  83. // Fields taken from:
  84. // https://docs.paloaltonetworks.com/pan-os/8-1/pan-os-admin/monitoring/use-syslog-for-monitoring/syslog-field-descriptions/traffic-log-fields.html.
  85. message TrafficLog {
  86. // Time of session start.
  87. google.protobuf.Timestamp start_time = 1;
  88. // Elapsed time of the session.
  89. google.protobuf.Duration elapsed_time = 2;
  90. // The network associated with the IDS Endpoint.
  91. string network = 3;
  92. // The source IP Address of the packet, e.g. "35.191.8.79"
  93. string source_ip_address = 4;
  94. // The source port of the packet, e.g. 8080
  95. int32 source_port = 5;
  96. // The destination IP Address of the packet, e.g. "192.168.100.2"
  97. string destination_ip_address = 6;
  98. // The destination port of the packet, e.g. 100
  99. int32 destination_port = 7;
  100. // The IP protocol of the packet, e.g. "TCP".
  101. string ip_protocol = 8;
  102. // Application associated with the session.
  103. string application = 9;
  104. // The direction of the packet.
  105. string session_id = 12;
  106. // Number of sessions with same source IP, destination IP, application, and
  107. // type seen within 5 seconds.
  108. string repeat_count = 13;
  109. // Total number of bytes transferred in the session.
  110. int64 total_bytes = 14;
  111. // Total number of packets transferred in the session.
  112. int64 total_packets = 15;
  113. }