有没大佬总结一些网络安全相关的知识
面向应用,基础 web 安全知识就足够了(不需要太 hack 的)
前端
csrf + xss + 代码混淆 是标配,可以搜下相关原理,csrf 主要是后端提供一个 cookie 来实现,比如 X-XSRF-TOKEN
spring security 自带的,xss 防护一般使用现代前端构建框架,如 Vue、React、Angular 已经可以拦截大部分开发中的误操作了,除非你明确要插入 HTML 字符串,比如 React 的 dangerouslySetInnerHTML
后端
常见的就是 SQL 注入问题,不过现代 ORM 框架已经能够很好解决这些问题了,比如 mybatis 的 prepareStatement 预编译 SQL 语句就可以拦截大部分 SQL 注入问题了:
select * from user.user where id = #{id}
其中的 #
符号表明一个预编译变量,但是还是有一些例外情况,比如 SQL语句中的一些部分,例如order by字段、表名等,是无法使用预编译语句的,这种场景极易产生SQL注入(参考文章)。
(我说的这些只是开发中的基础防护,建议都做上)