diff --git a/cve-vulner-manager/cve-timed-task/db_models/db_operations.go b/cve-vulner-manager/cve-timed-task/db_models/db_operations.go index 32fc427361c91a8c896b35ab0ab6a87c3d88cb6d..448b2bc605dcf210443d41401fe3ffb4cecb3f85 100644 --- a/cve-vulner-manager/cve-timed-task/db_models/db_operations.go +++ b/cve-vulner-manager/cve-timed-task/db_models/db_operations.go @@ -199,7 +199,7 @@ func GetCveVulnCenterList(cveDesc, repairTime, updateTime string, ORM orm.Ormer) func GetCveIssueTemplate(nvdScore, nvdVector, cveBrief, updateTime string, ORM orm.Ormer) ([]models.IssueTemplate, int64, error) { var issueTemplateList []models.IssueTemplate sqlString := "select cve_id,cve_num from cve_issue_template where " + - "(nvd_score = ? or nvd_vector = ? or cve_brief = ?) and update_time >= ? order by cve_id desc" + "(nvd_score = ? or nvd_vector = ? or cve_brief = ? or status in (1,2)) and update_time >= ? order by cve_id desc" rowsAffected, err := ORM.Raw(sqlString, nvdScore, nvdVector, cveBrief, updateTime).QueryRows(&issueTemplateList) return issueTemplateList, rowsAffected, err } diff --git a/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go b/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go index 9f17c2851f515b6e0466dbd99fb8c1719e341e20..4fbe92e0ec4e98c0a5dd23d98750160f39723cdd 100644 --- a/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go +++ b/cve-vulner-manager/cve-timed-task/tabletask/supplement_cve.go @@ -346,7 +346,7 @@ func SupplementCve() { //3. Fill in the corresponding table again; func LongSupplementCve() { ormModel := orm.NewOrm() - cveList := QueryCveALLData(1500, ormModel) + cveList := QueryCveALLData(365, ormModel) if len(cveList) > 0 { for _, cve := range cveList { cveNum := strings.TrimSpace(cve.CveNum) diff --git a/cve-vulner-manager/taskhandler/common.go b/cve-vulner-manager/taskhandler/common.go index db2b8c944bfe690c622f571615735e9747f7705a..94debbd082e7c0412f4e1c8b20ebb3dd44147ea3 100644 --- a/cve-vulner-manager/taskhandler/common.go +++ b/cve-vulner-manager/taskhandler/common.go @@ -873,6 +873,10 @@ func CreateIssueBody(accessToken, owner, path, assignee string, } else { scoreType = "3.0" } + nvdType := "2.0" + if score != "0.0" { + nvdType = "3.0" + } if len(brandArray) == 0 { if cve.OrganizationID == 1 || cve.OrganizationID == 2 { brandArray, _ = GetBranchesInfo(accessToken, owner, path, cve.OrganizationID) @@ -1002,20 +1006,20 @@ func CreateIssueBody(accessToken, owner, path, assignee string, if flag == 1 { if floatOpenEulerScore > 0.0 || (its.OpenEulerVector != "" && len(its.OpenEulerVector) > 1) { nveScore := score + " " + cve.CveLevel - nveVector := scoreType + "/" + sc.NvectorVule + nveVector := nvdType + "/" + sc.NvectorVule oVector := scoreType + "/" + its.OpenEulerVector body := "" if its.Status == 3 && len(its.SecLink) > 3 && cve.OrganizationID == 1 { - body = fmt.Sprintf(bodySecLinkTpl, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodySecLinkTpl, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, oVector, affectedVersion, abiVersion, its.SecLink) } else { if cve.OrganizationID == 1 { - body = fmt.Sprintf(bodyUpTplx, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyUpTplx, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, oVector, affectedVersion, abiVersion) } else { - body = fmt.Sprintf(bodyUpTplx, cveNumber, cveRepo, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyUpTplx, cveNumber, cveRepo, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, oVector, affectedVersion) } @@ -1023,15 +1027,15 @@ func CreateIssueBody(accessToken, owner, path, assignee string, requestBody = fmt.Sprintf(`{"access_token": "%s","repo": "%s","title": "%s","state": "%s","body": "%s","assignee": "%s","labels": "%s","security_hole": "false"}`, accessToken, path, cve.CveNum, StatusName, body, assignee, labels) } else { nveScore := score + " " + cve.CveLevel - nveVector := scoreType + "/" + sc.NvectorVule + nveVector := nvdType + "/" + sc.NvectorVule openEulerScore = " " body := "" if cve.OrganizationID == 1 { - body = fmt.Sprintf(bodyTplx, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyTplx, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, affectedVersion, abiVersion) } else { - body = fmt.Sprintf(bodyTplx, cveNumber, cveRepo, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyTplx, cveNumber, cveRepo, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, affectedVersion) } @@ -1039,15 +1043,15 @@ func CreateIssueBody(accessToken, owner, path, assignee string, } } else if flag == 2 { nveScore := score + " " + cve.CveLevel - nveVector := scoreType + "/" + sc.NvectorVule + nveVector := nvdType + "/" + sc.NvectorVule openEulerScore = " " body := "" if cve.OrganizationID == 1 { - body = fmt.Sprintf(bodyTplx, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyTplx, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, affectedVersion, abiVersion) } else { - body = fmt.Sprintf(bodyTplx, cveNumber, cveRepo, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyTplx, cveNumber, cveRepo, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, affectedVersion) } @@ -1068,20 +1072,20 @@ func CreateIssueBody(accessToken, owner, path, assignee string, } else { if floatOpenEulerScore > 0.0 || (its.OpenEulerVector != "" && len(its.OpenEulerVector) > 1) { nveScore := score + " " + cve.CveLevel - nveVector := scoreType + "/" + its.NVDVector + nveVector := nvdType + "/" + its.NVDVector oVector := scoreType + "/" + its.OpenEulerVector body := "" if its.Status == 3 && len(its.SecLink) > 3 && cve.OrganizationID == 1 { - body = fmt.Sprintf(bodySecLinkTpl, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodySecLinkTpl, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, oVector, affectedVersion, abiVersion, its.SecLink) } else { if cve.OrganizationID == 1 { - body = fmt.Sprintf(bodyUpTplx, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyUpTplx, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, oVector, affectedVersion, abiVersion) } else { - body = fmt.Sprintf(bodyUpTplx, cveNumber, cveRepo, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyUpTplx, cveNumber, cveRepo, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, oVector, affectedVersion) } @@ -1090,14 +1094,14 @@ func CreateIssueBody(accessToken, owner, path, assignee string, } else { openEulerScore = " " nveScore := score + " " + cve.CveLevel - nveVector := scoreType + "/" + sc.NvectorVule + nveVector := nvdType + "/" + sc.NvectorVule body := "" if cve.OrganizationID == 1 { - body = fmt.Sprintf(bodyTplx, cveNumber, cvePkg, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyTplx, cveNumber, cvePkg, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, affectedVersion, abiVersion) } else { - body = fmt.Sprintf(bodyTplx, cveNumber, cveRepo, cve.CveVersion, scoreType, nveScore, nveVector, + body = fmt.Sprintf(bodyTplx, cveNumber, cveRepo, cve.CveVersion, nvdType, nveScore, nveVector, cve.Description, cve.RepairTime, updateTime, cve.CveDetailUrl+"\n"+getCveDetail(cve.CveNum)+"\n", commentCmd, holeSource(cve.DataSource), genPatchInfo(cve.CveNum), cveAnalysis, openEulerScore, affectedVersion) }