Poll
Your favourite antivirus families?
Advisory 2006-10-01.01
Kerio Multiple insufficient argument validation of hooked SSDT function Vulnerability
Basic information:
Release date: October 01, 2006
Last update: March 12, 2007
Severity:Medium
Character:System crash
Status:Fixed
Testing program: BTP00000P001SK.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.
Sunbelt Kerio Personal Firewall hooks many functions in SSDT and in at least six cases it fails to validate arguments that come from the user mode. User calls to NtCreateFile, NtDeleteFile, NtLoadDriver, NtMapViewOfSection, NtOpenFile, NtSetInformationFile with invalid argument values can cause system crashes because of errors in Kerio drivers fwdrv.sys and khips.sys. Further impacts of this bug (like arbitrary code execution in the kernel mode) were not examined.
Vulnerable software:
- Sunbelt Kerio Personal Firewall 4.3.268
- Sunbelt Kerio Personal Firewall 4.3.246
- Sunbelt Kerio Personal Firewall 4.2.3.912
- probably all versions of Sunbelt Kerio Personal Firewall 4
- possibly older versions of Sunbelt Kerio Personal Firewall
Not vulnerable software:
- Sunbelt Kerio Personal Firewall 4.3.635 and higher
Events:
- 2007-02-21: The product vendor released Sunbelt Kerio Personal Firewall 4.3.635, which fixed the bug
- 2006-10-05: Candidate for inclusion in the CVE list
- 2006-10-02: Vulnerability confirmed by popular information sources
- 2006-10-01: Advisory released
- 2006-08-12: Vendor notification