CSRF全名是 Cross Site Request Forgery,翻成中文就是跨站请求伪造。
因为一般cookie是存放在浏览器的,网页开发者不必另外写程序取用cookie,浏览器就会自动带上先前登入过的状态到网页,CSRF攻击就是利用浏览器会自动带入cookie中存的使用者当前已登入网页的登入状态的这个漏洞,将一些攻击脚本塞进网页里,再利用浏览器储存的使用者权限来进行非本意的操作(翻成白话就是让使用者在不知情的情况下做出一些攻击者预先埋藏在网页里的动作)。
小美常常在XX论坛发表文章,而因为经常登入这个论坛网站,登入状态被浏览器cookie自动存了下来,而这个网站没有任何阻挡CSRF攻击的机制。坏蛋小明发现这件事後,决定要来恶作剧。他知道小美喜欢猫,於是有天在某个部落格网站,放了一个按钮『可爱猫咪相簿连结』,但按钮点下去产生的动作是『 删除 https://XX论坛.com/post/1
」这样的脚本,当小美上当点了下去,就在不知不觉间把自己写的一篇文章给删除了。
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
end
这个功能会在所有的表单中自动插入安全验证码,在进行所有post请求之前,rails server端都会先检查有没有戴上正确的安全验证码:
<form action="/technical_infos" enctype="multipart/form-data" method="post">
<input type="hidden" name="authenticity_token" value="zXeOqhmF0VLxDhtTJVxfDGv1ik5jmIyreAA1qNHtC3/0rTo1dwUr4b4uIUtS2plnD3+PrsCO/aZVrw==">
另外,浏览器的同源政策,也就是用来阻挡跨域请求(CORS)以避免钓鱼网站在网页内容里放一些攻击脚本的一种机制。同源政策某种程度上也可预防CSRF(但只能防止一部份),而身为网页开发者总不能期望每个浏览器都有这层保护机制,该处理的一些安全性问题还是得靠自己。
资料前处理部分跟 Pytorch 篇一样,就不重复写了,这边只写 model 跟 Training ...
GitHub Repo https://github.com/b2etw/Spring-Kotlin...
创建App-传发短讯 为了本App的传送短讯功能,因此来实作! 首先需要在专案的框架中加入Messa...
案例说明及适用场景 当我们有某一个科目,需要管理他是否还有余额未被处理,这个科目就是所谓的 调节科目...
续上篇 Day1 理解 golang slice 用法及原理 I 什麽是 slice 是的容量 (c...