步骤#1:使用CSP
跨站点脚本(XSS)攻击与SQL注入类似,是网站所有者需注意的另一常见威胁。当黑客找到渠道把恶意JavaScript代码偷偷写入您的网页时,曝露在该代码下的您访客的页面也会随之受到影响,这就是所谓的XSS攻击了。
保护您网站免受XSS攻击的措施之一跟您用来防御SQL注入的参数化查询类似,那就是——您需确保您网站上使用的任一允许输入的功能或场代码尽可能规定清楚它们允许的那些输入,这样您才不会留空间让黑客偷溜进来。
内容安全协议(CSP)是您可以用来防御XSS攻击的另一简便工具,它允许您指定网页浏览器需选择的可执行脚本的正确来源域,这样浏览器就能忽略任一可能影响您访客计算机安全的恶意脚本了。
使用CSP很简单,只要在您的网页上加入适当的HTTP标头,就能产生一串指令来告诉浏览器哪些域是安全的而哪些是异常的。您可以从Mozilla提供的关于“如何为网站制作CSP标头”的文章中获取更多的相关信息。
步骤#2:确保密码的安全性
这一步骤听起来很简单,但却尤为重要。
使用一个便于您记忆的密码总是听起来很吸引人,这就是为什么“123456”仍是最常见密码的原因了。但是,您需设置一个比它更好的密码。
因此,您需努力找出一个真正安全的长密码。该密码需同时包含特殊字符、数字和字母,但要避免使用如您的生日或孩子的名字这样容易猜到的密码,因为如果一个黑客窃取到了您的一些其他信息的话,他首先就会猜想您的密码是由这种信息组成的。
另外,请确保任何有权修改您网站的人员都设置了类似的安全密码。您需研究这类人员必须设置的密码的长度和字符类型,这样他们在设置密码时就会抛弃标准、简单却不安全的密码而使用更特殊的密码了。
您团队中只要有任何人使用了安全系数较低的密码,那么您的整个网站都会更易于遭受攻击。所以,在设置密码方面,您需严格要求自己和员工。
步骤#3:锁定目录和文件权限
现在到了最后一个步骤,但这一步骤可能有点技术性,所以希望您能继续往下读。
所有的网站是由一系列存储在虚拟主机账户上的文件和文件夹组成的。除了包含那些能确保您网站正常运行的脚本和数据,每一文件和文件夹都配置了一组权限,这组权限可以限制可以读、写和执行任何给定文件或文件夹的用户或用户组。
在Linux操作系统中,权限为可视的三位数代码,每个数字为0-7之间的任一整数。第一个数字表示文件所有者的权限,第二个数字表示任何配置到该用户组的文件所有者的权限,而第三个数字表示其他人的权限。分配工作如下:
4相当于读取
2相当于改写
1相当于执行
0相当于该用户未获得权限
举个例子,让我们来看一下“644”这组权限代码。其中的第一个数字“6”(或“4+2”)代表文件所有者有权读写该文件,而第二、三个数字“4”则表示用户组以及一般的互联网用户只可以读取该文件,这样就能防止该文件受到恶意篡改。
因此,拥有“777”(或 4+2+1 / 4+2+1 / 4+2+1)权限代码的文件代表用户、用户组以及全世界各地的人都能读写和编辑该文件。
正如您所预期的那样,任一网络用户都能有权改写和执行的文件比只有所有者能有权读写和执行的锁定文件要不安全得多。当然,有时候也需给其他用户组打开这些权限(比如:匿名FTP上传),但这种情况必须经过仔细考量,才能避免网站安全隐患。
出于该原因,按以下方法设置权限是比较好的一种做法:
文件夹和目录 = 755
个人文件 = 644
您可以登录控制面板的文件管理器或通过FTP连接到您的服务器来设置文件权限。在进入控制面板之后,您就能看到一个现有文件权限列表 (正如下方使用FileZilla FTP程序生成的例子那样):
此例子中的最后一列显示了当前分配给网站内容的文件夹和文件权限。如果您想在Filezilla中修改这些权限,只需右击该文件夹或文件,然后选择“文件权限”选项即可。接着就会弹出一个对话框,您就可以使用一系列的复选框来设置不同的权限了:
虽然您的网络主机news.webhostingtalk.cn/或FTP程序的后台可能略有不同,但是修改权限的基本过程却是相同的。