policy/avmsec/severity.rego (184 lines of code) (raw):
package avmsec
import rego.v1
high_severity_rules := [
"AVM_SEC_40",
"AVM_SEC_49",
"AVM_SEC_86",
"AVM_SEC_85",
"AVM_SEC_26",
"AVM_SEC_25",
"AVM_SEC_215",
"AVM_SEC_223",
"AVM_SEC_178",
]
medium_severity_rules := [
"AVM_SEC_29",
"AVM_SEC_5",
"AVM_SEC_143",
"AVM_SEC_7",
"AVM_SEC_139",
"AVM_SEC_138",
"AVM_SEC_137",
"AVM_SEC_4",
"AVM_SEC_141",
"AVM_SEC_6",
"AVM_SEC_115",
"AVM_SEC_172",
"AVM_SEC_173",
"AVM_SEC_186",
"AVM_SEC_187",
"AVM_SEC_2_28",
"AVM_SEC_72",
"AVM_SEC_217",
"AVM_SEC_2_24",
"AVM_SEC_166",
"AVM_SEC_164",
"AVM_SEC_2_43",
"AVM_SEC_2_44",
"AVM_SEC_234",
"AVM_SEC_2_26",
"AVM_SEC_2_42",
"AVM_SEC_201",
"AVM_SEC_199",
"AVM_SEC_2_45",
"AVM_SEC_2_33",
"AVM_SEC_2_46",
"AVM_SEC_52",
"AVM_SEC_54",
"AVM_SEC_105",
"AVM_SEC_50",
"AVM_SEC_163",
"AVM_SEC_177",
]
low_severity_rules := [
"AVM_SEC_2_1",
"AVM_SEC_125",
"AVM_SEC_170",
"AVM_SEC_188",
"AVM_SEC_88",
"AVM_SEC_95",
"AVM_SEC_212",
"AVM_SEC_214",
"AVM_SEC_211",
"AVM_SEC_13",
"AVM_SEC_83",
"AVM_SEC_81",
"AVM_SEC_82",
"AVM_SEC_80",
"AVM_SEC_78",
"AVM_SEC_218",
"AVM_SEC_73",
"AVM_SEC_76",
"AVM_SEC_159",
"AVM_SEC_152",
"AVM_SEC_209",
"AVM_SEC_208",
"AVM_SEC_2_22",
"AVM_SEC_235",
"AVM_SEC_167",
"AVM_SEC_233",
"AVM_SEC_237",
"AVM_SEC_157",
"AVM_SEC_2_11",
"AVM_SEC_180",
"AVM_SEC_2_15",
"AVM_SEC_103",
"AVM_SEC_2_48",
"AVM_SEC_56",
"AVM_SEC_2_32",
"AVM_SEC_92",
"AVM_SEC_150",
"AVM_SEC_2_37",
"AVM_SEC_21",
"AVM_SEC_136",
"AVM_SEC_126",
"AVM_SEC_196",
"AVM_SEC_2_25",
"AVM_SEC_149",
"AVM_SEC_2_5",
"AVM_SEC_2_4",
"AVM_SEC_2_3",
"AVM_SEC_156",
"AVM_SEC_2_7",
"AVM_SEC_2_18",
"AVM_SEC_2_38",
"AVM_SEC_3",
"AVM_SEC_206",
"AVM_SEC_241",
"AVM_SEC_240",
"AVM_SEC_2_9",
"AVM_SEC_2_31",
"AVM_SEC_57",
"AVM_SEC_62",
"AVM_SEC_100",
"AVM_SEC_111",
"AVM_SEC_112",
"AVM_SEC_114",
"AVM_SEC_244",
"AVM_SEC_93",
"AVM_SEC_129",
"AVM_SEC_2_10",
"AVM_SEC_94",
"AVM_SEC_127",
"AVM_SEC_96",
"AVM_SEC_2_16",
"AVM_SEC_2_17",
"AVM_SEC_130",
"AVM_SEC_128",
"AVM_SEC_102",
"AVM_SEC_43",
"AVM_SEC_2_14",
"AVM_SEC_97",
"AVM_SEC_2_12",
"AVM_SEC_179",
"AVM_SEC_175",
]
info_severity_rules := [
"AVM_SEC_2_29",
"AVM_SEC_71",
"AVM_SEC_2_30",
"AVM_SEC_74",
"AVM_SEC_75",
"AVM_SEC_67",
"AVM_SEC_42",
"AVM_SEC_110",
"AVM_SEC_19",
"AVM_SEC_22",
"AVM_SEC_61",
"AVM_SEC_69",
"AVM_SEC_87",
"AVM_SEC_55",
"AVM_SEC_79",
"AVM_SEC_84",
"AVM_SEC_131",
"AVM_SEC_20",
"AVM_SEC_2_6",
"AVM_SEC_27",
"AVM_SEC_2_2",
"AVM_SEC_2_13",
"AVM_SEC_2_27",
"AVM_SEC_242",
"AVM_SEC_2_51",
"AVM_SEC_2_52",
"AVM_SEC_2",
]
all_rules := array.concat(
array.concat(
array.concat(
high_severity_rules,
medium_severity_rules,
),
low_severity_rules,
),
info_severity_rules,
)
rules_below_high := [
r |
r := all_rules[_]
not r in high_severity_rules
]
rules_below_medium := [
r |
r := rules_below_high[_]
not r in medium_severity_rules
]