文章摘要
作者与朋友出于兴趣和挑战,成功将洗衣机连接到Discord,以便在洗衣周期结束时接收通知。虽然这一过程复杂且实用性有限,但作者强调此举主要是为了乐趣和探索,并计划继续“黑入”其他家用电器。
文章总结
标题:我是如何“黑”进我的洗衣机的——Nex的博客
主要内容:
在这篇博客中,作者Nex分享了他和朋友如何“黑”进他们的洗衣机,并将其连接到Discord,以便在洗衣周期结束时收到通知。整个过程既是为了乐趣,也是一种技术挑战。
背景: Nex最近搬进了一间预装家电的大学宿舍,其中包括一台带有Wi-Fi连接和移动应用控制的“智能”洗衣机。由于宿舍里住着不少网络安全专业的学生,他们最初对将洗衣机连接到网络持怀疑态度,但最终还是决定尝试一下。
动机: 虽然洗衣机可以通过移动应用发送通知,但每次只能有一个人连接到洗衣机,这让他们感到不便。于是,他们决定通过技术手段让洗衣机在洗衣结束时向Discord发送通知,方便所有人。
技术过程:
1. 网络监控:Nex使用OpenWRT路由器监控洗衣机的网络流量,发现洗衣机主要通过HTTP与移动应用通信。
2. API逆向工程:通过分析,他们发现洗衣机通过两个端点(/http-read.json和/http-write.json)与移动应用交互,并且数据是加密的。
3. 破解加密:经过一番努力,他们使用CyberChef工具和已有的开源代码成功破解了洗衣机的加密数据。
4. 编写通知脚本:最终,他们编写了一个脚本,定期轮询洗衣机的状态,并通过Discord的Webhook发送通知。
未来计划: Nex和他的朋友计划将类似的技术应用到其他家电上,如烘干机、洗碗机和电视,进一步扩展他们的“智能家居”系统。
总结: 虽然这个过程看似复杂且不必要,但Nex认为这是一次有趣的技术挑战,并且在实际应用中也有一定的便利性。通过这次经历,他们不仅解决了实际问题,还获得了逆向工程的实践经验。
相关图片: - 洗衣机应用界面 - 洗衣周期结束的通知 - Discord中的门铃通知 - CyberChef工具破解加密数据的过程 - 洗衣机通知脚本的实际运行效果
评论总结
评论主要围绕智能洗衣机的网络连接和自动化解决方案展开,观点分为支持和反对两类。
支持智能化的观点: 1. 自动化解决方案的便利性:多位评论者提到通过智能插座或API实现洗衣完成提醒的自动化方案,认为这种方式简单且实用。 - "Just plug the washing machine into a smartplug and alert when power draw drops to idle for more than X minutes."(只需将洗衣机插入智能插座,并在功率降至空闲状态超过X分钟时发出提醒。) - "Using the Bosch API - I can tell both when a cycle is complete, and if the door is open."(使用博世API,我可以知道洗衣周期何时完成,以及门是否打开。)
- 技术探索的乐趣:部分评论者认为这类技术探索是Hacker News应有的内容,并建议进一步深入分析。
- "This is what Hacker News posts should be."(这才是Hacker News应有的帖子。)
- "I suggest pushing washing machine metrics to Prometheus, it just asks for it."(我建议将洗衣机的指标推送到Prometheus,这正合适。)
反对智能化的观点: 1. 安全性和复杂性的担忧:一些评论者对将家电接入家庭网络表示担忧,认为这增加了安全风险,且解决方案过于复杂。 - "I’m surprised you let your washing machine into your network."(我很惊讶你让洗衣机接入你的网络。) - "Practical engineer in me screams: SIMPLIFY, SIMPLIFY, SIMPLIFY."(我内心的实用工程师在呐喊:简化,简化,再简化。)
- 对智能设备的不信任:部分评论者甚至考虑将智能模块替换为传统接口,认为智能设备并不必要。
- "I am contemplating hacking my washing machine 'smart' module into its original silicon dust."(我正在考虑将洗衣机的“智能”模块还原为原始的硅尘。)
总体而言,评论者们在智能洗衣机的便利性与安全性、复杂性之间展开了讨论,观点各异。