* [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries @ 2006-04-21 9:56 Makan Pourzandi 2006-04-21 16:12 ` Stephen Smalley 2006-04-23 12:18 ` Arjan van de Ven 0 siblings, 2 replies; 9+ messages in thread From: Makan Pourzandi @ 2006-04-21 9:56 UTC (permalink / raw) To: linux-kernel, linux-security-module Cc: Serue Hallyen, Axelle Apvrille, 'disec-devel@lists.sourceforge.net' Hi, Digsig development team would like to announce the release 1.5 of digsig. This kernel module helps system administrators control Executable and Linkable Format (ELF) binary execution and library loading based on the presence of a valid digital signature. The main functionality is to help system administrators distinguish applications he/she trusts (and therefore signs) from viruses, worms (and other nuisances). It is based on the Linux Security Module hooks. The code is GPL and available from: http://sourceforge.net/projects/disec/, download digsig-1.5. For more documentation, please refer to disec.sourcefrge.net. We hope that it'll be useful to you. All bug reports and feature requests or general feedback are welcome (please CC me and disec-devel@lists.sourceforge.net in your answer or feedback to the mailing list). Regards, Makan Pourzandi -- Makan Pourzandi, Open Systems Lab Ericsson Research, Montreal, Canada *This email does not represent or express the opinions of Ericsson Inc.* ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-21 9:56 [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries Makan Pourzandi @ 2006-04-21 16:12 ` Stephen Smalley 2006-04-21 16:13 ` [Disec-devel] " Axelle Apvrille 2006-04-23 12:18 ` Arjan van de Ven 1 sibling, 1 reply; 9+ messages in thread From: Stephen Smalley @ 2006-04-21 16:12 UTC (permalink / raw) To: Makan Pourzandi Cc: linux-kernel, linux-security-module, Serue Hallyen, Axelle Apvrille, 'disec-devel@lists.sourceforge.net' On Fri, 2006-04-21 at 09:56 +0000, Makan Pourzandi wrote: > Hi, > > Digsig development team would like to announce the release 1.5 of digsig. > > This kernel module helps system administrators control Executable and > Linkable Format (ELF) binary execution and library loading based on > the presence of a valid digital signature. The main functionality is > to help system administrators distinguish applications he/she trusts > (and therefore signs) from viruses, worms (and other nuisances). It is > based on the Linux Security Module hooks. > > The code is GPL and available from: > http://sourceforge.net/projects/disec/, download digsig-1.5. For > more documentation, please refer to disec.sourcefrge.net. > > We hope that it'll be useful to you. > > All bug reports and feature requests or general feedback are welcome > (please CC me and disec-devel@lists.sourceforge.net in your answer or > feedback to the mailing list). That URL doesn't seem to be working at present. You should submit your security module for mainline; otherwise, LSM might be removed. See http://marc.theaimsgroup.com/?l=linux-security-module&m=114530167302454&w=2 Also discussed on lwn.net. -- Stephen Smalley National Security Agency ^ permalink raw reply [flat|nested] 9+ messages in thread
* RE: [Disec-devel] Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-21 16:12 ` Stephen Smalley @ 2006-04-21 16:13 ` Axelle Apvrille 2006-04-21 16:29 ` Stephen Smalley 0 siblings, 1 reply; 9+ messages in thread From: Axelle Apvrille @ 2006-04-21 16:13 UTC (permalink / raw) To: Stephen Smalley, Makan Pourzandi Cc: linux-kernel, linux-security-module, Serue Hallyn, 'disec-devel@lists.sourceforge.net' > That URL doesn't seem to be working at present. Probably a temporary outage ? anyway, it's working now... http://sourceforge.net/projects/disec/ or http://disec.sourceforge.net/ both work. Regards, Axelle. ___________________________________________________________________________ Faites de Yahoo! votre page d'accueil sur le web pour retrouver directement vos services préférés : vérifiez vos nouveaux mails, lancez vos recherches et suivez l'actualité en temps réel. Rendez-vous sur http://fr.yahoo.com/set ^ permalink raw reply [flat|nested] 9+ messages in thread
* RE: [Disec-devel] Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-21 16:13 ` [Disec-devel] " Axelle Apvrille @ 2006-04-21 16:29 ` Stephen Smalley 0 siblings, 0 replies; 9+ messages in thread From: Stephen Smalley @ 2006-04-21 16:29 UTC (permalink / raw) To: Axelle Apvrille Cc: Makan Pourzandi, linux-kernel, linux-security-module, Serue Hallyn, 'disec-devel@lists.sourceforge.net' On Fri, 2006-04-21 at 18:13 +0200, Axelle Apvrille wrote: > > That URL doesn't seem to be working at present. > > Probably a temporary outage ? anyway, it's working > now... > > http://sourceforge.net/projects/disec/ > or http://disec.sourceforge.net/ > > both work. Yes, seems to be up now. But you do need to submit your module if you want to make a case that LSM should be retained in mainline. Even if LSM stays, it could be altered in the future to help counter misuse of the interface, and such changes could break your module if you aren't in the tree. Not to mention that out-of-tree modules don't fair well in general. -- Stephen Smalley National Security Agency ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-21 9:56 [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries Makan Pourzandi 2006-04-21 16:12 ` Stephen Smalley @ 2006-04-23 12:18 ` Arjan van de Ven 2006-04-23 16:38 ` Ulrich Drepper 1 sibling, 1 reply; 9+ messages in thread From: Arjan van de Ven @ 2006-04-23 12:18 UTC (permalink / raw) To: Makan Pourzandi Cc: linux-kernel, linux-security-module, Serue Hallyen, Axelle Apvrille, 'disec-devel@lists.sourceforge.net' On Fri, 2006-04-21 at 09:56 +0000, Makan Pourzandi wrote: > Hi, > > Digsig development team would like to announce the release 1.5 of digsig. > > This kernel module helps system administrators control Executable and > Linkable Format (ELF) binary execution and library loading based on > the presence of a valid digital signature. The main functionality is > to help system administrators distinguish applications he/she trusts > (and therefore signs) from viruses, worms (and other nuisances). It is > based on the Linux Security Module hooks. does this also prevent people writing their own elf loader in a bit of perl and just mmap the code ? ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-23 12:18 ` Arjan van de Ven @ 2006-04-23 16:38 ` Ulrich Drepper 2006-04-24 20:24 ` Nix 0 siblings, 1 reply; 9+ messages in thread From: Ulrich Drepper @ 2006-04-23 16:38 UTC (permalink / raw) To: Arjan van de Ven Cc: Makan Pourzandi, linux-kernel, linux-security-module, Serue Hallyen, Axelle Apvrille, disec-devel@lists.sourceforge.net On 4/23/06, Arjan van de Ven <arjan@infradead.org> wrote: > does this also prevent people writing their own elf loader in a bit of > perl and just mmap the code ? You will never get 100% protection from a mechanism like signed binaries. What you can get in collaboration with other protections like SELinux is another layer of security. That's good IMO. Not being able to slide in modified and substituted binaries which then would be marked to get certain privileges is a plus. But preventing every type of code loading or generation at userlevel cannot be prevented this way. Just look at the code proposed to deal with execmem problems in http://people.redhat.com/drepper/selinux-mem.html. This is with all the SELinux mechanisms in place and activated. You can prevent by using the noexec mount option for every writable filesystem. But this is so far not possible for ordinary machines. There are widely used programs out there which need to dynamically generate code. Signed binaries are therefore a complete solution only for a very limited number of situation. For embedded systems I see this but here we also have the "Tivo problem" where devices are built on top of Linux and people are still prevented from extending/modifying them. Beside that there is potentially some locked down machines with limited functionality which can use it (e.g., DMZ servers, but they mustn't use Java etc). So, I do not think that signed binaries have a big upside. And they have a potential big downside. The better approach to ensure that SELinux, for instance, doesn't change the labels for incorrect binaries is to integrate restorecon etc with the package manager and have functionality in the package manager to recognize incorrect binaries. This might again mean signed binaries although I imagine the current signed hash values work fine, too. Although we might want to go from MD5 to SHA256. I have been working on signed binaries at some point myself but abandoned it after realizing that it realistically only can be misused. If I'd have a vote I'd keep this stuff out of the kernel. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-23 16:38 ` Ulrich Drepper @ 2006-04-24 20:24 ` Nix 2006-04-25 20:30 ` Serge E. Hallyn 2006-04-28 15:26 ` Ulrich Drepper 0 siblings, 2 replies; 9+ messages in thread From: Nix @ 2006-04-24 20:24 UTC (permalink / raw) To: Ulrich Drepper Cc: Arjan van de Ven, Makan Pourzandi, linux-kernel, linux-security-module, Serue Hallyen, Axelle Apvrille, disec-devel@lists.sourceforge.net On 23 Apr 2006, Ulrich Drepper prattled cheerily: > On 4/23/06, Arjan van de Ven <arjan@infradead.org> wrote: >> does this also prevent people writing their own elf loader in a bit of >> perl and just mmap the code ? > > You will never get 100% protection from a mechanism like signed > binaries. What you can get in collaboration with other protections > like SELinux is another layer of security. That's good IMO. Not > being able to slide in modified and substituted binaries which then > would be marked to get certain privileges is a plus. Of course in order to use it in conjunction with SELinux right now you need LSM stacking, which is a nest of dragons in itself (if not used very carefully stacking can weaken security rather than strengthening it...) > But preventing every type of code loading or generation at userlevel > cannot be prevented this way. Oh, indeed not. It's just a stopgap that blocks some (large) percentage of script kiddy attacks that involve downloading binaries and then executing them, or even compiling them on the spot (not that those are as common these days). > http://people.redhat.com/drepper/selinux-mem.html. This is with all > the SELinux mechanisms in place and activated. You can prevent by > using the noexec mount option for every writable filesystem. But this > is so far not possible for ordinary machines. There are widely used > programs out there which need to dynamically generate code. Yeah. I'll admit I've found signed binaries principally useful on stripped-down firewalls and firewall UML instances. These boxes don't tend to run, say, CLISP or SBCL or OpenOffice (at least if they do the firewall maintainer needs shooting). > Signed binaries are therefore a complete solution only for a very > limited number of situation. `Stripped-down firewalls' on its own is a big niche. Combine it with SELinux, exec-shield, FORTIFY_SOURCE, -fstack-protector and, say, a COWed filesystem read off a CD and reset with every boot, and you start to get a bit less insecure than you would otherwise be. > For embedded systems I see this but here > we also have the "Tivo problem" where devices are built on top of > Linux and people are still prevented from extending/modifying them. Yeah, that's nasty: but the inverse face is that, for instance, nobody can compile a new binary on my firewall without access to a private key kept on a CD which is not normally in the drive. Replace `not in the drive' with `at a manufacturer's site locked securely away from the user' and suddenly this security benefit becomes an attack on freedom. But that doesn't mean that there's anything wrong with it *as a security benefit*: I haven't tivoized myself entirely *because* I have access to that key, but there's no way any software can possibly tell that. > Beside that there is potentially some locked down machines with > limited functionality which can use it (e.g., DMZ servers, but they > mustn't use Java etc). Yes indeed. > So, I do not think that signed binaries have a big upside. And they > have a potential big downside. It's another hurdle for the bad guys to leap, and many will fall at the wayside. > I have been working on signed binaries at some point myself but > abandoned it after realizing that it realistically only can be > misused. If I'd have a vote I'd keep this stuff out of the kernel. Well, I'm using it, but I'd agree that the potential for misuse by the tivos of this world is high. I don't know if it should go into mainline, but let's not make it intentionally hard for it to exist out-of-tree. It's useful to help professional paranoids sleep at night. :) (But, well, since the code *exists*, the tivos of this world can *already* tivoize. I can't see what keeping it out would do, really. I suppose it would increase the barrier for a would-be tivoizer.) -- `On a scale of 1-10, X's "brokenness rating" is 1.1, but that's only because bringing Windows into the picture rescaled "brokenness" by a factor of 10.' --- Peter da Silva ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-24 20:24 ` Nix @ 2006-04-25 20:30 ` Serge E. Hallyn 2006-04-28 15:26 ` Ulrich Drepper 1 sibling, 0 replies; 9+ messages in thread From: Serge E. Hallyn @ 2006-04-25 20:30 UTC (permalink / raw) To: Nix Cc: Ulrich Drepper, Arjan van de Ven, Makan Pourzandi, linux-kernel, linux-security-module, Serue Hallyen, Axelle Apvrille, disec-devel@lists.sourceforge.net Quoting Nix (nix@esperi.org.uk): > On 23 Apr 2006, Ulrich Drepper prattled cheerily: > > On 4/23/06, Arjan van de Ven <arjan@infradead.org> wrote: > >> does this also prevent people writing their own elf loader in a bit of > >> perl and just mmap the code ? > > > > You will never get 100% protection from a mechanism like signed > > binaries. What you can get in collaboration with other protections > > like SELinux is another layer of security. That's good IMO. Not > > being able to slide in modified and substituted binaries which then > > would be marked to get certain privileges is a plus. > > Of course in order to use it in conjunction with SELinux right now you > need LSM stacking, which is a nest of dragons in itself (if not used > very carefully stacking can weaken security rather than strengthening > it...) Perhaps. On the other hand, combining selinux with digsig you get: 1. selinux integrity controls on crucial digsig files, which digsig does not (and should not) protect itself 2. digsig controls over selinux entry types. So now you can protect domain transitions with small, verifiable entry points which are then signed to boot. > `Stripped-down firewalls' on its own is a big niche. Every home should have one. > Combine it with SELinux, exec-shield, FORTIFY_SOURCE, -fstack-protector > and, say, a COWed filesystem read off a CD and reset with every boot, > and you start to get a bit less insecure than you would otherwise be. Sounds like a good basis for a new tiny distro. -serge ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries 2006-04-24 20:24 ` Nix 2006-04-25 20:30 ` Serge E. Hallyn @ 2006-04-28 15:26 ` Ulrich Drepper 1 sibling, 0 replies; 9+ messages in thread From: Ulrich Drepper @ 2006-04-28 15:26 UTC (permalink / raw) To: Nix Cc: Arjan van de Ven, Makan Pourzandi, linux-kernel, linux-security-module, Serue Hallyen, Axelle Apvrille, disec-devel@lists.sourceforge.net On 4/24/06, Nix <nix@esperi.org.uk> wrote: > > But preventing every type of code loading or generation at userlevel > > cannot be prevented this way. > > Oh, indeed not. It's just a stopgap that blocks some (large) percentage > of script kiddy attacks that involve downloading binaries and then > executing them, or even compiling them on the spot (not that those are > as common these days). Script kiddies don't write the exploit code themselves. And for those who write the code it is no problem to circumvent the signature testing. > Yeah. I'll admit I've found signed binaries principally useful on > stripped-down firewalls and firewall UML instances. These boxes don't > tend to run, say, CLISP or SBCL or OpenOffice (at least if they do the > firewall maintainer needs shooting). But they have Perl, Python, etc. Those are sufficient. Heck, I can cause havor with bash. > Combine it with SELinux, exec-shield, FORTIFY_SOURCE, -fstack-protector > and, say, a COWed filesystem read off a CD and reset with every boot, > and you start to get a bit less insecure than you would otherwise be. Take signed binaries off of this list and you don't lose anything. > It's another hurdle for the bad guys to leap, and many will fall at the > wayside. It is a little one-time effort. This approach differs in that it simply shifts the way binaries are introduced. I can write a dynamic loader in Perl. and after that I don't load ELF binaries through the kernel ever again. If such a loader doesn't exist today it could very well exist in a few months and after that this "protection" is completely useless. Every script kiddy will have it. This is the big difference to techniques like randomization which might be circumventent with a certain probability but never fully can be removed. Stacking those kind of protections is a good idea because, if they are not fully correlated, the stacking provides additional protection. Signed binaries do not. ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2006-04-28 15:26 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2006-04-21 9:56 [ANNOUNCE] Release Digsig 1.5: kernel module for run-time authentication of binaries Makan Pourzandi 2006-04-21 16:12 ` Stephen Smalley 2006-04-21 16:13 ` [Disec-devel] " Axelle Apvrille 2006-04-21 16:29 ` Stephen Smalley 2006-04-23 12:18 ` Arjan van de Ven 2006-04-23 16:38 ` Ulrich Drepper 2006-04-24 20:24 ` Nix 2006-04-25 20:30 ` Serge E. Hallyn 2006-04-28 15:26 ` Ulrich Drepper
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox