Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
c99b314
TYCHON Inital Agent Upload
joeperuzzi Jun 26, 2023
12651b6
Update packages/tychon/changelog.yml
joeperuzzi Jun 28, 2023
9bc9902
Update packages/tychon/_dev/build/build.yml
joeperuzzi Jun 28, 2023
ed2c9c1
Update packages/tychon/changelog.yml
joeperuzzi Jun 28, 2023
4a0fa02
Update packages/tychon/manifest.yml
joeperuzzi Jun 28, 2023
bb3ea07
Please delete this file. It is not needed since the file in the root …
joeperuzzi Jun 28, 2023
4e3ff95
Removed file based on PR Request
joeperuzzi Jun 28, 2023
933b66b
Update packages/tychon/data_stream/tychon_cve/agent/stream/stream.yml…
joeperuzzi Jun 28, 2023
3f2a742
adding TYCHON package to codeowners file
joeperuzzi Jun 28, 2023
be4c100
Update stream.yml.hbs
tychon1 Jun 28, 2023
8c23a3b
Update stream.yml.hbs
tychon1 Jun 28, 2023
f109f93
Update default.yml
tychon1 Jun 28, 2023
1ec1865
Update default.yml
tychon1 Jun 28, 2023
32d77c6
Update stream.yml.hbs
tychon1 Jun 28, 2023
e0bad7a
Update fields.yml
tychon1 Jun 28, 2023
6035366
Update README.md
tychon1 Jun 28, 2023
c6660a2
Update README.md and Fields.
tychon1 Jun 28, 2023
b8f8608
Update missing descriptions
tychon1 Jun 29, 2023
782a7fc
Put License back
tychon1 Jun 29, 2023
ee83a6c
Added pipeline tests
tychon1 Jun 29, 2023
8e83866
Updated pipeline tests
tychon1 Jul 6, 2023
feb2b9a
Merge pull request #1 from joeperuzzi/bruceUpdates
joeperuzzi Jul 6, 2023
45ca0bd
Merge branch 'main' into tychon_agentless
joeperuzzi Jul 6, 2023
0890a32
Moving LIcnese.txt to the root directory
joeperuzzi Jul 7, 2023
3113785
Update Changes from PR 6701
tychon1 Jul 10, 2023
4bbed69
Several code recommendation changes based upon PR comments
joeperuzzi Jul 11, 2023
f67356b
Removal of host.ip~, replaced with tychon.ip~.
skidmoco Jul 11, 2023
f6c27ea
added removal of host.ip~ fields to pipeline for each category area
skidmoco Jul 11, 2023
86439db
Added requested final file carriage return
skidmoco Jul 12, 2023
f5734d8
Remove iteration variable as recommended
skidmoco Jul 13, 2023
aa3e668
Merge pull request #2 from joeperuzzi/justins
skidmoco Jul 18, 2023
1723f65
Added ARF
tychon1 Jul 28, 2023
c4404a8
Updating description of vulnerability ds
joeperuzzi Jul 31, 2023
35874d1
Merge pull request #3 from joeperuzzi/justins
joeperuzzi Jul 31, 2023
9a76695
Converted pipeline method to gsub
tychon1 Aug 8, 2023
f72e9ad
Updated script to yaml pipe syntax
tychon1 Aug 8, 2023
2b70820
Changes to be committed:
joeperuzzi Aug 9, 2023
681f1f5
Changes to be committed:
joeperuzzi Aug 9, 2023
bd27659
Merge branch 'bruceUpdates' into BruceLatest&Greatest
joeperuzzi Aug 9, 2023
7dc7b0f
Changes to be committed:
joeperuzzi Aug 9, 2023
cf48b30
Delete test-arf.json-config.yml
tychon1 Aug 9, 2023
a4803e3
Create test-arf.json-config.yml
tychon1 Aug 9, 2023
a9a38fc
Update default.yml
tychon1 Aug 9, 2023
b20ed4b
Update default.yml
tychon1 Aug 9, 2023
73b7b79
Update test-epp.json-expected.json
tychon1 Aug 9, 2023
63a0620
Update default.yml
tychon1 Aug 9, 2023
c1ba00f
Update test-stig.json-expected.json
tychon1 Aug 9, 2023
6256e4c
updated fields
tychon1 Aug 9, 2023
ad8c478
Removed ARF
tychon1 Aug 9, 2023
7e25d28
Merge pull request #6 from joeperuzzi/BruceChangesNoSync
joeperuzzi Aug 10, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,7 @@
/packages/trellix_epo_cloud @elastic/security-external-integrations
/packages/trend_micro_vision_one @elastic/security-external-integrations
/packages/trendmicro @elastic/security-external-integrations
/packages/tychon @elastic/security-external-integrations
/packages/udp @elastic/security-external-integrations
/packages/universal_profiling_agent @elastic/profiling
/packages/universal_profiling_collector @elastic/profiling
Expand Down
3 changes: 3 additions & 0 deletions packages/tychon/_dev/build/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
dependencies:
ecs:
reference: git@v8.8.0
32 changes: 32 additions & 0 deletions packages/tychon/_dev/build/docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# TYCHON Agentless

[TYCHON Agentless](https://tychon.io/products/tychon-agentless/) is an integration that lets you collect TYCHON's gold source vulnerability and STIG data from endpoints without heavy resource use or software installation. You can then investigate the TYCHON data using Elastic's analytics, visualizations, and dashboards. [Contact us to learn more.](https://tychon.io/start-a-free-trial/)

## Compatibility

* This integration supports Windows 10 and Windows 11 Endpoint Operating Systems.
* This integration requires a TYCHON Agentless license.
* This integration requires [TYCHON Vulnerability Definition](https://support.tychon.io/) files.


## Returned Data Fields
### Vulnerablities

TYCHON scans for endpoint vulenrabilites and returns the results.

**Exported fields**
{{fields "tychon_cve"}}

### Endpoint Protection Platform

TYCHON scans the endpoint's Windows Defender and returns protection status and version details.

**Exported fields**
{{fields "tychon_epp"}}

### Endpoint STIG Information

The TYCHON benchmark script scans an endpoint's Windows configuration for STIG/XCCDF issues and returns information.

**Exported fields**
{{fields "tychon_stig"}}
5 changes: 5 additions & 0 deletions packages/tychon/changelog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
- version: "0.0.10"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- version: "0.0.10"
- version: "0.0.1"

changes:
- description: Fixed incorrect types in field.yml and cleaned up formatting
type: enhancement
link: https://github.com/joeperuzzi/integrations/pull/5 # FIXME Replace with the real PR link
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"events": [
{
"host.biossn": "1CDA4D56-CF0A-AA55-FF70-B5C7BAEF9AEB",
"host.domain": "",
"host.hardware.bios.name": "Phoenix Technologies LTD",
"host.hardware.bios.version": "6.00",
"host.hardware.cpu.caption": "Intel64 Family 6 Model 45 Stepping 7",
"host.hardware.manufacturer": "VMware, Inc.",
"host.hardware.owner": "dcuser",
"host.hardware.serial_number": "VMware-56 4d da 1c 0a cf 55 aa-ff 70 b5 c7 ba ef 9a eb",
"host.hostname": "DESKTOP-TIUKL1R",
"host.id": "bd72307d1093421f95713515c770b79a_1CDA4D56-CF0A-AA55-FF70-B5C7BAEF9AEB_DESKTOP-TIUKL1R_WORKGROUP",
"host.ip": "10.1.9.112",
"host.ipv4": "10.1.9.112",
"host.ipv6": "fe80::40d1:5287:42b9:5645",
"host.mac": "00:0C:29:EF:9A:EB",
"host.oem.manufacturer": "",
"host.oem.model": "",
"host.os.build": "22000",
"host.os.description": "",
"host.os.family": "Windows",
"host.os.name": "Microsoft Windows 11 Education N",
"host.os.organization": "",
"host.os.version": "10.0.22000",
"host.type": "Workstation",
"host.uptime": 145287,
"host.workgroup": "WORKGROUP",
"id": "bd72307d1093421f95713515c770b79a_1CDA4D56-CF0A-AA55-FF70-B5C7BAEF9AEB_DESKTOP-TIUKL1R_WORKGROUP_CVE-2013-3900",
"script.current_duration": "315381.28",
"script.current_time": "2023-06-15T21:58:02Z",
"script.name": "Invoke-CveScan.ps1",
"script.start": "2023-06-15T21:52:47Z",
"script.type": "powershell",
"script.version": "0.1.0",
"vulnerability.classification": "vulnerability",
"vulnerability.iava": "2013-A-0227",
"vulnerability.iava_severity": "CAT II",
"vulnerability.id": "CVE-2013-3900",
"vulnerability.reference": "https://www.scaprepo.com/view.jsp?id=CVE-2013-3900",
"vulnerability.result": "fail",
"vulnerability.scanner.vendor": "TYCHON",
"vulnerability.score.base": "7.60",
"vulnerability.score.version": "2.0",
"vulnerability.severity": "HIGH",
"vulnerability.title": "The WinVerifyTrust function in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2012 Gold and R2, and Windows RT Gold and 8.1 does ",
"vulnerability.version": 1,
"vulnerability.year": "2013"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
dynamic_fields:
"@timestamp": ".*"
event.ingested: ".*"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please fix these so that they have a final newline, not a final space. There are other cases throughout. (the *-expected.json should not be altered).

Suggested change

Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
{
"expected": [
{
"@timestamp": "2023-07-28T18:14:38.394883461Z",
"ecs": {
"version": "8.8.0"
},
"event": {
"category": [
"vulnerability"
],
"ingested": "2023-07-28T18:14:38.394883461Z",
"kind": "state",
"module": "tychon",
"outcome": "failure"
},
"host": {
"biossn": "1CDA4D56-CF0A-AA55-FF70-B5C7BAEF9AEB",
"domain": "",
"hardware": {
"bios": {
"name": "Phoenix Technologies LTD",
"version": "6.00"
},
"cpu": {
"caption": "Intel64 Family 6 Model 45 Stepping 7"
},
"manufacturer": "VMware, Inc.",
"owner": "dcuser",
"serial_number": "VMware-56 4d da 1c 0a cf 55 aa-ff 70 b5 c7 ba ef 9a eb"
},
"hostname": "DESKTOP-TIUKL1R",
"id": "bd72307d1093421f95713515c770b79a_1CDA4D56-CF0A-AA55-FF70-B5C7BAEF9AEB_DESKTOP-TIUKL1R_WORKGROUP",
"ip": "10.1.9.112",
"ipv4": "10.1.9.112",
"ipv6": "fe80::40d1:5287:42b9:5645",
Comment on lines +35 to +36
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These fields are not in the ECS. Can you move any non-ECS fields into a tycho-rooted group?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this would be confusing for users as they are "host-rooted" fields, while I understand they're not in ECS standards ECS in no way covers every aspect of data, and in our experience putting fields that are in "custom" roots like "tychon" makes it difficult to search upon. This would also break 3rd party integrations we have with vendors that expect these fields to be in host root.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please take a look at the ECS custom fields reference. If you are unable to move these under tychon.* an alternative is to capitalise the field names as e.g. host.IPV4.

"mac": "00-0C-29-EF-9A-EB",
"oem": {
"manufacturer": "",
"model": ""
},
"os": {
"build": "22000",
"description": "",
"family": "Windows",
"name": "Microsoft Windows 11 Education N",
"organization": "",
"version": "10.0.22000"
},
"type": "Workstation",
"uptime": 145287,
"workgroup": "WORKGROUP"
},
"id": "bd72307d1093421f95713515c770b79a_1CDA4D56-CF0A-AA55-FF70-B5C7BAEF9AEB_DESKTOP-TIUKL1R_WORKGROUP_CVE-2013-3900",
"script": {
"current_duration": 315381.28,
"current_time": "2023-06-15T21:58:02Z",
"name": "Invoke-CveScan.ps1",
"start": "2023-06-15T21:52:47Z",
"type": "powershell",
"version": "0.1.0"
},
"vulnerability": {
"category": [
"oval"
],
"classification": "cvss",
"enumeration": "CVE",
"iava": "2013-A-0227",
"iava_severity": "CAT II",
"id": "CVE-2013-3900",
"reference": "https://www.scaprepo.com/view.jsp?id=CVE-2013-3900",
"result": "fail",
"scanner": {
"vendor": "tychon"
},
"score": {
"base": 7.6,
"version": "2.0"
},
"severity": "HIGH",
"title": "The WinVerifyTrust function in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2012 Gold and R2, and Windows RT Gold and 8.1 does ",
"version": "1",
"year": 2013
}
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
paths:
{{#each paths as |path|}}
- {{path}}
{{/each}}
tags:
{{#if preserve_original_event}}
- preserve_original_event
{{/if}}
{{#each tags as |tag|}}
- {{tag}}
{{/each}}
{{#contains "forwarded" tags}}
publisher_pipeline.disable_host: true
{{/contains}}
processors:
- add_locale: ~
{{#if processors}}
{{processors}}
{{/if}}
json:
keys_under_root: true
expand_keys: true

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change

Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
---
description: Pipeline for parsing TYCHON Vulnerability Scan Results
processors:
- dot_expander:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to set common ECS fields here. This is the ECS version and retaining the original message among other things, see here for some examples.

field: "*"
- set:
if: ctx.containsKey("tychon") && ctx.tychon.containsKey("id")
field: host.id
value: "{{tychon.id}}"
- remove:
if: ctx.containsKey("tychon") && ctx.tychon.containsKey("id")
field: 'tychon'
- set:
field: _id
value: "{{id}}"
- set:
field: "@timestamp"
value: "{{_ingest.timestamp}}"
- set:
field: ecs.version
value: 8.8.0
- set:
field: event.kind
value: state
- set:
field: event.module
value: tychon
- set:
field: event.category
value: [vulnerability]
- script:
source: |
if(ctx.vulnerability?.result == 'fail'){
ctx.event.outcome = "failure"
}else if(ctx.vulnerability?.result == 'pass'){
ctx.event.outcome = "success"
}else{
ctx.event.outcome = "unknown"
}
- gsub:
field: host.mac
pattern: ":"
replacement: "-"
- set:
field: event.ingested
value: "{{_ingest.timestamp}}"
- convert:
field: script.current_duration
type: float
- convert:
field: vulnerability.score.base
type: float
- convert:
field: vulnerability.year
type: long
- set:
field: vulnerability.scanner.vendor
value: tychon
- set:
field: vulnerability.category
value: [oval]
- set:
field: vulnerability.classification
value: cvss
- set:
field: vulnerability.enumeration
value: CVE
- set:
field: vulnerability.version
value: "{{vulnerability.version}}"
on_failure:
- set:
field: event.kind
value: pipeline_error
- append:
field: error.message
value: '{{{ _ingest.on_failure_message }}}'
Loading