防范 XSS攻击、CSRF、SQL注入、DDOS攻击

目录

XSS

CSRF

SQL注入

DDOS攻击


XSS

受攻击分析

跨站脚本攻击叫做XSS攻击,是指恶意攻击者利用网站没有对用户提交的数据进行内容检测、转义、过滤等安全处理,将一些恶意代码嵌入到网站的web页面文件里,使访问了嵌有恶意代码的web页面的人受到恶意危害。

因为XSS攻击导致的受害者受到的恶意危害形式有:

  1. .用户资料被盗取。用户资料可能包含重要而又敏感的信息,例如登录账号、网银账号等。
  2. .用户身份被冒用,被恶意攻击者用来读取、添加、篡改、删除网站服务器里的重要又敏感的数据文件。
  3. .用户的资金账户被完成恶意转账操作,导致用户资金损失。
  4. .用户被恶意电话、恶意短信、恶意邮件等骚扰。
  5. .网站被挂上木马,导致服务器资源被木马占用,网站功能不能正常运行。
  6. .网站服务器被恶意攻击者操纵攻击别的网站或服务器。

防范措施

  1. 对用户提交的数据进行转义处理。如将用户提交上来的数据进行HTML Encode编码,将一些特殊符号转换为实体名称。
  2. 对用户提交的数据进行过滤处理,例如去掉用户提交数据里的特殊标签,如<script>,<iframe>,< for <,> for >," for,onclick,onfocus,onmouseover,onload等等。
  3. 控制用户提交的各项数据的数据格式,例如一项数据如果是期望用户提交整数类型的数据,那么除了在前端页面里做表单验证,让用户填写该项时只能填写整数,也在后台程序里设置在接收到用户提交的数据后,强行将该项转换为整数类型数据。
  4. 将重要的Cookie标记为http only,这样可以避免js里的document.cookie语句获取到重要的Cookie内容。
  5. 在http header中使用Content-Security-Policy属性和X-XSS-Protection响应头。
  6. 服务器端对上传文件进行上传路径和拓展名的检测,设置白名单。
  7. 重视服务器端对上传文件的内容检测,可以用检测脚本语言特征码的机制。

CSRF

受攻击分析

跨网站请求伪造攻击,也叫做“一键攻击”,通常叫做CSRF(或者XSRF)。

CSRF主要手法是利用跨站请求,在用户不知情的情况下,以用户的身份伪造请求。

CSRF核心是利用了浏览器Cookie或服务器Session策略,盗取用户身份。攻击者伪造目标用户的HTTP请求,然后此请求被发送到的网站如果有CSRF漏洞,那么就会执行该HTTP请求,引发跨网站请求伪造攻击。

在CSRF里,一般涉及到三方,攻击方是带有CSRF木马的网站,受害方是访问了带有CSRF木马网站并在里面点击了含有HTTP请求的隐藏链接或误导链接的浏览者,参与方则是有CSRF漏洞的与受害方相关的第三方网站。

与利用站点内的受信任用户的XSS不同,CSRF是通过伪装成受(有CSRF漏洞网站)信任用户的请求来利用有CSRF漏洞的网站。与XSS攻击相比,因为对CSRF防范的资源少,及CSRF本身比XSS更难防范的原因,所以CSRF被认为比XSS更具危险性。

CSRF的危害在于攻击者盗用用户身份,可以模拟用户身份发送恶意请求,例如发恶意邮件或恶意信息给别人、恶意支付转账等等。

注意将网站由http协议访问改成https协议访问是不能因此做到防范CSRF攻击的,因为https相当于http层+SSL/TLS层,而CSRF攻击是在http层设置内容。

防范措施

  1. 重要数据交互用POST方式提交和接收。但要注意这种方法不够安全,因为攻击者可以伪造表单提交。
  2. 数据交互进行验证码验证。但要注意如果数据交互比较多,而每次数据交互都需要用户提交验证码的话,可能会严重降低用户体验感,所以说验证码只能作为防范CSRF攻击的辅助手段,而非主要手段。
  3. 验证HTTP Referer字段,该字段记录了此次http请求的来源地址,最常见的应用是图片防盗链。注意有的旧版本浏览器是存在危险漏洞的。
  4. 为每个表单添加令牌token并验证。CSRF攻击依赖浏览器访问链接时自动对应网站的COOKIE带上,token不放在COOKIE里,而是放在form表单里的隐藏表单域里,这样CSRF一般就不能获取到这个token。此外,也可以在http头里自定义属性并验证,可以理解为是换个地方加token。

SQL注入

受攻击分析

SQL注入是比较常见的网络攻击方式之一,攻击形式主要是通过在提交表单的数据里加上sql命令或者在网页url里面加上恶意的查询字符串,实现无账号登录或者恶意篡改数据库等目的。

SQL注入的危害有数据库被远程控制后被安装后门,数据库用户隐私信息被泄露,特定网页被攻击者通过操作数据库的方式篡改,数据库里的数据被恶意修改或删除,数据库服务器被攻击或被操控等等。

一般情况下,SQL注入的位置有:

  1. 表单里提交的数据(POST方式、GET方式)。
  2. URL提交的参数,主要为GET请求参数。
  3. 提交的Cookie参数。
  4. HTTP请求头部的一些可以修改的值,例如Referer,User_Agent等。

防范措施

  1. 对用户提交的数据进行检测与过滤,例如用正则表达式过滤掉一些安全敏感关键词。
  2. 使用参数化语句或者安全的存储过程,不使用拼接sql语句。
  3. 不要使用管理员权限的数据库链接,可以为每一个应用使用权限有限的数据库链接。
  4. 检查数据存储类型。
  5. 重要的信息必定要加密。

DDOS攻击

受攻击分析

拒绝服务攻击,叫做DOS攻击。利用网站安全防御措施不足致使用户不能使用正常服务的攻击手段,都可以被叫做拒绝服务攻击,DOS攻击目的是经过消耗网络带宽或系统资源,使网络或者计算机不能正常提供服务。

分布式拒绝服务攻击,叫做DDOS攻击。攻击者经过控制连接网络的傀儡主机,同时发动它们向目标主机发动拒绝服务攻击的方式,都可以被叫做分布式拒绝服务攻击。

DDOS攻击造成的危害主要是使被攻击者的基于外网服务器运转的相关业务不能正常开展,使被攻击者遭受到严重的利益损失、重要业务瘫痪、舆论压力、企业名誉受损等恶劣的连锁反应。

cc攻击可以归为DDOS攻击的一种,它们之间的原理都是一样的,即发送大量的请求数据来导致服务器拒绝服务,是一种连接攻击。

cc攻击可以利用动态网站占用服务器资源较多的特点,模拟多个用户(一个线程就可以视作一个用户)不停地对动态网站进行访问。cc攻击可分为代理cc攻击,肉鸡cc攻击。

(1).代理cc攻击是黑客借助代理服务器生成指向受害主机的合法网页请求,实现DDoS和伪装。

(2).肉鸡cc攻击是黑客使用cc攻击软件,控制大量肉鸡,发动攻击。肉鸡cc攻击比代理cc攻击更难防御,因为肉鸡可以模拟正常用户访问网站的请求,伪造成合法数据包。

防范措施

1.正确设置防火墙,启用防火墙的防DDOS属性。

2.安装查杀软硬件,及时更新病毒库,及时修补服务器漏洞及网站漏洞,更新系统补丁。

3.设置复杂口令,关闭不必要的端口或服务,禁止对主机的非开放服务的访问。

4.及时查看服务器日志,发现潜在的安全隐患并及时处理。

5.对于重要的web服务器创建多个镜像实现负载均衡,减轻DDOS的危害。

6.在云服务器控制台,限制特定IP地址的访问。

7.禁止网站代理访问。

8.将网站页面静态化处理。

9.限制连接数量。

10.修改最大超时时间。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值