diff options
author | http://smcv.pseudorandom.co.uk/ <smcv@web> | 2014-03-03 08:06:27 -0400 |
---|---|---|
committer | admin <admin@branchable.com> | 2014-03-03 08:06:27 -0400 |
commit | 2d5a62dc16fd8401898c01860ae8bf481dafa283 (patch) | |
tree | 4dde2aa132ed8c568e89de002ef5e86a6b6faac5 | |
parent | 42816021cba587a690adc540755a195b352ac9c1 (diff) | |
download | ikiwiki-2d5a62dc16fd8401898c01860ae8bf481dafa283.tar ikiwiki-2d5a62dc16fd8401898c01860ae8bf481dafa283.tar.gz |
new bug report with patch
-rw-r--r-- | doc/bugs/possible_to_post_comments_that_will_not_be_displayed.mdwn | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/bugs/possible_to_post_comments_that_will_not_be_displayed.mdwn b/doc/bugs/possible_to_post_comments_that_will_not_be_displayed.mdwn new file mode 100644 index 000000000..488fa0066 --- /dev/null +++ b/doc/bugs/possible_to_post_comments_that_will_not_be_displayed.mdwn @@ -0,0 +1,32 @@ +[[!template id=gitbranch branch=smcv/ready/comments author="[[smcv]]" +browse="http://git.pseudorandom.co.uk/smcv/ikiwiki.git/shortlog/refs/heads/ready/comments"]] +[[!tag patch]] + +The ability to post comments depends on several factors: + +* `comments_pagespec` controls whether comments on a particular + page will be displayed +* `comments_closed_pagespec` controls whether comments on + a particular page are allowed +* the `check_canedit` call controls whether comments are allowed + for a particular combination of page and user + +If `check_canedit` says that a user can post a comment +(in particular, if [[plugins/opendiscussion]] is enabled or +[[plugins/lockedit]] is disabled or permissive), +and `comments_closed_pagespec` does not contradict it, +then users who construct a `do=comment` CGI URL manually +can post comments that will not be displayed. I don't think +this is a security flaw as such, which is why I'm not +reporting it privately, but it violates least-astonishment. + +My `ready/comments` branch fixes this, by changing the test +at submission time from (pseudocode) + + !comments_closed_pagespec && check_canedit + +to + + comments_pagespec && !comments_closed_pagespec && check_canedit + +--[[smcv]] |