- XSS(跨站脚本攻击)
是指攻击者在返回的 HTML 中嵌入 javascript 脚本,在用户浏览网页的时候进行攻击,比如获取 cookie,或者其他用户身份信息,可以分为存储型和反射型,存储型是攻击者输入一些数据并且存储到了数据库中,这就意味着只要访问了这个页面的访客,都有可能会执行这段恶意脚本,因此储存型XSS的危害会更大。
反射型的话不存储在数据库中,往往表现为将攻击代码放在 url 地址的请求参数中,也就是攻击相对于访问者而言是一次性的,具体表现在我们把我们的恶意脚本通过url的方式传递给了服务器,而服务器则只是不加处理的把脚本“反射”回访问者的浏览器而使访问者的浏览器执行相应的脚本。也就是说想要触发漏洞,需要访问特定的链接才能够实现。
为了减轻这些攻击,
在 HTTP 头部配上set-cookie:
1、httponly-这个属性可防止XSS,它会禁止 js 脚本来访问 cookie;
2、 secure - 这个属性告诉浏览器仅在请求为 https 的时候发送 cookie。
结果应该是这样的:Set-Cookie=… - CSRF:跨站请求伪造
攻击者盗用用户的身份,以用户的名义向网页发送一些请求,比如修改密码,发送邮件,购买物品等。专业术语来说就是在受害者访问一个网站时,其 Cookie 还没有过期的情况下,攻击者伪造一个链接地址发送受害者并欺骗让其点击,从而形成 CSRF 攻击。防御方式:
1.验证 HTTP Referer 字段,Referer可以记录上一次请求的来源地址,若黑客向发起CSRF攻击,只能在他们自己的站点构建请求,这两个站点是不一样的。能起到一定作用;
2.加入验证码;
3.在请求中加入Anti CSRF Token 并验证;
4.在 HTTP 的header自定义属性并验证。
XSS攻击和CSRF(通俗易懂)
最新推荐文章于 2024-05-15 09:43:16 发布