Runtime verification on data-carrying traces

dc.contributor.authorKuester, Jan-Christophen_AU
dc.date.accessioned2016-11-07T22:58:07Z
dc.date.available2016-11-07T22:58:07Z
dc.date.issued2016
dc.description.abstractMalfunctioning software systems can cause severe loss of money, sensitive data, or even human life. The ambition is therefore to verify these systems not only statically, but also monitor their behaviour at runtime. For the latter case, the temporal logic LTL---a de facto standard specification formalism in runtime verification---is widely used and well-understood. However, propositional variables are usually not a natural nor sufficient model to represent the behaviour of complex, interactive systems that can process arbitrary input values. Consequently, there is a demand for more expressive formalisms that are defined what we call traces with data, i.e., traces that contain propositions enriched with values from a (possibly) infinite domain. This thesis studies the runtime monitoring with data for a natural extension of LTL that includes first-order quantification, called LTLFO. The logic's quantifiers range over values that appear in a trace. Under assumptions laid out of what should arguably be considered a ``proper'' runtime monitor, this thesis first identifies and analyses the underlying decision problems of monitoring properties in LTL and LTLFO. Moreover, it proposes a monitoring procedure for the latter. A result is that LTLFO is undecidable, and the prefix problem too, which an online monitor has to preferably solve to coincide with monotonicity. Hence, the obtained monitor cannot be complete for LTLFO; however, this thesis proves the soundness of its construction and gives experimental results from an implementation, in order to justify its usefulness and efficiency in practice. The monitor is based on a new type of automaton, called spawning automaton; it helps to efficiently decide what parts of a possibly infinite state space need to be memorised at runtime. Furthermore, the problem occurs that not every property can be monitored trace-length independently, which is possible in LTL. For that reason, a hierarchy of effectively monitorable properties is proposed. It distinguishes properties for which a monitor requires only constant memory from ones for which a monitor inevitably has to grow ad infinitum, independently of how the future of a trace evolves. Last but not least, a proof of concept validates the monitoring means developed in this thesis on a widely established system with intensive data use: Malicious behaviour is checked on Android devices based on the most comprehensive malware set presently available. The overall detection and false positive rates are 93.9% and 28%, respectively. As a means of conducting the experiments and as a contribution in itself, an application-agnostic logging-layer for the Android system has been developed and its technical insights are explained. It aims at leveraging runtime verification techniques on Android, like other domain-specific instrumentation approaches did, such as AspectJ for Java.en_AU
dc.identifier.otherb40394529
dc.identifier.urihttp://hdl.handle.net/1885/110029
dc.language.isoenen_AU
dc.subjectRuntime verificationen_AU
dc.subjectMonitoringen_AU
dc.subjectSpawning automataen_AU
dc.subjectTemporal logicen_AU
dc.subjectFirst-order logicen_AU
dc.subjectTrace-length independenceen_AU
dc.subjectAndroid securityen_AU
dc.titleRuntime verification on data-carrying tracesen_AU
dc.typeThesis (PhD)en_AU
dcterms.valid2016en_AU
local.contributor.affiliationCollege of Engineering and Computer Science, The Australian National Universityen_AU
local.contributor.authoremailjckuester@gmail.comen_AU
local.contributor.supervisorBauer, Andreas
local.contributor.supervisorcontactbaueran@gmail.comen_AU
local.description.notesauthor deposited 8/11/2016en_AU
local.identifier.doi10.25911/5d763822a5f79
local.mintdoimint
local.type.degreeDoctor of Philosophy (PhD)en_AU

Downloads

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Kuester Thesis 2016.pdf
Size:
1.46 MB
Format:
Adobe Portable Document Format
Description:

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
884 B
Format:
Item-specific license agreed upon to submission
Description: