Lenovo T99W175 / Foxconn SDX55 update on LVFS breaks FCC unlock
Thilo-Alexander Ginkel
thilo at ginkel.com
Mon May 9 18:13:43 UTC 2022
Hi Bjørn,
thanks for your reply! I don't think that the lenovo-wwan-dpr snap
implements the OTP unlocking mechanism.
Lenovo also just posted in their forum [1] that the new firmware
deliberately broke the unlock used by ModemManager. So that was
probably my last Lenovo laptop...
With regards to reversing the OTP mechanism: I made some first
attempts at decompiling / diffing the Windows driver using Ghidra, but
have to admit that I am not very experienced doing so and am somewhat
lost as to which driver file actually implements the unlocking.
Thanks,
Thilo
[1] https://forums.lenovo.com/t5/Other-Linux-Discussions/Finally-X55-5G-modem-works-under-linux/m-p/5082236?page=11#5639046
On Sun, May 1, 2022 at 6:31 PM Bjørn Mork <bjorn at mork.no> wrote:
>
> Bjørn Mork <bjorn at mork.no> writes:
>
> > Wrt the implementation: Any protocol depending on closed binaries is
> > broken by design, without exception. It doesn't matter whether you use
> > a "secret" algorithm or just store keys inside the binary. Anything that
> > was compiled can be decompiled. Sure it can be obfuscated to make that
> > harder. We all love a challenge :-)
>
> And just let me prove that fact without even modifying one byte of the
> code:
>
> root at miraculix:/tmp# cat /sys/class/dmi/id/product_family
> ThinkPad X1 Carbon 4th
> root at miraculix:/tmp# echo ThinkEdge > /tmp/product_family
> root at miraculix:/tmp# mount --bind /tmp/product_family /sys/class/dmi/id/product_family
> root at miraculix:/tmp# cat /sys/class/dmi/id/product_family
> ThinkEdge
>
> And what do you think? There goes the machine check....
>
> May 1 18:24:59 miraculix DPR_Fcc_unlock_service: main(): FCC unlock app started
> May 1 18:24:59 miraculix DPR_Fcc_unlock_service: get_product(): DT
> May 1 18:24:59 miraculix DPR_Fcc_unlock_service: MACHINE = [4] --- THINKEDGE_SE30 = [4]
> May 1 18:24:59 miraculix DPR_Fcc_unlock_service: main(): FCC unlock app exited
>
> This doesn't work for me of course, only having the original EM7455
> modem. But I do note that the log output changed from -1 to 4, whatever
> that means. Previously:
>
> May 1 18:21:01 miraculix DPR_Fcc_unlock_service: MACHINE = [-1] --- THINKEDGE_SE30 = [4]
>
> Something to try out on your X1E4, maybe?
>
>
> Bjørn
More information about the ModemManager-devel
mailing list