Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/roundcube/roundcubemail.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2018-04-09 10:07:27 +0300
committerAleksander Machniak <alec@alec.pl>2018-04-09 10:10:01 +0300
commite3dd5b66d236867572e68fcb80281e9268a0cfb0 (patch)
treea6cb93a65b4f7e781664bd3651918782d87fb33d /plugins/managesieve
parentdc9c9c36a8c7fbb821e55cd5c3cd13f36ab15ef0 (diff)
Fix check_request() bypass in places using get_uids() [CVE-2018-9846] (#6238)
Diffstat (limited to 'plugins/managesieve')
-rw-r--r--plugins/managesieve/managesieve.php5
1 files changed, 3 insertions, 2 deletions
diff --git a/plugins/managesieve/managesieve.php b/plugins/managesieve/managesieve.php
index c8241303c..259e91b09 100644
--- a/plugins/managesieve/managesieve.php
+++ b/plugins/managesieve/managesieve.php
@@ -189,9 +189,10 @@ class managesieve extends rcube_plugin
*/
function managesieve_actions()
{
+ $uids = rcmail::get_uids(null, null, $multifolder, rcube_utils::INPUT_POST);
+
// handle fetching email headers for the new filter form
- if ($uid = rcube_utils::get_input_value('_uid', rcube_utils::INPUT_POST)) {
- $uids = rcmail::get_uids();
+ if (!empty($uids)) {
$mailbox = key($uids);
$message = new rcube_message($uids[$mailbox][0], $mailbox);
$headers = $this->parse_headers($message->headers);