CVE-2022-48640

Source
https://nvd.nist.gov/vuln/detail/CVE-2022-48640
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-48640.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-48640
Downstream
Related
Published
2024-04-28T12:59:48Z
Modified
2025-10-15T15:31:39.591192Z
Summary
bonding: fix NULL deref in bond_rr_gen_slave_id
Details

In the Linux kernel, the following vulnerability has been resolved:

bonding: fix NULL deref in bondrrgenslaveid

Fix a NULL dereference of the struct bonding.rrtxcounter member because if a bond is initially created with an initial mode != zero (Round Robin) the memory required for the counter is never created and when the mode is changed there is never any attempt to verify the memory is allocated upon switching modes.

This causes the following Oops on an aarch64 machine: [ 334.686773] Unable to handle kernel paging request at virtual address ffff2c91ac905000 [ 334.694703] Mem abort info: [ 334.697486] ESR = 0x0000000096000004 [ 334.701234] EC = 0x25: DABT (current EL), IL = 32 bits [ 334.706536] SET = 0, FnV = 0 [ 334.709579] EA = 0, S1PTW = 0 [ 334.712719] FSC = 0x04: level 0 translation fault [ 334.717586] Data abort info: [ 334.720454] ISV = 0, ISS = 0x00000004 [ 334.724288] CM = 0, WnR = 0 [ 334.727244] swapper pgtable: 4k pages, 48-bit VAs, pgdp=000008044d662000 [ 334.733944] [ffff2c91ac905000] pgd=0000000000000000, p4d=0000000000000000 [ 334.740734] Internal error: Oops: 96000004 [#1] SMP [ 334.745602] Modules linked in: bonding tls veth rfkill sunrpc armspepmu vfat fat acpiipmi ipmissif ixgbe igb i40e mdio ipmidevintf ipmimsghandler armcmn armdsupmu cppccpufreq acpitad fuse zram crct10difce ast ghashce sbsagwdt nvme drmvramhelper drmttmhelper nvmecore ttm xgenehwmon [ 334.772217] CPU: 7 PID: 2214 Comm: ping Not tainted 6.0.0-rc4-00133-g64ae13ed4784 #4 [ 334.779950] Hardware name: GIGABYTE R272-P31-00/MP32-AR1-00, BIOS F18v (SCP: 1.08.20211002) 12/01/2021 [ 334.789244] pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 334.796196] pc : bondrrgenslaveid+0x40/0x124 [bonding] [ 334.801691] lr : bondxmitroundrobinslaveget+0x38/0xdc [bonding] [ 334.807962] sp : ffff8000221733e0 [ 334.811265] x29: ffff8000221733e0 x28: ffffdbac8572d198 x27: ffff80002217357c [ 334.818392] x26: 000000000000002a x25: ffffdbacb33ee000 x24: ffff07ff980fa000 [ 334.825519] x23: ffffdbacb2e398ba x22: ffff07ff98102000 x21: ffff07ff981029c0 [ 334.832646] x20: 0000000000000001 x19: ffff07ff981029c0 x18: 0000000000000014 [ 334.839773] x17: 0000000000000000 x16: ffffdbacb1004364 x15: 0000aaaabe2f5a62 [ 334.846899] x14: ffff07ff8e55d968 x13: ffff07ff8e55db30 x12: 0000000000000000 [ 334.854026] x11: ffffdbacb21532e8 x10: 0000000000000001 x9 : ffffdbac857178ec [ 334.861153] x8 : ffff07ff9f6e5a28 x7 : 0000000000000000 x6 : 000000007c2b3742 [ 334.868279] x5 : ffff2c91ac905000 x4 : ffff2c91ac905000 x3 : ffff07ff9f554400 [ 334.875406] x2 : ffff2c91ac905000 x1 : 0000000000000001 x0 : ffff07ff981029c0 [ 334.882532] Call trace: [ 334.884967] bondrrgenslaveid+0x40/0x124 [bonding] [ 334.890109] bondxmitroundrobinslaveget+0x38/0xdc [bonding] [ 334.896033] _bondstartxmit+0x128/0x3a0 [bonding] [ 334.901001] bondstartxmit+0x54/0xb0 [bonding] [ 334.905622] devhardstartxmit+0xb4/0x220 [ 334.909798] _devqueuexmit+0x1a0/0x720 [ 334.913799] arpxmit+0x3c/0xbc [ 334.916932] arpsenddst+0x98/0xd0 [ 334.920410] arpsolicit+0xe8/0x230 [ 334.923888] neighprobe+0x60/0xb0 [ 334.927279] _neigheventsend+0x3b0/0x470 [ 334.931453] neighresolveoutput+0x70/0x90 [ 334.935626] ipfinishoutput2+0x158/0x514 [ 334.939714] _ipfinishoutput+0xac/0x1a4 [ 334.943800] ipfinishoutput+0x40/0xfc [ 334.947626] ipoutput+0xf8/0x1a4 [ 334.950931] ipsendskb+0x5c/0x100 [ 334.954410] ippushpendingframes+0x3c/0x60 [ 334.958758] rawsendmsg+0x458/0x6d0 [ 334.962325] inetsendmsg+0x50/0x80 [ 334.965805] socksendmsg+0x60/0x6c [ 334.969286] _syssendto+0xc8/0x134 [ 334.972853] _arm64syssendto+0x34/0x4c ---truncated---

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
848ca9182a7d25bb54955c3aab9a3a2742bf9678
Fixed
ec3a6f4ffe556a28f6f5028bf7c4412557e7051b
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
848ca9182a7d25bb54955c3aab9a3a2742bf9678
Fixed
2c8e8ab53acfc78da0b4a65f30cb5d306e7d78f7
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
848ca9182a7d25bb54955c3aab9a3a2742bf9678
Fixed
0e400d602f46360752e4b32ce842dba3808e15e6

Affected versions

v5.*

v5.13
v5.13-rc4
v5.13-rc5
v5.13-rc6
v5.13-rc7
v5.14
v5.14-rc1
v5.14-rc2
v5.14-rc3
v5.14-rc4
v5.14-rc5
v5.14-rc6
v5.14-rc7
v5.15
v5.15-rc1
v5.15-rc2
v5.15-rc3
v5.15-rc4
v5.15-rc5
v5.15-rc6
v5.15-rc7
v5.15.1
v5.15.10
v5.15.11
v5.15.12
v5.15.13
v5.15.14
v5.15.15
v5.15.16
v5.15.17
v5.15.18
v5.15.19
v5.15.2
v5.15.20
v5.15.21
v5.15.22
v5.15.23
v5.15.24
v5.15.25
v5.15.26
v5.15.27
v5.15.28
v5.15.29
v5.15.3
v5.15.30
v5.15.31
v5.15.32
v5.15.33
v5.15.34
v5.15.35
v5.15.36
v5.15.37
v5.15.38
v5.15.39
v5.15.4
v5.15.40
v5.15.41
v5.15.42
v5.15.43
v5.15.44
v5.15.45
v5.15.46
v5.15.47
v5.15.48
v5.15.49
v5.15.5
v5.15.50
v5.15.51
v5.15.52
v5.15.53
v5.15.54
v5.15.55
v5.15.56
v5.15.57
v5.15.58
v5.15.59
v5.15.6
v5.15.60
v5.15.61
v5.15.62
v5.15.63
v5.15.64
v5.15.65
v5.15.66
v5.15.67
v5.15.68
v5.15.69
v5.15.7
v5.15.70
v5.15.8
v5.15.9
v5.16
v5.16-rc1
v5.16-rc2
v5.16-rc3
v5.16-rc4
v5.16-rc5
v5.16-rc6
v5.16-rc7
v5.16-rc8
v5.17
v5.17-rc1
v5.17-rc2
v5.17-rc3
v5.17-rc4
v5.17-rc5
v5.17-rc6
v5.17-rc7
v5.17-rc8
v5.18
v5.18-rc1
v5.18-rc2
v5.18-rc3
v5.18-rc4
v5.18-rc5
v5.18-rc6
v5.18-rc7
v5.19
v5.19-rc1
v5.19-rc2
v5.19-rc3
v5.19-rc4
v5.19-rc5
v5.19-rc6
v5.19-rc7
v5.19-rc8
v5.19.1
v5.19.10
v5.19.11
v5.19.2
v5.19.3
v5.19.4
v5.19.5
v5.19.6
v5.19.7
v5.19.8
v5.19.9

v6.*

v6.0-rc1
v6.0-rc2
v6.0-rc3
v6.0-rc4

Database specific

vanir_signatures

[
    {
        "target": {
            "function": "bond_init",
            "file": "drivers/net/bonding/bond_main.c"
        },
        "id": "CVE-2022-48640-94b07457",
        "digest": {
            "function_hash": "202451963455192973191524390815371915977",
            "length": 732.0
        },
        "signature_version": "v1",
        "deprecated": false,
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ec3a6f4ffe556a28f6f5028bf7c4412557e7051b",
        "signature_type": "Function"
    },
    {
        "target": {
            "file": "drivers/net/bonding/bond_main.c"
        },
        "id": "CVE-2022-48640-b59af418",
        "digest": {
            "line_hashes": [
                "319687223426214287517811314757460228627",
                "287665494390398023212010566172876701163",
                "139632994119622979090315083475864468446",
                "238392971954028878649355094603984241508",
                "189722998966565319525703399686878314506",
                "173272408829407245274237343490184532631",
                "231715328458789889528681055497553318987",
                "233422675392717366959735278118503361454",
                "55863792808458144819417090658078988236",
                "45865330779851375193607420648097611536",
                "138431657391295322014958289515817893122",
                "175457756359498327223376301874889542530",
                "213531716153443363662957291999680736132",
                "93873108841939804462095403397159164591"
            ],
            "threshold": 0.9
        },
        "signature_version": "v1",
        "deprecated": false,
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ec3a6f4ffe556a28f6f5028bf7c4412557e7051b",
        "signature_type": "Line"
    },
    {
        "target": {
            "function": "bond_open",
            "file": "drivers/net/bonding/bond_main.c"
        },
        "id": "CVE-2022-48640-d976db58",
        "digest": {
            "function_hash": "261457087062000819421758279036828674504",
            "length": 1139.0
        },
        "signature_version": "v1",
        "deprecated": false,
        "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ec3a6f4ffe556a28f6f5028bf7c4412557e7051b",
        "signature_type": "Function"
    }
]

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.14.0
Fixed
5.15.71
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
5.19.12