Sonoff OTA -järjestelmän kaappaaminen


IeADin Sonoff-linja on erilainen Internet-of-asiat-gadgetit, jotka perustuvat noin ESP8266: n ympärille. Tämä tekee niistä näkyviä hakkeroimiseksi niiden saavutettavuuden vuoksi. Aiemmat työpaikat ovat tajunneet tarkalleen, kuinka heijastetaan Sonoff-laitteita, mutta [Mirko], tämä ei ollut riittävää – oli aika kääntää insinööri Sonoff Over-the Air Update -protokolla.

[mirko]’s motivation is basic sufficient – a wish for IoT gadgets that don’t requirement to phone house to the business mothership, integrated with wanting to prevent the labor of cracking open every Sonoff gadget to reflash it with wires like a Neanderthal. Ensimmäinen askel, joka liittyy Sonoff-gadgetin yhdistämiseen WiFi-yhteyden ja liikenteen tarttumiseen. Tämä käänsi nopeasti SSL-yhteyden kauko-URL-osoitteeseen. Tämä toistettiin nopeasti, kun gadget ei tee mitään todistuksen validointia – turvallisuuden puute ei valitettavasti koskaan yllätys asioiden verkossa.

Verkkoliikenteen sattumisen jälkeen [MIRKO] Set noin Peech yhdestä protokolla hyödynnetään OTA-päivitysten suorittamiseen. Asiakkaan ja palvelimen välisen perustavanlaatuisen kädenpuristuksen jälkeen palvelin voi pyytää asiakasta ottamaan eri toimintoja – kuten päivitetyn laiteohjelmiston lataamisen. Vieraiden muotoilun selvittämisen jälkeen [Mirko] pyrki tuottamaan Webserverin Pythonissa tämän käyttäytymisen toistamiseen.

On joitain piikkejä – firmware-kuvien vaatimus alustettava jonkin verran eri tavalla OTA-päivityksissä verrattuna normaaliin sarjamenetelmään, koska tämä prosessi lähtee varastosta käynnistyslataimesta ehjälle. Samoin Split-partition flash-tallennusjärjestelmä on tarjottava, mikä [Mirko] toimii edelleen.

Tästä huolimatta on erinomainen nähdä hakkerit, jotka tekevät sitä hienoin – ottamalla hallintalaitteita sekä ohjelmistoja palvelemaan omia tarkoituksiaan. Jos haluat löytää enemmän, miksi et tarkasta tarkalleen miten vilkkua Sonoff-gadgetit sarjasta? He ovat vain ESP8266 sisällä, loppujen lopuksi.

Leave a Reply

Your email address will not be published. Required fields are marked *