Skip to content

Commit a1d4fd4

Browse files
author
Till Brehm
committed
More fixes for issue #5415
1 parent 58b3418 commit a1d4fd4

File tree

4 files changed

+17
-2
lines changed

4 files changed

+17
-2
lines changed

interface/web/admin/software_package_del.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@
3636
$app->auth->check_security_permissions('admin_allow_software_packages');
3737
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
3838

39+
// Check CSRF Token
40+
$app->auth->csrf_token_check('GET');
41+
3942
$software_update_inst_id = $app->functions->intval($_GET['software_update_inst_id']);
4043

4144
if($software_update_inst_id > 0) {

interface/web/admin/software_package_install.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,13 @@
3838
//* This is only allowed for administrators
3939
if(!$app->auth->is_admin()) die('only allowed for administrators.');
4040

41+
// Check CSRF Token
42+
if(count($_POST) > 0) {
43+
$app->auth->csrf_token_check('POST');
44+
} else {
45+
$app->auth->csrf_token_check('GET');
46+
}
47+
4148
$package_name = $_REQUEST['package'];
4249
$install_server_id = $app->functions->intval($_REQUEST['server_id']);
4350
$install_key = trim($_REQUEST['install_key']);

interface/web/admin/software_package_list.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,9 @@
145145
$app->tpl->newTemplate("form.tpl.htm");
146146
$app->tpl->setInclude('content_tpl', 'templates/software_package_list.htm');
147147

148+
$csrf_token = $app->auth->csrf_token_get('software_package_list');
149+
$_csrf_id = $csrf_token['csrf_id'];
150+
$_csrf_key = $csrf_token['csrf_key'];
148151

149152
$servers = $app->db->queryAllRecords('SELECT server_id, server_name FROM server ORDER BY server_name');
150153
$packages = $app->db->queryAllRecords('SELECT * FROM software_package');
@@ -167,12 +170,14 @@
167170
if($p['package_installable'] == 'no') {
168171
$installed_txt .= $s['server_name'].": ".$app->lng("Package can not be installed.")."<br />";
169172
} else {
170-
$installed_txt .= $s['server_name'].": <a href=\"#\" data-load-content=\"admin/software_package_install.php?package=".$p["package_name"]."&server_id=".$s["server_id"]."\">Install now</a><br />";
173+
$installed_txt .= $s['server_name'].": <a href=\"#\" data-load-content=\"admin/software_package_install.php?package=".$p["package_name"]."&server_id=".$s["server_id"]."&_csrf_key=".$_csrf_key."&_csrf_id=".$_csrf_id."\">Install now</a><br />";
171174
}
172175
}
173176
}
174177
$packages[$key]['software_update_inst_id'] = intval($inst['software_update_inst_id']);
175178
$packages[$key]['installed'] = $installed_txt;
179+
$packages[$key]['csrf_id'] = $_csrf_id;
180+
$packages[$key]['csrf_key'] = $_csrf_key;
176181
}
177182
$app->tpl->setVar('has_packages', 1);
178183
} else {

interface/web/admin/templates/software_package_list.htm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
3333
<td>ispapp{tmpl_var name="package_id"}</td>
3434
<td class="text-right">
3535
<a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="admin/software_package_edit.php?id={tmpl_var name='package_id'}"><span class="icon icon-edit"></span></a>
36-
<a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/software_package_del.php?software_update_inst_id={tmpl_var name='software_update_inst_id'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>
36+
<a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/software_package_del.php?software_update_inst_id={tmpl_var name='software_update_inst_id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>
3737
</td>
3838
</tr>
3939
</tmpl_if>

0 commit comments

Comments
 (0)