“…For example, autonomous vehicles utilize CAN bus and FlexRay, control systems use Modbus and DNP3, online chatting/conferencing applications have their customized protocols. Many security analysis such as static/symbolic vulnerability scanning [40], [24], exploit generation [79], [19], fuzzing [65], [43], [44], [31], attack detection [15], [29], and malware behavior analysis [75], [18] require precise modeling of the network protocol. For instance, knowing the protocol of a networking application is critical to seed input generation in fuzzing; malware analysis often requires composing well-formed messages to the Command and Control (C&C) server so that hidden behaviors can be triggered by the appropriate server responses [23], [83]; and static/symbolic analysis needs to properly model networking functions otherwise a lot of false positives may be generated.…”