利用人们的薄弱安全意识,手工修复针对msn骗子的、专杀工具的、而无法启动的操作系统

10日msn骗子席卷中国,然后是rising11日的专杀工具,也是席卷大陆:N多的电脑无法启动。本来没在意,因为偶已经7、8年没有感染过病毒了。今天早上,一哥们的机器起不来了。症状和被专杀工具蹂躏的一样。于是,偶就搞了一把,不到半个小时吧,终于OK了。
首先,非常幸运,他机器上的mssqlserver是auto start的。虽然他无法登录到系统,但是出现login界面后1分钟左右,mssqlserver服务已经启动了。所以呢,问了他sa的密码,用sql analyzer连接上,运行一下:
xp_cmdshell 'net start RemoteRegistry',然后还有:
xp_cmdshell 'net start rasman'。本以为我可以远程连接机器或者远程连接到regsitry中,。前者登录失败,后者只有LocalMachine和User两个Key,而且,没有read的权限。
然后看了一下手工杀毒的办法,呵呵,巨简单啊!偶就写了这么点代码:
            try
            
{
                Microsoft.Win32.RegistryKey key 
= Microsoft.Win32.Registry.LocalMachine;
                key 
= key.OpenSubKey(@"Software\Microsoft\Windows NT\CurrentVersion\Winlogon",true);
                
string ui = key.GetValue("Userinit").ToString();
                Console.WriteLine(
"UserInit:"+ui);
                key.SetValue(
"Userinit",@"C:\WINDOWS\system32\userinit.exe");
                key.Close();

                Microsoft.Win32.RegistryKey key2 
= Microsoft.Win32.Registry.LocalMachine;
                key2 
= key2.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run",true);
                
string mm = Convert.ToString(key2.GetValue("MMSystem"));
                Console.WriteLine(mm);
                key2.DeleteValue(
"MMSystem");
                key2.Close();
            }

            
catch(Exception ex)
            
{
                Console.WriteLine(ex);
            }

具体的手工杀毒办法,这里有一个:http://www.trendmicro.com/vinfo/zh-cn/virusencyclo/default5.asp?VName=WORM_FUNNER.A
上面的代码编译成了一个fixme.exe。然后这么搞了几下(都是在sql中):
xp_cmdshell 'md d:\juqiang'
xp_cmdshell 'net share juqiang=d:\juqiang /unlimited'
然后从我的explorer中把fixme.exe复制到juqiang中,然后重新回到sql里面:
xp_cmdshell 'd:\juqiang\fixme.exe'
运行之后,重新启动机器。

哈哈,搞定了!

如果他机器不开mssqlserver,那么我利用IPC$也可以连,但是没有类似于analyzer那么方便的工具了。知道了sa的口令,确实很爽。如果做好事,可以修复被遗忘的admin的口令,就是用WMI搞一下就好了。如果做坏事,干啥反正都行。
最开始我用sqldom连接远程机器的时候,想做一个冰河之类的东西。后来才明白,我那么连接去的进程,无法访问的桌面。所以,也无法远程控制机器了。所以,退而求其次,就在命令上玩吧!
posted @ 2004-10-13 09:29 鞠强 阅读(1562) 评论(5) 编辑 收藏

hello

world