ACK: [SRU Jammy 0/3] CVE-2023-32252

Manuel Diewald manuel.diewald at canonical.com
Tue Nov 28 10:23:44 UTC 2023


On Tue, Nov 28, 2023 at 01:50:01AM +0300, Cengiz Can wrote:
> [Impact]
> A flaw was found in the Linux kernel's ksmbd, a high-performance in-kernel SMB
> server. The specific flaw exists within the handling of SMB2_LOGOFF commands.
> The issue results from the lack of proper validation of a pointer prior to
> accessing it. An attacker can leverage this vulnerability to create a
> denial-of-service condition on the system.
> 
> [Fix]
> In addition to the fix commit, two other commits were required.
> 
> They required some careful context adjustments.
> 
> [Test case]
> Compile, boot and ksmbd-tools (upstream version) tested.
> 
> Please do note that in our shipped configurations, ksmbd-tools is not provided
> by default. Nor its use is encouraged.
> 
> Plus, our ksmbd-tools package version in Jammy is not in sync with the kernel
> side API so many operations like `ksmbd.addshare` fails to parse cli arguments.
> 
> Test steps:
> ```
> #
> # Get latest ksmbd-tools from upstream
> #
> 
> sudo apt install -y automake libtool-dev libkrb5-dev libkrb5-3 \
>     pkg-config libglib2.0-dev libnl-genl-3-dev libnl-3-dev
> git clone https://github.com/cifsd-team/ksmbd-tools.git
> cd ksmbd-tools/
> ./autogen.sh
> ./configure --with-rundir=/run
> make -j$(nproc)
> sudo make install
> 
> #
> # Test a few, very basic set of operations
> #
> mkdir -p /home/ubuntu/test_share
> sudo ksmbd.adduser --add ubuntu --password=ksmbdtest
> sudo ksmbd.addshare --add \
>                     --option "path = /home/ubuntu/test_share" \
>                     --option 'read only = no' \
>                     --option "force user = ubuntu" \
>                     --option "force group = ubuntu" \
>                     test_share
> sudo modprobe ksmbd
> sudo ksmbd.mountd
> sudo mount -o username=ubuntu,password=ksmbdtest //127.0.0.1/test_share /mnt
> echo -n ABC123 | tee /home/ubuntu/test_share/data
> test "$(cat /mnt/data)" = "ABC123" && echo "OK" || echo "FAIL"
> cp /home/ubuntu/test_share/{data,data2}
> sudo rm /mnt/data
> mv /home/ubuntu/test_share/{data2,data3}
> test "$(cat /mnt/data3)" = "ABC123" && echo "OK" || echo "FAIL"
> sudo ksmbd.control --shutdown
> sudo ksmbd.addshare --delete test_share
> sudo ksmbd.adduser --delete ubuntu
> sudo umount /mnt
> sudo modprobe -r ksmbd
> ```
> 
> [Where things could go wrong]
> Since the ksmbd is still experimental, lots of things can go wrong.
> 
> Dawei Li (1):
>   ksmbd: Implements sess->ksmbd_chann_list as xarray
> 
> Namjae Jeon (1):
>   ksmbd: fix racy issue from session setup and logoff
> 
> Yufan Chen (1):
>   ksmbd: add smb-direct shutdown
> 
>  fs/ksmbd/connection.c        |  23 +++++---
>  fs/ksmbd/connection.h        |  40 ++++++++------
>  fs/ksmbd/mgmt/user_session.c |  62 +++++++++------------
>  fs/ksmbd/mgmt/user_session.h |   4 +-
>  fs/ksmbd/server.c            |   3 +-
>  fs/ksmbd/smb2pdu.c           | 103 +++++++++++++++++------------------
>  fs/ksmbd/transport_rdma.c    |  10 ++++
>  fs/ksmbd/transport_tcp.c     |   2 +-
>  8 files changed, 127 insertions(+), 120 deletions(-)
> 
> -- 
> 2.40.1
> 
> 
> -- 
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team

Acked-by: Manuel Diewald <manuel.diewald at canonical.com>

-- 
 Manuel



More information about the kernel-team mailing list