1.Sql注入

  攻击者把sql命令插入到web表单的输入域或页面请求的查询字符串,
  欺骗服务器执行恶意的sql命令

  防御措施

  前端:
  1.正则验证字符串格式
  2.过滤字符串的非法字符

  后端:
  1.不要直接拼接sql,要使用参数化查询
  2.使用存储过程代替sql查询

2.XSS(Cross site Scripting,跨站脚本攻击)

  XSS本质是一种注入攻击,用户的输入或者URL的参数,总之就是客户端的输入,被接收后,又显示在了html中。

  常见的有反射型(非持久性),存储型(持久性)等。

  (1). 反射型(利用URL后面的参数来注入恶意代码)

  将js脚本添加到查询字符串中,将含有脚本的链接传播为用户,用户点开链接,
  脚本会执行,客户获取用户cookie,或执行其他危险操作。

  (2). 存储型(利用表单将恶意代码提交到服务器数据库)

  通过表单输入将脚本存储到服务器的数据库中,当其他人打开页面的时候,脚本
  就会执行,可以获取用户cookie,或修改用户界面显示等操作。

  防御措施

  前端:

  1.对用户输入进行校验,过滤,编码和转义

  后端:

  1.对输入的字符进行过滤,编码,替换
  2.对输出的字符进行编码

3.CSRF(Cross site request forgery,跨站请求伪造)

  模拟网站用户想网站发起请求,进行非法操作或得到非法结果。

  防御措施

  1.验证Http Referer的值

  验证http头部的referer,判断请求来源是合法的地址,才进行处理,
  否则拒绝响应。

  2.使用请求令牌

  访问页面时,服务端在页面写入一个随机token,并设置token过期时间。
  请求必须带上token,请求过的token会失效,无法再用。此种token方法
  也可以防止表单重复提交,在登录等安全性要求高的页面,使用验证码

  3.幂等的GET请求

  GET请求不要执行任何修改数据操作,仅通过POST,PUT,DELETE请求修改网站内容

4.防盗链

  盗链会增加服务器的负担。盗链主要是对网站图片,视频以及其他资源文件的下载。

  防御措施

  判断ip地址和域名,只有白名单中的ip和域名才能返回资源,否则,
  不予处理,或者返回一个网站logo。

web常见攻击总结的更多相关文章

  1. web常见攻击

    DoS和DDoS攻击 DoS(Denial of Service),即拒绝服务,造成远程服务器拒绝服务的行为被称为DoS攻击.其目的是使计算机或网络无法提供正常的服务.最常见的DoS攻击有计算机网络带 ...

  2. WEB常见攻击及防御

    对于一个Web应用来说,可能会面临很多不同的攻击.下面的内容将介绍一些常见的攻击方法,以及面对这些攻击的防御手段. 一.跨站脚本攻击(XSS) 跨站脚本攻击的英文全称是Cross Site Scrip ...

  3. Web常见几种攻击与预防方式

    DoS和DDoS攻击 DoS(Denial of Service),即拒绝服务,造成远程服务器拒绝服务的行为被称为DoS攻击.其目的是使计算机或网络无法提供正常的服务.最常见的DoS攻击有计算机网络带 ...

  4. 使用 Rational AppScan 保证 Web 应用的安全性,第 2 部分: 使用 Rational AppScan 应对 Web 应用攻击

    1 当前 Web 安全现状 互联网的发展历史也可以说是攻击与防护不断交织发展的过程.目前,全球因特网用户已达 13.5 亿,用户利用网络进行购物.银行转账支付和各种软件下载,企业用户更是依赖于互联网构 ...

  5. 手把手教你查看网站遭受到的Web应用攻击类型

    常见Web应用攻击类型有:webshell.SQL注入.文件包含.CC攻击.XSS跨站脚本攻击.敏感文件访问.远程命令.恶意扫描.代码执行.恶意采集.特殊攻击.其他攻击十二种攻击类型. 如何查看网站遭 ...

  6. 《图解HTTP》 第11章 web的攻击技术

    11.1 针对Web的攻击技术 简单的HTTP协议本身并不存在安全性问题,所以协议本身几乎不会成为攻击的对象. 11.1.1 HTTP不具备必要的安全功能 11.1.2 在客户端即可篡改请求 在HTT ...

  7. php防止sql注入漏洞代码 && 几种常见攻击的正则表达式

    注入漏洞代码和分析                                                                                           ...

  8. 基于http的追加协议、构建web内容的技术、web的攻击技术(9,10,11)

    第九章 基于http的追加协议 用来提升http的瓶颈,比如Ajax技术,spdy等 第十章 构建web内容的技术 html.css.js等 第十一章 web的攻击技术 比如sql注入攻击.xss等.

  9. 《图解HTTP》阅读笔记--第十一章针对web的攻击技术

    第十一章.针对WEB的攻击技术 ----<图解HTTP>阅读笔记攻击目标---Web简单的HTTP协议本身并不存在安全性 问题,协议本身并不会成为被攻击的对象,应用HTTP的服务器和客户端 ...

随机推荐

  1. javascript同步和异步的区别与实现方式

    javascript语言是单线程机制.所谓单线程就是按次序执行,执行完一个任务再执行下一个. 对于浏览器来说,也就是无法在渲染页面的同时执行代码. 单线程机制的优点在于实现起来较为简单,运行环境相对简 ...

  2. c++中的结构化语句 判断语句if 分支语句switch 循环语句 while 和 do while 循环语句for的使用

    作业1: 使用if语句,根据1~7的数字,输出今天是星期几?的程序. 方法一,直接使用单独的if语句 #include <iostream> using namespace std; in ...

  3. ES6学习(二):函数的扩展

    chapter07 函数的扩展 7.1 函数默认值 7.1.1 参数默认值简介 传统做法的弊端(||):如果传入的参数相等于(==)false的话,仍会被设为默认值,需要多加入一个if判断,比较麻烦. ...

  4. 深入浅出:了解JavaScript的六种继承

    了解继承前我们需要了解函数的构造,方便我们理解. 常见六种继承方式: 1.原型继承call和apply: 2.原型拷贝:循环父函数protype的key值=子函数prototype的key值: 3.原 ...

  5. centos 7 安装以及ip配置

    1.安装: root 200M: swap 内存的2倍,如果内存超过4g,最大设为8g就够了: / 剩余: 2.ip配置 (1)动态配置:dhclient ip add (2)静态配置:vi /etc ...

  6. MySQL - UNION 和 UNION ALL 操作符

    UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SE ...

  7. jQuery.each() - jQuery 遍历方法使用介绍

    定义和用法 each() 方法规定为每个匹配元素规定运行的函数. 提示:返回 false 可用于及早停止循环. jQuery.each()方法大概有如下几种用法,下面分别进行介绍: 1.选择器.eac ...

  8. PHP消息队列学习

    在我们平常网站设计时,会遇到“给用户群发短信”,“商城订单系统大批量订单处理”,“商城秒杀活动”等需求,这些功能,都有一个共同的特点:就是在面对高迸发的同时,必须要保证系统处理数据的有效性.那么如何处 ...

  9. hibernate的get() load() 和find()区别

    如果找不到符合条件的纪录,get()方法将返回null.如果找不到符合条件的纪录,find()方法将返回null.如果找不到符合 条件的纪录,load()将会报出ObjectNotFoundEccep ...

  10. HDU - 1054 Strategic Game (二分图匹配模板题)

    二分图匹配模板题 #include <bits/stdc++.h> #define FOPI freopen("in.txt", "r", stdi ...