1.XSS跨站脚本攻击。跨站脚本。改为XSS,因为它与CSS同名。Reflective通过在传参处植入代码实现数据传输。存储型利用存储能力植入恶意代码。当用户读取该输入时,如果它直接运行到页面。恶意脚本将一起执行。常见危害获取页面数据获取Cookies劫持前端逻辑发送请求窃取网页数据窃取用户信息窃取用户登录状态欺骗用户防范方案HEAD通过加头禁止XSS过滤ctx.set('X-XSS-Protection',0)0禁用1启用(默认)CSP内容安全策略(CSP,ContentSecurityPolicy)。创建一个白名单,告诉浏览器哪些外部资源可以被加载和执行。只允许加载本站资源Content-Security-Policy:default-src'self'只允许加载HTTPS协议图片Content-Security-Policy:img-srchttps://*不允许加载任何源码框架Content-Security-Policy:child-src'none'escapecharacterblacklist用转义字符替换所有用户敏感的字符串。安装xss依赖项。使用xss('')函数进行转义。HttpOnlyCookie设置请求头,不允许js直接获取cookie。防止XSS攻击后获取信息。response.addHeader('Set-Cookie','name=layouwen;Path=/;HttpOnly')2.CSRFCSRF(CrossSiteRequestForgery),跨站请求伪造。以一种特殊的方式,我们被诱导在恶意URL中请求我们的目标地址。会带走我们的饼干。如果黑客篡改了我们的请求参数,就会伪造身份进行操作。常见危害利用用户登录状态伪造业务请求冒充用户发布防范方案禁止第三方网站使用CookieReferer检查请求者是否为我们的白名单短信/邮件/刷验证码方式进行隐藏。诱使用户点击按钮发送消息。预防方案X-FRAME-OPTIONS设置了请求头,不允许iframe嵌入。DENY不允许SAMEORIGIN允许同域名允许ALLOW-FROM允许指定来源ctx.set('X-FRAME-OPTIONS','DENY')js通过js脚本判断网站是否嵌套。如果嵌套,清除内容并隐藏它。4.SQL注入使用拼装条件连接sql查询。满足不应该满足的条件,从而得到数据。防御方案使用库对sql语句进行转义处理后执行。5.OS命令注入与SQL注入类似,都是组装命令执行恶意内容。6、请求劫持DNS劫持是在DNS解析过程中,引导用户访问错误的结果。HTTP劫持最简单的方法就是升级https7,常见的攻击方式SYNFlood我们都知道TCP有三次握手。通过大量的连接,每次连接三次都没有完成,TCP连接处于等待下一次握手的状态。达到耗尽的目标资源。HTTPFlood通过大量访问,导致服务器瘫痪。
