HTTP 详解(下)---网站攻击 socket 编程

本文探讨了HTTP与Socket的区别,指出Socket在效率上的优势。同时,讲解了DDoS、XSS、CSRF等网站攻击手段及其原理,强调了数据传输安全的重要性,包括数据加密(如MD5、AES、RSA)和权限控制措施。最后,简述了Socket编程中的服务端和客户端连接过程。
摘要由CSDN通过智能技术生成
1. http 和 socket 的区别,两个协议哪个更高效一点

创建 Socket 连接时,可以指定使用的传输层协议,Socket 可以支持不同的传输层协 议(TCP 或 UDP),当使用 TCP 协议进行连接时,该 Socket 连接就是一个 TCP 连接。 Socket 连接一旦建立,通信双方即可开始相互发送数据内容,直到双方连接断开。注意, 同 HTTP 不同的是 http 只能基于 tcp,socket 不仅能走 tcp,而且还能走 udp,这个是 socket 的第一个特点

HTTP 连接使用的是“请求—响应”的方式,不仅在请求时需要先建立连接,而且需要 客户端向服务器发出请求后,服务器端才能回复数据

Socket 效率高,至少不用解析 http 报文头部一些字段 。

2. 攻击网站的方法和原理。

1.DDos 攻击
syn Flood.
Land 攻击

2.XSS 攻击
又叫“跨站脚本攻击”。它指的是恶意攻击者往 Web 页面里插入恶意 html 代码,当 用户浏览该页之时,嵌入其中 Web 里面的 html 代码会被执行,从而达到恶意的特殊目的。 XSS 是实现 CSRF 的诸多途径中的一条,但绝对不是唯一的一条。比如:有些人在留言板中输入恶意脚本来获取用户的帐号和密码。

其特点是不对服务器端造成任何伤害, 而是通过一些正常的站内交互途径,例如发布评论,提交含有 JavaScript 的内容文本。这 时服务器端如果没有过滤或转义掉这些脚本,作为内容发布到了页面上,其他用户访问这个页面的时候就会运行这些脚本。

解决方案:输入检查
输入检查一般是检查用户输入的数据中是否包含一些特殊字符,如<、>、’、”等,如果 发现存在特殊字符,则将这些字符转义。

3.CSRF 攻击
又叫“跨站请求伪造”。可以这么理解 CSRF 攻击:攻击者盗用了你的身份,以你的 名义发送恶意请求。CSRF 能够做的事情包括:以你名义发送邮件,发消息,盗取你的账 号,甚至于购买商品,虚拟货币转账……造成的问题包括:个人隐私泄露以及财产安全。

  1. 用户 C 打开浏览器,访问受信任网站 A,输入用户名和密码请求登录网站 A;
  2. 在用户信息通过验证后,网站 A 产生 Cookie 信息并返回给浏览器,此时用户登录网站 A 成功,可以正常发送请求到网站 A;
  3. 用户未退出网站 A 之前,在同一浏览器中,打开一个 TAB 页访问网站 B;
  4. 网站 B 接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点 A;
  5. 浏览器在接收到这些攻击性代码后,根据网站 B 的请求,在用户不知情的情况下携带 Cookie 信息,向网站 A 发出请求。网站 A 并不知道该请求其实是由 B 发起的,所以会根据用户 C 的 Cookie 信息以 C 的权限处理该请求,导致来自网站 B 的恶意代码被执行

从上可以看出,要完成一次 CSRF 攻击,受害者必须依次完成两个步骤:
1.登录受信任网站 A,并在本地生成 Cookie。
2.在不退出 A 的情况下,访问危险网站 B

防御方法:
.CSRF 攻击是有条件的,当用户访问恶意链接时,认证的 cookie 仍然有效,所以 当用户关闭页面时要及时清除认证 cookie。

.在客户端页面增加伪随机数。在所有 POST 方法提交的数据中提

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值