SpecMon: Modular Black-Box Runtime Monitoring of Security Protocols
<|reference_start|>SpecMon: Modular Black-Box Runtime Monitoring of Security Protocols: There exists a verification gap between formal protocol specifications and their actual implementations, which this work aims to bridge via monitoring for compliance to the formal specification. We instrument the networking and cryptographic library the application uses to obtain a stream of events. This is possible even without source code access. We then use an efficient algorithm to match these observations to traces that are valid in the specification model. In contrast to prior work, our algorithm can handle non-determinism and thus, multiple sessions. It also achieves a low overhead, which we demonstrate on the WireGuard reference implementation and a case study from prior work. We find that the reference Tamarin model for WireGuard can be used with little change: We only need to specify wire formats and correct some small inaccuracies that we discovered while conducting the case study. We also provide a soundness result for our algorithm that ensures it accepts only event streams that are valid according to the specification model.<|reference_end|>
@article{morio2024specmon:,
    title={SpecMon: Modular Black-Box Runtime Monitoring of Security Protocols},
    author={Kevin Morio and Robert K"unnemann},
    journal={arXiv preprint arXiv:2409.02918},
    year={2024},
    doi={10.1145/3658644.3690197},
    archivePrefix={arXiv},
    eprint={2409.02918},
    primaryClass={cs.CR}
}