The security of Internet of Things (IoT) systems is a major issue for protection of data and safety of people. This requires developing solutions that address security issues related to the design of communication protocols between objects but also in the collection, processing, routing and storage of data. In this paper, we propose a methodology for the design and implementation of secure protocols for the Internet of Things which currently represents a major part of our daily life. We propose to minimize vulnerabilities in the design and implementation of communication protocols in IoT platforms by combining simulations of fault injection attacks at the binary level combined with model checking of binaries. Our methodology takes into account the characteristics nature of IoT systems.