From nobody Fri Jun 28 17:04:49 2024 X-Original-To: bugs@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4W9hcx61Ppz5NvH8 for ; Fri, 28 Jun 2024 17:04:49 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4W9hcx1XQfz4fpY for ; Fri, 28 Jun 2024 17:04:49 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1719594289; a=rsa-sha256; cv=none; b=jnhrEpncUlzLYkFjQOOdfTlggLdWahNaZCpE0ot3rboDhisGSHfzNG21GXD4jQCLd0AUBc r6smGeQ3pFPg3od0kJ308lMGu1p2xz4Y1conNB8k6maOyxaNawgOcHpOGjJx8Z4bEuTrVO kA/wNnfxjxakNQQ0FHxeluLCpK7I64xcqWl6aSleyrveYq6JtgkfO3Eirm4VAX5W/NYf2r V2w78FsGYbX2LYQ0mzP7w+oxwugjk8+Ng1B+aZQJhX85E0+TnNvCc/FAiZufFR7Afd2QbY OyLZwLW8FuraAmD1VBikDeepwftmM2WTGOK0oTPMgV75qBtliKYIgYpRxQDhSA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1719594289; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JAYQAJFIu2yW2cx6i2cRVUyyXUn/gnEr3Jyi1CGHwOQ=; b=P4U9UjfSZRrPdC7r/bXg4djPEAJpstWv/U8UVR6eUclVRnXAgKHRiQcBgA/mL9xOygrAeU O39X0MIWAq2sNcZx2awYClea6Q7XeNm8qCRfxMBEknDxG9jB9Q4KlyZ2HKbOfKMVfPBdrZ HcawvemP53PB6OIkOlWMrdxqP7/+pX9BAgoWToHU0F8+nsSM2kEb4xQA3GU6h6gTiX+3JQ AOFEl+TiDCQUYpBOC2avNw2QNFnA0QZZHbkQ8qJfbFNpEA61kzOnTcchUT6loMwoPBoaac CPHzoz1H8pPMuiQnndaYe11s1AdzolklQ50k0DkN/oYHwgftaXbSWuKAnrNNLA== Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4W9hcx17mqz13jt for ; Fri, 28 Jun 2024 17:04:49 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 45SH4nsU020809 for ; Fri, 28 Jun 2024 17:04:49 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 45SH4nSi020808 for bugs@FreeBSD.org; Fri, 28 Jun 2024 17:04:49 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 280039] bluetooth socket security filter incomplete initialization Date: Fri, 28 Jun 2024 17:04:49 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: kern X-Bugzilla-Version: CURRENT X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: rlibby@freebsd.org X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: bugs@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated List-Id: Bug reports List-Archive: https://lists.freebsd.org/archives/freebsd-bugs List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-bugs@FreeBSD.org MIME-Version: 1.0 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D280039 Bug ID: 280039 Summary: bluetooth socket security filter incomplete initialization Product: Base System Version: CURRENT Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: kern Assignee: bugs@FreeBSD.org Reporter: rlibby@freebsd.org During buildkernel with gcc13 on amd64, gcc issues this warning: In file included from /usr/src/freebsd/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c:36: /usr/src/freebsd/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c: In function 'ng_btsocket_hci_raw_init': /usr/src/freebsd/sys/sys/systm.h:282:33: warning: 'memset' used with length equal to number of elements without multiplication by element size [-Wmemset-elt-size] 282 | #define memset(buf, c, len) __builtin_memset((buf), (c), (len)) | ^~~~~~~~~~~~~~~~ /usr/src/freebsd/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c:810:9: note: in expansion of macro 'memset' 810 | memset(&ng_btsocket_hci_raw_sec_filter->events, 0xff, | ^~~~~~ This appears to be a genuine bug in initialization of the bluetooth socket events security filter. https://cgit.freebsd.org/src/tree/sys/netgraph/bluetooth/socket/ng_btsocket= _hci_raw.c?id=3D7f7b4926a779845116913c85ecbb10527daeab02#n801 /* * XXX How paranoid can we get?=20 * * Initialize security filter. If bit is set in the mask then * unprivileged socket is allowed to send (receive) this command * (event). */ /* Enable all events */ memset(&ng_btsocket_hci_raw_sec_filter->events, 0xff, sizeof(ng_btsocket_hci_raw_sec_filter->events)/ sizeof(ng_btsocket_hci_raw_sec_filter->events[0])); /* Disable some critical events */ f =3D ng_btsocket_hci_raw_sec_filter->events; bit_clear(f, NG_HCI_EVENT_RETURN_LINK_KEYS - 1); bit_clear(f, NG_HCI_EVENT_LINK_KEY_NOTIFICATION - 1); bit_clear(f, NG_HCI_EVENT_VENDOR - 1); The effect of the obvious fix to actually set all bits to 1 would be to permit additional events on unprivileged sockets. It's unclear if this is the desired policy. Someone knowledgeable should take a look. Additionally perhaps this initialization ought to be reversed to use default deny with explicit allows. I posted a phabricator review that naively follows the apparent intent of the code: https://reviews.freebsd.org/D45707 --=20 You are receiving this mail because: You are the assignee for the bug.=