osc-网站安全性之更安全的数据库输入法:
保护您的数据库对XSS攻击或在网上商店里被保存的HTML代码 ,仅这5秒修改。
修复了whois_online.php漏洞。
该解决方案是编辑tep_db_input()函数。
具体解决方法:
**********************************************************************
在 includes/functions/database.php
和 admin/includes/functions/database.php
*** 找到***
function tep_db_input($string, $link = ‘db_link’) {
global $$link;
if (function_exists(‘mysql_real_escape_string’)) {
return mysql_real_escape_string($string, $$link);
} elseif (function_exists(‘mysql_escape_string’)) {
return mysql_escape_string($string);
}
return addslashes($string);
}
*** 替换为 ***
$allowable_tags = false
(string)’<b><i>’ for certain tags.
function tep_db_input($string, $link = ‘db_link’, $allowable_tags = false) {
global $$link;
if ($allowable_tags === false || is_string($allowable_tags)) {
$string = strip_tags($string, $allowable_tags);
}
if (function_exists(‘mysql_real_escape_string’)) {
return mysql_real_escape_string($string, $$link);
} elseif (function_exists(‘mysql_escape_string’)) {
return mysql_escape_string($string);
}
return addslashes($string);
}
**********************************************************************
例子:
*** 原始代码 (例子): ***
$example_query = tep_db_query(“update myTable set column=’”. tep_db_input($var) .”‘ where this=’that’ limit 1;”);
*** 允许所有标签,更改: ***
$example_query = tep_db_query(“update myTable set column=’”. tep_db_input($var, ‘db_link’, true) .”‘ where this=’that’ limit 1;”);
osc-网站安全性之更安全的数据库输入法,确保网站的安全性