正在加载中……
最新消息:欢迎大家访问,导航分类不完善,如果找不到自己想要的文章,可以通过【关键词】来进行搜索,^_^!

清除并防止”Winlogon被劫持记录3389密码”的方法

windows系列 REKFAN.COM 7850浏览 0评论

更多


前段时间一客户的服务器,客户自己找人配置RAID,然后客户把服务器的管理员密码给了那为技术,结果今天帮客户配置网站的时候,发现服务器运行着一个超级SEO软件(实际上是暴力破解别人网站的ftp,然后加入黑链),看下了添加的优化关键词,和我的客户的网站完全不相关,遂问客户他们那边添加的吗!结果非也,然后立马关闭并拷贝收藏之,说不定日后需要的地方!
然后有系统文件被篡改的对话框,如下图示:

立马查看windows的系统的目录,按修改日期排序,发现多了几个文件,如下图示:

用记事本打开boot.dat文件,吓了我一跳,服务器的管理员账号通过post传值方式到一网站的数据库了如下图所示:

立马删除,删除不了文件,应该还挂在某个进程里运行,如下图所示:

尝试着用UnLocker删除提示也不行,但知道在这文件钩在哪个进程上了,如图所示:

然后看了看系统日志文件,发现每隔几秒就有人在连接3389远程服务,Fuck !
而且服务器上竟然还安装了 CAIN、WinPcap,看来服务器已经被黑客光顾了,不过个人认为服务器几乎是不可能拿到system权限的,除了客户把密码给说是装RAID的人外!
  
在baidu上搜索了下,wminotify.dll 木马,找到了清理方法!
以下信息来自互联网:
 

一、远程终端密码泄露分析

1.最新远程终端技术APP
对于大型企业来说,一般都部署有远程终端,微软最新的服务器操作系统Windows 2008 Server中更是重点打造远程终端。终端服务器远程APP是Windows Server 2008中新的远程应用演示方法。在远程连接的一些参数上进行了调整,增加了一些新的功能,据说性能也有较大提高!

2.远程终端密码泄露分析
在大型网络中,由于网络环境复杂,因此服务器之间往往通过远程终端来维护和管理,这种管理在方向不太固定,多是发散。有的可能是通过一台主机登录多台主机,也有的可能是通过多台主机来登录同一台主机,也可能是混乱交叉登录,黑客在入侵网络某一台主机后,肯定会想办法收集网络内部或者跟外部独立主机之间的远程终端登录用户名称和密码。收集方法不外乎三种:

(1)使用GetHashes、Pwdump等工具获取系统的Hash密码值,然后通过LC5以及彩虹表来进行破解,破解成功后得到系统密码,这些密码极有可能是远程终端的密码。

(2)在被控制计算机上安装键盘记录,通过键盘记录来获取用户在登录3389远程终端过程所输入的用户名和密码。这种方法有一定的限制,键盘记录在远程终端窗口最大化时有可能无法记录远程终端登录密码。

(3)使用WinlogonHacK工具软件截取远程登录时所输入的正确密码。这也是本文要重点介绍的部分。当然除了以上三种外,还有一些其它的泄露途径。


二、WinlogonHack工具软件截取密码原理

1.Gina.dll与Msgina.dll
Gina.dll在NT/2000中交互式的登陆支持是由WinLogon调用Gina.dll实现的,Gina.dll提供了一个交互式的界面为用户登陆提供认证请求。WinLogon会和Gina.dll进行交互,缺省是msgina.DLL(在System32目录下)。微软同时也为我们提供了接口,我们可以自己编写Gina.dll来代替Msgina.dll。

不知道什么原因,微软的Gina.dll在Windows XP以及后续版本中都不再出现,原来的Gina.dll改为Msgina.dll(加了ms表示是微软的,嘿嘿!)。Msgina.dll在WindowsXP系统中默认大小为967,680 字节(945K),在Windows 2003中其大小为1,180,672 字节(1153K),如果不是这个大小,估计就有问题了。

2.Msgina.dll文件被损坏和修改将导致严重错误
在DLL知识库(http://www.dofile.com/dlllibrary/msgina/)中是这样描述的:msgina.dll是Windows登陆认证策略相关模块,该模块用于完成所有用户登陆和验证功能,如果系统中的这个文件被修改或者破坏,将导致系统无法使用3389进行登录,如图1所示,这个系统的Msgina.dll文件就被破坏了,从而导致用户无法远程登录3389终端服务器。

3.WinlogonHack截取密码原理
WinlogonHack通过挂钩系统中的msgina.dll的WlxLoggedOutSAS函数,记录登录账户密码!WinLogon初始化时会创建3个桌面:

(1)Winlogon桌面:主要显示Windows 安全等界面,如你按下“CTRL+ALT+DEL”快捷看所出现的登陆的界面等。
(2)应用程序桌面:我们平时见到的那个有我的电脑的界面。
(3)屏幕保护桌面:屏幕保护显示界面。

在默认情况下,Gina.dll或者Msgina.dll显示登陆对话框,用户输入用户名及密码。所以要获得用户名和密码,则可以写一个新的Gina.DLL或者Msgina.dll,其中提供接口调用msgina.dll的函数是WlxLoggedOutSAS。启动就用winlogon通知包,当有3389,连上服务器时。新创建的 winlogon.exe会在登录前加载,注册了 “Startup”的dll,Hook了函数,登录成功后,记录密码到 boot.dat 文件,并取消Hook。退出3389后,dll文件即可删除。在实现上只要msgina.dll中WlxLoggedOutSAS函数的前五个字节:
mov edi,edi
push ebp
mov ebp,esp

三、使用WinlogonHack获取密码实例

在WinlogonHack之前有一个Gina木马主要用来截取Windows 2000下的密码,WinlogonHack主要用于截取Windows XP以及Windows 2003 Server。

1.执行install.bat安装脚本
一种方法是将WinlogonHack的安装程序文件Hookmsgina.dll、install.bat、On.reg以及ReadLog.bat复制到一个相同文件夹下面,然后在Dos提示符或者GUI界面写直接运行install.bat即可。执行完毕后不需要重启,当有3389登上时,自动加载DLL,并且记录登录密码!保存在系统system32目录的boot.dat文件中,另外一种方法是将所有文件都放在同一个文件夹中,然后执行install命令即可,如图2所示,表示安装正确的一些提示。

2.查看密码记录
可以直接打开boot.dat文件查看,也可以运行“ReadLog.bat”脚本移动密码文件到当前目录查中查看。在本例中的操作系统是Windows 2003 Server,直接通过Radmin的telnet,然后先执行“dir boot.dat /a”命令,查看是否有人远程进行登录,如图3所示,boot.dat大小为5762字节,有货!使用“type boot.dat”可以看到记录的登录时间、用户、域名、密码以及旧密码。出现两个密码主要是用于记录用户更改了密码的情况下。

3.卸载WinlogonHack
执行“Uninstall.bat”即可自动卸载该程序,如果“%systemroot%system32wminotify.dll”文件未能删除,可以重启后删除!

四、攻击与防范方法探讨

1.攻击方法探讨
(1)定制化开发
WinlogonHack代码是开源的,因此入侵者可以定制它,即在“lstrcat( LogPath , "\boot.dat");”代码中将boot.dat换成其它一个文件,执行Winlogonhack后,一般人员很难发觉。入侵者还可以在此基础上增加一个邮件发送功能,将记录下来的3389远程终端用户名和密码发送到指定的邮箱,笔者在安全加固过程中就曾经碰到过具有这种功能的3389密码截取木马软件。

(2)对WinlogonHack软件做免杀处理
由于WinlogonHack工具软件在网络入侵中扮演了一个重要的辅助角色,因此一些厉害的杀毒软件会自动查杀wminotify.dll文件,如图4所示,我在做试验时,我的avast!杀毒软件就能查出来,作为病毒处理。因此可以通过加花指令、修改特征码等方法修改wminotify.dll文件,使其能够绕过杀毒软件。


(3)WinlogonHack在攻击中应用
WinlogonHack工具软件主要用于截取3389登录密码,因此在被入侵计算机上运行mstsc后,如果发现在mstsc的计算机地址栏目中出现有多个登录IP地址列表,如图5所示,那么在该计算机上就有安装WinlogonHack软件的必要,通过它来记录在服务器上管理员所登录的3389用户名和密码。

2.防范方法探讨
(1)在系统目录查找“wminotify.dll”文件,如果发现有这个文件,则说明系统中一定安装了Winlogonhack工具,可以通过登录一个3389终端来测试,系统目录下是否存在boot.dat文件,如果存在,则可以尝试使用“Uninstall.bat”批处理来卸载它,如果还不能卸载,可以重启后再次卸载。

(2)直接到注册表的键值“HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogonNotifywminotify”下进行查看,如果存在,则删除即可。

(3)对于定制的WinlogonHack比较难于根除,一个好的办法就是在系统安全状态下做一次文件名称列表备份,以后每次检测系统是通过比较系统目前状态下的文件列表的异同来查看。

(4)如果使用3389远程终端登录多台服务器进行管理,最好在管理完毕后,及时清除3389登录地址列表。

(5)定期杀毒,杀毒软件在一定程度上面能够防范一些已知的病毒,因此勤杀毒,勤看日志,在确认系统被入侵后,一定要仔细彻底的做一边系统的安全检测。
 

除了用以上的方法清理木马外,本人建议几条:

⒈超级管理员的密码不要轻易给外人,如有需要,分配临时管理员权限

⒉服务器打上最新补丁,安装上杀毒软件

⒊服务器除了常用的 80、21等端口,禁止其他端口访问,禁止服务器访问外网

⒋修改3389远程控制端口,防止别人不停暴力破解

⒌设置好组策略,做好安全审计

小总一下,个人觉得服务器安全配置的足够好的话,那些菜鸟别说拿到服务器的权限,就是拿到网站的权限都困难,当然大鸟就不要喷我了 ! 

转载请注明:|REKFAN|系统运维| » 清除并防止”Winlogon被劫持记录3389密码”的方法

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址