知识点:
1、JavaWeb常见安全及代码逻辑;
2、目录遍历&身份验证&逻辑&JWT;
3、访问控制&安全组件&越权&三方组件;
演示案例:
JavaWeb-WebGoat8靶场搭建使用
安全问题-目录遍历&身份认证-JWT攻击
安全问题-访问控制&安全组件-第三方组件
环境下载:
https://github.com/WebGoat/WebGoat
上传头像,通过修改地址,可以把头像上传到上级目录
JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案
JWT 的原理是,服务器认证以后,生成一个 JSON 对象,发回给用户,就像下面这样。
以后,用户与服务端通信的时候,都要发回这个 JSON 对象。服务器完全只靠这个对象认定用户身份。为了防止用户篡改数据,服务器在生成这个对象的时候,会加上签名(详见后文)。
服务器就不保存任何 session 数据了,也就是说,服务器变成无状态了,从而比较容易实现扩展。
{ "姓名": "张三", "角色": "管理员", "到期时间": "2018年7月1日0点0分" }