Back to Search
Start Over
MultiFuzz: A Coverage-Based Multiparty-Protocol Fuzzer for IoT Publish/Subscribe Protocols
- Source :
- Sensors, Vol 20, Iss 5194, p 5194 (2020), Sensors (Basel, Switzerland), Sensors, Volume 20, Issue 18
- Publication Year :
- 2020
- Publisher :
- MDPI AG, 2020.
-
Abstract
- The publish/subscribe model has gained prominence in the Internet of things (IoT) network, and both Message Queue Telemetry Transport (MQTT) and Constrained Application Protocol (CoAP) support it. However, existing coverage-based fuzzers may miss some paths when fuzzing such publish/subscribe protocols, because they implicitly assume that there are only two parties in a protocol, which is not true now since there are three parties, i.e., the publisher, the subscriber and the broker. In this paper, we propose MultiFuzz, a new coverage-based multiparty-protocol fuzzer. First, it embeds multiple-connection information in a single input. Second, it uses a message mutation algorithm to stimulate protocol state transitions, without the need of protocol specifications. Third, it uses a new desockmulti module to feed the network messages into the program under test. desockmulti is similar to desock (Preeny), a tool widely used by the community, but it is specially designed for fuzzing and is 10x faster. We implement MultiFuzz based on AFL, and use it to fuzz two popular projects Eclipse Mosquitto and libCoAP. We reported discovered problems to the projects. In addition, we compare MultiFuzz with AFL and two state-of-the-art fuzzers, MOPT and AFLNET, and find it discovering more paths and crashes.
- Subjects :
- IoT
Computer science
Preeny
multiparty-protocol fuzzer
security
02 engineering and technology
lcsh:Chemical technology
01 natural sciences
Biochemistry
Article
coverage-based fuzzing
desock
Analytical Chemistry
Constrained Application Protocol
0202 electrical engineering, electronic engineering, information engineering
lcsh:TP1-1185
MQTT
Electrical and Electronic Engineering
Instrumentation
Protocol (object-oriented programming)
Publication
business.industry
010401 analytical chemistry
020206 networking & telecommunications
Fuzz testing
Atomic and Molecular Physics, and Optics
0104 chemical sciences
CoAP
network protocol
publish/subscribe
State (computer science)
business
Communications protocol
Message queue
Computer network
Subjects
Details
- ISSN :
- 14248220
- Volume :
- 20
- Database :
- OpenAIRE
- Journal :
- Sensors
- Accession number :
- edsair.doi.dedup.....9ea578f49686182b888a35fda6c929cc
- Full Text :
- https://doi.org/10.3390/s20185194