,.exe这是病毒还是木马

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了,.exe这是病毒还是木马相关的知识,希望对你有一定的参考价值。

在电脑里检测出来的两个未知进程

[未知] ,.exe c:\windows\debug\,.exe
[未知] ,.exe c:\,.exe

疑是病毒,不知道怎么杀,望各位告知下,谢谢啦
各位说的这不是废话吗,当然不是病毒就是木马啦,我是说怎么杀,我用了几个杀毒软件都没用,查都没查出来
还有二楼的那位,这个文件就是",.exe",你以为我在搞笑吗?

不是木马就是病毒 杀

开机 进入安全模式--》运行--》CMD
或者纯DOS安全模式更好,
启动后在DOS中输入 del c:\\windows\\debug\\,.exe 回车
只要知道病毒路径都可以输入
del 路径\\病毒名
在DOS环境下病毒肯定不能运行绝对可以杀掉
参考技术A .exe是文件扩展名,指应用程序,具体是不是病毒就不知道了
你用什么查的呀
参考技术B 下个杀毒的软件,一般不会杀错电脑原件的。 参考技术C 病毒,下个专杀 参考技术D 最近我公司的一台机器中了标,我发现了2个明显症状
一个是在Program Files目录了增加了个eset目录里面有个rund1132.exe文件,而且
该文件被加到了启动项目里,经常造成开机进入windows2000以后到显示桌面时explorer报错
无法显示桌面。二是总是在system32目录里生成c.exe文件删除后还会继续生成,同时还在
winnt\temp目录下生成 1.exe,2.exe..等以数字为文件名的exe文件。
我已经删除掉了winnt,system32,system32\drivers里的可疑文件(文件时间和我装系统的时间相隔较大,比较新
而且非windows必须的文件)

这是我用HijackThis扫描后的结果,请大家帮我看看到底是中了什么东东,如何解决非常感谢

HijackThis_815汉化版扫描日志 V1.99.1
保存于 14:09:58, 日期 2006-12-15
操作系统: Windows 2000 SP4 (WinNT 5.00.2195)
浏览器: Internet Explorer v6.00 SP1 (6.00.2800.1106)
当前运行的进程:
C:\WINNT\System32\smss.exe
C:\WINNT\system32\csrss.exe
C:\WINNT\system32\winlogon.exe
C:\WINNT\system32\services.exe
C:\WINNT\system32\lsass.exe
C:\WINNT\system32\svchost.exe
C:\WINNT\system32\spoolsv.exe
C:\Program Files\Symantec\pcAnywhere\awhost32.exe
C:\PROGRA~1\SYMANT~1\SYMANT~1\DefWatch.exe
C:\WINNT\system32\svchost.exe
C:\PROGRA~1\SYMANT~1\SYMANT~1\Rtvscan.exe
C:\WINNT\system32\regsvc.exe
C:\WINNT\system32\MSTask.exe
C:\WINNT\System32\WBEM\WinMgmt.exe
C:\WINNT\system32\svchost.exe
C:\WINNT\Explorer.EXE
C:\PROGRA~1\SYMANT~1\SYMANT~1\vptray.exe
C:\WINNT\system32\ctfmon.exe
C:\Program Files\Tencent\QQ\QQ.exe
C:\Program Files\Tencent\QQ\TIMPlatform.exe
C:\Program Files\Tencent\QQ\QQ.exe
C:\Program Files\Internet Explorer\iexplore.exe
C:\Program Files\Internet Explorer\iexplore.exe
C:\WINNT\system32\conime.exe
E:\hygl.exe
K:\技术部\HijackThis\HijackThis.exe
O3 - IE工具栏增项: @msdxmLC.dll,-1@2052,电台(&R) - 8E718888-423F-11D2-876E-00A0C9082467 - C:\WINNT\system32\msdxm.ocx
O4 - 启动项HKLM\\Run: [Synchronization Manager] mobsync.exe /logon
O4 - 启动项HKLM\\Run: [vptray] C:\PROGRA~1\SYMANT~1\SYMANT~1\vptray.exe
O4 - 启动项HKLM\\Run: [IMSCMig] C:\PROGRA~1\COMMON~1\MICROS~1\IME\IMSC40A\IMSCMIG.EXE /Preload
O4 - 启动项HKLM\\RunOnce: [ctfmon.exe] ctfmon.exe -r
O4 - HKCU\..\Run: [ctfmon.exe] ctfmon.exe
O4 - Startup: 腾讯QQ.lnk = C:\Program Files\Tencent\QQ\QQ.exe
O4 - Global Startup: Microsoft Office.lnk = C:\Program Files\Microsoft Office\Office\OSA9.EXE
O8 - IE右键菜单中的新增项目: 上传到QQ网络硬盘 - C:\Program Files\Tencent\QQ\AddToNetDisk.htm
O8 - IE右键菜单中的新增项目: 导出到 Microsoft Office Excel(&X) - res://C:\PROGRA~1\MICROS~2\OFFICE11\EXCEL.EXE/3000
O8 - IE右键菜单中的新增项目: 添加到QQ自定义面板 - C:\Program Files\Tencent\QQ\AddPanel.htm
O8 - IE右键菜单中的新增项目: 添加到QQ表情 - C:\Program Files\Tencent\QQ\AddEmotion.htm
O8 - IE右键菜单中的新增项目: 用QQ彩信发送该图片 - C:\Program Files\Tencent\QQ\SendMMS.htm
O9 - 浏览器额外的按钮: 信息检索 - 92780B25-18CC-41C8-B9BE-3C9C571A8263 - C:\PROGRA~1\MICROS~2\OFFICE11\REFIEBAR.DLL
O9 - 浏览器额外的按钮: Related - c95fe080-8f5d-11d2-a20b-00aa003c157a - C:\WINNT\web\related.htm
O9 - 浏览器额外的“工具”菜单项: Show &Related Links - c95fe080-8f5d-11d2-a20b-00aa003c157a - C:\WINNT\web\related.htm
O16 - DPF: 6414512B-B978-451D-A0D8-FCFDF33E833C (WUWebControl Class) - [url=http://update.microsoft.com/windowsupdate/v6/V5Controls/en/x86/client/wuweb_site.cab?1143096095500]http://update.microsoft.com/windowsupdate/v6/V5Controls/en/x86/client/wuweb_site.cab?1143096095500[/url]
O16 - DPF: 6E32070A-766D-4EE6-879C-DC1FA91D2FC3 (MUWebControl Class) - [url=http://update.microsoft.com/microsoftupdate/v6/V5Controls/en/x86/client/muweb_site.cab?1143098326218]http://update.microsoft.com/microsoftupdate/v6/V5Controls/en/x86/client/muweb_site.cab?1143098326218[/url]
O17 - HKLM\System\CCS\Services\Tcpip\..\0521EF34-2799-4D70-865B-4825D3BB4316: NameServer = 211.157.97.1,211.157.97.2
O17 - HKLM\System\CCS\Services\Tcpip\..\0DBEBA14-A67B-4B32-9E78-82DCF0B802D7: NameServer = 202.103.24.68
O17 - HKLM\System\CS1\Services\Tcpip\..\0521EF34-2799-4D70-865B-4825D3BB4316: NameServer = 211.157.97.1,211.157.97.2
O17 - HKLM\System\CS2\Services\Tcpip\..\0521EF34-2799-4D70-865B-4825D3BB4316: NameServer = 211.157.97.1,211.157.97.2
O20 - Winlogon Notify: igfxcui - C:\WINNT\SYSTEM32\igfxdev.dll
O20 - Winlogon Notify: NavLogon - C:\WINNT\system32\NavLogon.dll
O23 - NT 服务: pcAnywhere Host Service (awhost32) - Symantec Corporation - C:\Program Files\Symantec\pcAnywhere\awhost32.exe
O23 - NT 服务: DefWatch - Symantec Corporation - C:\PROGRA~1\SYMANT~1\SYMANT~1\DefWatch.exe
O23 - NT 服务: Logical Disk Manager Administrative Service (dmadmin) - VERITAS Software Corp. - C:\WINNT\System32\dmadmin.exe
O23 - NT 服务: Symantec AntiVirus Client (Norton AntiVirus Server) - Symantec Corporation - C:\PROGRA~1\SYMANT~1\SYMANT~1\Rtvscan.exe
2007-1-7 17:41 cutescat
查看你的启动信息,应该是别的机器中毒了,你可以删除C.EXE并修改本机管理员组所有成员密码
此病毒我有次也中招了,原来是局域网中有一台是以管理员用户登录,而此机恰好中了引病毒,而我的其它电脑的管理员密码都是一样.

可能是盗号木马
第5个回答  2007-07-12 LSASS.exe病毒手工清除..现在的杀毒软件没有能干掉他的

1.结束进程:调出windows务管理器(Ctrl+Alt+Del),发现通过简单的右击当前用户名的lsass.exe来结束进程是行不通的.会弹出该进程为系统进程无法结束的提醒框;鼠标右键点击"任务栏",选择"任务管理器"。点击菜单"查看(V)"->"选择列(S)...",在弹出的对话框中选择"PID(进程标识符)",并点击"确定"。找到映象名称为"LSASS.exe",并且用户名不是"SYSTEM"的一项,记住其PID号.点击"开始"-》“运行”,输入"CMD",点击"确定"打开命令行控制台。输入"ntsd –c q -p (PID)",比如我的计算机上就输入"ntsd –c q -p 1064".

2.删除病毒文件:以下要删除的文件大多是隐藏文件所以要首先设置显示所有的隐藏文件、系统文件并显示文件扩展名;我的电脑-->工具(T)-->文件夹选项(O)...-->查看-->选择"显示所有文件和文件夹",并把隐藏受保护的操作系统文件(推荐)前的勾去掉,这时会弹出一个警告,选择是.至此就显示了所有的隐藏文件了.

删除如下几个文件:

C:\Program Files\Common Files\INTEXPLORE.pif
C:\Program Files\Internet Explorer\INTEXPLORE.com
C:\WINDOWS\EXERT.exe
C:\WINDOWS\IO.SYS.BAK
C:\WINDOWS\LSASS.exe
C:\WINDOWS\Debug\DebugProgram.exe
C:\WINDOWS\system32\dxdiag.com
C:\WINDOWS\system32\MSCONFIG.COM
C:\WINDOWS\system32\regedit.com

在D:盘上点击鼠标右键,选择“打开”。删除掉该分区根目录下的"Autorun.inf"和"command.com"文件.

3.删除注册表中的其他垃圾信息.这个病毒该写的注册表位置相当多,如果不进行修复将会有一些系统功能发生异常。

将Windows目录下的"regedit.exe"改名为"regedit.com"并运行,删除以下项目:
HKEY_CLASSES_ROOT\WindowFiles
HKEY_CURRENT_USER\Software\VB and VBA Program Settings
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main
下面的 Check_Associations项
HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\INTEXPLORE.pif
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
下面的ToP项

将HKEY_CLASSES_ROOT\.exe的默认值修改为
"exefile"(原来是windowsfile)
将HKEY_CLASSES_ROOT\Applications\iexplore.exe\shell\open\command
的默认值修改为
"C:\Program Files\Internet Explorer\iexplore.exe" %1"
(原来是intexplore.com)
将HKEY_CLASSES_ROOT\CLSID\871C5380-42A0-1069-A2EA-08002B30309D
\shell\OpenHomePage\Command 的默认值修改为
"C:\Program Files\Internet Explorer\IEXPLORE.EXE"(原来是INTEXPLORE.com)
将HKEY_CLASSES_ROOT \ftp\shell\open\command
和HKEY_CLASSES_ROOT\htmlfile\shell\opennew\command
的默认值修改为"C:\Program Files\Internet Explorer\iexplore.exe" %1"
(原来的值分别是INTEXPLORE.com和INTEXPLORE.pif)
将HKEY_CLASSES_ROOT \htmlfile\shell\open\command
HKEY_CLASSES_ROOT\HTTP\shell\open\command的默认值修改为
"C:\Program Files\Internet Explorer\iexplore.exe" –nohome”
将HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet
的默认值修改为"IEXPLORE.EXE".(原来是INTEXPLORE.pif)

重新将Windows目录下的regedit扩展名改回exe,至此病毒清除成功,注册表修复完毕.Enjoy It .

病毒木马查杀实战第019篇:病毒特征码查杀之编程实现

前言

       上次我们已经简介过了病毒特征码提取的基本方法,那么这次我们就通过编程来实现对于病毒的特征码查杀。

 

定义特征码存储结构

       为了简单起见。这次我们使用的是setup.exe以及unpacked.exe这两个病毒样本。经过上次的分析,我们对setup.exe样本的特征码提取例如以下:

\x2a\x2a\x2a\xce\xe4\x2a\xba\xba\x2a\xc4\xd0\x2a\xc9\xfa\x2a\xb8

\xd0\x2a\xc8\xbe\x2a\xcf\xc2\x2a\xd4\xd8\x2a\xd5\xdf\x2a\x2a\x2a

       为了方便起见,这里同一时候也将该特征码的文件偏移保存下来。即0x0c040。

然后是unpacked.exe的特征码:

\x13\x8b\x45\xf0\xe8\x00\x00\x00\x00\x81\x04\x24\xd7\x86\x00\x00

\xff\xd0\xeb\x11\x6a\x10\x68\x30\x80\x40\x00\xff\x75\xfc\x53\xff

       它的文件偏移为0x1921。

       有了以上的信息,就能够開始进行编程了。

首先须要定义一个数据结构。用于保存特征码和文件偏移。

该结构例如以下:

#define NAMELEN 20
#define SIGNLEN 32
typedef struct SIGN
{
    char szVirusName[NAMELEN];
    LONG lFileOffset;
    BYTE bVirusSign[SIGNLEN + 1];
}_SIGN, *PSIGN;
       利用该数据结构定义一个全局变量,该全局变量保存有上述两个病毒的特征码,定义例如以下:
SIGN Sign[2] = 
{
{
    // setup.exe
    “setup.exe”,
    0x0c040,
    “\x2a\x2a\x2a\xce\xe4\x2a\xba\xba\x2a\xc4\xd0\x2a\xc9\xfa\x2a\xb8”     “\xd0\x2a\xc8\xbe\x2a\xcf\xc2\x2a\xd4\xd8\x2a\xd5\xdf\x2a\x2a\x2a”
},
{
    // unpacked.exe
    “unpacked.exe”,
    0x1920,
    “\x13\x8b\x45\xf0\xe8\x00\x00\x00\x00\x81\x04\x24\xd7\x86\x00\x00”     “\xff\xd0\xeb\x11\x6a\x10\x68\x30\x80\x40\x00\xff\x75\xfc\x53\xff”
}
};

       至此。病毒特征码的基础定义部分就到这里。

上述程序中,我是将病毒特征码保存在一个全局变量中,大家也能够另外创建一个文件。相似于PEiD的userdb.txt文件。从而专门保存病毒的特征码。

现实中的杀毒软件的特征库也是以专门的文件的形式,保存在本地计算机中的。

这里我为了简单起见,选择以全局变量的形式进行保存。

 

主体程序的编写

       首先须要编写一个函数用于对目标程序指定位置处的十六进制代码进行检測:
BOOL CheckSig(char* FilePath)
{
    DWORD dwSigNum = 0;
    DWORD dwNum = 0;
	BYTE  buffer[SIGNLEN+1];
	int i;
	HANDLE hFile = NULL;

    hFile = CreateFile(FilePath,
                       GENERIC_READ | GENERIC_WRITE,
                       FILE_SHARE_READ,
                       NULL,
                       OPEN_EXISTING,
                       FILE_ATTRIBUTE_NORMAL,
                       NULL);

    for(i=0; i <= 1; i++)
	{
        // 将待检測程序的文件指针指向特征码的偏移位置
		SetFilePointer(hFile, Sign[i].lFileOffset, NULL, FILE_BEGIN);
		// 读取目标程序指定偏移位置的特征码
		ReadFile(hFile, buffer, sizeof(buffer), &dwNum, NULL);
        // 特征码的比对
        if(memcmp(Sign[i].bVirusSign, buffer, SIGNLEN) == 0)
		{
			printf("发现病毒程序:%s\n", FilePath);
			CloseHandle(hFile);
            return TRUE;
		}
  	}
	CloseHandle(hFile);
	return FALSE;
}
       然后就是main函数的编写:
int main()
{
	WIN32_FIND_DATA stFindFile;
	HANDLE hFindFile;
	char *szFilter = "*.exe";   // 保存搜索的筛选条件(全部exe文件)
	char szFindFile[MAX_PATH];  // 保存欲检測的程序的路径
	char szSearch[MAX_PATH];    // 保存完整筛选路径
	int ret = 0;                // 搜索的返回值

    lstrcpy(szFindFile, "E:\\");
    lstrcpy(szSearch, "E:\\");
	lstrcat(szSearch, szFilter);

	hFindFile = FindFirstFile(szSearch, &stFindFile);
	if(hFindFile != INVALID_HANDLE_VALUE)
	{
		do
        {
            // 组成完整的待检測程序的路径
			lstrcat(szFindFile, stFindFile.cFileName);
			// 利用特征码检測目标程序是不是病毒程序
			if(!CheckSig(szFindFile))
			{
				printf("%s不是病毒程序\n",szFindFile);
			}
			// 删除程序名称,仅仅保留“E:\”
			szFindFile[3] = ‘\0‘;
			ret = FindNextFile(hFindFile, &stFindFile);
		}while( ret != 0 );
	}
	FindClose(hFindFile);

	return 0;
}

       上述程序仅仅是检測E盘根文件夹下全部后缀为exe的程序是否为病毒程序,其实还能够进行改动。使其能够全盘搜索,大家能够參考“熊猫烧香专杀工具”的相关代码部分。另外为了谨慎起见,仅仅通过后缀进行exe程序的检測是不严谨的。经常使用的检測一个程序是不是exe程序的方法。就是解析目标程序中的对应位置是否为“MZ”以及“PE”。我这里为了简单起见。就不採用该方法,有兴趣的朋友能够自行编程实现。

 

程序的測试

       这里我使用的是Code::Blocks13.12这款开源而且免费的开发环境。由于这款软件能够自己主动计算程序的执行时间,便于我们之后的对照操作。为了进行測试,我已经在E盘的根文件夹下放置了10个程序。当中4个程序是我们之前讲过的病毒样本。还有6个程序是我们曾经也曾使用过的一些工具软件:

技术分享

图1

       上图中前方带有小方块的就是病毒样本。然后我们在Code::Blocks中编译执行程序:

技术分享

图2

       可见程序已经非常成功地识别出了setup.exe以及unpacked.exe这两个病毒样本。其实,cf.exe以及OSO.exe也是病毒程序,但由于我并没有把这两个样本的特征码增加我们程序的特征库。因此并没能识别出来。最后,Code::Blocks还显示出了本次程序的执行时间,当然每次的执行时间可能都不一样,包含在不同的计算机上执行的结果应该也是不同的。可是通过多次执行进行观察。基本上是0.016秒。也就是16毫秒。

 

与CRC32病毒识别方式的对照

       我们曾经的程序使用的CRC32算法来识别病毒,那么我们这里能够对照一下。看看这次我们所讲的方法和CRC32算法在程序运算时间上的优劣。CRC32病毒特征识别的程序例如以下:
#include "stdio.h"
#include "windows.h"

DWORD CRC32(BYTE* ptr,DWORD Size)
{
    DWORD crcTable[256],crcTmp1;
    //动态生成CRC-32表
    for (int i=0; i<256; i++)
    {
        crcTmp1 = i;
        for (int j=8; j>0; j--)
        {
            if (crcTmp1&1) crcTmp1 = (crcTmp1 >> 1) ^ 0xEDB88320L;
            else crcTmp1 >>= 1;
        }

        crcTable[i] = crcTmp1;
    }
    //计算CRC32值
    DWORD crcTmp2= 0xFFFFFFFF;
    while(Size--)
    {
        crcTmp2 = ((crcTmp2>>8) & 0x00FFFFFF) ^ crcTable[ (crcTmp2^(*ptr)) & 0xFF ];
        ptr++;
    }
    return (crcTmp2^0xFFFFFFFF);
}
//
// 计算程序的CRC32值。输入为文件路径,输出为DWORD类型的CRC32值
//
DWORD CalcCRC32(char* FilePath)
{
	HANDLE hFile = CreateFile(FilePath,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
    if (hFile == INVALID_HANDLE_VALUE)
	{
        printf("Create Error");
        return FALSE;
	}
    DWORD dwSize = GetFileSize(hFile,NULL);
    if (dwSize == 0xFFFFFFFF)
	{
         printf("GetFileSize Error");
         return FALSE;
	}
    BYTE *pFile = (BYTE*)malloc(dwSize);
    if (pFile == NULL)
	{
         printf("malloc Error");
         return FALSE;
	}

    DWORD dwNum = 0;
    ReadFile(hFile,pFile,dwSize,&dwNum,NULL);

    DWORD dwCrc32 = CRC32(pFile,dwSize);

    if (pFile != NULL)
	{
          free(pFile);
          pFile = NULL;
	}

    CloseHandle(hFile);

	return dwCrc32;
}

int main()
{
	WIN32_FIND_DATA stFindFile;
	HANDLE hFindFile;
	char *szFilter = "*.exe";   // 保存搜索的筛选条件(全部exe文件)
	char szFindFile[MAX_PATH];  // 保存欲检測的程序的路径
	char szSearch[MAX_PATH];    // 保存完整筛选路径
	int ret = 0;                // 搜索的返回值

    lstrcpy(szFindFile, "E:\\");
    lstrcpy(szSearch, "E:\\");
	lstrcat(szSearch, szFilter);

    DWORD dwTmpCRC32;

	hFindFile = FindFirstFile(szSearch, &stFindFile);
	if(hFindFile != INVALID_HANDLE_VALUE)
	{
		do
        {
            // 组成完整的待检測程序的路径
			lstrcat(szFindFile, stFindFile.cFileName);
			// 利用CRC32算法检測目标程序是不是病毒程序
			dwTmpCRC32 = CalcCRC32(szFindFile);
			// 匹配setup.exe的CRC32值
			if(dwTmpCRC32 == 0x89240FCD)
			{
				printf("发现病毒程序:%s\n",szFindFile);
			}
			// 匹配unpacked.exe的CRC32值
			else if(dwTmpCRC32 == 0xC427A090)
            {
                printf("发现病毒程序:%s\n",szFindFile);
            }
            else
            {
                printf("%s不是病毒程序\n",szFindFile);
            }
			// 删除程序名称,仅仅保留“C:\”
			szFindFile[3] = ‘\0‘;
			ret = FindNextFile(hFindFile, &stFindFile);
		}while( ret != 0 );
	}
	FindClose(hFindFile);

	return 0;
}

       相比而言,程序的主体部分还是基本一致的,仅仅只是是对于病毒特征的验证方式稍有不同。由于关于CRC32算法我们已经在前几次的课程中运用过,所以这里不再赘述。看一下执行结果:

技术分享

图3

       可见,利用CRC32算法提取出来的病毒特征码的检測方式,在结果上与上一个程序是一样的,相同是发现了两个病毒,没有特征码的病毒就没能识别。

然后再看一下用时,我的測试结果是0.063秒,也就是63毫秒,是之前的时间的3.9375倍,那么也就说明了,CRC32算法在效率上是不如传统的特征码查杀方式的。

 

小结

       本文讨论了病毒特征码查杀的编程实现。并与CRC32算法在效率上进行了对照。

由于我们仅仅有两个特征码,为了便于课程的解说。我採用的是直接利用if…else语句进行特征码的对照。

假设病毒的特征码的数量非常庞大,那么有多少特征码就须要使用多少个if语句,那么这显然是非常没有效率的。能否够利用一定的算法来优化大量的特征码的比对工作,不是我们讨论的重点。有兴趣的朋友能够研究一下。

以上是关于,.exe这是病毒还是木马的主要内容,如果未能解决你的问题,请参考以下文章

U盘中了mydocument.exe病毒,文件隐藏了。但我是mac系统,求用啥杀毒软件?

softupnotify.exe是啥程序,是病毒吗

windows server2008系统下的 C:\Windows\system32\wininit.exe是木马么?是的话如何杀掉?

exe木马病毒是啥?

木马病毒cc.exe

电脑system是啥意思