mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: douglas.leeder@sophos.com
To: linux-kernel <linux-kernel@vger.kernel.org>,
	linux-security-module@vger.kernel.org,
	malware-list@lists.printk.net
Subject: Re: [malware-list] scanner interface proposal was: [TALPA] Intro to a linux interface for on access scanning
Date: Mon, 18 Aug 2008 11:35:33 +0100	[thread overview]
Message-ID: <20080818103535.2F4861836B2@pmx1.sophos.com> (raw)
In-Reply-To: <20080818101625.85CA12FE876@pmx1.sophos.com>

malware-list-bounces@dmesg.printk.net wrote on 2008-08-18 11:15:21:

> David Lang wrote on 18/08/2008 01:58:40:
> 
> > I really think that we need to avoid trying to have a single 'known 
> good' 
> > flag/generationnrwith the inode.
> > 
> > while that will work for the TALPA use-case of a single anti-virus 
> > scanner, it 
> > can't cope with multiple scanners, and since there are very 
> > different types of 
> > scanners that are interesting (anti-virus and indexing to just name 
> two), and 
> > the fact that some people will want to run more then one anti-virus 
> > program on 
> > a machine, you don't have a 'known good' condition, you have 'known 
good 
> 
> > according to program A/B/C' conditions, and the file should only be 
> > considered 
> > 'good, nothing to do' if it has a full set of flags.
> 
> How does it make sense to have a 'known good' according to 'one-of' 
status 
> while there is a single access point ie. no relationships between access 

> triggers and 'known good' authority points?
> 
> Or in simpler words - A says a file is safe, B says it isn't and in your 

> proposal you store both information. Then a time to access the file 
comes 
> and what do you do, allow or deny?
> 
> Maybe I am missing something but I just don't see how this could work 
and 
> how single 'known good' flag per inode does not work. In the proposed 
> implementation Eric posted we don't have support for multiple scanners 
but 
> it is quite possible to extend it with that. In which case the only 
model 
> that makes sense is that all of them must declare something clean in 
order 
> for it to be marked as clean. More into the implementation details - any 

> of those scanners who wants to revoke it's decision (new malware 
database 
> or whatever) just needs to increment the global counter which will cause 

> all inodes (but on-demand, as they are accessed) to be rescanned.

I think the case of interest is an AV scanner + an indexing scanner.

The indexing scanner marks a file when it changes, and doesn't want to 
scan it 
until the file changes.

The AV scanner wants to mark as unclean the file every time the AV data is 
updated.

Of course the only reason you need separate caches is for performance - 
when the AV 
cache marker is updated, and the file is accessed you don't want to 
trigger the 
indexing scanner.

I guess you could have similar effects for two AV scanners:
AV1 is a white-list scanner
AV2 is a black-list scanner

AV1 only scans on execution, and only changes its mind when the user 
explicitly allows an executable
AV2 is updated hourly, and can change its mind after any update

With a single cache marker: AV1 has to scan each execution after every 
hourly update of AV2

With multiple cache markers: AV1 only scans new executables, or all 
executions after an explicit allow

-- 
Douglas Leeder

Sophos Plc, The Pentagon, Abingdon Science Park, Abingdon,
OX14 3YP, United Kingdom.

Company Reg No 2096520. VAT Reg No GB 348 3873 20.


       reply	other threads:[~2008-08-18 10:35 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20080818101625.85CA12FE876@pmx1.sophos.com>
2008-08-18 10:35 ` douglas.leeder [this message]
2008-08-18 12:13   ` david
     [not found] <alpine.DEB.1.10.0808180444390.12859@asgard.lang.hm>
     [not found] ` <20080818131628.1C2A22FE82F@pmx1.sophos.com>
2008-08-18 14:25   ` Theodore Tso
2008-08-18 15:31     ` tvrtko.ursulin
2008-08-18 15:31       ` Alan Cox
2008-08-18 13:42         ` David Collier-Brown
2008-08-18 17:53           ` Alan Cox
2008-08-18 18:13           ` david
2008-08-18 15:58         ` tvrtko.ursulin
2008-08-18 17:13           ` david
2008-08-18 16:15       ` Eric Paris
2008-08-18 16:15         ` Alan Cox
2008-08-18 16:54           ` douglas.leeder
2008-08-18 16:40             ` Alan Cox
2008-08-18 17:28           ` Eric Paris
2008-08-18 17:25             ` Alan Cox
2008-08-18 17:54               ` Eric Paris
2008-08-18 18:30                 ` Eric Paris
2008-08-18 18:51                   ` Alan Cox
2008-08-18 18:35                 ` Jan Harkes
2008-08-18 18:46                   ` Eric Paris
2008-08-18 19:04                     ` david
2008-08-18 19:32                     ` Jan Harkes
2008-08-18 17:38             ` david
2008-08-18 17:29         ` david
2008-08-18 17:39           ` Eric Paris
2008-08-18 18:09             ` david
2008-08-18 18:34               ` Eric Paris
2008-08-18 17:07       ` david
2008-08-19  8:40         ` tvrtko.ursulin
2008-08-18 22:40       ` Pavel Machek
2008-08-18 23:07         ` Eric Paris
2008-08-19  1:15           ` Peter Dolding
2008-08-19  8:09             ` douglas.leeder
2008-08-19 11:08               ` Peter Dolding
     [not found]                 ` <20080819114040.2FD1B336880@pmx1.sophos.com>
2008-08-20  3:03                   ` Peter Dolding
2008-08-18 16:28     ` douglas.leeder
     [not found] <alpine.DEB.1.10.0808180951470.15109@asgard.lang.hm>
2008-08-19  8:31 ` tvrtko.ursulin
2008-08-19 16:07   ` david
2008-08-19 12:34     ` David Collier-Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080818103535.2F4861836B2@pmx1.sophos.com \
    --to=douglas.leeder@sophos.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=malware-list@lists.printk.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome