深入浅出HTTP/HTTPS和网络安全:HTTP/HTTPS的工作原理和常见的网络安全问题,如XSS、CSRF、SQL注入等

HTTP和HTTPS

HTTP(超文本传输协议)和HTTPS(安全超文本传输协议)是浏览器和服务器之间传输信息的通信协议。两者的主要区别在于HTTPS使用了SSL/TLS协议进行了加密处理。

  • HTTP: HTTP只是一个纯文本信息传输协议,没有加密机制,数据都是未加密的,安全性较低。如果黑客截取了web浏览器和网站服务器之间的传输通信数据,就能直接获知其中的信息。

  • HTTPS: HTTPS是经由SSL安全套装层对网络连接进行加密处理来防止数据在传输过程中被窃取或篡改。安全性较高。

网络安全

网络中常见的几种安全问题:

  1. **XSS (Cross Site Scripting)**:XSS是一种常见的巧妙利用网站未做好用户输入过滤来盗取用户信息甚至进行恶意操作的攻击方式。因为有些网站并没有有效地过滤用户的输入,攻击者就可以输入一段脚本代码,其他用户在看见攻击者发布的内容时这段代码就会被执行,实现攻击的目的。

  2. **CSRF (Cross Site Request Forgery)**:CSRF攻击是攻击者利用用户的身份去执行某种操作,跟XSS不同,XSS是攻击数据接收对象,而CSRF是攻击数据请求的对象。

  3. SQL注入:SQL注入就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

如何防御

  • 防御XSS攻击:可以使用如下手段:

    • 对用户的输入进行过滤或者转码
    • 使用HTTP-only来禁止脚本访问cookie
    • 使用CSP(Content Security Policy)来禁止浏览器加载第三方的资源
  • 防御CSRF攻击:常见的手段是使用Token,即在用户请求某个需要安全防护的操作时,服务器会创建一个Token,附在用户的Session中,然后将这个Token发送给客户端,当客户端再次发送该操作请求时,必须携带这个服务器颁发的Token,服务器会验证这个Token的合法性。

  • 防御SQL注入:使用预编译的SQL查询和参数化的查询可以有效防御SQL注入。

更安全的HTTPS

HTTPS端到端的加密通过TLS/SSL实现。TLS协议的握手过程会使用公钥基础设施(PKI)通过对称加密生成一个会话密钥。这样,服务器和客户端之间的所有通信均由该会话密钥加密,为数据提供了保密性和完整性保障。

使用HTTPS的优势包括:

  1. 数据保密:所有通信内容都是加密的,网络中间人很难直接看到明文内容。
  2. 数据完整性:可以防止数据在传输过程中被改变。
  3. 服务器身份验证:通过查看SSL证书用户可以确认自己是与真正的服务器通信。

Cookie的安全性

Cookie 是网站用于保持用户会话的重要工具。然而,Cookie 也可能成为潜在的安全问题。设置 Cookie 的时候,应考虑以下几个安全性选项:

  • Secure:标记为 Secure 的 Cookie 只能通过被加密的安全连接 HTTPS 发送。
  • HttpOnly:标记为 HttpOnly 的 Cookie 不能被客户端 JavaScript 访问,这有助于缓解 XSS 攻击。

内容安全策略(CSP)

CSP 可以作为防范 XSS 攻击的重要工具。它的工作原理是,网站管理员定义哪些内容是可信的,浏览器则只会执行来源于可信列表的资源。例如,这可以用来阻止来自未经批准的网站的JavaScript执行,防止恶意外部脚本对网页进行篡改。

相关推荐
李纲明3 小时前
WordPress 后台登录马上被踢回登录页:Cookie 域、HTTPS、盐值和页面缓存怎么查
运维·缓存·https·php·wordpress·cookie
Lsetea7 小时前
curl指定--tlsv1.2仍连接TLS1.3:最低版本与tls-max排查
linux·https·ssl证书·curl·tls
Lsetea7 小时前
curl访问HTTPS报47 Too many redirects:重定向循环与max-redirs排查
linux·http·https·ssl证书·curl
豆豆12 小时前
网站漏洞应急处置 + 安全加固指南,附安全 CMS 推荐
web安全·网站安全·1024程序员节·漏洞修复·漏洞处置·cms 选型·网站漏洞修复
在世修行12 小时前
智学文枢:AI 客户端封装
python·http·ai·1024程序员节·pyside
李纲明15 小时前
WordPress 挂上 Cloudflare 后询盘和后台异常:缓存规则、SSL 模式和真实 IP 怎么核
运维·缓存·https·cdn·wordpress·cloudflare
2501_915106321 天前
跨平台抓包工具怎么选?TraceEagle抓包鹰 的四种跨平台能力
网络协议·计算机网络·网络安全·ios·adb·https·udp
Fnetlink11 天前
Fnet 云网安 261023
运维·开发语言·网络·人工智能·安全·web安全·php
j7~1 天前
【Linux网络加餐】《HTTPS 协议原理》---详解
网络·网络协议·https·加密·ca认证·解密
其实防守也摸鱼1 天前
网络安全法竞赛知识总结与题库
前端·网络·人工智能·安全·web安全·重构·nc