Re: Samba Remote Zero-Day Exploit

From: Dan Kaminsky <>
To: Stefan Kanthak <>
Cc: <> <>,<> <>,<> <>,<> <>
Subject: Re: Samba Remote Zero-Day Exploit

You need admin rights to create junctions. At that point, path  
constraints aren't relevant, just psexec and get not only arbitrary  
path but arbitrary code.

The fix is to do what everybody with a directory traversal bug has to  
do, block out of path relative directories. In this specific case,  
prevent the creation of symlinks where the target is out of the SMB  
share's range. (Still allow navigation to such symlinks if one exists,  

On Feb 6, 2010, at 8:21 AM, "Stefan Kanthak" <>  

> Dan Kaminsky wrote:
> [...]
>> (On a side note, you're not going to see this sort of symlink stuff  
>> on
>> Windows,
> What exactly do you mean?
> Traversing symlinks on the server/share, or creation of "wide"  
> symlinks
> by the client on the server/share?
> Since Windows 2000 NTFS supports "junctions", which pretty much  
> resemble
> Unix symlinks, but only for directories.
> See <>
> On the server, create a junction in your share and let it point to an
> arbitrary local directory outside the share, and clients connected to
> that share can enter the junction and access the "linked" directory.
> If you have write access to the share from the client you can create
> a "wide" junction there too, just as the OP showed with smbclient/ 
> samba.
>> and Samba is supposed to match Windows semantics in general.
> Except a mapping of directory symlinks to junctions for example.-(
> Stefan

Copyright © 1995-2020 All rights reserved.