You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by qu...@apache.org on 2005/02/10 07:53:31 UTC
svn commit: r153180 - in spamassassin/trunk: lib/Mail/SpamAssassin/HTML.pm
rules/70_testing.cf
Author: quinlan
Date: Wed Feb 9 22:53:29 2005
New Revision: 153180
URL: http://svn.apache.org/viewcvs?view=rev&rev=153180
Log:
some ill-fated rules for JavaScript
Modified:
spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm
spamassassin/trunk/rules/70_testing.cf
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm
URL: http://svn.apache.org/viewcvs/spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm?view=diff&r1=153179&r2=153180
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm Wed Feb 9 22:53:29 2005
@@ -140,13 +140,14 @@
}
# final result arrays
+ $self->put_results(anchor => $self->{anchor});
$self->put_results(comment => $self->{comment});
+ $self->put_results(script => $self->{script});
$self->put_results(title => $self->{title});
- $self->put_results(anchor => $self->{anchor});
+ $self->put_results(uri => $self->{uri});
# final result hashes
$self->put_results(inside => $self->{inside});
- $self->put_results(uri => $self->{uri});
# end-of-document result values that don't require looking at the text
if (exists $self->{backhair}) {
@@ -707,6 +708,7 @@
# text that is not part of body
if (exists $self->{inside}{script} && $self->{inside}{script} > 0)
{
+ push @{ $self->{script} }, $text;
if ($text =~ /\bon(?:blur|contextmenu|focus|load|resize|submit|unload)\b/i)
{
$self->put_results(html_event_unsafe => 1);
Modified: spamassassin/trunk/rules/70_testing.cf
URL: http://svn.apache.org/viewcvs/spamassassin/trunk/rules/70_testing.cf?view=diff&r1=153179&r2=153180
==============================================================================
--- spamassassin/trunk/rules/70_testing.cf (original)
+++ spamassassin/trunk/rules/70_testing.cf Wed Feb 9 22:53:29 2005
@@ -287,3 +287,34 @@
header T_RATWARE_HASH_2_C X-Mailer =~ /^[A-Za-z0-9]{16,}$/
header T_RATWARE_HASH_2_V2_C X-Mailer =~ /^[A-Za-z0-9]{14,}$/
+body T_HTML_JS_0 eval:html_text_match('uri', '^(?is)javascript:')
+body T_HTML_JS_1 eval:html_text_match('uri', '^(?is)\s*javascript:')
+body T_HTML_JS_2 eval:html_text_match('uri', '^(?is)javascript:.*;')
+body T_HTML_JS_3 eval:html_text_match('uri', '^(?is)\s*javascript:.*;')
+
+body T_HTML_JS_LONG_040 eval:html_text_match('uri', '^(?is)javascript:.{40}')
+body T_HTML_JS_LONG_080 eval:html_text_match('uri', '^(?is)javascript:.{80}')
+body T_HTML_JS_LONG_120 eval:html_text_match('uri', '^(?is)javascript:.{120}')
+body T_HTML_JS_LONG_160 eval:html_text_match('uri', '^(?is)javascript:.{160}')
+body T_HTML_JS_LONG_200 eval:html_text_match('uri', '^(?is)javascript:.{200}')
+
+body T_HTML_JS_EXPR_1 eval:html_text_match('uri', '^(?is)javascript:.*;')
+body T_HTML_JS_EXPR_2 eval:html_text_match('uri', '^(?is)javascript:.*;.*;')
+body T_HTML_JS_EXPR_3 eval:html_text_match('uri', '^(?is)javascript:.*;.*;.*;')
+body T_HTML_JS_EXPR_4 eval:html_text_match('uri', '^(?is)javascript:.*;.*;.*;.*;')
+body T_HTML_JS_EXPR_5 eval:html_text_match('uri', '^(?is)javascript:.*;.*;.*;.*;.*;')
+
+body T_HTML_SCRIPT_0 eval:html_text_match('script', '.')
+body T_HTML_SCRIPT_1 eval:html_text_match('script', ';')
+
+body T_HTML_SCRIPT_LONG_040 eval:html_text_match('script', '.{40}')
+body T_HTML_SCRIPT_LONG_080 eval:html_text_match('script', '.{80}')
+body T_HTML_SCRIPT_LONG_120 eval:html_text_match('script', '.{120}')
+body T_HTML_SCRIPT_LONG_160 eval:html_text_match('script', '.{160}')
+body T_HTML_SCRIPT_LONG_200 eval:html_text_match('script', '.{200}')
+
+body T_HTML_SCRIPT_EXPR_1 eval:html_text_match('script', ';')
+body T_HTML_SCRIPT_EXPR_2 eval:html_text_match('script', ';.*;')
+body T_HTML_SCRIPT_EXPR_3 eval:html_text_match('script', ';.*;.*;')
+body T_HTML_SCRIPT_EXPR_4 eval:html_text_match('script', ';.*;.*;.*;')
+body T_HTML_SCRIPT_EXPR_5 eval:html_text_match('script', ';.*;.*;.*;.*;')