保护您的osCommerce商店!
October 31, 2011
安全问题一直是任何电子商务店主最重要的事情之一. 在这篇文章中,我们将向您展示一些提高osCommerce 2安全性的方法.商店和增加您的商店访客的安全.
OsCommerce 2.引擎本身有几个漏洞,修复它们是非常重要的,因为它们没有被一些“邪恶的祝愿者”使用。. Moreover, 由于osCommerce是一个开源产品,成千上万的开发人员正在努力为您提供一些插件和贡献,以扩展您的商店的功能, 添加新的功能和机会. 但是安装任何第三个插件可以确保它不会给你的商店增加更多的漏洞?
让我们从最基本的东西开始.
Remove Install directory
打开已安装的osCommerce时 website 这是你第一次看到 warning 页面顶部的消息. 其中一个与“安装”有关 directory
Warning: Installation directory exists at: …/install. Please remove this directory for security reasons.
从这一点出发,你有两种选择:
- Delete the “install” directory 从服务器上的osCommerce文件夹中下载(推荐)
- 重命名“install”文件夹(例如为“install1”).
Set permissions
另外两个警告与配置文件的正确CHMOD权限有关. 请随意查看有关如何解决的详细教程 权限警告信息
另外请注意,其他目录的CHMOD权限不应超过755. If your hosting 对文件夹要求777权限,是时候考虑新的了 hosting provider.
安全管理面板
目前可以做两件事:
- rename the admin directory
- add the .htaccess protection to the renamed directory
Renaming the admin directory 一直是一个很好的措施,但从未在安装过程中突出建议. 在您重命名管理员之后 directory 你将不得不改变两行 renamed_admin_directory/includes/configure.php:
定义(' DIR_WS_ADMIN ', ' / renamed_admin_directory / '); 定义(' DIR_FS_ADMIN ', ' / /路径/ /目录/ renamed_admin_directory / ');
为密码保护您的管理员 directory 你可以在你的网页上使用密码保护功能 hosting control panel. Please contact your hosting provider for more details.
Remove Filemanager
人们早就知道文件管理器存在安全风险 & should be removed, 如果用于编辑您的网站,它可能会损坏您的文件, 这是一个不值得保留的实用程序. 它也被认为是一个可能的黑客路线 & 更糟糕的是,现在有一个非常讨厌的黑客使用filemanger来访问您的站点.
要删除filemanager,请按照以下步骤操作:
- 打开osCommerce安装 directory and delete file_manager.php from catalog/admin folder
- Open “admin /包括/盒/工具.php” file and delete the line:
'' . BOX_TOOLS_FILE_MANAGER . '
' . - It is also known that “admin/define_language.php 和文件管理器一样容易受到黑客攻击,所以也应该被删除吗.
Secure the Forms
Security Pro清理查询字符串, 但是,任何使用$_POST的表单都不受影响, 如果您有任何使用post方法的表单,建议您在接受$_POST变量的页面上执行以下操作.
使用POST方法的表单打开文件:
要求(包括/ application_top.php');
add the following:
// clean posted vars reset($_POST); while (list($key, $value) = each($_POST)) { if (!is_array($_POST[$key])) { $_POST[$key] = preg_replace("/[^ a-zA-Z0-9@%:{}}.-]/i", ", urldecode($_POST[$key])); } else { unset($_POST[$key]); } // no arrays expected }
Prevent injection attacks
Security Pro
此贡献的主要目标是防止通过查询字符串($_GET/$ . js)中的漏洞对osCommerce存储进行任何注入攻击HTTP_GET_VARS). 对于osCommerce 2来说,它是一个很有价值的插件.2 and 2.3
- About addon(信息取自插件手册)
-
第一个Security Pro是在2008年3月编写的,当时很明显osCommerce商店正在通过查询字符串被黑客攻击,这些查询字符串来自编码糟糕的贡献,比如推荐信. 新的2还需要吗.3.X versions of osCommerce. 是的,它仍然是有效的. Security Pro的目标不是我们都知道很好的核心osCommerce编码, 目标是成千上万篇通常写得很差的文章.
这都是新的代码,但概念是一样的 .. 安装了Security Pro后,只要页面加载application_top,就不可能通过查询字符串传递不良字符.所有osCommerce页面都这样做.
The XSS .htaccess 在我看来,如果安装了它,贡献是毫无价值的,因为它们只是复制了Security Pro的一小部分功能. 我能看到的唯一例外是REQUEST_METHOD和TRACE|TRACK.
这个概念简单但有效. 尝试像XSS脚本那样将大量的黑客向量列入黑名单是浪费时间 .. 唯一的答案是白名单,这是Security Pro非常擅长的.
Installation
安装过程又快又简单,所以你在这里应该不会遇到任何困难.
- Download 加载包并解压缩文件
- 打开Security Pro包,然后进入 “upload > catalog” directory. Then upload the “includes” directory to your osCommerce root. 该文件夹包含一个新文件,所以它不会损害您的存储.
- Now go to “catalog/includes” folder and open the “application_top.php” file
- 使用查找和替换工具找到线路
if ($request_type == 'NONSSL') {
并在前面加上以下内容:// FWR Media的Security Pro include_once DIR_WS_MODULES . 'fwr_media_security_pro.php'; $security_pro = new Fwr_Media_Security_Pro; //如果你需要从清理中排除一个文件,那么你可以像下面这样添加它 //$security_pro->addExclusion( 'some_file.php' ); $security_pro->cleanse( $PHP_SELF ); // End - Security Pro由FWR Media提供
Thats all. 安装完成.
如何检查它是否工作?
您已经执行了一些文件修改并上传了一个新文件. 我相信你愿意测试如果插件工作良好. 对于测试,打开高级搜索页面或使用搜索框. 在搜索输入栏粘贴以下混合: [w](o)%3Cr%3Ek|i*n^g. 然后运行搜索,搜索查询应该显示工作: “working”.
监视站点的未经授权的更改
Site Monitor
此贡献将创建您的文件的记录,以便以后可以检查它们. 是否添加或删除了文件, or the size, 时间戳或权限被更改, 您将通过电子邮件收到通知.
该插件可用于osCommerce 2.2 or 2.3
Installation
- Download the contribution and extract the files
- 取决于您的osCommerce版本 oscommercce_2.3 or oscommerce_MS2_or_RC2 folder and copy the admin 文件夹到osCommerce根目录. 只有用于此贡献的文件才会被覆盖.
- Open 管理/包括/语言/英语.php 文件,并在结束前的任何地方添加以下内容 ?> tag
// sitemonitor文本包含/boxes/sitemonitor.php 定义(“BOX_HEADING_SITEMONITOR”、“SiteMonitor”); 定义(“BOX_SITEMONITOR_ADMIN”,“管理”); 定义(“BOX_SITEMONITOR_CONFIG_SETUP”、“配置”); 定义(“IMAGE_EXCLUDE”、“排除”);
- Open “admin/includes/filenames.php” 文件,并在结束前的任何地方添加以下内容 ?> tag
定义(“FILENAME_SITEMONITOR_ADMIN”、“sitemonitor_admin.php'); 定义(“FILENAME_SITEMONITOR_CONFIG_SETUP”、“sitemonitor_configure_setup.php'); 定义(“FILENAME_SITEMONITOR_CONFIGURE”、“sitemonitor_configure.txt');
- Open “admin /包括/ column_left.php” 文件,并在结束前添加以下内容 ?> tag:
require(DIR_WS_BOXES . 'sitemonitor.php');
for osCommerce 2.2 andinclude(DIR_WS_BOXES . 'sitemonitor.php');
for osCommerce 2.3 - 打开osCommerce管理面板,转到 admin->Sitemonitor->Configure. 在那里,您可以根据自己的需要配置插件.
- 有关更多配置设置,请查看 readme.txt 文件从插件包.
使用IP trap阻止引出访问尝试
使用IP陷阱保护您的站点
该贡献的工作原理是在一个只有恶意程序的文件夹中设置一个陷阱, 或者有人在你的网站上闲逛会发现(黑客使用) Robots.txt 试图在你的服务器上找到敏感文件),然后它会重定向到一个消息页面,告诉他们他们被阻止了, 同时将他们的IP号码写入文件.如果他们试图返回,他们只会得到被阻止的消息.
Installation
- 下载插件包 and extract the files
- 打开插件包,转到 “catalog” folder.
- 将所有文件和文件夹上传到osCommerce安装根目录.
- Go to the “personal/index.php” 在线将样本电子邮件地址存档并替换为您自己的电子邮件地址:
$emailad = 'you@yoursite.com';
请确保使用撇号. - Open “includes/application_top.php” file and find the lines:
//包含项目文件名列表 require(DIR_WS_INCLUDES . 'filenames.php');
after these lines add:// IP Trap V5 include(DIR_WS_INCLUDES . 'secret.php');
- Thats all. The addon is installed.
有关插件配置的更多信息,请查看 “install.txt” 文件从插件包.
Htaccess protection
通过htaccess保护您的站点
此贡献包含脚本,可帮助您通过您的 htaccess file. It’s a collection of .htaccess 脚本可以帮助保护您免受恶意软件的侵害. 有很多攻击正在发生, 这个文件禁止了很多恶意机器人, 特别是Libwww-perl,它会占用你所有的带宽. .htaccess 不能在Windows服务器上使用
- 下载插件包 and extract the files
- Open htaccess_protection.html file in your browser and use the htaccess 脚本将它们添加到 .htaccess 文件位于osCommerce安装中.
Usage of htaccess 脚本需要一些先进的技能,所以如果你不熟悉他们,请确保 backup the .htaccess 文件,然后再执行任何修改