Poll
How much system resources could your security products consume at most?
Advisory 2007-06-15.01
Kaspersky Multiple insufficient argument validation of hooked SSDT function Vulnerability
Basic information:
Release date: June 15, 2007
Last update: July 18, 2007
Severity:Medium
Character:System crash
Status:Unknown
Testing program: BTP00000P006KA.zip
Description:
Hooking SSDT functions requires extra caution. SSDT function handlers are executed in the kernel mode but their callers are executed in the user mode. Hence all function arguments come from the user mode. This is why it is necessary to validate these arguments properly. Otherwise, a simple user call can easily crash the whole system. This bug usually results in a system crash. However, it may happen that this bug is even more dangerous and may lead to the execution of an arbitrary code in the privileged kernel mode.
Kaspersky Internet Security hooks many functions in SSDT and in at least nine cases it fails to validate arguments that come from the user mode. User calls to NtCreateKey, NtCreateProcess, NtCreateProcessEx, NtCreateSection, NtCreateSymbolicLinkObject, NtCreateThread, NtLoadKey2, NtOpenKey, NtOpenProcess with invalid argument values can cause system crashes because of errors in KIS driver klif.sys. Further impacts of this bug (like arbitrary code execution in the kernel mode) were not examined.
Note: A similar vulnerability in klif.sys driver has been published recently by an independent security researcher. In that report, the list of vulnerable functions also contains NtDeleteValueKey, NtOpenSection and NtQueryValueKey.
Vulnerable software:
- Kaspersky Internet Security 7.0.0.119 beta
- Kaspersky Internet Security 6.0.2.621
- Kaspersky Internet Security 6.0.2.614
- probably all older versions of Kaspersky Internet Security 6
- possibly older versions of Kaspersky Internet Security and other Kaspersky products that use klif.sys driver
Events:
- 2007-06-15: Vulnerability confirmed by popular information sources
- 2007-06-15: Advisory released
- 2007-06-03: Similar vulnerability published by an independent security researcher
- 2007-05-14: Vendor notification