深圳市聚网在线科技有限公司
N服务器被挂马的原因和解决方法网站首页新闻资讯

来源:深圳市聚网在线科技有限公司   阅读:1117   时间:2012-07-14

WEB服务器为何被挂马以及被黑的原因可以大致分为服务器本身和网站本身两方面情况。下面介绍服务器方面的原因和解决方法:

    1 SQL数据库注入漏洞。 

  这个漏洞比较常见,比如说asp+Access注入,Asp+MSSQL注入。Aspx+MSSQL注入等等。 

  注入漏洞主要是利用ASP程序连接数据库未过滤的情况下,利用select from,update等语句执行任意SQL语句。但是这个漏洞如果在ACcess上使用,那么只能用查询了。ACCESS是封装的数据库。但是SQL就不同了。MSSQL利用的漏洞有很多,比如说权限分配不好,可以通过SQL拓展和权限的薄弱,列目录,差异备份LOG文件,跨库查询,CMD命令行执行。MSSQL的exec等命令。防止这个漏洞的相关方法,就是禁止在GET参数后面使用修改任意字符。比如说"and 1=1"等等。网络上有很多防注入程序。还要注意的几个不起眼的注入特征符。"","%"。%准确来说。是字符经过转码了。可以转换很多种编码。比如说HTML编码。WINHEX等。都可以扰过很多防注入文件。微软的MSSQL是建立在Windows平台的。他有两种方式验证用户,一种是MSSQL用户,一种是Windows身份验证。所以极度不安全就在这里。如果一个攻击者拿到系统权限。那么他可以修改管理员密码。然后利用管理员密码,用Windows身份验证登陆到本机MSSQL,可以查阅对应数据库任何资料。以及修改,删除。还可以建立一个SYSTEM ADMIN权限的SQL帐号。这里一般的解决办法。网管在建立MSSQL管理帐号时,千万切记别采用默认模式登陆。MSSQL如果是用默认的模式登陆的话,那么可以使用Windows用户验证。所以只能采用MSSQL帐户。删除xp_cmdshell等。各个盘都设置权限。不允许MSSQL直接访问盘符根目录。WEB目录名称尽量复杂点。别用Vhost,wwwroot等。这里可以防范基本的攻击者列目录。大家最好是做数据库分离。教大家一个比较变态的数据库分离方法。在服务器装个虚拟机。ViasulPC也可以。就装个Windows2003,如果大家有需要。可以自己租一个服务器。然后自己用共享模式上网,跟虚拟机共享,把数据库放在虚拟机里面。那么数据库也就是在内网了。实际上跟本机一样。现在数据库在外网已经TELNET不进1433了。就算别人得到了数据库服务器也没什么用。前几天在CK空间看了一篇他入侵时碰到的一个有趣的事。数据库分离的。那黑客气的要死。在INETPUB目录写了个骂管理员的ASP文件。如果是用的整站系统。请及时更新关注官方的漏洞和补丁公告。

  2 系统漏洞

  如果程序和组件相关的安全都做好了。那么服务器是不是就安全了? 

  微软提供的WindowsServer家族服务器版本虽然方便快捷,但是仍然存在着安全隐患。这个跟程序无关。是系统本身的漏洞。一般攻击者都是通过缓冲区溢出漏洞直接获得CMDSHELL或者系统权限。比如说IIS写权限漏洞,可以匿名访问IIS,并且写入ASP木马,获得WEBSHELL。比如说WEBDAV溢出,先用NC监听本地端口。再去溢出对方端口。获得一个CMDSHELL。然后通过管理命令获得远程控制权限。这些漏洞在官方没有提供解决方案之前,是没有办法修复的。如果是Linux系统的话,开放过源码了。大家可以自己修改。但是微软没公布源码。所以要随时关注微软官方发布的公告。有条件和需要的企业可以联系微软公司,申请一套Datacenter服务器系统。这款系统没有在市场发行,是微软专门为客户需要定做的一套系统。价格昂贵。赠送liense。但是安全性非常高。不过申请有点难度。因为datacenter各大企业都没有采用。就是因为它的价格。相关信息可以去看看Microsoft的系列广播和资料。在这里感谢Cloudx的帮助。在我学MCSE的时候,他帮了我很多。还是他要我去MS看广播的。网管们可以随时关注MS公布的补丁。如果对系统漏洞想研究的朋友们。可以去安全焦点或教主的0DAY公布站点随时关注漏洞利用程序的发布。然后再关注下MS的公告。对学习很有帮助。

  3 密码

  关于密码设置问题。这个是也很容易获得权限的。这都是人为漏洞。比如说某公司员工,为了更容易的记住密码。就随意把密码设置成生日,手机号码,姓名的拼音等。建议大家把密码设置的复杂点。特别是服务器的密码。比如说数据库和系统密码。WEB密码也要好好设置。大小写+符号。长度在10-15位左右。定期换一次密码。这样攻击者在破解你密码的时候。还没破解出来,你又改密码了。关于密码这个问题。千万不要设置成纯数字。如果是纯小写。可以在密码结尾设置2个或者3个好记点的数字。长度最好是12-17位。这个东西我就不说了。一定要把系统Administrator给改名或者停用。Guest停用。然后改名。帐户策略也要设置好。

  4 组件和权限

  攻击者现在拥有一个系统的帐号。你完全不用害怕他会改动你的IIS组件内设置。你可以把INTER信息服务设置一个密码。然后把系统*。msc复制到你指定的一个文件夹。再设置加密。然后只允许你的帐号使用。接着隐藏起来。那么攻击者改不了你任何组件。也不能查看和增加删除。Wscript。shell删除。 Net。exe删除。 Cmd。exe设置好权限。所有目录全部要设置好权限。如不需要。除WEB目录外。其他所有目录。禁止IIS组用户访问。只允许Administrators组进行访问和修改。还一个变态权限的设置。前面我已经说了MSC文件的访问权限。你可以设置Admin,Admin1,Admin2……,admin只赋予修改权限,admin1只赋予读取和运行权限,admin2只赋予列出文件夹和目录权限,admin3只赋予写入权限,admin4只赋予读取权限。然后每个帐户根据需要分配配额。这样的话。就算有VBS脚本。删除了NET。EXE,对方也提不起权。如果是没运行权限的用户不小心启动了攻击者的木马。那么也没权限运行和修改。Windows提供了屏幕保护功能。建议大家还可以安装一个第三方提供的屏幕保护锁。那样你的系统又可以多一重安全保障。建议大家千万不要使用Pcanywhere等软件。除非你权限设置通过自己的测试了。Pcanywhere有一个文件系统,如果权限没分配好,用户可以通过PCANYWHERE的文件系统,在启动项写木马。然后等待你登陆。大家没这需要。建议就用默认的3389就好了。端口就算改了别人也可以扫出来。还不如就用默认的。攻击者在获得你系统权限并登陆到3389以后。你的第二道安全锁(第三方系统锁)把他死死的锁在外面了。这样别人就进不了你系统了。记住。千万不能乱开权限。不然后果不堪设想。如果是独立服务器。没必要使用WEB时,请把多余的IIS等服务关闭。以免引起不必要的损失。用优化大师禁止远程注册表的访问那些。还有IPC空连接。

TOP