CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a National Phase entry of PCT Application No. PCT/EP2018/065211, filed Jun. 8, 2018, which claims priority from European Patent Application No. 17175329.6 filed Jun. 9, 2017, each of which is fully incorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates to the detection of anomalies in communication on computer networks.

BACKGROUND

Increasing threats to network connected devices such as computer systems and networking appliances heighten a need to identify potentially threatening, malicious, erroneous or suspicious network traffic communicated via a computer network. Such traffic can be said to be anomalous where it is not consistent with traffic arising in the normal, accepted and/or expected operation of network connected devices.

Anomaly detection largely relies on feature extraction using techniques such as principal component analysis and mechanisms for learning normal network traffic characteristics, such as through the use of one-class support vector machines (SVMs). However, such models of normal traffic can suffer from overfitting relatively variable network communication (such as might be expected in the content of traffic communicated to a domain name server, for example) so reducing sensitivity to anomalies. Alternatively, such models can underfit network traffic by reflecting relatively consistent traffic such that sensitivity to anomalies is excessive and includes an excessive number of false-positive determinations of anomalous traffic.

SUMMARY

Thus, there is a need to address these challenges while improving the identification of anomalies in network traffic.

The present disclosure accordingly provides, in a first aspect, a method of anomaly detection for network traffic communicated by devices via a computer network, the method comprising: receiving a set of training time series each including a plurality of time windows of data corresponding to network communication characteristics for a device; training an autoencoder for the first cluster based on time series in the cluster, wherein a state of the autoencoder is periodically recorded after a predetermined fixed number of training examples to define a set of trained autoencoders for the cluster; receiving a new time series including a plurality of time windows of data corresponding to network communication characteristics for a device; for each time window of the new time series, generating a vector of reconstruction errors for the device for each autoencoder based on testing the autoencoder with data from the time window; evaluating a derivative of each vector; training a machine learning model based on the derivatives so as to define a filter for identifying subsequent time series for a device being absent anomalous communication.

The present disclosure accordingly provides, in a second aspect, a computer system including a processor and memory storing computer program code for performing the method set out above.

The present disclosure accordingly provides, in a third aspect, a computer program element comprising computer program code to, when loaded into a computer system and executed thereon, cause the computer to perform the method set out above.

