You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spamassassin.apache.org by Daniel Quinlan <qu...@pathname.com> on 2005/01/06 02:48:26 UTC
ClamAV, phishing, and our corpora
ClamAV is now marking phishing messages as virus-positive.
I think it's a bit ludicrous to consider phishing messages as viruses
rather than spam -- they share far more traits with spam than viruses, I
think, although I can see why anti-virus software works well for this
with their rapid-rule-deployment infrastucture.
Anyway, ClamAV can do what they want, but I think everyone building a
corpus needs to put ClamAV phishing positive messages into their spam
corpus rather than classifying them as viral and removing them from
their corpus. I strongly suspect this is throwing off some of our
forgery and anti-phishing rules.
Daniel
--
Daniel Quinlan
http://www.pathname.com/~quinlan/
Re: ClamAV, phishing, and our corpora
Posted by Jeff Chan <je...@surbl.org>.
On Thursday, January 6, 2005, 1:28:50 AM, Bas Zoetekouw wrote:
> Hi Daniel!
>> Anyway, ClamAV can do what they want, but I think everyone building a
>> corpus needs to put ClamAV phishing positive messages into their spam
>> corpus rather than classifying them as viral and removing them from
>> their corpus. I strongly suspect this is throwing off some of our
>> forgery and anti-phishing rules.
> Hmm, is there any way to detect automatically, whether a message is a
> real virus or a phishing spam? Currently, all virusses I get go
> directly to /dev/null
The SURBL phishing list ph.surbl.org may catch some.
Jeff C.
Re: ClamAV, phishing, and our corpora
Posted by "Daryl C. W. O'Shea" <sp...@dostech.ca>.
Bas Zoetekouw wrote:
> Hmm, is there any way to detect automatically, whether a message is a
> real virus or a phishing spam? Currently, all virusses I get go
> directly to /dev/null
The virus name ClamAV returns will contain the string 'Phishing.'
(actually most likely always 'HTML.Phishing.') such as in
'HTML.Phishing.Bank-54' and 'HTML.Phishing.Pay-1'.
"Viruses" such as 'Trojan.URLspoof.gen.2' would also be of interest to
us since they are generally eBay spoofs.
Daryl
Re: ClamAV, phishing, and our corpora
Posted by Bas Zoetekouw <ba...@o2w.nl>.
Hi Daniel!
You wrote:
> Anyway, ClamAV can do what they want, but I think everyone building a
> corpus needs to put ClamAV phishing positive messages into their spam
> corpus rather than classifying them as viral and removing them from
> their corpus. I strongly suspect this is throwing off some of our
> forgery and anti-phishing rules.
Hmm, is there any way to detect automatically, whether a message is a
real virus or a phishing spam? Currently, all virusses I get go
directly to /dev/null
--
Kind regards,
+---------------------------------------------------------------+
| Bas Zoetekouw | Si l'on sait exactement ce |
|--------------------------------| que l'on va faire, a quoi |
| bas@o2w.nl, bas@debian.org | bon le faire? |
| GPG key: 0644fab7 | Pablo Picasso |
+---------------------------------------------------------------+
Re: ClamAV, phishing, and our corpora
Posted by Nix <ni...@esperi.org.uk>.
On Wed, 5 Jan 2005, Daniel Quinlan moaned:
> ClamAV is now marking phishing messages as virus-positive.
>
> I think it's a bit ludicrous to consider phishing messages as viruses
> rather than spam -- they share far more traits with spam than viruses, I
Agreed.
Anyone running the clamav-milter might find advisory mode useful: this
patch makes the advisory-mode milter stick the virus name in a more
convenient place (an X-Virus-Infection-Name header, rather than the
subject line). Stuff in a header is easily ignored: a modified subject
isn't.
(Only lightly tested, but seems to work.)
diff -durN 0.80-orig/clamav-milter/clamav-milter.c 0.80/clamav-milter/clamav-milter.c
--- 0.80-orig/clamav-milter/clamav-milter.c 2004-10-11 01:59:12.000000000 +0100
+++ 0.80/clamav-milter/clamav-milter.c 2005-01-08 14:57:47.000000000 +0000
@@ -646,7 +646,7 @@
static void checkClamd(void);
static int sendtemplate(SMFICTX *ctx, const char *filename, FILE *sendmail, const char *virusname);
static int qfile(struct privdata *privdata, const char *virusname);
-static void setsubject(SMFICTX *ctx, const char *virusname);
+static void setinfected(SMFICTX *ctx, const char *virusname);
static int clamfi_gethostbyname(const char *hostname, struct hostent *hp, char *buf, size_t len);
static int isLocalAddr(in_addr_t addr);
static void clamdIsDown(void);
@@ -1049,7 +1049,6 @@
break;
case 'n': /* don't add X-Virus-Scanned */
nflag++;
- smfilter.xxfi_flags &= ~SMFIF_ADDHDRS;
break;
case 'N': /* Do we reject mail or silently drop it */
rejectmail = 0;
@@ -2763,9 +2762,9 @@
else
cli_warnmsg(_("Can't set quarantine user %s\n"), quarantine);
} else
- setsubject(ctx, virusname);
+ setinfected(ctx, virusname);
} else if(advisory)
- setsubject(ctx, virusname);
+ setinfected(ctx, virusname);
else if(rejectmail) {
if(privdata->discard)
rc = SMFIS_DISCARD;
@@ -3710,18 +3709,12 @@
}
/*
- * Store the name of the virus in the subject of the e-mail
+ * Store the name of the virus in the X-Virus-Infection-Name header
*/
static void
-setsubject(SMFICTX *ctx, const char *virusname)
+setinfected(SMFICTX *ctx, const char *virusname)
{
- char subject[128];
-
- /*
- * FIXME: doesn't work if there's no subject in the email
- */
- snprintf(subject, sizeof(subject) - 1, _("[Virus] %s"), virusname);
- smfi_chgheader(ctx, "Subject", 1, subject);
+ smfi_addheader(ctx, "X-Virus-Infection-Name", virusname);
}
/*
--
`The sword we forged has turned upon us
Only now, at the end of all things do we see
The lamp-bearer dies; only the lamp burns on.'