《Web 开发的安全之旅》听课笔记 | 青训营笔记

91 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第5天

Web 开发的安全之旅

今天的前端课程是我以前都没有怎么接触过的东西,网络安全很重要,在前端方面的占比也不低,听老师讲课,记了一些笔记

  • 攻击篇

    • XSS
    • CSRF
    • SQL 注入
    • SSRF
    • DoS
    • 中间人攻击
  • 防御篇

    • SameSite Cookie
    • HTTPS
    • HSTS
    • CSP
    • SRI

攻击篇

XSS跨站脚本攻击

  • 开发者盲目信任用户提交内容
  • 直接将用户输入渲染到DOM上

如果攻击者使用输入框,输入了一些获取用户信息的javascript代码,获取到cookie,token。或者写一个弹窗,跳转到病毒网站 dome

image.png 读写数据没有对用户提交的内容进行过滤,

CSRF 跨站伪造请求

  • 在用户不之情情况下
  • 利用用户权限(cookie)
  • 构造指定 HTTP 请求,修改窃取铭感信息

常试用在get请求中,

demo

image.png

SQL 注入

如果有一个http请求,请求的参数是一个sql语句, 然后发送到服务器, 服务器接收并处理这段请求, 容易被获取到一些明敏感数据,可能导致数据被修改和删除

demo

image.png

image.png

还有其他的注入攻击例如cli,OS command,SSRF等等

Denial of Servie(DOS)

通过某种方式(构造特定请求),导致服务器资源被显著消耗,来不及响应更多请求,导致请求被挤压,进而雪崩效应 学过一些计算机网络的东西,当请求过多堆积时,网络的效能不是线性减低的,而是到达一定程度就会断崖式崩塌。

demo: 正则表达式的贪婪模式

中间人攻击

顾名思义中间人攻击意思是,在服务器和用户之间,有着中间人的存在,用户和服务器的通信看似是直达的,但中间有这层影响,而这中间人又可以随意地更改用户的发送和浏览器的发返回,容易造成信息的问题

  • 明文传输
  • 信息篡改不可知
  • 对方身份未验证

防御篇

XSS

  • 永远不要信任用户提交的内容
  • 不要将用户提供的内容直接转换为DOM

image.png

在前端,当前的一些主流框架都避免了这类事情的发生。服务器端中也有 DOMPurif 进行防御。

待跟新......