mirror of
https://github.com/samba-team/samba.git
synced 2025-12-17 04:23:50 +03:00
CVE-2025-10230: s4/tests: check that wins hook sanitizes names
An smb.conf can contain a 'wins hook' parameter, which names a script
to run when a WINS name is changed. The man page says
The second argument is the NetBIOS name. If the name is not a
legal name then the wins hook is not called. Legal names contain
only letters, digits, hyphens, underscores and periods.
but it turns out the legality check is not performed if the WINS
server in question is the source4 nbt one. It is not expected that
people will run this server, but they can. This is bad because the
name is passed unescaped into a shell command line, allowing command
injection.
For this test we don't care whether the WINS server is returning an
error code, just whether it is running the wins hook. The tests show
it often runs the hook it shouldn't, though some characters are
incidentally blocked because the name has to fit in a DN before it
gets to the hook, and DNs have a few syntactic restrictions (e.g.,
blocking '<', '>', and ';').
The source3 WINS server that is used by Samba when not run as a DC is
not affected and not here tested.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15903
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
This commit is contained in:
committed by
Douglas Bagnall
parent
2af8904b3b
commit
90b01ac902
@@ -73,6 +73,7 @@ EXCLUDE_USAGE = {
|
||||
'lib/ldb/tests/python/api.py',
|
||||
'source4/selftest/tests.py',
|
||||
'buildtools/bin/waf',
|
||||
'testprogs/blackbox/wins_hook_test',
|
||||
'selftest/tap2subunit',
|
||||
'script/show_test_time',
|
||||
'source4/scripting/bin/subunitrun',
|
||||
@@ -89,6 +90,7 @@ EXCLUDE_HELP = {
|
||||
'selftest/tap2subunit',
|
||||
'wintest/test-s3.py',
|
||||
'wintest/test-s4-howto.py',
|
||||
'testprogs/blackbox/wins_hook_test',
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user