Project

General

Profile

« Previous | Next » 

Revision 1406

Added by FrankH almost 14 years ago

  1. Security fix to stop users from changing module contents without permission, thanks to Michael Schwarz

View differences:

admin.php
70 70
	$admin->print_error($MESSAGE['PAGES']['INSUFFICIENT_PERMISSIONS']);
71 71
}
72 72

  
73
// some additional security checks:
74
// Check whether the section_id belongs to the page_id at all
75
if ($section_id != 0) {
76
	$sql  = "SELECT module FROM `".TABLE_PREFIX."sections` WHERE `page_id` = '$page_id' AND `section_id` = '$section_id'";
77
	$res_sec = $database->query($sql);
78
	if ($database->is_error())
79
	{
80
		$admin->print_error($database->get_error());
81
	}
82
	if ($res_sec->numRows() == 0)
83
	{
84
		$admin->print_error($MESSAGE['PAGES']['NOT_FOUND']);
85
	}
86

  
87
	// check module permissions:
88
	$sec = $res_sec->fetchRow();
89
	if (!$admin->get_permission($sec['module'], 'module'))
90
	{
91
		$admin->print_error($MESSAGE['PAGES']['INSUFFICIENT_PERMISSIONS']);
92
	}	
93
}
94

  
73 95
// Workout if the developer wants to show the info banner
74 96
if(isset($print_info_banner) && $print_info_banner == true) {
75 97
	

Also available in: Unified diff