Finally managed to create a jailed SFTP server, but how secure?

Corinna Vinschen
Wed Dec 3 12:02:00 GMT 2008

On Dec  3 11:38, Julio Emanuel wrote:
> On Wed, Dec 3, 2008 at 11:01 AM, Brian Dessent <> wrote:
> > Julio Emanuel wrote:
> >
> >> 4) Only commands compiled for Cygwin, AND accessing the file system
> >> exclusively through the Cygwin POSIX interfaces can (and will) obey
> >> the chroot settings;
> >
> > This is not valid reasoning, as Eric Blake already pointed out you can
> > still access files outside of a chroot even if you're still going
> > through the Cygwin DLL by using Win32 style pathnames since Cygwin
> > passes those through untouched.
> Aha! So this is the tiny bit that was missing! What you are saying is
> that the Cygwin DLL does not honor the chroot if the path is in WIN32
> format? But why is that? It shouldn't honor the chroot all the time?
> I mean, this sounds like the "right thing to do"(tm), if Cygwin is
> supposed to fully support chroot environments...

The final, definitive answer which I already gave last month, and
also already years ago.  It's all in the archives.

It's *impossible* for any kind of Windows user space environment, be it
called Cygwin or whatever, to restrict applications to a chroot jail.

The reason is that the underlying OS, Windows, does not support this
concept.  We can restrict application using the Cygwin open call to the
jail, but every application is free to call the Win32 call CreateFile or
the native NT call NtOpenFile directly, thus circumventing any effort
made in the Cygwin DLL easily.

So, that's it.

Chroot looks interesting on the surface, but implementing it on Windows
is eventually just a hoax due to missing OS support.  Don't use it.  It
provides a false sense of security.

Actually it's one of my Cygwin inventions I'd rather forget about.


Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list