逆向工程打印机墨盒芯片

逆向工程 硬件
2021-06-18 07:09:47

该堆栈仅与逆向工程软件和固件有关吗?硬件呢?

我们有几台半工业喷墨打印机(例如每台 2,000 美元,无论对您来说意味着什么级别)。

它有这些特殊的墨盒,里面有芯片,不允许您重新填充墨盒。

我们找到了一家向我们出售替换芯片的供应商,但它们仍然非常昂贵,并且仍然是一次性使用的。

我的老板让我调查是否有可能找到一种方法来“手动重置”这些芯片,或者使用不需要我们继续购买更多芯片来自己重新填充墨水的解决方案对它们进行逆向工程。

我不知道从哪里开始。
我不确定芯片是否与打印机进行了某种加密通信,从而使整个计划不可行。
我不确定这些芯片是否是一次性使用的,因为内部发生了一些无法撤消的物理变化(如果是这样,那么替换芯片是否可以模拟此功能,但可以重置?)
我不确定这是否合法也努力。这是否属于破坏 DRM?墨水可以有DRM吗?

我已经告诉我的老板,这可能比支付专家尝试逆向工程解决方案所需的时间和成本更麻烦。但是,他还是要我调查一下。

我的一个优势是我现在在台湾,我也可以轻松飞到中国找人做这种工作。我觉得这两个国家都是拥有技术能力和专业知识、绕过产品安全功能的意愿和动力以及较低劳动力成本的主要候选人。但我也愿意接受来自任何国家的单一专业人士帮助我的想法。

任何人都知道我将如何开始这个?我如何在中国或台湾找到愿意调查这个问题的人或公司?

2个回答

从反转墨盒的电路图开始。找出使用的是什么芯片(MCU 或其他),如果它是 MCU 或某种 FLASH/EEPROM,那么这可以通过软件来完成。但是有可能信息被硬连线到诸如损坏的 PCB 路径或炸毁一些二极管/保险丝/电阻器之类的东西。

如果使用 MCU,请尝试转储工作墨盒和不工作墨盒内存并比较/反汇编差异。

如果没有更多信息和硬件访问权限,很难提供更多帮助。

我不知道从哪里开始。

人们应该从查看可用信息开始。我假设没有。

通常,您需要一个示波器和一个逻辑分析仪。打印机的“消费级”越低,在墨盒中找到现成零件的可能性就越大。量产制造商使用定制设计的 ASIC,因为它们的数量以百万计,但 IC 制造在小批量时非常昂贵。处理使用常用零件的设计很可能会更容易,但我认为情况并非如此。

因此,当无法转储固件或查找数据表时,您需要创建一个逻辑探针来捕获芯片和打印机之间的所有信号。然后您需要解码协议,比较空墨盒和满墨盒的波形,查看每次打开打印机电源时是否重复这些模式,是否已加密等。

最终结果可能需要一个小型 FPGA 和一个可以模拟原始芯片的微控制器。如果协议足够简单,也许只是一个 MCU。

我不确定芯片是否与打印机进行了某种加密通信,从而使整个计划不可行。

这是可能的,但很可能不会有完整的 RSA + AES,很可能是静态密钥和一些校验和。

我不确定这些芯片是否是一次性使用的,因为内部发生了一些无法撤消的物理变化

爱普生确实为他们的喷墨打印机生产了墨盒。一旦打印机决定墨盒不能再使用,芯片上的物理保险丝就会熔断。

(如果是这样,那么替换芯片是否可以模拟此功能,但可以重置?)

看看消费级打印机的可重置墨盒,我认为应该是可能的。惠普(以及最有可能的其他公司)打印机也会保留之前使用过的芯片 ID 的历史记录——所以我假设可重置的打印机会在需要时生成一个新的 ID。

我也不确定这项努力的合法性。这是否属于破坏 DRM?墨水可以有DRM吗?

我不是律师,你可能应该问一个,但这在很大程度上取决于你是否打算与他人分享这个假芯片实现。不过,请确保断开打印机与 Internet 的连接。