-----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-----