linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon  access scanning
@ 2008-08-15 12:22 Rob Meijer
  2008-08-15 13:27 ` Peter Dolding
  2008-08-15 14:18 ` Alan Cox
  0 siblings, 2 replies; 65+ messages in thread
From: Rob Meijer @ 2008-08-15 12:22 UTC (permalink / raw)
  To: Alan Cox
  Cc: rmeijer, capibara, david, Eric Paris, Theodore Tso, Rik van Riel,
	davecb, linux-security-module, Adrian Bunk, Mihai Don??u,
	linux-kernel, malware-list, Pavel Machek, Arjan van de Ven

On Fri, August 15, 2008 13:02, Alan Cox wrote:
>> The package manager approach is interesting in that it marks 'trusted',
>> and is thus permissive rather than restrictive. Maybe it would be
>> possible
>> to extend on this and simply define a set of currently unprivileged
>> access
>> as privileged for untrusted applications. That way you could allow
>> untrusted software to run without risk, even if that untrusted software
>> turns out to be malware. That is, it may be possible to solve the
>> malware
>> problem in a much more fundamental way here by just allowing malware to
>> run without the need to know if it is malware, just by running untrusted
>> software with reduced privileges.
>>
>
> Its called SELinux and SELinux can already do this sort of stuff,
> including things like "only rpm may create files you are permitted to
> execute"

This "permitted to execute" is what I feel is the wrong aproach with
respect to malware. If you simply allow everything to 'execute', I think
that untrusted programs may still be used for usefull things, but without
the potential do do malice. If you start from the point where everything
both trusted and untrusted  is permitted to be executed, you could make it
the job of SELinux or any other LSM to make untrusted code run without
doing malice, but with the possibility to still run and do usefull non
malicious  stuff. This might require some aditional hooks in LSM though I
could imagine.

To take this one step further, it might be usefull to see what kernel/LSM
changes would be needed to allow SELinux and/or possibly better yet,
AppArmor, to work with some powerbox style UI component in order to both
allow and force untrusted programs to run with least authority and still
do usefull stuff.

I feel the Polaris/Capdesk/Plash approach to untrusted code is much more
prommising than the "don't run" approach used by regular AV products.
Making such an approach integrate with LSM's would IMHO be a much more
fundamental approach to malware.

Rob


^ permalink raw reply	[flat|nested] 65+ messages in thread
* Re: [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon  access scanning
@ 2008-08-17 10:33 Rob Meijer
  2008-08-17 10:46 ` david
  0 siblings, 1 reply; 65+ messages in thread
From: Rob Meijer @ 2008-08-17 10:33 UTC (permalink / raw)
  To: david
  Cc: Peter Dolding, Theodore Tso, Arjan van de Ven, rmeijer, Alan Cox,
	capibara, Eric Paris, Rik van Riel, davecb,
	linux-security-module, Adrian Bunk, Mihai Don??u, linux-kernel,
	malware-list, Pavel Machek

On Sun, August 17, 2008 10:58, david@lang.hm wrote:
> On Sun, 17 Aug 2008, Peter Dolding wrote:
>> Instead swap across to the shorter white list to process and sort.
>> Quarantining for black list scanning so performance of machine is hit
>> with the least ammount.  Some areas like email, p2p for people using
>> formats that should not contain macros or executable code white list
>> scanning there is all that is needed before either blocking or asking
>> user if black list scanning should be preformed or the file just
>> deleted.  Lets close the door's on these malware writers without hurt
>> end users any more than we have to.  What is the point of running a full
>> black list across a file the user will delete because it was not what
>> they thought it was.
>
> you are arguing with the wrong people here. we are not trying to define
> the future of anti-virus technologies, we are trying to figure out how to
> provide the hooks so that people and companies can go off and do the
> research and experimentation and try different approaches.

Given recent demonstrations that show how easy it apparently is to bypass
blacklist base approaches, providing hooks to allow these blacklist
approaches may I feel be rather futile. Focusing only on hooks for white
list approaches in combination with hooks for least authority approaches
like the powerbox would IMHO seem like a much more reasonable approach
given the current state of things and knowledge concerning the blacklist
technologies. Explicitly adding support for technology that is quickly
becoming obsolete would seem like a waste of time and resources.


Rob




^ permalink raw reply	[flat|nested] 65+ messages in thread
* Re: [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon  access scanning
@ 2008-08-15 10:10 Rob Meijer
  2008-08-15 11:02 ` Alan Cox
  0 siblings, 1 reply; 65+ messages in thread
From: Rob Meijer @ 2008-08-15 10:10 UTC (permalink / raw)
  To: david
  Cc: Eric Paris, Theodore Tso, Rik van Riel, davecb,
	linux-security-module, Adrian Bunk, Mihai Don??u, linux-kernel,
	malware-list, Pavel Machek, Arjan van de Ven

On Fri, August 15, 2008 07:38, david@lang.hm wrote:
> On Thu, 14 Aug 2008, david@lang.hm wrote:
>
>> On Thu, 14 Aug 2008, david@lang.hm wrote:
>>
>>> again, libmalware.so is not referring to any specific body of code,
>>> it's
>>> referring to the concept that the handling of open/mmap/read/etc and
>>> scanning is done via a userspace library rather then by the kernel. if
>>> everyone can agree on that concept then hashing out the details of
>>> _which_
>>> library it gets put in is a smaller detail.
>>
>> one reason to layer scanners is that you could have one that just checks
>> to
>> see if the file was deployed from a OS package, if it was (and still has
>> the
>> same hash as the package manager thinks it should have) it sets a flag
>> that
>> other scanners could look for (if they see it they can skip scanning the
>> file)
>
> actually, instead of trying to have one scanner trust the results of
> another, a better approach would be for libmalware to look for the package
> manager approval and if it finds that it could skip asking the other
> scanners to look at it.

The package manager approach is interesting in that it marks 'trusted',
and is thus permissive rather than restrictive. Maybe it would be possible
to extend on this and simply define a set of currently unprivileged access
as privileged for untrusted applications. That way you could allow
untrusted software to run without risk, even if that untrusted software
turns out to be malware. That is, it may be possible to solve the malware
problem in a much more fundamental way here by just allowing malware to
run without the need to know if it is malware, just by running untrusted
software with reduced privileges.

Rob



^ permalink raw reply	[flat|nested] 65+ messages in thread
* Re: [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon access scanning
@ 2008-08-13 12:56 Pavel Machek
  2008-08-13 13:52 ` tvrtko.ursulin
  0 siblings, 1 reply; 65+ messages in thread
From: Pavel Machek @ 2008-08-13 12:56 UTC (permalink / raw)
  To: Press, Jonathan
  Cc: davecb, Arjan van de Ven, Mihai Don??u, Adrian Bunk,
	tvrtko.ursulin, Greg KH, linux-kernel, linux-security-module,
	malware-list

Hi!


> > Proposed kernel solution did not work -- there still was write
> > vs. read race. You are right that it is not ok for each application to
> > do its own malware scanning, but libmalware.so that handles the
> > scanning seems very reasonable.
> > 
> > And as applications _need_ to be modified for the write vs. read race
> > to be solved, libmalware.so looks like a way forward.
> 
> I am not sure what you are suggesting, and I may have missed the
> libmalware proposal (I don't see any mention of that specific idea in
> any other message).  However, just to be clear...  At no point did we
> suggest that the kernel would do any scanning.  What we have been
> interested in is a mechanism that can allow a scanning application to be
> notified by the kernel of specific i/o events, for those events to be
> blocked by the kernel until a user-space scan is done, and then the
> user-space scan sends back allow or deny, at which point the i/o event
> returns to the caller -- either success or error.  This is the only way
> that malware can be guaranteed of being detected when it is used (for
> local application purposes or for transmission to another platform) or
> created.  

As I said, that does not work. Proposed solution blocked open, while
you'd have to block read() and you still could not handle mmap.
So sorry, no kernel solution can work.

> Also, a solution that requires applications to be modified will not
> work, because there is no way that we would be able to get ALL
> applications on the machines to be modified in the required ways.  If
> ANY applications are not so modified, then you have an unacceptable
> malware hole.  The only solution that really works is one that

So you make sure all apps are modified. Distros are good at that, and
modifications are not that hard.

Plus, proposed solution already has three unacceptable holes:

1) it only catches known signatures

2) write vs. read race mentioned above

3) mmap problem

. Making sure all apps use libmalware.so is trivial compared to
solving 3).

							Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

^ permalink raw reply	[flat|nested] 65+ messages in thread
* Re: [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon access scanning
  2008-08-05 18:38     ` [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon " Press, Jonathan
@ 2008-08-06  0:51 Rik van Riel
  2008-08-06 12:10 ` Press, Jonathan
  1 sibling, 1 reply; 65+ messages in thread
From: Rik van Riel @ 2008-08-06  0:51 UTC (permalink / raw)
  To: Press, Jonathan
  Cc: Greg KH, Arjan van de Ven, Eric Paris, linux-kernel,
	malware-list, linux-security-module

On Tue, 5 Aug 2008 14:38:23 -0400
"Press, Jonathan" <Jonathan.Press@ca.com> wrote:

> However, I will say that while preventing infections from arriving is
> not foolproof, doing a scan-on-close with the option to delete or
> quarantine an infected file goes a long way.

How can you, as a security professional, argue for a security measure
that you know is flawed, when there is a mailing list full of people
willing to help figure out what a working security measure would look
like?

Yes, abandoning some of the old DOS anti-virus security model may
cause work, but surely that will be worth it if it leads to a more
secure system?

-- 
All rights reversed.

^ permalink raw reply	[flat|nested] 65+ messages in thread
* Re: [malware-list] [RFC 0/5] [TALPA] Intro to a linux interfaceforon access scanning
@ 2008-08-05 17:38 Arjan van de Ven
  2008-08-05 18:04 ` Press, Jonathan
  0 siblings, 1 reply; 65+ messages in thread
From: Arjan van de Ven @ 2008-08-05 17:38 UTC (permalink / raw)
  To: Eric Paris
  Cc: Press, Jonathan, Greg KH, linux-kernel, malware-list,
	linux-security-module

On Tue, 05 Aug 2008 13:19:56 -0400
Eric Paris <eparis@redhat.com> wrote:

> If you can outline the design of a better method that meets your needs
> I'd be glad to try to code it.  In your mind how do you see programs
> being able to exclude others while not being a security risk? 


ok so lets be specific.
You are trying to prevent an application from opening a "damaged" file,
or from someone starting a "damaged" file.
You are not trying to prevent anything once you have executed a damaged
file; once you execute one of these for this part it's game over (to
limit the damage other tools like selinux exist, but are outside the
scope of talpa).

So... as long as /sbin/init isn't compromised... intercepting exec and
open (in all variants) is all you need.

And this can be done from userland with the preload: the "workaround"
from the preload assumes you've already executed malicious code, which
is outside of your protection scope.

What am I missing?

-- 
If you want to reach me at my work email, use arjan@linux.intel.com
For development, discussion and tips for power savings, 
visit http://www.lesswatts.org

^ permalink raw reply	[flat|nested] 65+ messages in thread

end of thread, other threads:[~2008-08-19 11:00 UTC | newest]

Thread overview: 65+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-08-15 12:22 [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon access scanning Rob Meijer
2008-08-15 13:27 ` Peter Dolding
2008-08-15 17:31   ` david
2008-08-16  3:57     ` Peter Dolding
2008-08-16  4:09       ` Arjan van de Ven
2008-08-16  5:19         ` Peter Dolding
2008-08-16  9:39           ` Theodore Tso
2008-08-16 11:38             ` Peter Dolding
2008-08-16 15:17               ` Theodore Tso
2008-08-17  7:49                 ` Peter Dolding
2008-08-17  8:58                   ` david
2008-08-18  0:11                     ` Peter Dolding
2008-08-18  0:32                       ` david
2008-08-18  1:20                         ` Peter Dolding
2008-08-18 10:54                       ` douglas.leeder
2008-08-18 13:40                         ` Peter Dolding
2008-08-16  5:35         ` Valdis.Kletnieks
2008-08-16  7:27           ` david
     [not found]         ` <alpine.DEB.1.10.0808152115210.12859@asgard.lang.hm>
2008-08-16  9:28           ` Alan Cox
2008-08-16 10:14             ` david
2008-08-17 21:17       ` David Collier-Brown
2008-08-18  1:33         ` Peter Dolding
2008-08-18  1:44           ` david
2008-08-18  2:33             ` Peter Dolding
2008-08-15 14:18 ` Alan Cox
  -- strict thread matches above, loose matches on Subject: below --
2008-08-17 10:33 Rob Meijer
2008-08-17 10:46 ` david
2008-08-17 21:58   ` Pavel Machek
2008-08-17 22:30     ` david
2008-08-15 10:10 Rob Meijer
2008-08-15 11:02 ` Alan Cox
2008-08-13 12:56 [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon " Pavel Machek
2008-08-13 13:52 ` tvrtko.ursulin
2008-08-14 12:54   ` Pavel Machek
2008-08-14 18:37     ` [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon " Press, Jonathan
2008-08-14 22:39       ` Pavel Machek
2008-08-15  0:00         ` Rik van Riel
2008-08-15  0:43           ` Theodore Tso
2008-08-15  1:02             ` Rik van Riel
2008-08-15  3:00             ` Eric Paris
2008-08-15  5:22               ` david
2008-08-15  5:33                 ` david
2008-08-15  5:38                   ` david
2008-08-17 22:14                 ` Pavel Machek
2008-08-17 22:12               ` Pavel Machek
2008-08-17 22:47                 ` david
2008-08-17 22:58                   ` Pavel Machek
2008-08-17 23:24                     ` david
2008-08-18  0:00                     ` Casey Schaufler
2008-08-18  0:17                       ` david
2008-08-18  0:31                         ` Peter Dolding
2008-08-18  0:39                           ` david
2008-08-18  0:42                         ` Casey Schaufler
2008-08-18  0:07                     ` Rik van Riel
2008-08-19 10:41                       ` Pavel Machek
2008-08-15  8:35             ` Alan Cox
2008-08-15 11:35               ` Theodore Tso
2008-08-17 22:10               ` Pavel Machek
2008-08-06  0:51 [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon " Rik van Riel
2008-08-06 12:10 ` Press, Jonathan
2008-08-06 15:08   ` Theodore Tso
2008-08-06 15:33     ` [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon " Press, Jonathan
2008-08-06 15:46       ` Rik van Riel
2008-08-06 16:12         ` tvrtko.ursulin
2008-08-06 16:25           ` Rik van Riel
2008-08-06 18:06             ` Eric Paris
2008-08-05 17:38 [malware-list] [RFC 0/5] [TALPA] Intro to a linux interfaceforon " Arjan van de Ven
2008-08-05 18:04 ` Press, Jonathan
2008-08-05 18:11   ` Greg KH
2008-08-05 18:38     ` [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon " Press, Jonathan
2008-08-05 18:54       ` Theodore Tso
2008-08-05 20:37         ` [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon " Press, Jonathan
2008-08-05 21:14           ` Greg KH
2008-08-05 20:18       ` [malware-list] [RFC 0/5] [TALPA] Intro to a linuxinterfaceforon " Greg KH
2008-08-05 20:28         ` [malware-list] [RFC 0/5] [TALPA] Intro to alinuxinterfaceforon " Press, Jonathan
2008-08-05 20:51           ` Eric Paris
2008-08-05 21:08             ` Arjan van de Ven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).