on second thought, simple alphanumeric styles are not actually useful (class is already supported), and anything more complex is too hard to do, so revert
parent
a8fa52080d
commit
03dc63588c
|
@ -47,9 +47,6 @@ sub scrubber { #{{{
|
|||
value vspace width
|
||||
} ),
|
||||
"/" => 1, # emit proper <hr /> XHTML
|
||||
"style" => qr{^[-a-zA-Z0-9]+$}, # only very simple
|
||||
# references allowed,
|
||||
# to avoid javascript
|
||||
}],
|
||||
);
|
||||
return $_scrubber;
|
||||
|
|
|
@ -7,8 +7,6 @@ ikiwiki (2.4) UNRELEASED; urgency=low
|
|||
* Support building on systems that lack asprintf.
|
||||
* mercurial getctime is currently broken, apparently by some change in
|
||||
mercurial version 0.9.4. Turn the failing test case into a TODO test case.
|
||||
* Allow simple alphanumeric style attribute values in the htmlscrubber. This
|
||||
should be safe from javascript attacks.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Wed, 11 Jul 2007 12:23:41 -0400
|
||||
|
||||
|
|
|
@ -7,12 +7,7 @@ to avoid XSS attacks and the like.
|
|||
It excludes all html tags and attributes except for those that are
|
||||
whitelisted using the same lists as used by Mark Pilgrim's Universal Feed
|
||||
Parser, documented at <http://feedparser.org/docs/html-sanitization.html>.
|
||||
Notably it strips `style` and `link`.
|
||||
|
||||
For the `style` attribute, it varys slightly from the Universal Feed
|
||||
Parser, accepting simple alphanumeric style attributes (style="foo"), but
|
||||
stripping anything more complex to avoid any of the ways to insert
|
||||
JavaScript via style attributes.
|
||||
Notably it strips `style` and `link` tags, and the `style` attribute.
|
||||
|
||||
It uses the [[cpan HTML::Scrubber]] perl module to perform its html
|
||||
sanitisation, and this perl module also deals with various entity encoding
|
||||
|
@ -41,4 +36,3 @@ plugin is active:
|
|||
* <span style="background: url(javascript:window.location='http://example.org/')">CSS script test</span>
|
||||
* <span style="any: expression(window.location='http://example.org/')">entity-encoded CSS script test</span>
|
||||
* <span style="any: expression(window.location='http://example.org/')">entity-encoded CSS script test</span>
|
||||
* <span style="pretty">OTOH, this is ok, and will be accepted</a>
|
||||
|
|
Loading…
Reference in New Issue