Horo
Horo

目前是 LikeCoin Chain 验证人 Yoitsu 背后的家伙,以及 CDC/CFC 划水组成员(笑)。偶尔会变身成狐狸。( @foobarz )

[SPICE-0002] - 赛博空间自我保护技巧包:利用 Telegram 转发短信

可能是友善的提醒: “技巧包” 中的方法可能需要一些计算机基础知识,一些要自己完成的操作,有可能还需要一笔支出。
欢迎通过各种方法和咱交换心得和意见。

为啥汝可能需要转发短信?

  • 有不少网络服务的主要验证手段是手机验证码(特别是在中国大陆)。
  • 手机网络依托的 GSM 已经被发现是不安全的了,这也是为啥“伪基站”攻击越来越多的缘故。
  • 汝有可能会把手机搞丢,于是一起丢了手机卡。(要是再被别有用心的家伙利用……一个比较新鲜的案例可以参考这篇文章
  • 或者汝为了省钱等各种原因开通了一张新手机卡,却因为各种原因(懒或者忘记了)没有在各种服务上更换的关联手机号码。然后又不想带着好几部手机(啥?)
  • 好吧咱编不下去了……

在开始之前

当然这招不能帮汝拦住所有的攻击(例如家里没锁好门于是转发短信的手机被偷、汝不走运的在家里遇上伪基站等等),以及从服务商向手机发短信这个过程因为汝自己控制不了,所以也和毫无防备差不多……

所以想在这种地方防御的话要么服务商自己不再用手机短信验证,要么自己放弃只能通过短信验证的辣鸡服务……

以及下面的内容可能会偏向中国大陆的状况多一些,虽然咱不确定会不会有其他地方的人想要参考,还是提醒注意一下好了。

准备一部 Android 手机

因为这次有用到一个小小的应用。(当然啦,在 iOS 上通过快捷指令应该能达到类似的效果,不过就不是这篇文章提起的范围啦……)

  • 配置不必很高,汝最近或以前换下来的手机就很合适。
  • 出于中国大陆厂商定制的 Android 会有一些不知是好是坏的调整,推荐使用类原生 Android 。(至于什么算作类原生的话可以自己上网搜索,或者问问汝身边可能了解的朋友们)
  • 如果汝像咱一样用中国电信的手机卡来接收验证码短信,而且想要模仿咱下面的操作的话,要注意汝的手机是否支持中国电信 UIM 卡作为副卡。(有的手机在同时插入电信卡和另一张卡后只有电信卡支持4G/3G,那另一张卡就没法上网了,后面的操作就模仿不起来啦……)
  • 然后把必要的保护措施做好,(例如设置 SIM 卡 PIN 啦、设置屏幕锁定啦、设置不在锁屏上显示通知啦……),防止有人想在汝放手机的地方图谋不轨(?)
  • 接上电源。(汝一定不希望汝在外面的时候接收短信的手机没电收不到消息吧……)

准备一只 Telegram Bot

首先推荐阅读 Telegram 官方的创建指南: https://core.telegram.org/bots#creating-a-new-bot
1. 在 Telegram 中打开 https://telegram.me/botfather ,会跳转到与 BotFather 的对话中。
2. 点击 /newbot, 接下来他会提示汝为要创建的机器人起个名字。 (Alright, a new bot. How are we going to call it? Please choose a name for your bot.)
4. 为汝的机器人指定一个用户名,和人类用户的规则基本一致,不过一定要以 “bot” 结尾 。(Good. Now let’s choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.)
5. 然后他会生成一个 token,大概是这样: 
Use this token to access the HTTP API:
xxxxxxxx:xxxxxxxxxxxxxx
把这串字符复制下来备用。

设置应用

https://github.com/telegram-sms/telegram-sms 下载 Telegram-SMS 、安装然后打开,界面大概像这个样子:

别忘了看看 Telegram-SMS 的用户手册常见问题解答

在“机器人令牌”那里填上刚才汝从 BotFather 那里拿来的 Token。

随便给汝自己的机器人发些什么,然后点击”获取最近的对话 ID“、就能得到汝自己的 ID 啦。

如果有需要的话,填写一个可信的电话号码,这个电话号码用于使用短信远程控制。

下面这些是可选的选项,汝可以根据自己的需要进行调整。

  • 网络错误回退到短信 - 当网络消息发送失败的时候,通过短信发送到可信号码。

汝填写了可信电话号码后这个选项才会出现,以及咱这次的目标之一就包括不打开这个选项。

  • 监控电池状态 - 当充电状态变动或手机电量过低的时候,发送信息。
  • 监控充电器状态 - 当充电器状态发生变动的时候,发送消息。
  • 获取聊天命令 - 使用聊天命令管理机器人(不启用将仅使用短信管理)。
  • 验证码自动提取 - 自动识别获取短信中的验证码(实验性功能)。
  • 显示SIM卡别名 - 在消息标题显示卡别名。
  • 仅响应包含机器人用户名的命令 - 在群组或频道中只响应包含机器人用户名的命令。

但这次咱只想自己用,于是这个选项就没什么作用啦……

  • 使用 DNS over HTTPS - 使用安全带加密的DNS服务(基于 Cloudflare®)。

EXTRA: 如果汝的网络不能正常的和 Telegram 通信……

汝大概能想到一些权宜之计,例如在手机或手机连接的 WIFI 的路由器上设置代理或者 VPN等等。

咱这回参考了 LetITFly BBS 站长 LetITFly 的一种方法,买一张中国大陆外的运营商的 SIM 卡为转发短信用的手机提供网络。

考虑到一般的储值卡的漫游流量基本偏贵有效期还很短,这里推荐买一张带有足够多内地用流量的储值卡。(例如中国移动香港的“特约经销商储值卡”, 365日10G内地香港共用流量售价 218 港币。

考虑到转发短信可能不会消耗太多流量,这张卡说不定还能作为某种应急手段……

ONE MORE EXTRA: 继续联动?

汝可以做的事情当然不止于此,下面是咱想到的一些可能会有意思的操作。

当然需要一些其它的知识,以及更谨慎的头脑。(?)
  • 修改 Telegram-SMS ,加入自己用起来方便的指令。
  • 和 Tasker 这样的自动化应用联动,例如收到特定发件人的短信执行一些操作什么的。
  • ……

效果大概就是这个样子(当然短信不会给看)……



CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论