电脑爱好者,提供IT资讯信息及各类编程知识文章介绍,欢迎大家来本站学习电脑知识。 最近更新 | 联系我们 RSS订阅本站最新文章
电脑爱好者
站内搜索: 
当前位置:首页>> 网络安全>>哇!有黑客![1]:

哇!有黑客![1]

来源:远方网络 | 2005-8-8 15:40:52 | (有2230人读过)

哇!有黑客![1]- -############################################################

异象:昨夜西风凋碧树

序幕:
話説那日elly與衆人閒談完"黑客趨勢(趣事)"之後,獨自下樓喝茶去了。 鳳簫
聲動,玉壺光轉,正恍惚閒,忽聞手機鈴聲。原是尋到一服務器,正在閒置,可
為所用。於是登錄上去,稍做配置...


PCAnywhere正在登录。

方世玉的老妈的师兄经常说,安全第一,安全第一。上去之后,当然是先看看服
务器的服务配置。运行"Services.msc"打开服务管理器,一眼看去,不对啊...
这里有几位新住客怎么恁得陌生?

============================================================Dcom Services [描述: 空] 已启动 自动 LocalSystemSecure Port Server [同上]Windows Event Logger [同上]============================================================

用小脑也知道第一位肯定是用假身份证登录的!查看详细信息:

============================================================服务名称: dcomsvc显示名称: DCOM Services描述: [空]可执行文件路径: C:\WINNT\system32\Dcomsvc.exe启动类型: 自动============================================================

C:\WINNT\system32 elly在那儿住了那么多年,就没见到过这号兄弟。elly
开始意识到了问题的严重性:系统很可能已经被人入侵了,并且安装了后门!

先看一下当前服务的状态:

============================================================C:\WINNT\cmd>sclist ...running dcomsvc 34567890 DCOM Services running Server Administrator Secure Port Server running Windows Event Logger Windows Event Logger ...============================================================

sclist 列出了当前所有正在运行的Windows系统服务。从服务列表中,我们
最简单直接的先发现了上面三个异常服务。至于怎么发现的么...
第一,他们都没有服务说明(或正确的服务说明),代表他们不是系统自带的服务;
第二,更主要是根据经验啦,一个熟练的Windows系统管理员,对系统中的各项服
务情况是应该做到心中有数洞若观火的;手边至少应该准备好两份文档,第一是
Windows自带的服务列表、功能和状态,第二是每台服务器安装完成之后初始化镜
像状态下的服务列表。

再使用sc query看一下更详细的服务信息:

============================================================SERVICE_NAME: dcomsvc34567890DISPLAY_NAME: DCOM Services(null) TYPE : 10 WIN32_OWN_PROCESS STATE : 4 RUNNING (STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0============================================================SERVICE_NAME: Windows Event LoggerDISPLAY_NAME: Windows Event Logger(null) TYPE : 10 WIN32_OWN_PROCESS STATE : 4 RUNNING (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) WIN32_EXIT_CODE : 0 (0x0) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0============================================================SERVICE_NAME: CCProxyDISPLAY_NAME: Dell OpenManage (null) TYPE : 110 WIN32_OWN_PROCESS INTERACTIVE_PROCESS STATE : 1 STOPPED (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) WIN32_EXIT_CODE : 1077 (0x435) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0============================================================


============================================================C:\WINNT\cmd>psservice config dcomsvc Error opening dcomsvc on \\CXL: 指定的服务并未以已安装的服务存在。 ============================================================C:\WINNT\cmd>psservice config "Windows Event Logger" SERVICE_NAME: Windows Event Logger (null) TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 0 IGNORE BINARY_PATH_NAMEE : C:\WINNT\system32\Termsrv.exe LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : Windows Event Logger DEPENDENCIES : SERVICE_START_NAME: LocalSystem============================================================C:\WINNT\cmd>psservice config ccproxy SERVICE_NAME: ccproxy (null) TYPE : 110 WIN32_OWN_PROCESS INTERACTIVE_PROCESS START_TYPE : 3 DEMAND_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : "C:\WINNT\AppPatch\app\openmange.exe" -service LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : Dell OpenManage DEPENDENCIES : SERVICE_START_NAME: LocalSystem ============================================================

现在,三个服务露出狐狸尾巴来了,第一个程序位于C:\WINNT\system32\Dcomsvc.exe
经过分析是一个sock5代理服务器skserver v1.0,经常被入侵者安装用来作为攻
击其它机器的跳板;第二个程序位于C:\WINNT\system32\Termsrv.exe,它其实
是-- Windows 2000的终端服务程器序,可是它为什么会是这个名字呢?第三个程
序是CCProxy 6.0,一个多功能的应用代理服务器,很显然它也不是管理员正常安装
的。

很明显,现在服务器已经被入侵过了,而且也留下了一个后门和两个用作跳板或其它
非法用途的代理服务器,那么是不是还存在其它没发现的东西呢?请待下回分解...

本章结论:
1.本主机已被渗透入侵;
2.本主机已被安装如下后门:
C:\WINNT\system32\Dcomsvc.exe(skserver 1.0)
C:\WINNT\system32\Termsrv.exe(TerminalServer)
C:\WINNT\AppPatch\app\openmange.exe(CCProxy 6.0)
所要做的事:
所要做的事,是指在每个阶段,我们正常情况下应急处理所需要进行的工作。
在本节中,主要是发现异常状况。
在Windows 2000系统中,当系统可能被入侵时,会有一些异常情况发生,系统管
理员需要有足够的警觉,并且当异常事件发生时迅速定位原因。主要有以下几种情况:
1. 进程异常
2. 服务异常
3. 资源异常
4. 帐户异常
5. 日志异常
6. 网络异常

本章遗留问题:
1. TerminalServer为什么会变了脸?
2. 系统中按现在的情况还可能存在哪些后门途径?
3. 为什么查看Dcomsrv服务信息失败?


正确的途径:
根据上面可能发生的情况,进行异常检查时,可以有一些常用和可选的手段来进
行检查。
1. 进程检查。
任务管理器: 这是Windows 2000系列系统中最常用的进程管理方法了。但
是存在一些缺陷。它也必须运行在图形界面下,而可能某些时候
我们只能在命令行下工作,比如现在--当我只有56k小猫上网的
时候。
ps系列工具: 这是sysinternal公司出品的一系列命令行工具,其中ps和
pslist就可以在命令行下列出系统中的所有进程;在windows
-2000 ResourceKit中,也有一个类似的命令,tslist。而
ps系列命令最强大的功能就是不仅能本地执行,还可以通过IPC$
匿名共享连接管道进行远程执行。
Windows Reskit系列工具: Windows NT/2000 ResourceKit中包含了一
系列非常强大的工具,比如tslist和ptree。其中ptree也是令
一个强大的工具,包含图形界面和明令行两个版本,能够以树状
格式列出进程树和依赖关系,同样它也可以连接远程服务器进行
管理。缺点是--在远程服务器上,你必须先安装ptree服务。

2. 服务检查:
服务管理器: 同样,Windows2000系统中内置了一个服务管理器,它只能运行
在图形界面下。可以在[控制面板]->[管理工具]->[服务]中找到
它,或者通过命令行快捷方式"services.msc"来打开。它能够
查看、停止、启动服务,并且能够有限度的修改一些服务参数。
net.exe: net是Windows 2000系列中内置的一个非常强大的管理命令,
包括服务管理的功能。net start用来查看和启动服务;而
net stop则用来停止服务。不带参数的net start命令将列出
当前系统上正在运行的所有服务。
它最大的缺点就是在服务管理方面功能比较简单,例如无法得知
系统中安装的所有服务,同样也需要管理员对Win2000的服务本身
非常熟悉。
sc.exe: sc最早也是WinNT ResKit中出现的一个更强大的服务管理工具。
在Windows 2003中它已经成为一个内置命令。它可以对Windows
服务做几乎所有的操作:

sc query 查询服务状态,不带参数则列出所有服务; sc config 配置服务参数; sc start 启动一个服务; sc stop 停止一个服务; sc pause 暂停服务; sc delete 删除服务; sc create 创建服务; 同样sc也可以直接在远程机器上连接和执行。使用: sc [hostname] [command]的格式连接远程主机。

psservice: psservice.exe是sysinternal ps系列命令中的一个,它的功
能与参数都基本和sc一致,具体差别看帮助。

4. 帐户异常:
计算机管理: 计算机管理是Windows系统内置的系统管理工具,我们可以在这里
查看到系统用户信息。
net.exe: net user命令可以在命令行模式下管理系统用户帐号和口令。

net user 不带参数则列出所有用户帐号; net user [username] 查看某用户详细信息; net user [username] [password] 修改用户口令; net user [username] /add 添加用户; net user [username] /delete 删除用户; net user ... ... /domain 在域模式下执行。

注意,当系统中发现陌生的用户名,或正常用户帐号口令被修改、滥用等事件都
需要引起注意。

5. 日志异常
当系统各项服务(系统日志、Web日志、ftp日志等)出现异常日志信息时需要注意。
使用系统命令eventvwr.msc可以打开日志查看器;
iis日志默认在%SYSTEMROOT%\system32\LogFiles目录下。

3/6. 系统资源和网络
当系统中出现大量的CPU、内存、磁盘空间、网络带宽异常时,可以用各项手段
检测异常原因。

本章Tips:
1. sc命令还有一个姐妹sclist,可以像pslist一样简单的列出所有服务列表。
2. 当使用net start/stop命令管理服务时,可以使用"引号"把包含空格的服务名
包括起来。
3. Windows 2000中服务名字有两种形式,分别是 服务名 (缩写短名)和 显示
服务名(带空格的长名)。在大多数情况下两个名字都是有效的,因而也各有优
缺点,长名易记,但是难写;短名易写,但是难记。可以使用sc命令查询服务
名字对照。
sc GetDisplayName 查询DisplayName(长名)
sc GetKeyName 查询KeyName(短名)
当使用包含空格的长名时,有可能shell不能正确解析,可以使用""引号引住。
4. Windows 系列的各项服务都有依赖关系,比如RPC Server就是很多服务的前
置条件,虽已停止服务可能会造成无法预料的后果,可以使用sc命令查看命令
依赖关系。
sc EnumDepend [服务名]查看服务依赖关系

psservice depend [服务名]
5. 最终的服务管理工具是...注册表编辑器regedit.exe。系统中所有服务在注
册表中都存在一个映射数据库,通过修改对应的值就可以查看和修改对应参数。
例如IIS WWW服务

============================================================ C:\>reg query HKLM\SYSTEM\CurrentControlSet\Services\W3SVC Listing of [SYSTEM\CurrentControlSet\Services\\W3SVC] REG_DWORD Type 32 REG_DWORD Start 2 REG_DWORD ErrorControl 1 EXPAND_SZ ImagePath C:\WINNT\system32\inetsrv\inetinfo.exe REG_SZ DisplayName World Wide Web Publishing Service MULTI_SZ DependOnService IISADMIN; MULTI_SZ DependOnGroup REG_SZ ObjectName LocalSystem REG_SZ Description [ASP] [Parameters] [Performance] [Security] [Enum]============================================================
网络安全热门文章排行
网站赞助商
购买此位置

 

关于我们 | 网站地图 | 文档一览 | 友情链接| 联系我们

Copyright © 2003-2024 电脑爱好者 版权所有 备案号:鲁ICP备09059398号