Messages in this thread | | | Date | Sat, 13 May 2006 14:45:26 +0200 | From | Willy Tarreau <> | Subject | Re: Executable shell scripts |
| |
On Sat, May 13, 2006 at 09:37:45PM +1000, Neil Brown wrote: > On Saturday May 13, stesmi@stesmi.com wrote: > > > > > > Every Unix I've ever seen works this way. It'd be nice to have > > > unreadable executable scripts, but no one's ever done it. > > > > The solution would be to either stick bash in the kernel (YUCK!) > > or to have the kernel basically copy the read-only script to /tmp > > or somewhere else, set permissions to sane values and > > /bin/sh /tmp/foo.a12345. > > ... or open the script file (which there kernel has to do anyway), > attach it to some unused fd (e.g. fd3) and pass "/dev/fd/3" to the > interpreter rather than "/the/shell/script". > > Then the interpreter doesn't need to be able to open the file for > read.
Not exactly, because people who would like to set their scripts to 111 will also set the shell to 111, which makes the process non-dumpable, with /dev/fd/3 unreachable (it's a link to /proc/self/fd).
> However it isn't clear that this is really a gain, as the person > running the script could use ptrace or similar to take a copy of the > script, the bypassing the missing 'r' permission. > > Mind you, with ptrace, it isn't too hard to get a copy of a normal > executable that is mode '111'.... > > The whole concept of having files that are executable but not readable > is completely broken - it gives the appearance of protection without > the reality. > > NeilBrown
Cheers, Willy
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |