最近玩文心一言时,打开开发者工具,发现会进入一个匿名函数的断点中,点击继续执行则直接变成空标签页面。这里明显是做了反debug。这里就该实现技术分析下。

分析

  1. 在断点位置查看调用栈发现有setInterval。
  2. 匿名函数这里的标签显示是VM,所以包含断点的匿名函数是eval或者new Function生成的代码。
  3. 断点执行后,执行window.location.replace(“about:blank”);。但具体是如何判断进入了断点,因为这里做了代码混淆,没分析出来。但是可以想到一个办法就是利用时间判断来做。进入debugger之后的逻辑执行肯定是会明显的变晚,算一个时间差就可以判断出是不是开了开发者工具。

例子

阅读全文 »

最近JD 入手AirTag,入手价178CNY。玩了下,觉得还挺有意思的。这里总结下。

AirTag基本信息

  1. AirTag是2021年上市,2年了,但价格坚挺,一开始PDD一个单价最低可以到100多点,现在单件快200CNY。Apple果然还是保值些

  2. 电池续航1年大概,足够了,换电池比较简单

  3. AirTag功能就是利用FindMy追踪物品

  4. 由于AirTag本身不带保护套,官方的又较贵,推荐第三方保护套购买,防丢也防刮花

使用场景

目前只买了一个,所以放在了钥匙链上。解决场景是急着出门找不到钥匙,但又确定其没丢。有了AirTag好多了,定位+发出声响。

阅读全文 »

最近进行第二次博客升级,避免积攒技术升级过多后期不好调整。

这里描述下改动

升级hexo框架

1
2
# 直接检测升级相关包,比如hexo,hexo-cli等
npm-check -u

hexo7还是rc且目前使用的next主题中依赖也是6.x,这里也就不大版本升级了

升级next主题

阅读全文 »

2020.6到现在3年,手里的AirPods2不扛打了,于是618更新到3代。这里我继续走的JD,选择MagSafe款,入手价1179CNY

3代在使用2天后整体感觉低于预期,希望能渐渐适应。这里列下我个人发现的优缺点

3代 vs 2代

缺点

  1. 舒适度

    主要1,2代是同一套外形设计,先入为主多年,目前我佩戴3代会有一些不适,主要是带着更偏紧,当然好处也就是不易脱落了。总之目前觉得舒适度不如2代。

  2. 充电盒耳机槽

    仍然是先入为主了前两代,耳机插入方向与之前的刚好相反,造成目前每次放入的时间会比之前长一丢丢。

阅读全文 »

介绍

Telegram是一款免费的即时通讯应用程序,类似于微信。但Telegram有丰富的组/频道/机器人,开放的API也使得很方便创建自己的,同时比较自由。因此工作之外,TG是个很好的获取资讯和提升效率的工具。

注册

推荐使用国外手机号,比如走Google Voice号码注册

推荐频道/机器人

阅读全文 »
0%