Sparsh Agarwal
Department of Information Technology
National Institute of Technology Karnataka
Surathkal, India 575025
Abstract.Operating system fingerprinting is used to determine the op-
erating system running on the target system. Generally, while identifying
an operating system, rule-based methods are used to identify the oper-
ating system. However, problems are seen when the operating system is
novel and not widely used and sometimes when the packet information is
not enough. Here, we have compared the operating system fingerprinting
potential of different machine learning techniques, particularly Artificial
Neural Networks, K-nearest neighbour, Decision Trees, Random Forest,
and Na ̈ıve Bayes. The results show that better operating system iden-
tification can be attained through machine learning techniques using
encrypted traffic of systems connected to the network to a commercial
non-machine learning based methods.