In this section related work in fingerprint-based localization, as well as a summary of works dealing with spoofing in wireless positioning systems based on Wi-Fi is presented. The description of fingerprinting algorithms is focused on the main principles as well as a description of the KNN algorithm, which was implemented in the testing scenarios as a baseline. The section includes an overview of ML-based positioning algorithms and a comparison of their performance with KNN on the UJIIndoorLoc dataset.
2.1. Fingerprinting Localization
The fingerprinting localization gained a lot of attention in indoor positioning due to the fact that it does not require the estimation of pseudo-ranges from signal parameters like RSS or Time of Arrival (ToA). These parameters are affected by the signal propagation in the dynamic environment, thus pseudo-ranges cannot provide accurate information about the distance between wireless devices with high reliability. Fingerprinting on the other hand can benefit from the signal attenuation caused by the obstacles in the indoor environment.
Fingerprinting localization algorithms can be divided into three major groups, deterministic algorithms, statistical algorithms and neural network-based [
12,
13]. Both deterministic and statistical algorithms use data in the radio map database to estimate the position of the mobile device based on the parameters provided in the localization requests. On the other hand, solutions based on neural networks create a model based on the calibration data, i.e., the radio map, and use this model to estimate the position of the mobile device.
The general principle of fingerprinting localization can be divided into two stages. The first stage is the calibration of the system. During this stage, the calibration measurements are performed in the area of interest [
22]. The area is divided into regions represented by reference points. At each reference point signal parameters, typically RSS samples, are collected. These represent fingerprints that are stored in the radio map database. Recent works also focus on the use of CSI data for positioning [
23]. The advantage of CSI over RSS lies in more detailed information about the environment, thus CSI has the potential to improve localization accuracy. On the other hand, current devices do not support access to CSI measurements out of the box; therefore, some modification of devices is required to support CSI measurements. The calibration phase also includes the pre-processing of data, the creation of a radio map database for deterministic or statistical algorithms, and the training of models for neural network-based implementations.
The second stage represents the operation of the localization system. During this stage, the system is used to estimate the positions of mobile devices. The mobile device with an unknown position can measure signal parameters; in this case, the RSS samples from surrounding APs, and send them to the localization server. The localization server utilizes an implemented localization algorithm to estimate the position of the mobile device.
This paper deals with the implementation of a deterministic KNN algorithm, thus the result of the calibration phase is assumed to be a radio map. The KNN algorithm used in the experiments is based on an assumption that RSS samples collected by the mobile device are not random but depend on the position of the mobile device [
13]. Thus, the position of the mobile device
can be estimated as follows:
where
M is the number of reference points in the radio map,
represents the position of
n-th reference point and
stands for the weight assigned to the
n-th reference point. The weights
are estimated as the inverse value of Euclidean distance between RSS samples received from the mobile device and RSS samples stored in the radio map database.
In the case of the KNN algorithm, the
k highest weights are set to 1 and the rest of the weights are set to 0. Thus, the position estimate is given as an average value of
k reference points with the highest similarity of fingerprints compared to the fingerprint received from the mobile device [
10].
Song et al. introduced the localization system CNNLoc [
24]; in the system, the position is estimated using a one-dimensional Convolutional Neural Network (CNN) from Wi-Fi fingerprints. They proposed the use of a Stacked Auto-Encoder (SAE) to extract key features of RSS samples in a radio map database.
An indoor localization framework focused on the compression-friendly implementation of a convolutional autoencoder with a CNN called CHISEL was proposed by Wang et al. [
25]. The authors proposed a localization solution that allows compression and reduces the footprint of the model, making it more suitable for embedded devices. Based on the achieved results, the model can be more than five times smaller and achieve higher accuracy than classical ML models.
The Wi-Fi-based localization system SE-Loc was proposed by Ye et al. [
26]. The proposed system uses a semi-supervised learning-based technique to enhance the performance of the localization system. The authors divided the architecture of the localization system into two parts. The first part is responsible for the selection of APs based on correlation and generation of fingerprint-image. The second part consists of a deep learning model, which uses a denoising autoencoder in combination with a CNN.
An extreme learning machine autoencoder was used to reduce the dimension of input data in the EA-CNN model proposed by Alitaleshi et al. [
27]. The proposed method helps to bypass the computational complexity of conventional stacked autoecoders and increases the accuracy of position estimates. The authors also implemented a data augmentation strategy by adding noise to the model; this approach was used to increase the robustness of the positioning algorithm.
Pei et al. [
28] proposed the FTLoc localization method, which utilizes the sequence-to-sequence network structure. The authors proposed to use a combination of the attention and the learnable filter. The proposed solution consists of two modules. The first module is a feature encoder, which includes a self-attention module and a learnable filter module is used to extract multilevel features from RSS samples. These multilevel features should reduce the impact of the heterogeneity of devices. On the other hand, the second module, named the location decoder, consists of two attention modules and is used to estimate the positions of mobile nodes.
A hybrid deep learning-based localization method was proposed by Turgut et al. [
29]. The authors used a Long-Short-Term Memory (LSTM) to capture signal feature dependencies over long-term periods. Moreover, a CNN was used to extract local spatial signal patterns. Furthermore, particle filter and sparse autoencoder were implemented for filtering and dimension scaling on the RSS data.
Shen et al. proposed a positioning method called virtual feature maps and contrastive learning-enhanced indoor positioning (VF-CLIP) [
30]. The method uses RSS samples and is aimed at reducing the repetitive site survey overhead. The VF-CLIP reconstructs fingerprints by incorporating newly added APs using a deep neural network fine-tuning technique.
Narasimman and Alphones proposed a positioning solution that utilizes a new dimensionality reduction technique as well as input and output normalization schemes for the transferability of the model in [
31]. The solution uses common tree-based techniques, i.e., random forests and extreme gradient boosting, to estimate the position of the mobile device. According to the authors, the proposed solution can achieve similar results as state-of-the-art techniques without the need for optimization.
The use of the Graph Neural Network (GNN) for indoor positioning was proposed by Wang et al. in [
32]. The proposed solution uses graph topology to establish neighbor relationships and solves misaligned features. Authors use GNN to improve the stability of potential neighbor features, which are used for adaptation to dynamic environmental changes.
It should be noted that there is a plethora of algorithms that can be used for position estimation using Wi-Fi [
33,
34,
35]; however, the description of these algorithms is beyond the scope of this paper.
The comparison of the accuracy of the KNN algorithm and methods based on machine learning on the UJIIndoorLoc dataset is presented in
Table 1. From the table, it can be seen, that the KNN algorithm, used as a baseline for implementation of proposed filters, can achieve accuracy similar to the CNN-based localization methods. It is clear that more advanced ML-based localization schemes can achieve higher accuracy; however, it should be noted that some of the results presented in the table take into account errors only in 2D space. Moreover, some of these methods use the augmentation of training data; with the implementation of data augmentation and/or interpolation methods on the training dataset, the performance of KNN could be improved as well.
However, the design of the abovementioned localization algorithms does not consider AP spoofing, thus it can be assumed that the majority of algorithms will be affected by spoofing in a similar way as the KNN algorithm since all algorithms perform classification tasks.
The proposed filtering approaches were tested on the KNN algorithm since this algorithm is deterministic, thus it should not be affected by the parameters of the dataset. In contrast, the ML-based approaches may be affected by overfitting. In such cases, the resulting model is significantly affected by the properties of the dataset, leading to overestimated accuracy and poor generalization.
2.3. Detection of Spoofed Access Points
Li et al. presented a study about the security issues in Wi-Fi-based indoor positioning systems that utilize crowdsourced data in [
39]. Three different attacks were presented and evaluated. In the first attack the attacker generates fake RSS samples randomly, in the second attack the attacker adds some noise to the valid RSS samples and in the last attack the attacker changes the mapping between fingerprints and their locations. Moreover, spatial trustworthiness metrics for the generation of a radio map database from crowdsourced data were proposed.
It should be noted that this work deals with the detection of false data in the crowd-sourced radio map. Although some of the principles could be used during the positioning, it would affect the response time since iterative algorithms were implemented in the proposed solution. This is not an issue for the radio map creation process, since the radio map does not need to be constructed in real-time.
Luo et al. studied the instability of RSS and its impact on the performance of the fingerprinting localization system in [
40]. The impact of impaired, broken and newly-introduced APs on the localization system was evaluated. The authors proposed a voting mechanism, which identifies factors that impact RSS values and extracts the trust factor of the fingerprint. The authors proved that the proposed algorithm can identify impaired APs, i.e., APs that do not work properly.
The algorithm for the detection of impaired APs was tested in a scenario where AP power decreased significantly or AP was turned off. However, using this algorithm in a more complex environment to detect spoofing of APs was not considered in the work.
Ye et al. [
15] showed a privacy attack model based on the spoofing of location in mobile social network services. The authors also proposed a mechanism to defend against such attacks based on base station tags. They were used for the authentication of the spatial-temporal property of geolocation and prevented spoofing attacks on a WLAN-based positioning system.
Although the proposed solution worked well, it should be noted that the test was carried out at two locations that were in different cities; therefore, the use of base station tags for geolocation could make sense. However, if the attack is performed inside a smaller area, e.g., campus, hospital, airport, etc., the proposed solution may not provide a robust solution.
Restuccia et al proposed Location Validation System (LVS) in [
41]. The proposed LVS should secure location-based services from location spoofing attacks. The proposed solution is based on validation rounds, in each round the position of the user is validated by the neighboring nodes and the reputation of nodes is estimated to detect nodes with spoofed positions. The proposed solution relies on the cooperation of neighboring nodes, which can be represented by smartphones with the capability to create Wi-Fi hotspots.
The use of the spatial correlation of RSS from nodes to detect the spoofing attacks was proposed by Yang et al. [
17]. The proposed solution is based on the assumption that the RSS measured at a set of landmarks is closely related to the location of the transmitter and distance from the landmark. Thus, the spatial RSS-based correlation of RSS samples from landmarks with RSS samples in localization requests could be used to detect the spoofing of Wi-Fi signals. The main drawback of the scheme is that it requires a set of landmarks to collect RSS samples, thus increasing the cost of infrastructure. Moreover, it can detect when localization requests are altered by an attacker. However, signals from spoofed APs could be received by both localized devices and landmarks.
The improved user authentication scheme based on CSI measurements was proposed by Liu et al. in [
18]. Although the scheme is primarily used for the authentication of Wi-Fi clients, it can be used also for spoofing detection. The proposed solution is based on the assumption that CSI measurements of each device have unique spatial characteristics. Moreover, CSI measurements have a strong spatial correlation with the position of the device. The main problem is that most off-the-shelf devices do not support access to the CSI measurements without software modification.
A system that uses deep learning to detect virtual MAC spoofing attacks in wireless networks was proposed by Jiang et al. [
19]. The MAC spoofing attack is detected by a deep CNN, which utilizes CSI measurements to extract the physical features. These features can be used to detect spoofing attacks. The authors report an average detection accuracy of 95%.
Location spoofing attack detection based on the Wasserstein metric was introduced by Tian et al. [
20]. The detection of spoofed APs is based on the assumption that wireless signals have different features when they are transmitted by different devices. Since multiple fake APs may be created using a single device, these signals will have similar features and thus can be detected. The proposed solution is based on RSS measurements; however, it requires a relatively large number of samples to estimate the features of the signals. Moreover, the samples should be collected at a static position, thus the solution would introduce a significant delay in the localization process.
As can be seen from the summary of related works shown in
Table 2, the problem of spoofing in wireless networks is a topic that attracts a lot of attention. However, there is still a lack of solutions that could provide some protection in case of a spoofing attack without the need for additional data, i.e., signals collected by landmarks or CSI measurements. Previously proposed solutions for the detection of anomalies when updating radio maps use iterative algorithms, so their application in real-time position estimation is limited. On the other hand, the voting algorithm for impaired AP detection requires updates of the radio map, and voting relies on changes in RSS, thus it is not optimal for spoofing detection, where the signals may be stable. The solution based on geolocation from cellular networks has some potential, but may not work if spoofing is performed within the same geographical area, e.g., university campuses, hospitals, and airports.
In this work, filtering approaches are proposed to remove localization requests affected by the spoofing of Wi-Fi signals. The proposed solutions do not require any additional hardware and only utilize data, which are readily available in the training dataset, which was collected during the calibration phase of fingerprinting-based localization.