0%

在上文中较为详细的介绍了指纹、设备指纹的常规获取与获取指纹环境监测,本节将详细的了解一下 浏览器指纹在反爬虫领域的应用,Android分析暂且搁置(其实是我也并不精通,pc端比较熟悉一点) 本节详细的聊聊Web指纹,在学习前必须先给自己的几个问题? 什么是web指纹? 见上文 Web指纹有何作用? Web指纹的作用有很多,例如区分环境、区分机器人与真实用户,保障正常运行,只要是web浏览器的特征均可以作为web指纹 Web指纹有哪些? 浏览器常见指纹如下 全局:window、document 环境:navigator、screen、history 请求:XMLHttpRe
阅读全文 »

认识指纹 什么是指纹 设备指纹、浏览器指纹也是同理根据软硬件信息,设备版本、设备操作系统等差异性从而生成唯一的设备指纹。 人的手有手指、手掌握纹,通过凹凸规则、分布状态的差异造就了相对其独一无二的特征。 指纹是怎么产生 手机的操作系统、浏览器厂商为了方便用户与开发者获取用户的设备信息预留了一些API供程序使用,用户和开发者可以通过这些API获取客户端相关的软硬件信息 这些信息因人而异通过部分信息来产生相对差异的信息来生成生成相对独立的设备ID。 简单理解就是软件信息(部分或全部)、硬件信息(部分或全部)+ 指纹生成算法=生成指纹 辨识度的信息可以是系统信息、软件信息、地理位置、时
阅读全文 »

在做爬虫的时候,很多时候都会遇到较成熟成体系的安全产品。更好的"认识" 它,对于解决有至关重要的帮助。以下一起来了解一下网站常见防护产品及特征 声明:本节不涉猎任何实际的产品破解,仅介绍其特征与辨别方式或思路。以下仅根据个人现所了解暂划分为一线、二线等。 一线 学习的对象,自研产品。安全系数高,分析较困难 ali、akamai、jd、pdd、google(含无感验证码)、各大银行支付接口 ali滑块 阿里云验证码: https://help.aliyun.com/product/28308.html 控制台中有g.alicdn.com字样,其中/后为版本号 akamai 主要
阅读全文 »

网页反调试总结 网站除了对代码进行加密进行保护,还时常携带了反调试手段。例如无限debugger;内存爆破,控制台检测。 相关无限debugger进行反调试阻挠请参考上文,不在此过多赘述。本节主要学习内存爆破原理与绕过思想、控制台检测原理与绕过, 内存爆破 通俗来理解是通过“特殊手段”不断开辟新内存,造成内存存储不足,从而使程序或电脑宕机。内存爆破并没有一种具体的实现方式,如果实现了内存爆破的效果都可以称之为内存爆破。 当我们在编程的时候,每当声明一个变量、初始化一个函数。都会在开辟一块内存。 内存爆破实现的流程 检测环境 实现内存爆破 此处的环境为泛指,当与正常用户访问相悖或
阅读全文 »

为什么需要数据防护? 当今如今大数据时代,数据重要不言而喻,网页和 App 作为主流的数据载体,如果其数据没有任何的保护措施,在爬虫工程师解决了一些基本的反爬如User-Agent、cookies、验证码等的防护措施之后,那么数据依旧可被轻易的获取。 数据防护主要体现在何处? 数据防护可简略的划分为请求防护、数据内容防护、验证码 请求防护 * User-Agent * Cookie * 签名验证 * 握手验证 * 协议 * 。。。 数据内容防护 * CSS字体偏移 * SVG字体映射 * 图片数据 * 。。。 验证码 个人总结为以下几种类型,具体体现不在过多
阅读全文 »

网页调试之JSHook 什么是Hook? Hook 又叫作钩子技术,它就是在程序运行的过程中,对其中的某个方法进行重写,在原有的方法前后自定义的代码。相当于在系统没有调用该函数之前,钩子程序就先捕获该消息,可以先得到控制权,这时钩子函数便可以加工处理(改变)该函数的执行行为。执行函数后释放控制权限,继续运行原有逻辑。 Hook执行流程图 Hook思路 1. 寻找hook点 2. hook 3. 伪装hooker 4. 调试(堆栈) Hook公式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 // 函数hooker var
阅读全文 »

网页调试之debugger原理与绕过 debugger 语句用于停止执行 JavaScript(以下简称JS),并调用 (如果可用) 调试函数。 使用 debugger 语句类似于在代码中设置断点。 注意: 如果调试工具不可用,则调试语句将无法工作。 实现debugger功能 直接使用书写debugger 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22< html lang = "en" > < head > < meta charset = "UTF-8" >
阅读全文 »

问题描述: 由于某种原因,我必须需要将某个集合的键(Key)复制一份副本。并移动到目标库 拿到这个问题,脑海里一共有两种方式 * 将所有的此集合中的所有的值从redis里面读取出来,然后再存进去。 * 使用集合的思想进行取差集或并集。如果二者有一个且仅有一个为空那么他们返回的结果为有值的集合 Redis:在集合中复制键 方案一 将所有的此集合中的所有的值从redis里面读取出来,然后再存到目标库中。 思路清晰,不再过多赘述。 如果数据较少可以使用SMEMBERS 类型为set,其中有26781027个 由于直接使用redis命令不是那么方便,故Python代码入下
阅读全文 »

Tampermonkey Tampermonkey 是一款免费的浏览器扩展和最为流行的用户脚本管理器,虽然有些受支持的浏览器拥有原生的用户脚本支持,但 Tampermonkey 将在您的用户脚本管理方面提供更多的便利。 它提供了诸如便捷脚本安装、自动更新检查、标签中的脚本运行状况速览、内置的编辑器等众多功能, 同时Tampermonkey还有可能正常运行原本并不兼容的脚本。 Tampermonkey的安装 方式一 Chrome商店直接下载 Chrome商店 -> 搜索 Tampermonkey -> Tampermonkey 安装即可 一般情况下是无法下载的,除非你能。。。 方
阅读全文 »

在爬虫调试的时候一个良好的调试习惯,正确的调试技巧。绝对能让您在抓包,定位及JS解密与JS逆向等各种方面事半功倍。 优秀的调试习惯 无痕模式 无痕浏览(隐私浏览模式 、隐身窗口、InPrevate),是指不留下上网浏览记录的互联网浏览方式。但是,用户下载的文件和建立的收藏夹或书签会保存下来。支持该模式的浏览器包括但不限于百度浏览器,Firefox火狐,搜狗浏览器,360安全浏览器,Avant browser ,世界之窗浏览器,Google Chrome,Internet Explorer 8及更新版本,Edge,Safari. 主要特性 不记录上网痕迹,保护您的个人隐私 不记录 C
阅读全文 »