evilmiracle
V2EX  ›  编程

全局禁用 JS 的情况下,如何做到人机识别?

  •  
  •   evilmiracle · Aug 6, 2019 · 5223 views
    This topic created in 2647 days ago, the information mentioned may be changed or developed.

    在网站全局禁用 JS 的情况下,只有 HTML + CSS 还有一个 Nginx。

    如何实现反爬虫,人机识别?

    6 replies  •  2019-08-07 00:26:59 +08:00
    jangit
    jangit
    Aug 6, 2019 via iPhone
    1
    弄个链接放到页面里面,然后后端判断访问页面的同时有没访问那个链接?感觉应该是可以的
    evilmiracle
    evilmiracle
    OP
    Aug 6, 2019
    2
    @jangit 怎么判断是人呢?人就一定会访问那个链接吗?
    evilmiracle
    evilmiracle
    OP
    Aug 6, 2019
    3
    @jangit 后端怎么识别,是否有请求这个资源、链接呢?
    lookas2001
    lookas2001
    Aug 6, 2019 via Android
    4
    构建 ip 信誉库或者买,ipip.net 有提供类似服务。或者直接套 cloudflare。
    cookie 可以设置单 ip 最多获取 session id 次数。可以跟踪用户访问过的网址。光看内容页不看列表页的,光看 html 不下 css 的,观察 referer,不通过搜索引擎,直接访问的也可以关注一下。
    其实说要是反爬虫的话为啥不上 js 呢?连 tor 都提供 js 的。加了 js 就有很多东西可以搞了。
    淘宝有识别无头浏览器的黑科技,浏览器指纹什么的可以了解一下,各种混淆什么的也都可以上一下。也可以通过调用时间什么的来评估一下客户端 cpu 和 gpu 性能情况(服务器一般没有 gpu 的)。浏览器视窗大小什么的都可以作为判断依据的。总之你能想到的都可以做判断依据。
    说了这么多,其实上第三方提供的行为识别服务是最简单的方法,可以直接接入到服务商提供的风险识别体系中。
    逻辑有点乱,见谅。希望能带来帮助。
    creedowl
    creedowl
    Aug 6, 2019 via Android
    5
    最基本的验证码也可以吧
    jim9606
    jim9606
    Aug 7, 2019
    6
    反爬通常都是 ip 库+频次限制。
    我不明白为啥会出现无 js 的情况,有一种常见的反爬策略是用 js 异步加载主要元素,这样爬虫为了获得有效信息就不得不执行 js。这时 js 能干的事就很多了。
    人机识别不外乎 ip 数据库+验证码。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2719 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 13:31 · PVG 21:31 · LAX 05:31 · JFK 08:31
    ♥ Do have faith in what you're doing.