Improve vulnerability detection for Ubuntu (#6102)

Feature: Improve our capability to detect vulnerable software on Ubuntu hosts

To improve the capability of detecting vulnerable software on Ubuntu, we are now using OVAL definitions to detect vulnerable software on Ubuntu hosts. If data sync is enabled (disable_data_sync=false) OVAL definitions are automatically kept up to date (they are 'refreshed' once per day) - there's also the option to manually download the OVAL definitions using the 'fleetctl vulnerability-data-stream' command. Downloaded definitions are then parsed into an intermediary format and then used to identify vulnerable software on Ubuntu hosts. Finally, any 'recent' detected vulnerabilities are sent to any third-party integrations.
This commit is contained in:
Juan Fernandez
2022-06-07 21:09:47 -04:00
committed by GitHub
parent 8b7335da6e
commit ef73039559
99 changed files with 48879 additions and 324 deletions
+2 -2
View File
@@ -4,6 +4,7 @@ import (
"bytes"
"fmt"
"reflect"
"strings"
"github.com/davecgh/go-spew/spew"
"github.com/google/go-cmp/cmp"
@@ -24,7 +25,7 @@ func ElementsMatchSkipID(t TestingT, listA, listB interface{}, msgAndArgs ...int
for _, ps := range p {
switch ps := ps.(type) {
case cmp.StructField:
if ps.Name() == "ID" {
if strings.HasSuffix(ps.Name(), "ID") {
return true
}
}
@@ -126,7 +127,6 @@ func ElementsMatchWithOptions(t TestingT, listA, listB interface{}, opts cmp.Opt
// isEmpty gets whether the specified object is considered empty or not.
func isEmpty(object interface{}) bool {
// get nil case out of the way
if object == nil {
return true