GithubHelp home page GithubHelp logo

bartasdiver / dustcloud Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dgiese/dustcloud

0.0 1.0 0.0 709.57 MB

Xiaomi Smart Home Device Reverse Engineering and Hacking

License: GNU General Public License v3.0

Python 12.72% CMake 0.18% C 79.20% Shell 2.57% PHP 5.32%

dustcloud's Introduction

Welcome to our repository for hacking and rooting of the Xiaomi Smart Home Devices. We provide you methods how to root your device without opening it or breaking the warranty seal (on your own risk).

We moved the documentation of the devices (photos, datasheets, uart logs, etc) to a new repo dustcloud-documentation

You can find a step-by-step guide how to wirelessly root your vacuum robot here.

Talks

Recording of our talk at 34C3 (2017): https://media.ccc.de/v/34c3-9147-unleash_your_smart-home_devices_vacuum_cleaning_robot_hacking

You can find a more detailed version of our 34c3 presentation with more details here.

We had a talk at Recon BRX 2018, the recording should be published in the next few months: (https://recon.cx/2018/brussels/)

The Recon presentation can be found here

Recommended ressources / links

Flole App: alternative way to control the vacuum robot, instead of Xiaomi's Mi Home App. Is able to control and root your vacuum cleaner. https://xiaomi.flole.de/

Roboter-Forum.com: German speaking forum with a lot of information about all sorts of robots. Contains special subforums for Xiaomi rooting. Primary ressource for beginners. http://www.roboter-forum.com/

FAQ

Can you hack all Xiaomi vacuum cleaners connected to the internet?

No, you can root only your own device, devices which are in your own wifi or where you have physical access to (at least for now).

Do Xiaomi know the exact position of the vacuum (e.g. address)?

Yes. The devices transfer its connected SSID, the gateway's MAC address and the RSS value every 30 minutes to the cloud. Theoretically you can pinpoint a address very precisely with that information, e.g. by using Google's geolocation API. In addition to that your smartphone transfers its exact position while pairing/provisioning the device with the cloud. The cloud stores that position with the devices dataset.

Is Dustcloud breaking the HTTPS connection / any SSL connection?

No, dustcloud requires the symmetric key (e.g. extracted from /mnt/default/device.conf) to decrypt the AES connection to the cloud. The same key is used to encrypt the forwarded messages to the cloud. Note: I personally think that Xiaomis approach of device's unique AES key solves a lot of cloud problems: authentication, integrity and confidentiality.

Will you publish rooting methods for other devices?

There are plans for that. But keep in mind that the devices were financed from my private budget, therefore the focus will be on devices that i will use myself after the hacking. Do not expect a smart fridge (i have a stupid one already) or a smart car (too expensive). However if you have broken devices (like a used Air purifier or something) or spare devices you want to get rid of, you can contact me. I might be interested in some PCBs ;)

Is there a communication way for the community to exchange ideas?

Yes, there is a telegram channel. https://t.me/joinchat/Fl7MmxBwXWC7ETNZAXQLSQ

Please inform yourself in the forums and with the howtos before you post in this channel. Otherwise your message is very likely to be ignored.

Contact

  • Dennis Giese <dgi[at]posteo.de>
  • Daniel Wegemer <daniel[at]wegemer.com>

Press information

Iot will very likely become a very important topic in the future. If you like to know more about IoT security, you can visit us at Northeastern University in Boston, US (Dennis) or at the TU Darmstadt, DE. Please contact us.

Acknowledgements:

Prof. Matthias Hollick at Secure Mobile Networking Lab (SEEMOO)

SEEMOO logo

Prof. Guevara Noubir (CCIS, Northeastern University)

CCIS logo

Media coverage:

dustcloud's People

Contributors

flole998 avatar fvollmer avatar eliaskotlyar avatar coderus avatar bimsarck avatar semoar avatar danielaw avatar desperadoduck avatar fquinto avatar franzl123 avatar jvitkauskas avatar marcelrv avatar nighthawk32 avatar reinerh avatar dervitti avatar rytilahti avatar crazz avatar lemmure avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.