第一:首页我们要知道哪些因素是影响网站安全性问题。
1、网站的空间/服务器
很多网站都是购买比较便宜的空间,此类网站的安全性能最差,如果卖空间的人盈利很低,更何谈帮你维护服务器安全性能。更不谈什么稳定性,所以很容易就被入侵,如果购买的是独立服务器或VPS,应该要配一个专业的技术维护人员,要配置服务器的安全,设置服务器文件的权限,如果网站主没办法聘请专业人员,更应该外包给技术人员,因为一个文件夹权限错误都可能导致整个服务器瘫痪而被入侵。
2、网站程序问题
网站程序是个大问题,如果程序选择的不对,被入侵的机会非常大。很多网站都是下载一些免费开源的源码来做网站的,此类型网站有2种情况。
(1)下载一个毫无知名度的免费源码,此类的免费源码被入侵的可能性超过百分之99,因为免费,使用者少,开发者更不会去完善漏洞,更不会去升级,导致此类网站逐渐的会出现漏洞,所以,即使大家要选择开源免费的程序,一定要选择知名度比较高的。
(2)下载知名的建站CMS,如:DEDECMS PHPWING 动易CMS ECSHOP 等免费程序,此类程序使用者比较多,开发者也会经常更新漏洞以及升级,但是同样的,因为使用者比较多,黑客更喜欢寻找此类型网站的漏洞来进行挂马,所以,此类型网站需要及时的更新漏洞以及升级,还要根据安全提示去更改文件夹权限。
3、后台路径以及账号密码
笔者今天就帮客户维护一个网站,他的后台路径是/ADMIN 账号是admin 密码是admin123,此类网站如果不被入侵,那都是奇怪的事情了。即使网站程序和网站空间配置的多么好,后台的路径更不应该是大众式的后台路径,账号和密码也是最通用的,如果黑客用服务器进行扫或尝试登陆后台,很容易就让他们得逞,入侵都是轻而易举的事情了。所以大家后台路径要设置好,账号尽量不要用admin,密码也不要用常用的。尽量有大小写字母的组合!
第二:如何防止网站被攻击或者被入侵。
1、使用安全加密技术:
用户或者是管理员在注册登录的时候,服务器会对用户或者是管理员的密码进行加密,就是把明文的密码加密成一串加密字符串,通过不安全的网络传输到数据库服务器上进行储存或者匹配等。常用的加密技术有 Md5加密,SSL加密等。
2、防止流量攻击
这种攻击就是我们常听说的DDoS攻击,它分为两种方式带宽攻击和应用攻击,但我这里讲的是指流量攻击中的常见的宽带攻击,是竞争对手惯用的一种方法,一般是使用大量数据包淹没一个或多个路由器、服务器和防火墙,使你的网站处于瘫痪状态无法正常打开。对于这种攻击竞争对手都会花费人力和财力的,如果是真正意义上的DDoS攻击更是花费不少,个人认为当遇到流量攻击时不要惊慌,这种方式的花费竞争对手也是吃不消的,所以不会持续太久,如果是真正意义上的 DDoS攻击,你的空间商也会做相应措施的。建议:选择有实力有一定规模的服务商,假如有经济条件你可以购买节点服务器。
3、 防拷贝
当您在浏览银行的网银时,您经常会发觉您没办法在银行网银的界面里面使用鼠标右键.这样可以阻止客户端通过右键常看网站的源代码,这样可以有效的防范网站客户端代码(如:HTML,Js,Css,Img)被拷贝等。
4、 对用户输入的内容进行过滤:
大部分的网站安全问题都是客户端通过文本输入框输入的。网站服务端需对客户端输入的内容进行过滤,如:把客户端输入的等代码过滤掉。这样会相对有效的防范客户端的 注入式攻击和XSS攻击等。
5、防止破坏数据性攻击
这种攻击时最致命,也是最卑鄙的一种手段,网站权限被拿到,数据被删除,这样就会造成大量的无页面链接,即死链接,这对于网站来说是致命的,不仅搜索引擎会降权,还会丢失大量用户。建议:经常备份网站数据和网站关键程序,最好打包到本地电脑里;ftp和后台相关密码不要用弱口令。
6、使用URL伪静态:
网站的网址中经常带有参数,动态的参数往往会暴露了网页之间的传参关系,增加了不安全性。假设把动态的参数重写为伪静态的,可隐藏动态的参数,从而提高了网站的安全性。
7、 使用参数化查询:
有时候对客户端输入的内容进行匹配还不足以防范Sql注入,而使用参数化查询可从根源上杜绝Sql注入。
8、 对用户的ip进行过滤:
这种方式可以过滤掉一些不友好的访客的ip地址,有效的阻止了拒绝服务攻击等。
9、 系统记录日志:
包括服务器日志和Sql日志等,网站管理员可以通过日志中记录的内容查看客户端在访问当前网站的行为,发现有一些破坏性的行为,可进行下一步操作。