Skip to content
Snippets Groups Projects
Commit f3e91068 authored by Lukas Reschke's avatar Lukas Reschke
Browse files

Don't trust update server

In case the update server may deliver malicious content this would allow an adversary to inject arbitrary HTML into the response. So very bad stuff.

While signing the response would be better and something we can also do in the future (considering the code signing work), this is already a good first start.
parent d305412a
Branches
No related tags found
No related merge requests found
......@@ -4,7 +4,7 @@
<!--[if (gt IE 9)|!(IE)]><!--><html class="ng-csp" data-placeholder-focus="false" lang="<?php p($_['language']); ?>" ><!--<![endif]-->
<head data-user="<?php p($_['user_uid']); ?>" data-requesttoken="<?php p($_['requesttoken']); ?>"
<?php if ($_['updateAvailable']): ?>
data-update-version="<?php print($_['updateVersion']); ?>" data-update-link="<?php print_unescaped($_['updateLink']); ?>"
data-update-version="<?php p($_['updateVersion']); ?>" data-update-link="<?php p($_['updateLink']); ?>"
<?php endif; ?>
>
<meta charset="utf-8">
......
......@@ -85,7 +85,9 @@ class OC_TemplateLayout extends OC_Template {
if(isset($data['version']) && $data['version'] != '' and $data['version'] !== Array()) {
$this->assign('updateAvailable', true);
$this->assign('updateVersion', $data['versionstring']);
$this->assign('updateLink', $data['web']);
if(substr($data['web'], 0, 8) === 'https://') {
$this->assign('updateLink', $data['web']);
}
\OCP\Util::addScript('core', 'update-notification');
} else {
$this->assign('updateAvailable', false); // No update available or not an admin user
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment