王向中也没有理会吕大海这番白痴言论,不过这一出倒是提醒了他,小心驶得万年船,日后做事一定要尽量低调一些。
吕大海绝非是唯一一个会提出质疑的人,也就是他没什么心机,若是让心机重的人逮到了,恐怕又会出什么幺蛾子。
一想到这,王向中也是摇了摇头,迅速将思路扳回到搜索引擎这件事上。
现在既然已经完成了前后端逻辑上的工作,接下来就是着手代码安全方面的工作了。
不像未来的各种后端框架中自带各种安全措施,现在依靠原生ASP写的网站必须要自己去写逻辑,实现安全防护功能。
安全防护功能主要针对两块内容,第一是表单SQL注入漏洞补丁,第二是CC攻击屏蔽措施。
所谓SQL注入,就是利用反斜杠号“\”和引号,改写原有SQL语句的作用。
打个比方,像这种搜索引擎的输入文本框,一般使用“Select”语句(查询关键词),按照内容键值匹配索引相对的数据。
文本框的内容在后端往往被视为一个参数,由于参数类型是String(字符串类型),因此往往在该参数开头和结尾还有双引号的存在。
而参数内部一旦带有双引号,则会对整个语句的执行出现偏差。比如攻击者可以巧妙地便写一串含有“I”语句(插入数值关键词)或者是指向其它的数据表,看似坚固逻辑紧密的服务就会被瞬间瓦解。
写程序的人往往都知道一句话:“永远不要相信用户的输入。”因此,在编写代码的过程中,务必要给参数字符进行限制、过滤、转义等操作,才能保障数据层面的安全性。
而CC攻击比较好理解,它一般针对于网站,通过构造大量虚拟访问或是针对接口的频繁参数传递,使得中间件消耗大量的系统资源,直至其超出性能承受范围而崩溃。
未来的中间件例如nginx或apache都自带防CC攻击的安全模块,而现在王向中所用的IIS3.0显然是没有这种东西的。
因此只能在代码层面上稍稍限定一番。例如限定同IP每分钟所能调用接口的次数,然后在服务器后台里写一个监控脚本,每分钟检测中间件和数据库的运行情况,一旦发现进程异常,则立刻重启。
当然最好的办法就是前后端分离,数据和中间件分离,使用或者集群来规避集中访问问题。
但现在第一是没有技术,好多需要的技术都还在娘胎里;第二还是王向中太穷了!就现在赚到区区几万块,别说是建一个集群,能不能买到一台合适的服务器都还是问题。
一般来讲,王向中还需要买三台设备,第一是应用服务器,第二是三层交换机,第三是磁盘阵列。
应用服务器用于部署基本的环境和代码,以及执行语句的计算工作;而三层交换机则是兼并了路由器和普通交换机的职能,用于外网连通和内网构建;至于磁盘阵列,在这个年代可能还买不到,只能自己手动改一台普通服务器……
如果再不狠狠赚钱,恐怕就要来不及了!