lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241028110340.29911-1-pali@kernel.org>
Date: Mon, 28 Oct 2024 12:03:35 +0100
From: Pali Rohár <pali@...nel.org>
To: Steve French <sfrench@...ba.org>,
	Paulo Alcantara <pc@...guebit.com>,
	Ronnie Sahlberg <ronniesahlberg@...il.com>
Cc: linux-cifs@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: [PATCH 0/5] cifs: Fixes for SMB1 non-UNICODE 8-bit mode

SMB1 protocol supports non-UNICODE (8-bit OEM character set) and
UNICODE (UTF-16) modes. Linux SMB1 client implements both of them but
there are few bugs in processing non-UNICODE mode.

This patch series add a new mount option -o nounicode to disable UNICODE
mode and force usage of non-UNICODE (8-bit OEM character set) mode. This
allows to test non-UNICODE code path against modern/recent SMB servers
which implements and prefer UNICODE mode.

And this patch series fixes SMB1 session setup and reading symlinks when
UNICODE mode is not active.

Tested against Windows Server 2022 SMB1 server and older Samba SMB1
server.

Pali Rohár (5):
  cifs: Add new mount option -o nounicode to disable SMB1 UNICODE mode
  cifs: Fix encoding of SMB1 Session Setup Kerberos Request in
    non-UNICODE mode
  cifs: Add support for SMB1 Session Setup NTLMSSP Request in
    non-UNICODE mode
  cifs: Fix parsing reparse point with native symlink in SMB1
    non-UNICODE session
  cifs: Remove unicode parameter from parse_reparse_point() function

 fs/smb/client/cifsfs.c     |  4 ++
 fs/smb/client/cifsglob.h   |  2 +
 fs/smb/client/cifsproto.h  |  2 +-
 fs/smb/client/cifssmb.c    |  5 ++-
 fs/smb/client/connect.c    | 32 +++++++++++++--
 fs/smb/client/fs_context.c | 11 ++++++
 fs/smb/client/fs_context.h |  2 +
 fs/smb/client/reparse.c    | 25 ++++++------
 fs/smb/client/sess.c       | 81 ++++++++++++++++++++++++--------------
 fs/smb/client/smb1ops.c    |  4 +-
 fs/smb/client/smb2file.c   |  1 -
 fs/smb/client/smb2proto.h  |  2 +-
 12 files changed, 118 insertions(+), 53 deletions(-)

-- 
2.20.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ