《图解HTTP》笔记(三)构建Web、Web安全、HTTP追加协议

这部分内容作者写的比较浅,科普文

目录

CSS

动态HTML

CGI(Comment Gateway Interface)通用网关接口

Servlet

XML

RSS

针对Web应用的攻击模式

Web应用的安全策略

跨站脚本攻击(XSS)

HTTP首部注入攻击/HTTP响应截断攻击

目录遍历攻击

远程文件包含漏洞

因设置或者设计上的缺陷引发的安全漏洞

因会话框管理疏忽引发的安全漏洞

密码破解

从已加密过的数据导出明文

Dos攻击

后门程序

HTTP主要瓶颈

消除HTTP瓶颈的SPDY

使用浏览器进行全双工通信的WebSocket

HTTP2.0:SPDY的升级版


CSS

层叠样式表,指定如何展示HTML内的各种元素,属于样式表标准之一。

动态HTML

调用客户端脚本语言JS,实现对Web的动态改造;利用DOM(文档对象模型)课指定要发生动态变化的HTML元素。

CGI(Comment Gateway Interface)通用网关接口

Web服务器在接收到客户端发送来的请求后转发给程序的一组机制

Servlet

改进的CGI;

因Java而普及;

解决CGI的问题的对抗技术

XML

可拓展标记语言;

与HTML相比,对数据记录方式方面做了特殊处理;

RSS

简易信息集合;

发布新闻或者博客日志信息等更新信息文档的格式总称;

比如CSDN博客上也有:

针对Web应用的攻击模式

  • 主动攻击
    攻击者直接访问Web应用,把攻击代码传入攻击模式;
    SQL注入攻击;
    OS命令攻击;
  • 被动攻击
    利用圈套策略执行攻击代码的攻击模式;

Web应用的安全策略

  • 客户端验证

  • Web应用(服务器端)验证
    输入值验证;
    输出值转义;

跨站脚本攻击(XSS)

  • 在动态生成的HTML处发生

  • 对用户的Cookie窃取和攻击

HTTP首部注入攻击/HTTP响应截断攻击

攻击者在响应首部字段内插入换行,添加任意响应首部或主体的一种攻击;

  • 设置任何Cookie信息
  • 重定向至任意URL
  • 显示任意的主体

目录遍历攻击

对本无意公开的文件目录,通过非法阶段其目录路径后,达成访问目的的一种攻击;

远程文件包含漏洞

当部分脚本内容需要通过其他文件读入时,攻击者利用指定外部服务器的URL充当依赖文件,当脚本读入后,就可以运行任意脚本的一种攻击;

因设置或者设计上的缺陷引发的安全漏洞

  • 强制浏览
    浏览非自愿公开的文件
  • 不正确的错误消息处理
    Web应用抛出的错误消息;
    数据库等系统抛出的错误消息
  • 开放重定向

因会话框管理疏忽引发的安全漏洞

  • 会话框劫持
  • 会话框固定攻击
  • 站点请求伪造

密码破解

  • 穷举法
  • 字典攻击
    事先收集好候选密码

从已加密过的数据导出明文

  • 通过穷举法/字典攻击法
  • 彩虹表
    由明文密码以及对应的散列值构成的一张数据库表,通过事先制造庞大的彩虹表;
  • 拿到密钥
  • 加密算法的漏洞

Dos攻击

让运行中的服务器呈现停止状态

  • 利用访问请求造成资源过载;
  • 通过攻击安全漏洞使服务器停止

后门程序

  • 开发阶段作为Debug调用的后门程序
  • 开发者为了自身利益植入的后门程序
  • 攻击者通过某种方法设置的后门程序

HTTP主要瓶颈

  • 一条连接上只能发送一个请求
  • 请求只能从客户端开始,客户端不能接受消除响应以外的指令;
  • 请求/响应未经压缩就发送,首部信息越多延迟越大;
  • 发送冗长的首部,浪费多;
  • 可以任意选择数据压缩格式,非强制压缩发送;

消除HTTP瓶颈的SPDY

  • 缩短Web页面加载时间(50%);
  • 从协议级别消除HTTP所遇到的瓶颈;
  • 在TCP/IP的应用层与运输层之间通过新家会话层的形式运作;
  • 规定通信中使用SSL;
  • 多路复用流,通过单一的TCP连接可以无限制处理多个HTTP请求,所有请求的处理都在一条TCP连接上完成,提高效率;
  • 赋予请求优先级;
  • 压缩HTTP首部;
  • 推送功能,支持服务器主动向客户端推送数据的功能;
  • 服务器提示功能,服务器主动提示请求所需的资源;

使用浏览器进行全双工通信的WebSocket

  • 推送功能,支持服务器向客户端推送数据的功能;
  • 减少通信量,只要建立起WebSocket连接,就希望一直保持连接状态

HTTP2.0:SPDY的升级版

  • 新的二进制格式(Binary Format),HTTP1.x的解析是基于文本。基于文本协议的格式解析存在天然缺陷,文本的表现形式有多样性,要做到健壮性考虑的场景必然很多,二进制则不同,只认0和1的组合。基于这种考虑HTTP2.0的协议解析决定采用二进制格式,实现方便且健壮。

  • 多路复用(MultiPlexing),即连接共享,即每一个request都是是用作连接共享机制的。一个request对应一个id,这样一个连接上可以有多个request,每个连接的request可以随机的混杂在一起,接收方可以根据request的 id将request再归属到各自不同的服务端请求里面。

  • header压缩,如上文中所言,对前面提到过HTTP1.x的header带有大量信息,而且每次都要重复发送,HTTP2.0使用encoder来减少需要传输的header大小,通讯双方各自cache一份header fields表,既避免了重复header的传输,又减小了需要传输的大小。

  • 服务端推送(server push),同SPDY一样,HTTP2.0也具有server push功能。

 

 

 

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沉迷单车的追风少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值