当前位置 博文首页 > 文章内容

    以302 重定向和网址劫持为例,说说如何检测重定向和劫持

    作者:ccxjianye09 栏目:网站安全 时间:2020-11-20 15:10:14

         301 redirect: 301 代表永久性转移(Permanently Moved)

         302 redirect: 302 代表暂时性转移(Temporarily Moved ) 

    一、案例

         运营商的nginx 拦截请求,返回302

         location:http://xxx.js

         然后执行里面的js

    二、HSTS

         通常将 HTTP 请求 302 跳转到 HTTPS,但有问题:

         1.不安全,302 跳转会暴露用户访问站点,易被劫持。

         2.多增加一次访问,使得客户端响应速度慢。302 跳转需要一个 RTT(The role of packet loss and round-trip time),浏览器执行跳转也需要时间。

         302 跳转是由浏览器触发的,服务器无法完全控制,这个需求导致了 HSTS(HTTP Strict Transport Security)的诞生。HTSP 就是添加 header 头,

         告诉浏览器网站使用 HTTPS 访问,支持HSTS的浏览器就会在后面的请求中直接切换到 HTTPS。

    nginx添加HSTS支持

    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";