Skip to content

Commit 5f48175

Browse files
ayfaouzimjwolf
andauthored
Add thumbprint_sha256 to code_signature.* (#2452)
* add thumprint to code_signature * address PR feedback * update changelog * include pattern --------- Co-authored-by: Michael Wolf <[email protected]>
1 parent d1c1596 commit 5f48175

File tree

22 files changed

+581
-2
lines changed

22 files changed

+581
-2
lines changed

CHANGELOG.next.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ Thanks, you're awesome :-) -->
1414

1515
#### Bugfixes
1616

17-
#### Added
17+
* Add `thumbprint_sha256` to `code_signature` schema. #2452
18+
* Add `origin_referrer_url` and `origin_url` fields, which indicate the origin information to the file, process and dll schemas #2441
1819

1920
#### Improvements
2021

docs/reference/ecs-code_signature.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ These fields contain information about binary code signatures.
2222
| $$$field-code-signature-status$$$ [code_signature.status](#field-code-signature-status) | Additional information about the certificate status.<br><br>This is useful for logging cryptographic errors with the certificate validity or trust status. Leave unpopulated if the validity or trust of the certificate was unchecked.<br><br>type: keyword<br><br>example: `ERROR_UNTRUSTED_ROOT` | extended |
2323
| $$$field-code-signature-subject-name$$$ [code_signature.subject_name](#field-code-signature-subject-name) | Subject name of the code signer<br><br>type: keyword<br><br>example: `Microsoft Corporation` | core |
2424
| $$$field-code-signature-team-id$$$ [code_signature.team_id](#field-code-signature-team-id) | The team identifier used to sign the process.<br><br>This is used to identify the team or vendor of a software product. The field is relevant to Apple *OS only.<br><br>type: keyword<br><br>example: `EQHXZ8M8AV` | extended |
25+
| $$$field-code-signature-thumbprint-sha256$$$ [code_signature.thumbprint_sha256](#field-code-signature-thumbprint-sha256) | _This field is beta and subject to change._ Certificate SHA256 hash that uniquely identifies the code signer.<br><br>type: keyword<br><br>example: `c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b` | extended |
2526
| $$$field-code-signature-timestamp$$$ [code_signature.timestamp](#field-code-signature-timestamp) | Date and time when the code signature was generated and signed.<br><br>type: date<br><br>example: `2021-01-01T12:10:30Z` | extended |
2627
| $$$field-code-signature-trusted$$$ [code_signature.trusted](#field-code-signature-trusted) | Stores the trust status of the certificate chain.<br><br>Validating the trust of the certificate chain may be complicated, and this field should only be populated by tools that actively check the status.<br><br>type: boolean<br><br>example: `true` | extended |
2728
| $$$field-code-signature-valid$$$ [code_signature.valid](#field-code-signature-valid) | Boolean to capture if the digital signature is verified against the binary content.<br><br>Leave unpopulated if a certificate was unchecked.<br><br>type: boolean<br><br>example: `true` | extended |

docs/reference/ecs-otel-alignment-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ The following table summarizes the alignment status by namespaces between ECS in
2727
| CloudEvents | · | [5](https://opentelemetry.io/docs/specs/semconv/attributes-registry/cloudevents) | · | · | · | · | · | · | |
2828
| cloudfoundry | · | [11](https://opentelemetry.io/docs/specs/semconv/attributes-registry/cloudfoundry) | · | · | · | · | · | · | |
2929
| Code | · | [6](https://opentelemetry.io/docs/specs/semconv/attributes-registry/code) | · | · | · | · | · | · | |
30-
| Code Signature | [10](/reference/ecs-code_signature.md) | · | · | · | · | · | · | · | · |
30+
| Code Signature | [11](/reference/ecs-code_signature.md) | · | · | · | · | · | · | · | · |
3131
| Container | [14](/reference/ecs-container.md) | [13](https://opentelemetry.io/docs/specs/semconv/attributes-registry/container) | 4 | 2 | 1 | · | 2 | · | · |
3232
| CPU | · | [1](https://opentelemetry.io/docs/specs/semconv/attributes-registry/cpu) | · | · | · | · | · | · | |
3333
| Data Stream | [3](/reference/ecs-data_stream.md) | · | · | · | · | · | · | · | 3 |

experimental/generated/beats/fields.ecs.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1317,6 +1317,14 @@
13171317
is relevant to Apple *OS only.'
13181318
example: EQHXZ8M8AV
13191319
default_field: false
1320+
- name: code_signature.thumbprint_sha256
1321+
level: extended
1322+
type: keyword
1323+
ignore_above: 64
1324+
description: Certificate SHA256 hash that uniquely identifies the code signer.
1325+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
1326+
pattern: ^[0-9a-f]{64}$
1327+
default_field: false
13201328
- name: code_signature.timestamp
13211329
level: extended
13221330
type: date
@@ -2498,6 +2506,14 @@
24982506
is relevant to Apple *OS only.'
24992507
example: EQHXZ8M8AV
25002508
default_field: false
2509+
- name: code_signature.thumbprint_sha256
2510+
level: extended
2511+
type: keyword
2512+
ignore_above: 64
2513+
description: Certificate SHA256 hash that uniquely identifies the code signer.
2514+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
2515+
pattern: ^[0-9a-f]{64}$
2516+
default_field: false
25012517
- name: code_signature.timestamp
25022518
level: extended
25032519
type: date
@@ -4867,6 +4883,14 @@
48674883
is relevant to Apple *OS only.'
48684884
example: EQHXZ8M8AV
48694885
default_field: false
4886+
- name: code_signature.thumbprint_sha256
4887+
level: extended
4888+
type: keyword
4889+
ignore_above: 64
4890+
description: Certificate SHA256 hash that uniquely identifies the code signer.
4891+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
4892+
pattern: ^[0-9a-f]{64}$
4893+
default_field: false
48704894
- name: code_signature.timestamp
48714895
level: extended
48724896
type: date
@@ -6192,6 +6216,14 @@
61926216
is relevant to Apple *OS only.'
61936217
example: EQHXZ8M8AV
61946218
default_field: false
6219+
- name: parent.code_signature.thumbprint_sha256
6220+
level: extended
6221+
type: keyword
6222+
ignore_above: 64
6223+
description: Certificate SHA256 hash that uniquely identifies the code signer.
6224+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
6225+
pattern: ^[0-9a-f]{64}$
6226+
default_field: false
61956227
- name: parent.code_signature.timestamp
61966228
level: extended
61976229
type: date
@@ -9236,6 +9268,14 @@
92369268
is relevant to Apple *OS only.'
92379269
example: EQHXZ8M8AV
92389270
default_field: false
9271+
- name: enrichments.indicator.file.code_signature.thumbprint_sha256
9272+
level: extended
9273+
type: keyword
9274+
ignore_above: 64
9275+
description: Certificate SHA256 hash that uniquely identifies the code signer.
9276+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
9277+
pattern: ^[0-9a-f]{64}$
9278+
default_field: false
92399279
- name: enrichments.indicator.file.code_signature.timestamp
92409280
level: extended
92419281
type: date
@@ -10872,6 +10912,14 @@
1087210912
is relevant to Apple *OS only.'
1087310913
example: EQHXZ8M8AV
1087410914
default_field: false
10915+
- name: indicator.file.code_signature.thumbprint_sha256
10916+
level: extended
10917+
type: keyword
10918+
ignore_above: 64
10919+
description: Certificate SHA256 hash that uniquely identifies the code signer.
10920+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
10921+
pattern: ^[0-9a-f]{64}$
10922+
default_field: false
1087510923
- name: indicator.file.code_signature.timestamp
1087610924
level: extended
1087710925
type: date

experimental/generated/csv/fields.csv

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ ECS_Version,Indexed,Field_Set,Field,Type,Level,Normalization,Example,Description
154154
9.1.0-dev+exp,true,dll,dll.code_signature.status,keyword,extended,,ERROR_UNTRUSTED_ROOT,Additional information about the certificate status.
155155
9.1.0-dev+exp,true,dll,dll.code_signature.subject_name,keyword,core,,Microsoft Corporation,Subject name of the code signer
156156
9.1.0-dev+exp,true,dll,dll.code_signature.team_id,keyword,extended,,EQHXZ8M8AV,The team identifier used to sign the process.
157+
9.1.0-dev+exp,true,dll,dll.code_signature.thumbprint_sha256,keyword,extended,,c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b,SHA256 hash of the certificate.
157158
9.1.0-dev+exp,true,dll,dll.code_signature.timestamp,date,extended,,2021-01-01T12:10:30Z,When the signature was generated and signed.
158159
9.1.0-dev+exp,true,dll,dll.code_signature.trusted,boolean,extended,,true,Stores the trust status of the certificate chain.
159160
9.1.0-dev+exp,true,dll,dll.code_signature.valid,boolean,extended,,true,Boolean to capture if the digital signature is verified against the binary content.
@@ -287,6 +288,7 @@ ECS_Version,Indexed,Field_Set,Field,Type,Level,Normalization,Example,Description
287288
9.1.0-dev+exp,true,file,file.code_signature.status,keyword,extended,,ERROR_UNTRUSTED_ROOT,Additional information about the certificate status.
288289
9.1.0-dev+exp,true,file,file.code_signature.subject_name,keyword,core,,Microsoft Corporation,Subject name of the code signer
289290
9.1.0-dev+exp,true,file,file.code_signature.team_id,keyword,extended,,EQHXZ8M8AV,The team identifier used to sign the process.
291+
9.1.0-dev+exp,true,file,file.code_signature.thumbprint_sha256,keyword,extended,,c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b,SHA256 hash of the certificate.
290292
9.1.0-dev+exp,true,file,file.code_signature.timestamp,date,extended,,2021-01-01T12:10:30Z,When the signature was generated and signed.
291293
9.1.0-dev+exp,true,file,file.code_signature.trusted,boolean,extended,,true,Stores the trust status of the certificate chain.
292294
9.1.0-dev+exp,true,file,file.code_signature.valid,boolean,extended,,true,Boolean to capture if the digital signature is verified against the binary content.
@@ -602,6 +604,7 @@ ECS_Version,Indexed,Field_Set,Field,Type,Level,Normalization,Example,Description
602604
9.1.0-dev+exp,true,process,process.code_signature.status,keyword,extended,,ERROR_UNTRUSTED_ROOT,Additional information about the certificate status.
603605
9.1.0-dev+exp,true,process,process.code_signature.subject_name,keyword,core,,Microsoft Corporation,Subject name of the code signer
604606
9.1.0-dev+exp,true,process,process.code_signature.team_id,keyword,extended,,EQHXZ8M8AV,The team identifier used to sign the process.
607+
9.1.0-dev+exp,true,process,process.code_signature.thumbprint_sha256,keyword,extended,,c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b,SHA256 hash of the certificate.
605608
9.1.0-dev+exp,true,process,process.code_signature.timestamp,date,extended,,2021-01-01T12:10:30Z,When the signature was generated and signed.
606609
9.1.0-dev+exp,true,process,process.code_signature.trusted,boolean,extended,,true,Stores the trust status of the certificate chain.
607610
9.1.0-dev+exp,true,process,process.code_signature.valid,boolean,extended,,true,Boolean to capture if the digital signature is verified against the binary content.
@@ -784,6 +787,7 @@ ECS_Version,Indexed,Field_Set,Field,Type,Level,Normalization,Example,Description
784787
9.1.0-dev+exp,true,process,process.parent.code_signature.status,keyword,extended,,ERROR_UNTRUSTED_ROOT,Additional information about the certificate status.
785788
9.1.0-dev+exp,true,process,process.parent.code_signature.subject_name,keyword,core,,Microsoft Corporation,Subject name of the code signer
786789
9.1.0-dev+exp,true,process,process.parent.code_signature.team_id,keyword,extended,,EQHXZ8M8AV,The team identifier used to sign the process.
790+
9.1.0-dev+exp,true,process,process.parent.code_signature.thumbprint_sha256,keyword,extended,,c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b,SHA256 hash of the certificate.
787791
9.1.0-dev+exp,true,process,process.parent.code_signature.timestamp,date,extended,,2021-01-01T12:10:30Z,When the signature was generated and signed.
788792
9.1.0-dev+exp,true,process,process.parent.code_signature.trusted,boolean,extended,,true,Stores the trust status of the certificate chain.
789793
9.1.0-dev+exp,true,process,process.parent.code_signature.valid,boolean,extended,,true,Boolean to capture if the digital signature is verified against the binary content.
@@ -1169,6 +1173,7 @@ ECS_Version,Indexed,Field_Set,Field,Type,Level,Normalization,Example,Description
11691173
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.status,keyword,extended,,ERROR_UNTRUSTED_ROOT,Additional information about the certificate status.
11701174
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.subject_name,keyword,core,,Microsoft Corporation,Subject name of the code signer
11711175
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.team_id,keyword,extended,,EQHXZ8M8AV,The team identifier used to sign the process.
1176+
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.thumbprint_sha256,keyword,extended,,c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b,SHA256 hash of the certificate.
11721177
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.timestamp,date,extended,,2021-01-01T12:10:30Z,When the signature was generated and signed.
11731178
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.trusted,boolean,extended,,true,Stores the trust status of the certificate chain.
11741179
9.1.0-dev+exp,true,threat,threat.enrichments.indicator.file.code_signature.valid,boolean,extended,,true,Boolean to capture if the digital signature is verified against the binary content.
@@ -1390,6 +1395,7 @@ ECS_Version,Indexed,Field_Set,Field,Type,Level,Normalization,Example,Description
13901395
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.status,keyword,extended,,ERROR_UNTRUSTED_ROOT,Additional information about the certificate status.
13911396
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.subject_name,keyword,core,,Microsoft Corporation,Subject name of the code signer
13921397
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.team_id,keyword,extended,,EQHXZ8M8AV,The team identifier used to sign the process.
1398+
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.thumbprint_sha256,keyword,extended,,c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b,SHA256 hash of the certificate.
13931399
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.timestamp,date,extended,,2021-01-01T12:10:30Z,When the signature was generated and signed.
13941400
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.trusted,boolean,extended,,true,Stores the trust status of the certificate chain.
13951401
9.1.0-dev+exp,true,threat,threat.indicator.file.code_signature.valid,boolean,extended,,true,Boolean to capture if the digital signature is verified against the binary content.

experimental/generated/ecs/ecs_flat.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1968,6 +1968,20 @@ dll.code_signature.team_id:
19681968
original_fieldset: code_signature
19691969
short: The team identifier used to sign the process.
19701970
type: keyword
1971+
dll.code_signature.thumbprint_sha256:
1972+
beta: This field is beta and subject to change.
1973+
dashed_name: dll-code-signature-thumbprint-sha256
1974+
description: Certificate SHA256 hash that uniquely identifies the code signer.
1975+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
1976+
flat_name: dll.code_signature.thumbprint_sha256
1977+
ignore_above: 64
1978+
level: extended
1979+
name: thumbprint_sha256
1980+
normalize: []
1981+
original_fieldset: code_signature
1982+
pattern: ^[0-9a-f]{64}$
1983+
short: SHA256 hash of the certificate.
1984+
type: keyword
19711985
dll.code_signature.timestamp:
19721986
dashed_name: dll-code-signature-timestamp
19731987
description: Date and time when the code signature was generated and signed.
@@ -4192,6 +4206,20 @@ file.code_signature.team_id:
41924206
original_fieldset: code_signature
41934207
short: The team identifier used to sign the process.
41944208
type: keyword
4209+
file.code_signature.thumbprint_sha256:
4210+
beta: This field is beta and subject to change.
4211+
dashed_name: file-code-signature-thumbprint-sha256
4212+
description: Certificate SHA256 hash that uniquely identifies the code signer.
4213+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
4214+
flat_name: file.code_signature.thumbprint_sha256
4215+
ignore_above: 64
4216+
level: extended
4217+
name: thumbprint_sha256
4218+
normalize: []
4219+
original_fieldset: code_signature
4220+
pattern: ^[0-9a-f]{64}$
4221+
short: SHA256 hash of the certificate.
4222+
type: keyword
41954223
file.code_signature.timestamp:
41964224
dashed_name: file-code-signature-timestamp
41974225
description: Date and time when the code signature was generated and signed.
@@ -8236,6 +8264,20 @@ process.code_signature.team_id:
82368264
original_fieldset: code_signature
82378265
short: The team identifier used to sign the process.
82388266
type: keyword
8267+
process.code_signature.thumbprint_sha256:
8268+
beta: This field is beta and subject to change.
8269+
dashed_name: process-code-signature-thumbprint-sha256
8270+
description: Certificate SHA256 hash that uniquely identifies the code signer.
8271+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
8272+
flat_name: process.code_signature.thumbprint_sha256
8273+
ignore_above: 64
8274+
level: extended
8275+
name: thumbprint_sha256
8276+
normalize: []
8277+
original_fieldset: code_signature
8278+
pattern: ^[0-9a-f]{64}$
8279+
short: SHA256 hash of the certificate.
8280+
type: keyword
82398281
process.code_signature.timestamp:
82408282
dashed_name: process-code-signature-timestamp
82418283
description: Date and time when the code signature was generated and signed.
@@ -10420,6 +10462,20 @@ process.parent.code_signature.team_id:
1042010462
original_fieldset: code_signature
1042110463
short: The team identifier used to sign the process.
1042210464
type: keyword
10465+
process.parent.code_signature.thumbprint_sha256:
10466+
beta: This field is beta and subject to change.
10467+
dashed_name: process-parent-code-signature-thumbprint-sha256
10468+
description: Certificate SHA256 hash that uniquely identifies the code signer.
10469+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
10470+
flat_name: process.parent.code_signature.thumbprint_sha256
10471+
ignore_above: 64
10472+
level: extended
10473+
name: thumbprint_sha256
10474+
normalize: []
10475+
original_fieldset: code_signature
10476+
pattern: ^[0-9a-f]{64}$
10477+
short: SHA256 hash of the certificate.
10478+
type: keyword
1042310479
process.parent.code_signature.timestamp:
1042410480
dashed_name: process-parent-code-signature-timestamp
1042510481
description: Date and time when the code signature was generated and signed.
@@ -15312,6 +15368,20 @@ threat.enrichments.indicator.file.code_signature.team_id:
1531215368
original_fieldset: code_signature
1531315369
short: The team identifier used to sign the process.
1531415370
type: keyword
15371+
threat.enrichments.indicator.file.code_signature.thumbprint_sha256:
15372+
beta: This field is beta and subject to change.
15373+
dashed_name: threat-enrichments-indicator-file-code-signature-thumbprint-sha256
15374+
description: Certificate SHA256 hash that uniquely identifies the code signer.
15375+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
15376+
flat_name: threat.enrichments.indicator.file.code_signature.thumbprint_sha256
15377+
ignore_above: 64
15378+
level: extended
15379+
name: thumbprint_sha256
15380+
normalize: []
15381+
original_fieldset: code_signature
15382+
pattern: ^[0-9a-f]{64}$
15383+
short: SHA256 hash of the certificate.
15384+
type: keyword
1531515385
threat.enrichments.indicator.file.code_signature.timestamp:
1531615386
dashed_name: threat-enrichments-indicator-file-code-signature-timestamp
1531715387
description: Date and time when the code signature was generated and signed.
@@ -18075,6 +18145,20 @@ threat.indicator.file.code_signature.team_id:
1807518145
original_fieldset: code_signature
1807618146
short: The team identifier used to sign the process.
1807718147
type: keyword
18148+
threat.indicator.file.code_signature.thumbprint_sha256:
18149+
beta: This field is beta and subject to change.
18150+
dashed_name: threat-indicator-file-code-signature-thumbprint-sha256
18151+
description: Certificate SHA256 hash that uniquely identifies the code signer.
18152+
example: c0f23a8eb1cba0ccaa88483b5a234c96e4bdfec719bf458024e68c2a8183476b
18153+
flat_name: threat.indicator.file.code_signature.thumbprint_sha256
18154+
ignore_above: 64
18155+
level: extended
18156+
name: thumbprint_sha256
18157+
normalize: []
18158+
original_fieldset: code_signature
18159+
pattern: ^[0-9a-f]{64}$
18160+
short: SHA256 hash of the certificate.
18161+
type: keyword
1807818162
threat.indicator.file.code_signature.timestamp:
1807918163
dashed_name: threat-indicator-file-code-signature-timestamp
1808018164
description: Date and time when the code signature was generated and signed.

0 commit comments

Comments
 (0)