魔改G-010S-A“猫棒”(PON STICK ONU)原生固件,支持LOID认证(一)

背景

什么是“猫棒”

不知从何时起,突然掀起了一波用猫棒替换光猫的研究热潮。
所谓猫棒的学名是PON STICK ONU,即是一种SFP光模块(STICK)形态的光网络单元(ONU)或者叫光网络终端(ONT)[1],用来接入在无源光网络(PON)。说人话就是家里拉宽带,运营商给的光猫。只不过猫棒是个SFP光模块形态的“棒子”,而不像一般的光猫是个盒子。从这个角度看“猫棒”这个名字还是很形象的。另外不同于一般的1G/10G网络用的SFP/SFP+光模块只是个PHY,“猫棒”里面是有独立的SOC,跑着定制的Linux系统,包含OMCI协议的实现,是一个完完整整的光猫。

修复less升级到4.0+版本导致的页面异常

背景

顺shou手jian升级了下博客的Hexo版本和依赖的npm包,重新渲染了一遍博客发现页面元素都错位了。看来是某个依赖包有breaking-changes。

1
2
3
4
5
6
7
8
9
10
11
12
13
PS > npm-check-updates -u
Upgrading C:\Users\rayle\OneDrive\桌面\AxisRay.github.io\package.json
[====================] 16/16 100%

hexo ^5.4.0 → ^6.0.0
hexo-generator-json-content ^4.1.6 → ^4.2.3
hexo-renderer-ejs ^1.0.0 → ^2.0.0
hexo-renderer-less ^2.0.2 → ^4.0.0
hexo-renderer-marked ^4.1.0 → ^5.0.0
hexo-renderer-stylus ^2.0.0 → ^2.0.1
hexo-server ^2.0.0 → ^3.0.0

Run npm install to install new versions.

如何PowerShell会话中设置代理

背景

由于众所周知的原因,github的访问一直不太顺畅。

1
2
PS [GIT_REPO]> git push
fatal: unable to access 'https://github.com/AxisRay/AxisRay.github.io.git/': Failed to connect to github.com port 443 after 21141 ms: Timed out

在Bash中,我们可以通过如下命令来为HTTPSHTTP设置代理。

1
2
export HTTP_PROXY=http://127.0.0.1:1080
export HTTPS_PROXY=http://127.0.0.1:1080

而在Windows下,PowerShell会话中也有类似的设置方式。

设置方法

1
2
$env:HTTP_PROXY = "http://127.0.0.1:1080"
$env:HTTPS_PROXY = "http://127.0.0.1:1080"

Boom!

1
2
3
4
5
6
7
8
9
10
PS [GIT_REPO]> git push
Enumerating objects: 23, done.
Counting objects: 100% (23/23), done.
Delta compression using up to 8 threads
Compressing objects: 100% (11/11), done.
Writing objects: 100% (14/14), 8.09 KiB | 1.62 MiB/s, done.
Total 14 (delta 7), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (7/7), completed with 5 local objects.
To https://github.com/AxisRay/AxisRay.github.io.git
b582b44..90e06b5 source -> source

【PM3】对公司新工卡的分析记录(二)——嗅探准备

前情提要

上一篇说到公司换上了“新开普”工卡系统,新的工卡是一种CPU卡。其MIFAREClassic部分成功DUMP出来,但是没有有价值的信息,分析之路暂告一段落。

这次尝试使用PM3强大的Sniff(嗅探)功能,抓取和门禁的交互,看是否能够获取到有价值的信息。

嗅探

在之前重置小米空气净化器滤芯寿命那一篇中,已经初步领略到了嗅探功能的强大。这一次虽然还是嗅探,但是我们打算换一种方式使用。

PM3是要连接电脑使用的。想象一下,如果我们抱着电脑,拿着一个奇怪的小装置,在门禁旁边进行可疑的操作,一定会被警察叔叔当成可疑份子抓起来。所以要嗅探门禁,必须采取一种更加便捷、隐蔽的方式进行。

工具准备

【PM3】重置小米空气净化器滤芯

背景

家里小米空气净化器的滤芯又到期了,然而深圳这边空气质量平时就不错,应该还可以用很久。但是恼人的过期提示令我非常不爽,得想办法干掉这个提示。

根据网上的资料,小米空气净化器2S是依赖滤芯底部的RFID标签计算滤芯寿命的,正好手头有一块RFID的利器-Proxmark3。尝试下能否读取和修改RFID标签中的数据,来实现滤芯寿命的重置。
滤芯底部的标签

识别标签类型

Git如何合入上游仓库的分支

背景

github上的开源项目有时无法完全满足自己需要,或者项目本身存在BUG,但是等不到开发者去修复。这时候我们往往会选择fork,然后自行修改或使用。但是一段时间后,原项目开发者可能会更新项目,追加新的功能或者修复已知BUG。这时,为了避免与上游脱节,我们需要将上游仓库合入到我们fork的仓库中。