In the Linux kernel, the following vulnerability has been resolved:
bpf: support non-r10 register spill/fill to/from stack in precision tracking
Use instruction (jump) history to record instructions that performed register spill/fill to/from stack, regardless if this was done through read-only r10 register, or any other register after copying r10 into it and potentially adjusting offset.
To make this work reliably, we push extra per-instruction flags into instruction history, encoding stack slot index (spi) and stack frame number in extra 10 bit flags we take away from prev_idx in instruction history. We don't touch idx field for maximum performance, as it's checked most frequently during backtracking.
This change removes basically the last remaining practical limitation of precision backtracking logic in BPF verifier. It fixes known deficiencies, but also opens up new opportunities to reduce number of verified states, explored in the subsequent patches.
There are only three differences in selftests' BPF object files according to veristat, all in the positive direction (less states).
File Program Insns (A) Insns (B) Insns (DIFF) States (A) States (B) States (DIFF)
testclsredirectdynptr.bpf.linked3.o clsredirect 2987 2864 -123 (-4.12%) 240 231 -9 (-3.75%) xdpsynproxykern.bpf.linked3.o syncookietc 82848 82661 -187 (-0.23%) 5107 5073 -34 (-0.67%) xdpsynproxykern.bpf.linked3.o syncookiexdp 85116 84964 -152 (-0.18%) 5162 5130 -32 (-0.62%)
Note, I avoided renaming jmphistory to more generic insnhist to minimize number of lines changed and potential merge conflicts between bpf and bpf-next trees.
Notice also curhistentry pointer reset to NULL at the beginning of instruction verification loop. This pointer avoids the problem of relying on last jump history entry's insnidx to determine whether we already have entry for current instruction or not. It can happen that we added jump history entry because current instruction isjmp_point(), but also we need to add instruction flags for stack access. In this case, we don't want to entries, so we need to reuse last added entry, if it is present.
Relying on insn_idx comparison has the same ambiguity problem as the one that was fixed recently in [0], so we avoid that.
[0] https://patchwork.kernel.org/project/netdevbpf/patch/20231110002638.4168352-3-andrii@kernel.org/
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/52xxx/CVE-2023-52920.json",
"cna_assigner": "Linux"
}"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-52920.json"
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 2315.0,
"function_hash": "237417209357622415690372181179506221358"
},
"id": "CVE-2023-52920-0612b20c",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "check_stack_read_fixed_off"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 510.0,
"function_hash": "116276899469284638529463269983512884035"
},
"id": "CVE-2023-52920-0d35ee2e",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "push_jmp_history"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 3562.0,
"function_hash": "220979966114767023374172926393032339613"
},
"id": "CVE-2023-52920-13663b1f",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "__mark_chain_precision"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"line_hashes": [
"140532139050873191162410417543524739355",
"3484782133674882389076157257172997432",
"82358485641326839397213286016888028880",
"213997158198050984373504230134193214671",
"139721840325461942693362309463837940542",
"137964998661683468112508237355748128481",
"21199936090538613024297946944443686135",
"41012687593203527984931594375469264216",
"117798292647725610175386971588108271287",
"131834012581594985514076247897888705499",
"5795991495982744276085770634940407680",
"72528700585962672706385901968667636745",
"122777423581856316724647034700329516465",
"278074286726677412403816897685143496876",
"91074783226935790473271609347025531915"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-22c84b57",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "include/linux/bpf_verifier.h"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 134.0,
"function_hash": "214113408825975054292960370712101259209"
},
"id": "CVE-2023-52920-2b1ad4d2",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "bt_is_slot_set"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 4903.0,
"function_hash": "144157619754659820202063645765567168258"
},
"id": "CVE-2023-52920-36c35d6b",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "is_state_visited"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 4828.0,
"function_hash": "286234095006975742092281922479607984727"
},
"id": "CVE-2023-52920-3721cb2b",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "backtrack_insn"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 7842.0,
"function_hash": "169105039887119522910636596743693383349"
},
"id": "CVE-2023-52920-406fe649",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "do_check"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 2659.0,
"function_hash": "51790541305876894504910622158170434253"
},
"id": "CVE-2023-52920-4d217c26",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "check_stack_write_fixed_off"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"line_hashes": [
"95605354462157779649222337808174178585",
"183777361274100207083186423050897300528",
"14444477262332268054282238313023896808",
"293857960782285275174179473660632519045",
"324989002708629452933998448000632292436",
"216114569186777421902500061214553077720",
"11655839156048948901200993562004881586",
"274589272044978766723707828920778856819",
"135058084280290388745982564547768208929",
"255646972965367819371255109673243970213",
"143898994625987629966196632638200556745",
"77196266551897008171343808667625490394",
"310556593767574176888441918065674455047",
"9033145396946146992877071412229773963",
"45350718501873900133070448177644695159",
"64646122530536504714762619168139225916",
"253876173553096785783431079009230747211",
"40117449875990593579877964979136478843",
"144489778106081548399581623645646202525",
"44508125289036417408037675208177765621",
"329981465964485657021277497681034301404",
"243283991227139880067614605216926135157",
"244843467562772907068339242984544588961",
"247858665165293787364182801684142089365",
"14854101222525682516220333416144468743",
"210364701176070733302827322783444400751",
"113522421046596238250460372093395088101",
"279051972839238449876447591477719438966",
"273884332774841659523167119905516581868",
"290238400623662487071888679773825791999",
"5308225584881617914652884590292602961",
"270395638050711957180502066391429975400",
"81942564731724904806857217259856734102",
"248990389474641662993265545275095921861",
"334928588409393038782803487144217182918",
"82052552451013082469742956722949405282",
"160830159617706784394611440988022035342",
"74699793836351477197064566292000936652",
"214893381956177255710300773634870661833",
"242374716596981851259594414520431191264",
"81154533442675529083761789707458702827",
"321304104425872207572456550519241754961",
"64886746019848995406979144112142797040",
"61388499791245857856265984750676464019",
"24547219156021598815547657537103140746",
"271251025578925177634427292320607964262",
"240189657692163015580656127781057809513",
"337586245663129422838310602847810027421",
"71502190377096640716189230136174706915",
"184128988484234204501638697323094846472",
"18381620210355390257528837550376927875",
"186345332289494705801474566906808512383",
"8762170530182152279521130958196962987",
"177219440560164338656791697713311006015",
"68277026368847875439925140157826987802",
"297354514527047590732399955500020452152",
"6054547474283248318565437332293537848",
"163545628560631244632526864431080931230",
"98159373737735350228558004789850251200",
"283550528891638838405714736317424948329",
"71502190377096640716189230136174706915",
"184128988484234204501638697323094846472",
"18381620210355390257528837550376927875",
"186345332289494705801474566906808512383",
"249923896362166750706616085857809946285",
"302713516404985035142701713213195706966",
"146403886907368427579053498675264788568",
"280640625396247292445391651613109894893",
"243932381768892378420383054351606653612",
"264498205427284111974423081707955883303",
"229775744555996184226710385097738758402",
"224892276211632521019916348125659952611",
"316549365231587300166233201406369203781",
"63120291761728498895975660289589654841",
"156462324094717982656529503406624101515",
"229775744555996184226710385097738758402",
"224892276211632521019916348125659952611",
"126590046518046208626837843895495564691",
"142595673513993986484998429736444406937",
"279857543787882963174039217879143539191",
"273317213855136869367995267749815965444",
"57497653642525271512301957861443521647",
"71180865068501776860629530885466992009",
"95026888514044732393333262374075408974",
"112544839894619575189793561351762463223",
"143872589190331286962897623058102927430",
"147527065777216585582196505921950947059",
"56940182458029959198170921157036939846",
"60476559186580847141022470080195945375",
"181274614727307593672190448375477407274",
"179766790286140176477750557925584599097",
"148633870628039045632930826662521354584",
"142810267463146841979515493039914719845",
"72530555538836698312691735059245377358",
"14863361235863593461656639659778274417",
"186297844856421524847336225763098098032",
"4564621557626752588141938172777197980",
"335070054448367272628038620283690771649",
"295361456352478166778344233684092736888",
"210642430321163092518791804024294719558",
"10381617242294806116341520832770680607",
"339871461916672175861219875001680021591",
"183915151540944341311508790626893169446",
"94646696066537580468475960029537632481",
"21152067273500460715084490892219238541",
"277762179777672512037370273501230058525",
"28981562647343973732774916764629344078",
"187828320037696901062597032977383734738",
"151641689508174005074788695223687564484",
"55845430058436776945891681120561460279",
"262035612969643258735918826169934184073",
"171056685997598615072644988886399476200",
"146117914364851204558618593412185464230",
"166554935919147558993966715029588191646",
"72608065299498108593833925875528083106",
"310057495459037260183074434663924948642",
"165556922119586444114431650842005467595",
"315952146377677726049698174457287965341",
"268355166692168594588987754459301229660",
"245747599944287259265182827758962249534",
"29588624727394727957365160119777659295",
"48972561848796152680525738030481732569",
"214030062465363402265024075083480215858",
"320614415705247543779277221795988499835",
"329901953796116977594232143798452897305",
"320288114964177207360050621558371802818",
"272500483220324804458183556375028353819",
"272161898673681993413439416866714107700",
"5972335372659014029961758532044360682",
"153509026070364025084529385888333478476",
"17455935206733753449877441736719439736",
"302592660087246178264250994308909025656",
"242187774583876768083364915192911748354",
"27671404336428419046435218082322777793",
"213637199355543533077451480379048848613",
"109759860439517632126431721677061719349",
"327731246370167621813518442475581040958",
"86980355848711244551791497270721250965",
"227087860883980233269278431615038346729",
"252873128613093958304295336364801920539",
"45676168138381749337503806588841807195",
"235649608299943721004594879998222986730",
"59902502077140167017183251311089244597",
"267686086053405599107080860289296101848",
"307484291512999717191099512277098673083",
"151086289054485813979964500885757470095",
"135218928415172298278491153558815105873",
"88869215440215734298187226676585841755"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-4e5ed248",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 7593.0,
"function_hash": "166234807204560197038924837986003400943"
},
"id": "CVE-2023-52920-526c4811",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "do_check"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 2766.0,
"function_hash": "137438487940574202321642154342745166893"
},
"id": "CVE-2023-52920-705c5438",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "check_stack_write_fixed_off"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 134.0,
"function_hash": "214113408825975054292960370712101259209"
},
"id": "CVE-2023-52920-7809829d",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "bt_is_slot_set"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 3562.0,
"function_hash": "220979966114767023374172926393032339613"
},
"id": "CVE-2023-52920-79515ffd",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "__mark_chain_precision"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 4778.0,
"function_hash": "297100524911509667375802228924106613938"
},
"id": "CVE-2023-52920-86f707d6",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "backtrack_insn"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 4872.0,
"function_hash": "227752843535807636837508176970367606208"
},
"id": "CVE-2023-52920-8e32941e",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "is_state_visited"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"line_hashes": [
"95605354462157779649222337808174178585",
"183777361274100207083186423050897300528",
"14444477262332268054282238313023896808",
"293857960782285275174179473660632519045",
"324989002708629452933998448000632292436",
"216114569186777421902500061214553077720",
"11655839156048948901200993562004881586",
"274589272044978766723707828920778856819",
"135058084280290388745982564547768208929",
"255646972965367819371255109673243970213",
"143898994625987629966196632638200556745",
"77196266551897008171343808667625490394",
"310556593767574176888441918065674455047",
"9033145396946146992877071412229773963",
"45350718501873900133070448177644695159",
"64646122530536504714762619168139225916",
"253876173553096785783431079009230747211",
"40117449875990593579877964979136478843",
"144489778106081548399581623645646202525",
"44508125289036417408037675208177765621",
"329981465964485657021277497681034301404",
"243283991227139880067614605216926135157",
"244843467562772907068339242984544588961",
"247858665165293787364182801684142089365",
"14854101222525682516220333416144468743",
"210364701176070733302827322783444400751",
"113522421046596238250460372093395088101",
"279051972839238449876447591477719438966",
"273884332774841659523167119905516581868",
"290238400623662487071888679773825791999",
"5308225584881617914652884590292602961",
"270395638050711957180502066391429975400",
"81942564731724904806857217259856734102",
"248990389474641662993265545275095921861",
"334928588409393038782803487144217182918",
"82052552451013082469742956722949405282",
"160830159617706784394611440988022035342",
"74699793836351477197064566292000936652",
"214893381956177255710300773634870661833",
"242374716596981851259594414520431191264",
"81154533442675529083761789707458702827",
"321304104425872207572456550519241754961",
"64886746019848995406979144112142797040",
"61388499791245857856265984750676464019",
"24547219156021598815547657537103140746",
"271251025578925177634427292320607964262",
"240189657692163015580656127781057809513",
"337586245663129422838310602847810027421",
"71502190377096640716189230136174706915",
"184128988484234204501638697323094846472",
"18381620210355390257528837550376927875",
"186345332289494705801474566906808512383",
"8762170530182152279521130958196962987",
"177219440560164338656791697713311006015",
"68277026368847875439925140157826987802",
"297354514527047590732399955500020452152",
"6054547474283248318565437332293537848",
"163545628560631244632526864431080931230",
"98159373737735350228558004789850251200",
"283550528891638838405714736317424948329",
"71502190377096640716189230136174706915",
"184128988484234204501638697323094846472",
"18381620210355390257528837550376927875",
"186345332289494705801474566906808512383",
"249923896362166750706616085857809946285",
"302713516404985035142701713213195706966",
"146403886907368427579053498675264788568",
"280640625396247292445391651613109894893",
"243932381768892378420383054351606653612",
"264498205427284111974423081707955883303",
"229775744555996184226710385097738758402",
"224892276211632521019916348125659952611",
"316549365231587300166233201406369203781",
"63120291761728498895975660289589654841",
"156462324094717982656529503406624101515",
"229775744555996184226710385097738758402",
"224892276211632521019916348125659952611",
"126590046518046208626837843895495564691",
"142595673513993986484998429736444406937",
"279857543787882963174039217879143539191",
"273317213855136869367995267749815965444",
"57497653642525271512301957861443521647",
"71180865068501776860629530885466992009",
"95026888514044732393333262374075408974",
"112544839894619575189793561351762463223",
"143872589190331286962897623058102927430",
"147527065777216585582196505921950947059",
"56940182458029959198170921157036939846",
"60476559186580847141022470080195945375",
"181274614727307593672190448375477407274",
"179766790286140176477750557925584599097",
"148633870628039045632930826662521354584",
"142810267463146841979515493039914719845",
"72530555538836698312691735059245377358",
"14863361235863593461656639659778274417",
"334847059752406920369786910155854447009",
"292952321997416571729318343694636474298",
"47163152482657174293038336199310103442",
"295361456352478166778344233684092736888",
"210642430321163092518791804024294719558",
"10381617242294806116341520832770680607",
"339871461916672175861219875001680021591",
"183915151540944341311508790626893169446",
"94646696066537580468475960029537632481",
"21152067273500460715084490892219238541",
"277762179777672512037370273501230058525",
"28981562647343973732774916764629344078",
"187828320037696901062597032977383734738",
"151641689508174005074788695223687564484",
"55845430058436776945891681120561460279",
"262035612969643258735918826169934184073",
"171056685997598615072644988886399476200",
"146117914364851204558618593412185464230",
"166554935919147558993966715029588191646",
"72608065299498108593833925875528083106",
"310057495459037260183074434663924948642",
"165556922119586444114431650842005467595",
"315952146377677726049698174457287965341",
"268355166692168594588987754459301229660",
"245747599944287259265182827758962249534",
"29588624727394727957365160119777659295",
"48972561848796152680525738030481732569",
"214030062465363402265024075083480215858",
"320614415705247543779277221795988499835",
"329901953796116977594232143798452897305",
"320288114964177207360050621558371802818",
"272500483220324804458183556375028353819",
"272161898673681993413439416866714107700",
"5972335372659014029961758532044360682",
"153509026070364025084529385888333478476",
"17455935206733753449877441736719439736",
"302592660087246178264250994308909025656",
"242187774583876768083364915192911748354",
"27671404336428419046435218082322777793",
"213637199355543533077451480379048848613",
"109759860439517632126431721677061719349",
"327731246370167621813518442475581040958",
"86980355848711244551791497270721250965",
"227087860883980233269278431615038346729",
"252873128613093958304295336364801920539",
"45676168138381749337503806588841807195",
"235649608299943721004594879998222986730",
"59902502077140167017183251311089244597",
"267686086053405599107080860289296101848",
"307484291512999717191099512277098673083",
"151086289054485813979964500885757470095",
"135218928415172298278491153558815105873",
"88869215440215734298187226676585841755"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-a5a37107",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 1386.0,
"function_hash": "174553016621934315812712449421128786068"
},
"id": "CVE-2023-52920-a5a9c7bf",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "copy_verifier_state"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"line_hashes": [
"200066387499802845999646996076062137076",
"119116189855246468363790337534879334861",
"70018368905449965172189964402199012319",
"165311566861271131065040563691155830321",
"295305856811287026158849181195170879646",
"133965324547098557974429686927964222223",
"317507966042438901818642907202535850268",
"247842271017944018104502307952424518155",
"21277487948212566096141833029887266748",
"223082905229820740172278586362847890653",
"206927905472333898382419995332568160318",
"290038177933382897826527267900348428770",
"215322336590409007924774518676665223423",
"207299044691939727613738786910565543827",
"213543983430081658337790224674751967480",
"50140291092474294521349364919382902432",
"329384616887552300201613305854595381261",
"67096567636372426213977215472347894578",
"45054172471770995232291659104662826429"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-b82d88de",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "tools/testing/selftests/bpf/verifier/precise.c"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"line_hashes": [
"200066387499802845999646996076062137076",
"119116189855246468363790337534879334861",
"70018368905449965172189964402199012319",
"165311566861271131065040563691155830321",
"295305856811287026158849181195170879646",
"133965324547098557974429686927964222223",
"317507966042438901818642907202535850268",
"247842271017944018104502307952424518155",
"21277487948212566096141833029887266748",
"223082905229820740172278586362847890653",
"206927905472333898382419995332568160318",
"290038177933382897826527267900348428770",
"215322336590409007924774518676665223423",
"207299044691939727613738786910565543827",
"213543983430081658337790224674751967480",
"50140291092474294521349364919382902432",
"329384616887552300201613305854595381261",
"67096567636372426213977215472347894578",
"45054172471770995232291659104662826429"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-b83c1b31",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "tools/testing/selftests/bpf/verifier/precise.c"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 510.0,
"function_hash": "116276899469284638529463269983512884035"
},
"id": "CVE-2023-52920-c87e0450",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "push_jmp_history"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"length": 2315.0,
"function_hash": "237417209357622415690372181179506221358"
},
"id": "CVE-2023-52920-e3dd51bc",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "check_stack_read_fixed_off"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"line_hashes": [
"31014920506547388191108470358356626963",
"166102518886892592401410042308107879291",
"223665886049505154938137061997851787640",
"152368139947978300818895382691548332545"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-ed27e652",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "tools/testing/selftests/bpf/progs/verifier_subprog_precision.c"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@199f0452873741fa4b8d4d88958e929030b2f92b",
"digest": {
"length": 2725.0,
"function_hash": "198259437612742541125468453373835413930"
},
"id": "CVE-2023-52920-f0f43f95",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "check_stack_write_fixed_off"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"line_hashes": [
"320435900060972972296451592008611394526",
"59285519821680057184081222494787201705",
"82358485641326839397213286016888028880",
"213997158198050984373504230134193214671",
"139721840325461942693362309463837940542",
"137964998661683468112508237355748128481",
"21199936090538613024297946944443686135",
"41012687593203527984931594375469264216",
"117798292647725610175386971588108271287",
"131834012581594985514076247897888705499",
"5795991495982744276085770634940407680",
"72528700585962672706385901968667636745",
"122777423581856316724647034700329516465",
"278074286726677412403816897685143496876",
"91074783226935790473271609347025531915"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-fd02f3b7",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "include/linux/bpf_verifier.h"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ecc2aeeaa08a355d84d3ca9c3d2512399a194f29",
"digest": {
"line_hashes": [
"31014920506547388191108470358356626963",
"166102518886892592401410042308107879291",
"223665886049505154938137061997851787640",
"152368139947978300818895382691548332545"
],
"threshold": 0.9
},
"id": "CVE-2023-52920-fe1b8001",
"deprecated": false,
"signature_type": "Line",
"signature_version": "v1",
"target": {
"file": "tools/testing/selftests/bpf/progs/verifier_subprog_precision.c"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41f6f64e6999a837048b1bd13a2f8742964eca6b",
"digest": {
"length": 1386.0,
"function_hash": "174553016621934315812712449421128786068"
},
"id": "CVE-2023-52920-ff83fcc8",
"deprecated": false,
"signature_type": "Function",
"signature_version": "v1",
"target": {
"file": "kernel/bpf/verifier.c",
"function": "copy_verifier_state"
}
}
]