web安全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网站安全通用解决方案
(版权所有,翻版必究)
文件修订记录
目录
1. Web安全简介 (3)
1.1 Web的诞生 (3)
1.2 服务器是如何被入侵的 (3)
1.3 常见的Web攻击 (4)
1.3.1 XSS跨站脚本攻击 (4)
1.3.2 SQL注入攻击 (4)
1.3.3 上传漏洞 (4)
1.3.4 命令执行漏洞 (4)
1.3.5 CC攻击 (4)
1.3.6 DDOS攻击 (5)
2. 通用解决方案 (5)
2.1. 架构图 (5)
2.2. 架构解析 (6)
2.3. 架构特点 (6)
3. 日常维护与监控 (7)
4. 产品介绍 (8)
4.1. 占坑 (8)
1. Web安全简介
1.1 Web的诞生
1989年,互联网还只属于少数人,在这一互联网的黎明期Web诞生了。Web最初设想的基本理念是:借助多文档之间相互关联形成的超文本,连成可相互参阅的万维网。
Web提出了3项(www)构建技术,分别是:作为页面的文本标记语言的HTML;作为文档传递协议的HTTP;指定文档所在地址的URL。
1.2 服务器是如何被入侵的
黑客入侵网站普遍的手法/流程:
1、信息收集,通过扫描IP、Whois信息、DNS等方法收集信息
2、漏洞挖掘,通过探测Web应用指纹、Web漏洞、操作系统漏洞等方式
3、漏洞利用,开始漏洞攻击,获取相应权限
4、权限提升
5、植入后门
Web攻击常见方式:
1.3 常见的Web攻击
1.3.1 XSS跨站脚本攻击
跨站脚本攻击(Cross-Site Scripting,XSS)是指攻击者在网页中嵌入客户端脚本,通常是JavaScript编写的恶意代码,当用户使用浏览器浏览被嵌入恶意代码的网页时,恶意代码将会在用户的浏览器上执行。
1.3.2 SQL注入攻击
SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。
1.3.3 上传漏洞
如何确定web应用程序是否存在上传漏洞呢?比如,有些网站,用户可以上传自己的个性头像,即图片文件,但是文件上传时并没有做验证,导致用户可以上传任意文件,这就是上传漏洞。
1.3.4 命令执行漏洞
当应用需要调用一些外部程序去处理内容的情况下,就会用到一些执行系统命令的函数。如PHP中的system,exec,shell_exec等,当用户可以控制命令执行函数中的参数时,将可注入恶意系统命令到正常命令中,造成命令执行攻击。
1.3.5 CC攻击
CC攻击利用代理服务器向网站发送大量需要较长计算时间的URL请求,如数据库查
询等,导致服务器进行大量计算而很快达到自身的处理能力而形成DOS,而攻击者一旦发送请求给代理后就主动断开连接,因为代理并不因为客户端这边连接的断开就不去连接目标服务器,因此攻击机的资源消耗相对很小,而从目标服务器看来,来自代理的请求都是合法的。
1.3.6 DDOS攻击
DDOS攻击就是分布式的拒绝服务攻击,DDoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击方式。单一的DoS攻击一般是采用一对一方式的,随着计算机与网络技术的发展,DoS攻击的困难程度加大了。于是就产生了DDOS攻击,它的原理就很简单:计算机与网络的处理能力加大了10倍,用一台攻击机来攻击不再能起作用,那么DDoS就是利用更多的傀儡机来发起进攻,以比从前更大的规模来进攻受害者。
2. 通用解决方案
2.1.架构图
2.2.架构解析
随着网站业务的发展和用户量的增加,网站安全、网站性能必然面临着具大挑战,尽早规划一套适合的网站架构有利于以后网站健康发展,以上架构综合考虑了网站安全、网站性能、日后扩展等问题。
架构采用分层模式,包括安全层、应用层、内容层、数据层与网管层,把系统解耦而解耦的直接结果就是改动成本低,维护成本低,可读性高。
安全层:防御SQL注入、XSS跨站脚本、常见Web服务器插件漏洞、木马上传、非授权核心资源访问等OW ASP常见攻击,过滤海量恶意访问,抵御大规模DDOS攻击防止网页挂马篡改识别垃圾注册检测非法内容。
应用层:对于规模稍大的网站来说,其IT必然是服务器集群来提供网站服务但同时随着业务越来越复杂,网站的功能越来越多,通常会把网站拆分出不同的子站点来单独宿主,如首页、登录、商铺、订单、卖家、买家等拆分成不同的产品线,分归不同的业务团队负责,服务器针对不同子站做集群。
内容层:动静分离也是提高网站响应速度的一种常用方式。将动态请求与静态请求分离开,尽量减少对应用服务器的压力。同时,可以再进一步对静态请求,进行缓存,以加快响应速度。
2.3.架构特点
1. 架构采用分层设计易扩展易维护;
2. 随时升级扩容,负载均衡轻松应对高并发;
3. 随时灵活扩展网站抵御大规模DDOS攻击;
4. 防止网页挂马篡改识别检测非法内容;
5. 抵御CC攻击;
6. Https链路数据加密;
7. 实时备份保证数据安全;
8. 实时监控即时发现问题。
3. 日常维护与监控
工作流程:
1、监控WEB页面、接口、WEB服务器连接数、PV、UV等;
2、监控服务器CPU、内存、负载、用户登录及网卡流量、系统安全日志等;
3、定期修改系统密码、应用密码,定期检查DB权限;
4、定期漏网扫描;
5、及时更新系统补丁;
6、规范安全配置。
故障处理:
1、确认故障,故障处理;
2、根据故障级别向主管通报;
3、向客服及相关部门通报并发布相关公告;
4、提出故障处理后的优化方案;
5、故障日志。
灾备:
1、建立灾备方案,做好备份;
2、定期检查灾备服务器状况保证其可用性;
3、定期做灾备演习以应付突发情况。
日常管理:
1、建立管理及使用文档;