首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

网站被劫持,求解决方案

  •  
  •   4578004 · 169 天前 · 2711 次点击
    这是一个创建于 169 天前的主题,其中的信息可能已经有所发展或是发生改变。

    http://exxvip.com/ 打开就会跳转到博彩网站,使用 https 访问正常,开启了 HSTS 貌似不起作用;

    查看解析的 IP 确实是 cloudflare 的节点 IP,但 response 头信息不对,似乎是被运营商劫持了

    33 回复  |  直到 2019-06-24 15:53:55 +08:00
        1
    lisonfan   169 天前
    我这能直接打开,DNS 劫持你没点办法的,腾讯他们联名发文还是一样没解决
        2
    jianjian001   169 天前   ♥ 1
    上海电信,跳转 https://3377001.com
        3
    wlchn   169 天前
    在 Cloudflare 的 Crypto 中选择 Always Use HTTPS,SSL 选择 full 或 full district 试试?
        4
    lekai63   169 天前 via iPhone
    杭州移动 没问题
    全球区块链资产交易中心
        5
    4578004   169 天前
    @wlchn
    这是劫持之后的响应头信息:

    Remote address: 104.23.190.70:80

    HTTP/1.1 200 OK
    Server: nginx/1.12.2
    Date: Sun, 23 Jun 2019 13:06:11 GMT
    Content-Type: text/html
    Last-Modified: Sun, 23 Jun 2019 05:21:51 GMT
    Transfer-Encoding: chunked
    Connection: keep-alive
    ETag: W/"5d0f0c6f-253"
    Content-Encoding: gzip


    正常应该是:

    HTTP/1.1 301 Moved Permanently
    Date: Sun, 23 Jun 2019 13:10:26 GMT
    Transfer-Encoding: chunked
    Connection: keep-alive
    Cache-Control: max-age=3600
    Expires: Sun, 23 Jun 2019 14:10:26 GMT
    Location: https://www.exxvip.com/
    Vary: Accept-Encoding
    Server: cloudflare
    CF-RAY: 4eb6b3bf5ec484ee-HKG
        6
    welling   169 天前
    这真的不是广告?。。
    https 也是博彩
        7
    wlchn   169 天前
    建议你在 crypto 中 SSL 开启 full 模式,然后开启 Always Use HTTPS 这个选项。这样任何请求打到你的服务器上都是 443 端口。至于证书 full 模式你可以自己随便生成一个证书,或者在 Origin Certificates,create,域名输入 example.com 和*.example.com (你的域名)。
        8
    4578004   169 天前
    @wlchn 已经是这样配置了,还是一样
        9
    4578004   169 天前
    @welling https 正常,响应头全部是 cloudflare
        10
    syuraking   169 天前
    自己的就不要让你套 CF,
    早就已经有这种劫持了,国内的问题,
    感觉这样的话,封杀套 CF 的域名一抓一个稳……
        11
    wlchn   169 天前
    @4578004 你机器 ssl 配置有问题吧 访问 https://exxvip.com 响应 502
        12
    miyuki   169 天前
        13
    4578004   169 天前
    @wlchn 这个问题不大,加上 www 访问即可。
        14
    4578004   169 天前
    @miyuki 这个看过了,一样的问题。。目前除了用 https,无解。
        16
    4578004   169 天前
    @leo7476040305 劫持把原本 302 跳转 https 的响应替换成了这段跳菠菜的响应。。。。
        17
    wlchn   169 天前
    @4578004 访问 https://不带 www 你的域名 响应 502, 问题不大? 如果 1.你开启 ssl full,2. Always Use HTTPS,3.机器配置好证书,访问 http://不带 www 你的域名 正常是先会跳转到 https://不带 www 你的域名 的,然后你这个响应 502 问题不大?
        18
    leo7476040305   169 天前 via iPhone
    @4578004 https 国外 IP 显示 502,国内正常,可以考虑把首页跳转的逻辑移到后端处理,把那个 js 里的域名配置加密一下看看会不会解决,其实直接强制跳转 https 就好了啊
        19
    4578004   169 天前
    @wlchn ..好的老板,修复好了。。
        20
    4578004   169 天前
    @leo7476040305 https 跳转 502 修好了,关键问题 http 跳菠菜无解。。。
        21
    leo7476040305   169 天前 via iPhone
    @4578004 怀疑菠菜更改了你首页 js 配置里的域名
        22
    wlchn   169 天前
    @4578004 如果你确实 1.开启 ssl full,2. Always Use HTTPS,3.机器配置证书没问题。那么问题应该是中间人劫持了。当发起 http 请求,还没有到 cloudflare 的时候已经被劫持了。
    看了你 https 正常的响应中
    strict-transport-security: max-age=0; preload
    max-age=0 表明你的 HSTS 没有生效。你可以设成半年或一年试试。但开启了 HSTS 可能还是会被劫持,原理是 HSTS 对于新客户第一次 http 访问是不会在浏览器直接转 https 的。
    如果想让 http 访问从第一次就一直在浏览器直接转 https,需要加到 preload list 中,并且所有子域名都必须 https,而且这需要一些时间更新,但是可以解决中间人劫持问题。
        23
    leo7476040305   169 天前 via iPhone
    @4578004 看你 nameserver 是 dnspod 的,可以试下阿里云的看看还会不会出现这个问题
        24
    Myprincess   169 天前
    我被劫持过三次
    第一次,腾讯云电话警告.
    第二次,阿里云域名 HOLD 住,很难解封.因为域名在阿里云.服务器在腾讯云.第二次是没有任何警告的,直接封.然后提供公安部备案,阿里云放行,但是还是被 XX 联盟封杀.申诉需要 28 天.
    第三次又被劫持.我删除了网站,进行转移.幸亏没被烧扫描到.如果第三次被抓,全线挂.不解封.
        25
    4578004   169 天前
    @wlchn 全部配置妥当了,还是不行,只要是 http 请求,回来的东西就被中间商改掉了。。
        26
    4578004   169 天前
    @leo7476040305 解析是没问题的,目标 IP 都对
        27
    4578004   169 天前
    @Myprincess 域名在狗爹应该没问题
        28
    miyuki   169 天前
    @leo7476040305 cloudflare 的 ip 被劫持过,这个大概率不是源站问题…


    前不久直接访问 ip 也会被劫持 /t/572031

    如果没记错的话 https://imgcdn.lgjuzi.com/img/ekUr9cUR1PoMNHd5nfTDcpmFZM269mvv1Y2FBh0NlS2xjS964on2owNpnPhT6xVLSHja2RsA57.jpg 这段代码的跳转内容,和另一个帖子里看到的菠菜站一样
        29
    wlchn   169 天前
    @4578004 HSTS 生效了!你在非隐身模式 http://www.exxvip.com 是已经可以了,但是你的非 www 域名返回中没有 strict-transport-security 字段,需要加上。这样你访问过之后跳转 https 就都是在浏览器跳转不存在劫持了。

    但是隐身模式或者第一次访问还是不会在浏览器跳 https,见我在 22 楼的回复。
        30
    mytsing520   168 天前
    你们都讨论些什么呀。。
    确认不是楼主网站本身就被劫持了么
        31
    agee   168 天前 via iPhone
    先解析到一个空的静态页面测试一下是不是站点有问题吧。
        32
    loukky   168 天前
    前几天不是在讨论吗???国内 tcp 链接 cf 某些 IP 会劫持到菠菜站
        33
    7DLNU56W   168 天前
    据我所知,遇到劫持没有好的解决方案,只能通过投诉、诉讼来解决。借助技术手段上 HTTPS 也只能在遇到劫持时停止继续访问,无法从根本上解决劫持问题(不过不排除有写中间人看到 https 就不再劫持的情况),HSTS 是需要客户端访问过一次后才会生效的,如果还没有加入客户端的 HSTS 列表还可能是会遇到降级攻击的。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2174 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 15:46 · PVG 23:46 · LAX 07:46 · JFK 10:46
    ♥ Do have faith in what you're doing.