不久前我的 osCommerce 被黑了,那些白痴正在用它来发送电子邮件。我发现他们将脚本放置在 osCommerce 图像目录中。
有没有办法禁止某些目录(例如包含图像的目录)使用 .htaccess 或其他内容运行脚本?
使用简单
<Files *.*>
order allow,deny
deny from all
</Files>
.htaccess 上的效果不好,因为图像不会出现在网站上。
除了应用所有 osCommerce 补丁以使其更强大之外,我还能做什么?
答案1
我相信您可以将其放入 .htaccess 中您不想允许脚本执行的位置:
<Files *.*>
Options -ExecCGI
</Files>
如果您知道所有“坏”文件都以某种方式命名,您还可以通过以下方式禁用它们与给定处理程序的关联:
<Files *.*>
RemoveHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
</Files>
您还可以使用顶级目录中的以下文件完全关闭某些命名文件:
<Directory full-path-to/dir>
<FilesMatch "\.(php?|pl|perl)$">
Order Deny,Allow
Deny from All
</FilesMatch>
</Directory>
或者您可以根据用于访问它的实际 URL 将其锁定:
<LocationMatch "/URL/TO/FILES/.*\.(php?|pl|perl)$">
Order Deny,Allow
Deny from All
</LocationMatch>