diff --git a/deepfence_agent/plugins/YaraHunter b/deepfence_agent/plugins/YaraHunter index 52baffd716..5dc98ebcd8 160000 --- a/deepfence_agent/plugins/YaraHunter +++ b/deepfence_agent/plugins/YaraHunter @@ -1 +1 @@ -Subproject commit 52baffd716e2d02f888c19849a4308242af87e21 +Subproject commit 5dc98ebcd8a1bae59f36f99db439ad8754fbc3b8 diff --git a/deepfence_agent/plugins/cloud-scanner b/deepfence_agent/plugins/cloud-scanner index 9e300c1678..746324dee2 160000 --- a/deepfence_agent/plugins/cloud-scanner +++ b/deepfence_agent/plugins/cloud-scanner @@ -1 +1 @@ -Subproject commit 9e300c167816acfd1326ae15614b320c92374c9e +Subproject commit 746324dee241f446f47afae4abed29e8694cb1e7 diff --git a/deepfence_agent/plugins/yara-rules b/deepfence_agent/plugins/yara-rules index c72a021594..bc5e468f7a 160000 --- a/deepfence_agent/plugins/yara-rules +++ b/deepfence_agent/plugins/yara-rules @@ -1 +1 @@ -Subproject commit c72a021594ef58b7284f0e37fbc0d41787d23ceb +Subproject commit bc5e468f7abc3a96da178c6de00f120165a6d689 diff --git a/deepfence_frontend/apps/dashboard/api-spec.json b/deepfence_frontend/apps/dashboard/api-spec.json index 3648a16280..fcd062a70c 100644 --- a/deepfence_frontend/apps/dashboard/api-spec.json +++ b/deepfence_frontend/apps/dashboard/api-spec.json @@ -13375,7 +13375,16 @@ } }, "ModelBenchmarkType": { - "enum": ["hipaa", "gdpr", "pci", "nist", "cis", "soc_2", "nsa-cisa"], + "enum": [ + "hipaa", + "gdpr", + "pci", + "nist", + "cis", + "soc_2", + "nsa-cisa", + "aws_foundational_security" + ], "type": "string" }, "ModelBulkDeleteReportReq": { @@ -13537,6 +13546,7 @@ "ModelCloudNodeAccountInfo": { "type": "object", "properties": { + "account_name": { "type": "string" }, "active": { "type": "boolean" }, "cloud_provider": { "type": "string" }, "compliance_percentage": { "type": "number" }, @@ -13556,6 +13566,7 @@ "ModelCloudNodeAccountRegisterReq": { "required": [ "node_id", + "account_name", "host_node_id", "account_id", "cloud_provider", @@ -13564,12 +13575,13 @@ "type": "object", "properties": { "account_id": { "type": "string" }, + "account_name": { "type": "string" }, "cloud_provider": { "enum": ["aws", "gcp", "azure"], "type": "string" }, "host_node_id": { "type": "string" }, "is_organization_deployment": { "type": "boolean" }, - "monitored_account_ids": { - "type": "object", - "additionalProperties": { "type": "string" }, + "monitored_accounts": { + "type": "array", + "items": { "$ref": "#/components/schemas/ModelCloudNodeMonitoredAccount" }, "nullable": true }, "node_id": { "type": "string" }, @@ -13672,6 +13684,15 @@ "node_id": { "type": "string" } } }, + "ModelCloudNodeMonitoredAccount": { + "required": ["node_id", "account_name", "account_id"], + "type": "object", + "properties": { + "account_id": { "type": "string" }, + "account_name": { "type": "string" }, + "node_id": { "type": "string" } + } + }, "ModelCloudNodeProvidersListResp": { "required": ["providers"], "type": "object", diff --git a/deepfence_frontend/apps/dashboard/src/api/generated/.openapi-generator/FILES b/deepfence_frontend/apps/dashboard/src/api/generated/.openapi-generator/FILES index 70c6190c0d..235b55e07c 100644 --- a/deepfence_frontend/apps/dashboard/src/api/generated/.openapi-generator/FILES +++ b/deepfence_frontend/apps/dashboard/src/api/generated/.openapi-generator/FILES @@ -94,6 +94,7 @@ models/ModelCloudNodeComplianceControl.ts models/ModelCloudNodeControlReq.ts models/ModelCloudNodeControlResp.ts models/ModelCloudNodeEnableDisableReq.ts +models/ModelCloudNodeMonitoredAccount.ts models/ModelCloudNodeProvidersListResp.ts models/ModelCloudResource.ts models/ModelCompliance.ts diff --git a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelBenchmarkType.ts b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelBenchmarkType.ts index da8bf981f7..c31ed9972c 100644 --- a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelBenchmarkType.ts +++ b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelBenchmarkType.ts @@ -24,7 +24,8 @@ export const ModelBenchmarkType = { Nist: 'nist', Cis: 'cis', Soc2: 'soc_2', - NsaCisa: 'nsa-cisa' + NsaCisa: 'nsa-cisa', + AwsFoundationalSecurity: 'aws_foundational_security' } as const; export type ModelBenchmarkType = typeof ModelBenchmarkType[keyof typeof ModelBenchmarkType]; diff --git a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountInfo.ts b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountInfo.ts index 944781184d..3624c0e43e 100644 --- a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountInfo.ts +++ b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountInfo.ts @@ -19,6 +19,12 @@ import { exists, mapValues } from '../runtime'; * @interface ModelCloudNodeAccountInfo */ export interface ModelCloudNodeAccountInfo { + /** + * + * @type {string} + * @memberof ModelCloudNodeAccountInfo + */ + account_name?: string; /** * * @type {boolean} @@ -100,6 +106,7 @@ export function ModelCloudNodeAccountInfoFromJSONTyped(json: any, ignoreDiscrimi } return { + 'account_name': !exists(json, 'account_name') ? undefined : json['account_name'], 'active': !exists(json, 'active') ? undefined : json['active'], 'cloud_provider': !exists(json, 'cloud_provider') ? undefined : json['cloud_provider'], 'compliance_percentage': !exists(json, 'compliance_percentage') ? undefined : json['compliance_percentage'], @@ -122,6 +129,7 @@ export function ModelCloudNodeAccountInfoToJSON(value?: ModelCloudNodeAccountInf } return { + 'account_name': value.account_name, 'active': value.active, 'cloud_provider': value.cloud_provider, 'compliance_percentage': value.compliance_percentage, diff --git a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountRegisterReq.ts b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountRegisterReq.ts index 8363c6e98f..4ed00f9aff 100644 --- a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountRegisterReq.ts +++ b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeAccountRegisterReq.ts @@ -13,6 +13,13 @@ */ import { exists, mapValues } from '../runtime'; +import type { ModelCloudNodeMonitoredAccount } from './ModelCloudNodeMonitoredAccount'; +import { + ModelCloudNodeMonitoredAccountFromJSON, + ModelCloudNodeMonitoredAccountFromJSONTyped, + ModelCloudNodeMonitoredAccountToJSON, +} from './ModelCloudNodeMonitoredAccount'; + /** * * @export @@ -25,6 +32,12 @@ export interface ModelCloudNodeAccountRegisterReq { * @memberof ModelCloudNodeAccountRegisterReq */ account_id: string; + /** + * + * @type {string} + * @memberof ModelCloudNodeAccountRegisterReq + */ + account_name: string; /** * * @type {string} @@ -45,10 +58,10 @@ export interface ModelCloudNodeAccountRegisterReq { is_organization_deployment?: boolean; /** * - * @type {{ [key: string]: string; }} + * @type {Array} * @memberof ModelCloudNodeAccountRegisterReq */ - monitored_account_ids?: { [key: string]: string; } | null; + monitored_accounts?: Array | null; /** * * @type {string} @@ -87,6 +100,7 @@ export type ModelCloudNodeAccountRegisterReqCloudProviderEnum = typeof ModelClou export function instanceOfModelCloudNodeAccountRegisterReq(value: object): boolean { let isInstance = true; isInstance = isInstance && "account_id" in value; + isInstance = isInstance && "account_name" in value; isInstance = isInstance && "cloud_provider" in value; isInstance = isInstance && "host_node_id" in value; isInstance = isInstance && "node_id" in value; @@ -106,10 +120,11 @@ export function ModelCloudNodeAccountRegisterReqFromJSONTyped(json: any, ignoreD return { 'account_id': json['account_id'], + 'account_name': json['account_name'], 'cloud_provider': json['cloud_provider'], 'host_node_id': json['host_node_id'], 'is_organization_deployment': !exists(json, 'is_organization_deployment') ? undefined : json['is_organization_deployment'], - 'monitored_account_ids': !exists(json, 'monitored_account_ids') ? undefined : json['monitored_account_ids'], + 'monitored_accounts': !exists(json, 'monitored_accounts') ? undefined : (json['monitored_accounts'] === null ? null : (json['monitored_accounts'] as Array).map(ModelCloudNodeMonitoredAccountFromJSON)), 'node_id': json['node_id'], 'organization_account_id': !exists(json, 'organization_account_id') ? undefined : json['organization_account_id'], 'version': json['version'], @@ -126,10 +141,11 @@ export function ModelCloudNodeAccountRegisterReqToJSON(value?: ModelCloudNodeAcc return { 'account_id': value.account_id, + 'account_name': value.account_name, 'cloud_provider': value.cloud_provider, 'host_node_id': value.host_node_id, 'is_organization_deployment': value.is_organization_deployment, - 'monitored_account_ids': value.monitored_account_ids, + 'monitored_accounts': value.monitored_accounts === undefined ? undefined : (value.monitored_accounts === null ? null : (value.monitored_accounts as Array).map(ModelCloudNodeMonitoredAccountToJSON)), 'node_id': value.node_id, 'organization_account_id': value.organization_account_id, 'version': value.version, diff --git a/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeMonitoredAccount.ts b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeMonitoredAccount.ts new file mode 100644 index 0000000000..fc4b9fbbd5 --- /dev/null +++ b/deepfence_frontend/apps/dashboard/src/api/generated/models/ModelCloudNodeMonitoredAccount.ts @@ -0,0 +1,84 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Deepfence ThreatMapper + * Deepfence Runtime API provides programmatic control over Deepfence microservice securing your container, kubernetes and cloud deployments. The API abstracts away underlying infrastructure details like cloud provider, container distros, container orchestrator and type of deployment. This is one uniform API to manage and control security alerts, policies and response to alerts for microservices running anywhere i.e. managed pure greenfield container deployments or a mix of containers, VMs and serverless paradigms like AWS Fargate. + * + * The version of the OpenAPI document: v2.2.1 + * Contact: community@deepfence.io + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import { exists, mapValues } from '../runtime'; +/** + * + * @export + * @interface ModelCloudNodeMonitoredAccount + */ +export interface ModelCloudNodeMonitoredAccount { + /** + * + * @type {string} + * @memberof ModelCloudNodeMonitoredAccount + */ + account_id: string; + /** + * + * @type {string} + * @memberof ModelCloudNodeMonitoredAccount + */ + account_name: string; + /** + * + * @type {string} + * @memberof ModelCloudNodeMonitoredAccount + */ + node_id: string; +} + +/** + * Check if a given object implements the ModelCloudNodeMonitoredAccount interface. + */ +export function instanceOfModelCloudNodeMonitoredAccount(value: object): boolean { + let isInstance = true; + isInstance = isInstance && "account_id" in value; + isInstance = isInstance && "account_name" in value; + isInstance = isInstance && "node_id" in value; + + return isInstance; +} + +export function ModelCloudNodeMonitoredAccountFromJSON(json: any): ModelCloudNodeMonitoredAccount { + return ModelCloudNodeMonitoredAccountFromJSONTyped(json, false); +} + +export function ModelCloudNodeMonitoredAccountFromJSONTyped(json: any, ignoreDiscriminator: boolean): ModelCloudNodeMonitoredAccount { + if ((json === undefined) || (json === null)) { + return json; + } + return { + + 'account_id': json['account_id'], + 'account_name': json['account_name'], + 'node_id': json['node_id'], + }; +} + +export function ModelCloudNodeMonitoredAccountToJSON(value?: ModelCloudNodeMonitoredAccount | null): any { + if (value === undefined) { + return undefined; + } + if (value === null) { + return null; + } + return { + + 'account_id': value.account_id, + 'account_name': value.account_name, + 'node_id': value.node_id, + }; +} + diff --git a/deepfence_frontend/apps/dashboard/src/api/generated/models/index.ts b/deepfence_frontend/apps/dashboard/src/api/generated/models/index.ts index 8ac6a1147c..a333d92699 100644 --- a/deepfence_frontend/apps/dashboard/src/api/generated/models/index.ts +++ b/deepfence_frontend/apps/dashboard/src/api/generated/models/index.ts @@ -68,6 +68,7 @@ export * from './ModelCloudNodeComplianceControl'; export * from './ModelCloudNodeControlReq'; export * from './ModelCloudNodeControlResp'; export * from './ModelCloudNodeEnableDisableReq'; +export * from './ModelCloudNodeMonitoredAccount'; export * from './ModelCloudNodeProvidersListResp'; export * from './ModelCloudResource'; export * from './ModelCompliance'; diff --git a/deepfence_frontend/apps/dashboard/src/components/scan-configure-forms/ComplianceScanConfigureForm.tsx b/deepfence_frontend/apps/dashboard/src/components/scan-configure-forms/ComplianceScanConfigureForm.tsx index 0ad0e80e8a..daf214a066 100644 --- a/deepfence_frontend/apps/dashboard/src/components/scan-configure-forms/ComplianceScanConfigureForm.tsx +++ b/deepfence_frontend/apps/dashboard/src/components/scan-configure-forms/ComplianceScanConfigureForm.tsx @@ -45,6 +45,7 @@ export const complianceType: { ModelBenchmarkType.Hipaa, ModelBenchmarkType.Soc2, ModelBenchmarkType.Gdpr, + ModelBenchmarkType.AwsFoundationalSecurity, ], aws_org: [ ModelBenchmarkType.Cis, @@ -365,9 +366,7 @@ const ControlTable = ({ nodeType={_nodeType} checkType={selectedTab.toLowerCase()} checked={!!info.row.original.enabled} - controlId={ - info.row.original?.control_id ? [info.row.original.control_id] : [''] - } + controlId={info.row.original?.node_id ? [info.row.original.node_id] : ['']} /> ); }, @@ -375,9 +374,15 @@ const ControlTable = ({ size: 50, minSize: 60, }), - columnHelper.accessor('category_hierarchy', { + columnHelper.accessor('category_hierarchy_short', { id: 'category', - cell: (info) => , + cell: (info) => { + let text = info.getValue() ?? ''; + if (!text.length) { + text = info.row.original?.category_hierarchy?.join(', ') ?? ''; + } + return ; + }, header: () => Category, maxSize: 100, size: 120, diff --git a/deepfence_frontend/apps/dashboard/src/utils/enum.ts b/deepfence_frontend/apps/dashboard/src/utils/enum.ts index db28513513..b61d6e1a5a 100644 --- a/deepfence_frontend/apps/dashboard/src/utils/enum.ts +++ b/deepfence_frontend/apps/dashboard/src/utils/enum.ts @@ -40,6 +40,8 @@ export function getBenchmarkPrettyName(backendBenchmark: ModelBenchmarkType) { return 'GDPR'; case ModelBenchmarkType.NsaCisa: return 'NSA-CISA'; + case ModelBenchmarkType.AwsFoundationalSecurity: + return 'AWS Foundational Security'; default: // eslint-disable-next-line no-case-declarations diff --git a/deepfence_server/handler/cloud_node.go b/deepfence_server/handler/cloud_node.go index 88126eb13a..7509de3d3d 100644 --- a/deepfence_server/handler/cloud_node.go +++ b/deepfence_server/handler/cloud_node.go @@ -32,6 +32,7 @@ func (h *Handler) RegisterCloudNodeAccountHandler(w http.ResponseWriter, r *http } err = h.Validator.Struct(req) if err != nil { + log.Error().Msg(err.Error()) h.respondError(&ValidatorError{err: err}, w) return } @@ -63,6 +64,12 @@ func (h *Handler) RegisterCloudNodeAccountHandler(w http.ResponseWriter, r *http return } for _, monitoredAccount := range monitoredAccounts { + err = h.Validator.Struct(monitoredAccount) + if err != nil { + log.Error().Msg(err.Error()) + h.respondError(&ValidatorError{err: err}, w) + return + } monitoredNode := map[string]interface{}{ "node_id": monitoredAccount.NodeID, "cloud_provider": req.CloudProvider, diff --git a/deepfence_server/model/cloud_node.go b/deepfence_server/model/cloud_node.go index a794e6bec5..d49ca8381a 100644 --- a/deepfence_server/model/cloud_node.go +++ b/deepfence_server/model/cloud_node.go @@ -42,13 +42,13 @@ var SupportedPostureProviders = []string{PostureProviderAWS, PostureProviderGCP, type CloudNodeMonitoredAccount struct { NodeID string `json:"node_id" validate:"required" required:"true"` - AccountName string `json:"account_name" validate:"required" required:"true"` + AccountName string `json:"account_name"` AccountID string `json:"account_id" validate:"required" required:"true"` } type CloudNodeAccountRegisterReq struct { NodeID string `json:"node_id" validate:"required" required:"true"` - AccountName string `json:"account_name" validate:"required" required:"true"` + AccountName string `json:"account_name"` HostNodeID string `json:"host_node_id" validate:"required" required:"true"` AccountID string `json:"account_id" validate:"required" required:"true"` CloudProvider string `json:"cloud_provider" validate:"required,oneof=aws gcp azure" enum:"aws,gcp,azure" required:"true"` diff --git a/deepfence_server/model/scans.go b/deepfence_server/model/scans.go index e151a55c74..19bcbc5d22 100644 --- a/deepfence_server/model/scans.go +++ b/deepfence_server/model/scans.go @@ -72,7 +72,16 @@ type BenchmarkType string // TODO: add new compliance type here func (bt BenchmarkType) Enum() []interface{} { - return []interface{}{"hipaa", "gdpr", "pci", "nist", "cis", "soc_2", "nsa-cisa"} + return []interface{}{ + "hipaa", + "gdpr", + "pci", + "nist", + "cis", + "soc_2", + "nsa-cisa", + "aws_foundational_security", + } } func BenchmarkTypeToArray(bt []BenchmarkType) []string { diff --git a/docs/docs/integrations/elasticsearch.md b/docs/docs/integrations/elasticsearch.md index 9977e14ca6..36c2f21fa4 100644 --- a/docs/docs/integrations/elasticsearch.md +++ b/docs/docs/integrations/elasticsearch.md @@ -12,5 +12,7 @@ title: Elasticsearch 1. Enter Elasticsearch endpoint url. (Example: http://10.108.0.2:9200) 2. Enter Elasticsearch index name. 3. Enter Elasticsearch doc type if version is 5.x. If version is 6 and above, enter `_doc` as doc type. -4. If authentication is enabled for the Elasticsearch instance, set the auth header. If username is `demo` and password is `p@55w0rd`, then enter auth header value as `Basic ZGVtbzpwQDU1dzByZA==`. If authentication is not enabled, leave it empty. -5. Choose the resource that has to be sent to Elasticsearch and click Subscribe button to save. +4. If authentication is enabled for the Elasticsearch instance, set the auth header. +5. If username is `demo` and password is `p@55w0rd`, generate basic auth header by running `echo -n '{username}:{password}' | base64` or generate online at https://www.base64encode.net +6. Enter auth header value as `Basic dXNlcm5hbWU6cGFzc3dvcmQ=`. If authorization is not enabled, leave it empty. +7. Choose the resource that has to be sent to Elasticsearch and click subscribe button to save. diff --git a/docs/vulnerability_feeds/listing.json b/docs/vulnerability_feeds/listing.json index 02da5929bc..78c00b1ec8 100644 --- a/docs/vulnerability_feeds/listing.json +++ b/docs/vulnerability_feeds/listing.json @@ -1,12 +1,6 @@ { "available": { "3": [ - { - "built": "2024-06-16T00:15:08.995201052Z", - "version": 3, - "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v3-2024-06-16_00-02-36/threatintel-vuln-v3-2024-06-16_00-02-36.tar.gz", - "checksum": "fb5a12a032fa50d246d93b4ba999551ec30ff48de1fc85c3399e4d05d433f357" - }, { "built": "2024-06-17T00:12:41.127807437Z", "version": 3, @@ -24,32 +18,38 @@ "version": 3, "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v3-2024-06-19_00-02-21/threatintel-vuln-v3-2024-06-19_00-02-21.tar.gz", "checksum": "9af1f772e909b681131873cb6eafabb6d7830168dd807bd6ef231f2ac70a153e" + }, + { + "built": "2024-06-20T00:12:55.596179179Z", + "version": 3, + "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v3-2024-06-20_00-02-27/threatintel-vuln-v3-2024-06-20_00-02-27.tar.gz", + "checksum": "09477002a1524b655421e4eef078be68f9f33c6e234fc2dedef80a4b6cdffea6" } ], "5": [ { - "built": "2024-06-17T14:28:10.709943726Z", + "built": "2024-06-19T02:56:20.961318862Z", "version": 5, - "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-17_13-21-31/threatintel-vuln-v5-2024-06-17_13-21-31.tar.gz", - "checksum": "7c0823962086c869623e1c27fb9622b882ef5865d9a0f0218b8e24d315c2b619" + "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-19_01-45-07/threatintel-vuln-v5-2024-06-19_01-45-07.tar.gz", + "checksum": "3cfb3238c147309d924c9e3e92eeab56736525d46b930add1236f223bd235240" }, { - "built": "2024-06-18T02:57:45.619777051Z", + "built": "2024-06-19T14:33:33.967701902Z", "version": 5, - "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-18_01-46-15/threatintel-vuln-v5-2024-06-18_01-46-15.tar.gz", - "checksum": "5b35f3c3f7ff3b2e4848244e6222055c5f946c6370f27ed4eb09fec26cfc1685" + "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-19_13-22-32/threatintel-vuln-v5-2024-06-19_13-22-32.tar.gz", + "checksum": "2195087e098b9ffff7c5479d0bca8222b469aec43525b03fc26b9919e2b2d44f" }, { - "built": "2024-06-18T14:31:11.986808888Z", + "built": "2024-06-20T02:49:37.758497945Z", "version": 5, - "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-18_13-22-26/threatintel-vuln-v5-2024-06-18_13-22-26.tar.gz", - "checksum": "bc7f63ae05ba8520dfa7c42912c6a3c37f7546beb53bd0d751b7753ab9b26450" + "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-20_01-45-33/threatintel-vuln-v5-2024-06-20_01-45-33.tar.gz", + "checksum": "e09c45ea050ab2ab2747b815e4f6360ec554cfddb4374dbbeaaa578badb45543" }, { - "built": "2024-06-19T02:56:20.961318862Z", + "built": "2024-06-20T14:28:20.141491473Z", "version": 5, - "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-19_01-45-07/threatintel-vuln-v5-2024-06-19_01-45-07.tar.gz", - "checksum": "3cfb3238c147309d924c9e3e92eeab56736525d46b930add1236f223bd235240" + "url": "https://threat-intel.deepfence.io/vulnerability-db/releases/download/threatintel-vuln-v5-2024-06-20_13-19-03/threatintel-vuln-v5-2024-06-20_13-19-03.tar.gz", + "checksum": "75cd424cfff68304f2693a0ce492c484e657c1cee396d201b2085befe4bd85d1" } ] } diff --git a/golang_deepfence_sdk b/golang_deepfence_sdk index 9257662934..50b685461f 160000 --- a/golang_deepfence_sdk +++ b/golang_deepfence_sdk @@ -1 +1 @@ -Subproject commit 9257662934dccf9d7eb0b11b2eef4bd150ed8040 +Subproject commit 50b685461f1d98696ccfccc042f76176a9737289