3
Threats originate from internal adversaries who actively
participate in the authentication process as an entity, which
means that one or multiple of the three mentioned partic-
ipants have malicious intentions. All other adversaries are
external and are not considered further because they can be
handled by conventional network security practices [33].
An adversary’s goal can be twofold. On the one hand,
he can aim to manipulate the authentication mechanism to
impersonate a legitimate user (A1). However, this is only
reasonable from the point of view of the mobile device (i)
that wants to authenticate itself. Because the backend (ii), as
well as the authentication server (iii), intend to authenticate
users correctly. Here, we do not address takeover scenarios
of the authentication server and the backend, as the au-
thentication process could be changed at will. This would
allow an attacker to modify the authentication decision as
required. On the other hand, the goal of a curious entity may
be to obtain sensitive data by applying the authentication
protocol (A2). All participating entities may be curious. For
example, a curious backend (ii) or authentication server (iii)
may be interested in using sensitive information for user
profiling. Similarly, a mobile client device may be interested
in mining behavioral data of other users.
The capabilities we consider for adversaries to achieve
their respective goals are as follows. Both attacker types (A1,
A2) will eventually not conform to the specified protocol
(malicious adversary [34]). This means that they can behave
actively and modify, add, or remove protocol messages.
Logically, the attacker can change the application’s code
on his device to achieve his goal. Of course, both attacker
types can also behave passively by carrying out the protocol
honestly, with the goal to bypass the authentication (A1)
or to gather sensitive details from the exchanged messages
(A2). Moreover, we include attackers who take over a legit-
imate user’s application session, e.g., by session hijacking
or stealing a device. However, we assume that the attacker
does not have detailed information about the legitimate
user’s behavior before the takeover and does not obtain
such information as a result. Otherwise, A2 would already
be successful by implication, as he obtained behavioral
information from one or more users. For A1, we explicitly
exclude attacks that involve substantial knowledge about
the behavior of other users (e.g., replay attacks). Actu-
ally, other biometric authentication methods, including face
recognition and fingerprint recognition, are also vulnerable
to this kind of attack [35], [36].
We analyzed the characteristics of our approach in Sec-
tion 4.3 based on the threats and associated assumptions
described in this section to show that potential adversaries
can be mitigated effectively.
4 THE MPSAUTH APPROACH
In this section, we present the architecture of our approach,
with descriptions of the underlying components.
4.1 Approach Overview
The mPSAuth approach is intended to provide continuous
and risk-based authentication of users within mobile web
applications. For this purpose, the user’s behavior within
the application is regularly investigated. We analyze various
data sources that reflect user behavior either separately or
jointly using machine learning techniques. To this end, we
compare whether the currently observed behavior matches
the known behavior of the user. We then base our authenti-
cation decision on the result of this comparison.
Because our approach requires information about the
user’s previous behavior, an enrollment phase is necessary.
During this phase, conventional authentication factors such
as passwords combined with SMS verification must be used.
Following the enrollment phase, the ML-based analysis of
behavioral data can serve as a stand-alone authentication
factor. Sporadic addition of further authentication factors
(e.g., SMS verification) is intended to cover exceptional
cases. For example, in the case that a legitimate user is mis-
takenly rejected repeatedly due to a significantly changed
behavior. The duration of the enrollment phase depends on
the extent of the baseline to be collected (see Section 4.4).
A key feature of our approach is scalability, as mPSAuth
trains the required models so that they can be applied
for all users. Consequently, the effort needed to establish
the models is constant for an increasing number of users.
Since behavioral data contains highly sensitive information,
mPSAuth uses a privacy-preserving authentication protocol
built on fully homomorphic encryption. This implies that
the inference of the ML models used must be able to work
directly on homomorphically encrypted data.
Figure 1 visualizes the architecture of mPSAuth, includ-
ing the data flows between the key components. Starting
on the left-hand side, we consider the ecosystem of the
mobile web application in the context in which mPSAuth is
applied. We distinguish between the frontend that provides
the application to the user (mobile device) and the backend
that provides the required services (server). In order to
authenticate users according to their behavior, it is necessary
to collect appropriate data sources. The collection of the
behavioral data is realized by means of a monitoring that
is integrated into the parts of the application that run in
the frontend and backend. The data sources we consult are
introduced in Section 4.2.
Additionally, mPSAuth introduces the privacy encoder for
integration into the frontend and backend. It is the central
element that ensures the privacy of the collected data. This
is achieved by homomorphically encrypting the behavioral
data that leaves the respective domain. Thus, the authen-
tication server can perform calculations on it but cannot
draw any conclusions about the underlying sensitive data.
Section 4.3 presents details on how the data is encrypted
and can still be used for authentication.
Subsequently, the privacy encoders transmit the en-
crypted data to the connection manager, which resides on the
authentication server. The connection manager passes the
received behavioral data of the users to the database man-
ager, which is responsible for storing it in a well-structured
way. Furthermore, the database manager is accountable for
providing the data in a suitable format for the preprocessors.
Each of the preprocessors prepares the data necessary
to investigate one aspect of the user’s behavior. mPSAuth
executes the authentication at regular intervals and/or
when the user performs a specific action that should be
explicitly authenticated (e.g., purchase completion). When