atomic-validation-criteria's People
atomic-validation-criteria's Issues
need CSV linter
We should have a script that can do the following:
- verify that an MR is not breaking CSV format
- verify that each CSV line is using the right pseudo-schema fields and values
- no duplicate tests
- ATR test reference Number, Guid, Names match
- operators are supported (
~=, =, *=
)
For example, the following CSV lines get parsed into objects in harness
_E_,File,READ,path*=/proc/[0-9]*/mem
_E_,Process,cmdline*=python.*/T1003.007/src/dump_heap.py
schema
type FieldCriteria struct {
FieldName string `json:"field"`
Op string `json:"op"`
Value string `json:"value"`
}
// _E_,Process,cmdline=echo "# THIS IS A COMMENT"
// _E_,File,WRITE,path=/etc/ufw/ufw.conf
type ExpectedEvent struct {
Id string `json:"id"`
EventType string `json:"event_type"`
SubType string `json:"sub_type,omitempty"`
FieldChecks []FieldCriteria `json:"field_checks"`
IsMaybe bool `json:"is_maybe,omitempty"`
Matches []*SimpleEvent `json:"matches,omitempty"`
}
// _C_,Process,Pipe,0,1
type CorrelationRow struct {
Id string `json:"id"`
Type string `json:"type"`
SubType string `json:"sub_type"`
EventIndexes []string `json:"indexes"`
IsMet bool `json:"is_met"`
}
// ARG,remote_host,victim-host
type ArgRow struct {
Name string
Value string
}
type MitreTestCriteria struct {
Technique string `json:"technique"`
TestIndex uint `json:"test_index"`
TestName string `json:"test_name"`
ExpectedEvents []*ExpectedEvent `json:"expected_events"`
ExpectedCorrelations []*CorrelationRow `json:"exp_correlations,omitempty"`
}
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.