-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Advisory ID: SYSS-2015-005
Product: Kaspersky Total Security (KTS)
Vendor: Kaspersky Lab ZAO
Affected Version(s): 15.0.1.415
Tested Version(s): 15.0.1.415
Vulnerability Type: Authentication Bypass Using an Alternate Path or
Channel (CWE-288)
Risk Level: Medium
Solution Status: Fixed
Vendor Notification: 2015-02-19
Solution Date: 2015-10-01
Public Disclosure: 2015-10-01
CVE Reference: Not yet assigned
Authors of Advisory: Matthias Deeg and Sven Freund (SySS GmbH)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Overview:
Kaspersky Total Security is an endpoint protection software with many
features defending users against different threats.
The vendor Kaspersky describes the product as follows (see [1]):
"Kaspersky Total Security - Multi-Device is our ultimate security
solution protecting your privacy, money, identity, photos, files &
family against Internet threats, cybercrime and malware. That's why we
call it total security."
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vulnerability Details:
The Kaspersky Total Security software allows users to disable the
offered protection by entering a so-called unload password. Beside the
graphical user interface (GUI) authentication, it is also possible to
manually deactivate the protection over the command-line interface using
the Kaspersky software tool avp.exe.
By analyzing the password-based authentication for unloading the
Kaspersky Total Security protection, the SySS GmbH found out, that the
password comparison is done within the process avp.exe (actually within
the used module shell_service.dll), which runs or can be run in the
context of the current Windows user, who can also be a standard, limited
user.
This fact allows a further analysis and the manipulation of the password
comparison during runtime without administrative privileges, as every
user is able to debug and manipulate the processes running with her user
privileges.
In order to bypass the password-based authentication to deactivate the
protection of Kaspersky Total Security in an unauthorized manner, an
attacker only has to patch this password comparison, so that it always
returns true, for example by comparing the correct unload password with
itself or by modifying the program control flow.
The SySS GmbH also found out, that by modifying the software tool
avp.exe, the Kaspersky Total Security can also be deactivated completely
even when no password was set for protecting administrative functions.
The intended behavior of the software tool avp.exe in this case is to
deny access to the requested function, for example "exit", due to a
disabled password protection.
Thus, a limited Windows user or malware running in the context of such a
user is able to unload Kaspersky Total Security in an unauthorized
manner regardless of the configured password protection.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Proof of Concept (PoC):
The SySS GmbH developed a proof-of-concept software tool named UnloadKTS
for deactivating Kaspersky Total Security in an unauthorized manner.
The following output exemplarily shows a successful deactivation of
Kaspersky Total Security:
>UnloadKTS.exe
____________________________________________________________
/ _____ _____ _____ \
/ / ___| / ___/ ___| \
| \ `--. _ _\ `--.\ `--. |
| `--. \ | | |`--. \`--. \ |
| /\__/ / |_| /\__/ /\__/ / |
\ \____/ \__, \____/\____/ ... unloads KTS! /
\ __/ | /
/ |___/ _________________________________________/
/ _________________/
(__) /_/
(oo)
/------\/
/ |____||
* || ||
^^ ^^
SySS Unload KTS v1.0 by Matthias Deeg & Sven Freund - SySS GmbH (c) 2015
[+] Found location of the executable file avp.exe
[+] Created new instance of the Kaspersky Total Security process avp.exe
[+] The Kaspersky Total Security process was patched successfully.
Kaspersky Total Security will now exit without a password.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Solution:
According to information by Kaspersky, the described security issue has
been fixed in newer software releases.
Please contact the manufacturer for further information or support.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Disclosure Timeline:
2015-02-19: Vulnerability reported to manufacturer
2015-02-19: Manufacturer acknowledges e-mail with SySS security advisory
2015-03-17: Rescheduling of the publication date in agreement with the
manufacturer
2015-04-14: Rescheduling of the publication date in agreement with the
manufacturer
2015-09-28: SySS asks for further information about software fix
2015-10-01: Public release of security advisory on agreed publication
date
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
References:
[1] Product Web site for Kaspersky Total Security
http://www.kaspersky.com/total-security-multi-device
[2] SySS Security Advisory SYSS-2015-005
https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2015-005.txt
[3] SySS Responsible Disclosure Policy
https://www.syss.de/en/news/responsible-disclosure-policy/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Credits:
This security vulnerability was found by Matthias Deeg and Sven Freund
of the SySS GmbH.
E-Mail: matthias.deeg (at) syss.de
Public Key: https://www.syss.de/fileadmin/dokumente/Materialien/PGPKeys/Matthias_Deeg.asc
Key fingerprint = D1F0 A035 F06C E675 CDB9 0514 D9A4 BF6A 34AD 4DAB
E-Mail: sven.freund (at) syss.de
Public Key: https://www.syss.de/fileadmin/dokumente/Materialien/PGPKeys/Sven_Freund.asc
Key fingerprint = DCDB 7627 C1E3 9CE8 62DF 2666 8A5F A853 415D 46DC
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Disclaimer:
The information provided in this security advisory is provided "as is"
and without warranty of any kind. Details of this security advisory may
be updated in order to provide as accurate information as possible. The
latest version of this security advisory is available on the SySS Web
site.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Copyright:
Creative Commons - Attribution (by) - Version 3.0
URL: http://creativecommons.org/licenses/by/3.0/deed.en
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBCgAGBQJWDPB0AAoJENmkv2o0rU2r33YP/Aoz5AHVq8cebQaqsAHF0hqR
COZRobTWunkS78pbAsXF3lS50Voj0TdYN3SkAWMrTg0KwHLfN0qNryaPz0zJa26d
3/TiqrJNvCmqbbWLr67xOorY/PvGjCzbOppPt2PefD7hg9CfHlp/tqKd96CTCvrf
SQpYKy8NUtiJashBU/5ZpcwhJYmgHWgybPSySPEA6l0wqCiVFNMCEmh+dfkQbKfr
zpKDrE7IGvXGKRXWSoAaezYR5mQf6QvjII+smf1CqZnVUHB5kWgzpg01mG3yxDiQ
2OZ9l+zHwOJu8VqzsWClPyVNygNwvQF8r77Af+6+te6+Da5yui4JBEb+1PS6r6al
jVUW5o8RJfzvj+jmijRZx0VlR3h0Z6Du76/7JojR9dO+HhjQlGggOfJ5/u7X0pYw
8D8sLvwOG5scUcbKSJIeZ7V+S2+02D9iX5llLWLNaPJAjYUtWpTPnOejtEylF1iq
TCLvKDf5IyXlEZk4T4QOxovLB+XNH+5A+VqV3NXqo2e2l3bWrw46XdDKnFH2SpEl
QytUhNZeUAgpB78rE52RW1gb6nbIq/ZYU1HTPeD7euehMdNFVwKO0rv7STNtVYv5
+6Eg3KGs4r1O7ol3XwvyDy758bRAPKlvz3gk1n7Hr7kMW0NRzKw5Vs15LNSngspk
SR5Mw3Sqzue2erO5L/TD
=IAIZ
-----END PGP SIGNATURE-----