X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/2ea8fbe2d9691d48b007bd0404dd77ae4bd3c9c7..436c3fbefcaf06bf68d8e79813f68951039a1cff:/doc/security.mdwn diff --git a/doc/security.mdwn b/doc/security.mdwn index 65ebfd7b2..fea0eb727 100644 --- a/doc/security.mdwn +++ b/doc/security.mdwn @@ -6,6 +6,8 @@ security issues with this program than with cat(1). If, however, you let others edit pages in your wiki, then some possible security issues do need to be kept in mind. +[[toc levels=2]] + ---- # Probable holes @@ -134,7 +136,9 @@ file not be world readable. Login to the wiki involves sending a password in cleartext over the net. Cracking the password only allows editing the wiki as that user though. -If you care, you can use https, I suppose. +If you care, you can use https, I suppose. If you do use https either for +all of the wiki, or just the cgi access, then consider using the sslcookie +option. ## XSS holes in CGI output @@ -145,6 +149,13 @@ with a username containing html code (anymore). It's difficult to know for sure if all such avenues have really been closed though. +## HTML::Template security + +If the [[plugins/template]] plugin is enabled, users can modify templates +like any other part of the wiki. This assumes that HTML::Template is secure +when used with untrusted/malicious templates. (Note that includes are not +allowed, so that's not a problem.) + ---- # Fixed holes @@ -242,8 +253,15 @@ ikiwiki escapes any html in svn commit logs to prevent other mischief. ## XML::Parser XML::Parser is used by the aggregation plugin, and has some security holes. -#[378411](http://bugs.debian.org/378411) does not +Bug #[378411](http://bugs.debian.org/378411) does not seem to affect our use, since the data is not encoded as utf-8 at that point. #[378412](http://bugs.debian.org/378412) could affect us, although it doesn't seem very exploitable. It has a simple fix, and has been fixed in Debian unstable. + +## include loops + +Various directives that cause one page to be included into another could +be exploited to DOS the wiki, by causing a loop. Ikiwiki has always guarded +against this one way or another; the current solution should detect all +types of loops involving preprocessor directives.