Inženýr a technologický nadšenec dává starým hodinkám šanci na nový život
To navíc zcela bez dokumentace a za pomoci reversního inženýrství
Co o tom víme?
Singapurský inženýr a známý technologický nadšenec Benjamen Lim se na vlastním oficiálním internetovém blogu nedávno rozepsal o svém posledním projektu, v rámci něhož se rozhodl opravit a zprovoznit celou řadu zdánlivě odepsaných chytrých hodinek. O to impozantnější se pak tento ambiciózní plán jeví při pomyšlení, že byl proveden bez jakékoliv technické dokumentace, či oficiálních výrobních materiálů. Jak je to však možné?
Nová šance pro nefunkční kusy
Současná doba opravám či renovacím chytrých zařízení zrovna dvakrát nepřeje. Více než dostatečně o tom svědčí už jen současný trend poklesu cen, který běžné uživatele stále více utvrzuje v tom, že je nejen jednodušší, ale především výhodnější pořídit zcela nové. Zcela opačný postoj ovšem zaujímá množství hračičků a dalších technologických nadšenců po celém světě, kteří se nezřídka kdy pokoušejí svépomocí prodloužit životnost vlastních zařízení, či jim přímo „vdechnout“ nový život. Právě jedním z nich je i známý singapurský inženýr a bloger Benjamen Lim, jehož poslední projekt ohromil celou komunitu.
Zcela sám totiž po večerech a nocích pracoval na záchranně řady poškozených a zdánlivě odepsaných chytrých hodinek, k nimž navíc nebylo možné dohledat jakoukoliv technickou dokumentaci, či jiné oficiální informace od domovské společnosti. Dle Limových vlastních slov tak hodinky získal v prakticky nepoužitelném stavu, pouze s napájecím kabelem a stručně sepsanými pokyny k užívání a nabíjení. Nezbylo mu proto nic jiného, než se pokusit o reversní inženýrství, při němž byl nutný nejen detailní průzkum veškerých interních součástek, ale také těžko dostupné softwarové výbavy.
Rozebrání však spíše než k odhalení možné příčiny problému vedlo ke zjištění, že ony hodinky rozhodně nejsou nikterak špičkovým kouskem technologie. Disponovaly klasickým monochromatickým displejem s jednotlačítkovým vstupem, snímačem srdečního tepu a interním akcelerometrem pro snímání určitých životních funkcí a aktivit. Dále pak Bluetooth čip Nordic nRF52832, Wi-Fi mikrokontroler ESP8285 a celulární transceiver SIMCom s možností propojení s globálním geolokačním systémem.
První důležité vodítko ovšem Lim odhalil až v momentě, kdy se zmiňovaný čip nRF52832 ukázal být hlavním integrovaným čipem zařízení, přičemž využíval propojeného Wi-Fi mikrokontroleru k analyzování místních přístupových bodů a SIMComu ke komunikaci s mobilní sítí. Zaměřil se proto na hledání odkrytých programovatelných pinů hlavního čipu, jenž by mohly být využity pro spojení s nedostupným systémem. To se pak záhy podařilo při zjištění propojení mezi určitými JTAG piny a kontaktními body na vnější straně hodinek, kde byly propojeny s napájecí zdířkou.
Po propojení poté poté skrze software JLink potvrdil své původní domněnky o nemožnosti odesílání strojových příkazů do hodinek, načež využil nástroj nrfjprog k zjištění informací o používaném firmware. Poté dle něj stačilo spustit nástroj pro reversní inženýrství Ghidra, dekompilovat původní firmware, zjistit IP adresy serveru pro shromažďování dat z hodinek a vytvořit upravenou verzi systému, která by komunikovala výhradně s Limem vybraným úložištěm. V této konfiguraci pak byly všechny hodinky schopny spuštění a uvedení do funkčního provozu.
Limův projekt tak nejen zachránil celou řadu hodinek před jistou likvidací, ale také dokázal, jak lze s dostatečným úsilím a znalostmi nabídnout druhou šanci i zdánlivě odepsanému kusu hardwaru.