而且,对于非80Only的主机,入侵者也可以从其它的服务进入服务器,因此,建立一套完整的安全监测系统常必要的。 Win2000自带了相当强大的安全日志系统,从用户登录到的使用都有非常详细的记录,可惜的是,默认安装请看如下
而且,对于非80Only的主机,入侵者也可以从其它的服务进入服务器,因此,建立一套完整的安全监测系统常必要的。
Win2000自带了相当强大的安全日志系统,从用户登录到的使用都有非常详细的记录,可惜的是,默认安装下安全审核是关闭的,以至于一些主机被黑后根本没法追踪入侵者。所以,我们要做的第一步是在管理工具-本地安全策略-本地策略-审核策略中打开必要的审核,一般来说,登录事件与账户管理是我们最关心的事件,同时打开成功和失败审核非常必要,其他的审核也要打开失败审核,这样可以使得入侵者步步维艰,一不小心就会露出马脚。仅仅打开安全审核并没有完全解决问题,如果没有很好的配置安全日志的大小及覆盖方式,一个老练的入侵者就能够通过洪水般的伪造入侵请求覆盖掉他真正的行踪。通常情况下,将安全日志的大小指定为50MB并且只允许覆盖7天前的日志可以避免上述情况的出现。
设置了安全日志却不去检查跟没有设置安全日志几乎一样糟糕(唯一的优点是被黑了以后可以入侵者),所以,制定一个安全日志的检查机制也常重要的,作为安全日志,推荐的检查时间是每天上午,这是因为,入侵者喜欢夜间行动(速度快呀,要不你入侵到一半的时候连不上了,那可是哭都哭不出来)上午上班第一件事正好看看日志有没有异常,然后就可以放心去做其他的事了。如果你喜欢,也可以编写脚本每天把安全日志作为邮件发送给你(别太相信这个了,要是哪个高手上去改了你的脚本,每天发送平安无事……)
除了安全日志,系统日志和应用程序日志也常好的辅助监测工具,一般来说,入侵者除了在安全日志中留下痕迹(如果他拿到了Admin权限,那么他一定会去清除痕迹的),在系统和应用程序日志中也会留下蛛丝马迹,作为系统管理员,要有不放过任何异常的态度,这样入侵者就很难隐藏他们的行踪。
3、文件访问日志与关键文件
除了系统默认的安全审核外,对于关键的文件,我们还要加设文件访问日志,记录对他们的访问。
文件访问有很多的选项:访问、修改、执行、新建、属性更改......一般来说,关注访问和修改就能起到很大的作用。
例如,如果我们了系统目录的修改、创建,甚至部分重要文件的访问(例如cmd.exe,net.exe,system32目录),那么,入侵者就很难安放后门而不引起我们的注意,要注意的是,的关键文件和项目不能太多,否则不仅增加系统负担,还会日常的日志监测工作(哪个系统管理员有耐心每天看四、五千条垃圾日志?)
关键文件不仅仅指的是系统文件,还包括有可能对系统管理员/其他用户构成危害的任件,例如系统管理员的配置、桌面文件等等,这些都是有可能用来窃取系统管理员资料/密码的。
4、进程
进程技术是追踪木马后门的另一个有力武器,90%以上的木马和后门是以进程的形式存在的(也有以其他形式存在的木马,参见《揭开木马的神秘面纱三》),作为系统管理员,了解服务器上运行的每个进程是职责之一(否则不要说安全,连系统优化都没有办法做),做一份每台服务器运行进程的列表非常必要,能帮助管理员一眼就发现入侵进程,异常的用户进程或者异常的资源占用都有可能法进程。除了进程外,DLL也是的东西,例如把原本是exe类型的木马改写为dll后,使用rundll32运行就比较具有性。
5、注册表校验
一般来说,木马或者后门都会利用注册表来再次运行自己,所以,校验注册表来发现入侵也是常用的手法之一。一般来说,如果一个入侵者只懂得使用流行的木马,那么由于普通木马只能写入特定的几个键值(比如Run、Runonce等等),查找起来是相对容易的,但是对于可以自己编写/改写木马的人来说,注册表的任何地方都可以藏身,靠手工查找就没有可能了。(注册表藏身千变万化,例如需要特别提出来的FakeGina技术,这种利用WINNT外嵌登录DLL(Ginadll)来获得用户密码的方法最近比较流行,一旦中招,登录用户的密码就会被记录无遗,具体的预防方法我这里就不介绍了。)应对的方法是注册表的任何改动,这样改写注册表的木马就没有办法遁形了。注册表的软件非常多,很多木马的软件都带有这样的功能,一个软件加上定期对注册表进行备份,万一注册表被非授权修改,系统管理员也能在最短的时间内恢复。
6、端口
虽然说不使用端口的木马已经出现,但是大部分的后门和木马还是使用TCP连接的,端口的状况对于由于种种原因不能端口的主机来说就常重要的了,我们这里不谈使用NDIS网卡高级编程的IDS系统,对于系统管理员来说,了解自己服务器上的端口甚至比对进程的更加重要,常常使用netstat查看服务器的端口状况是一个良好的习惯,但是并不能24小时这样做,而且NT的安全日志有一个坏习惯,喜欢记录机器名而不是IP(不知道比尔盖子怎么想的),如果你既没有防火墙又没有入侵检测软件,倒是可以用脚本来进行IP日志记录的,看着这个命令:
netstat-n-ptcp10>>Netstat.log,这个命令每10秒钟自动查看一次TCP的连接状况,基于这个命令我们做一个Netlog.bat文件:
time/t>>Netstat.log
Netstat-n-ptcp10>>Netstat.log
这个脚本将会自动记录时间和TCP连接状态,需要注意的是:如果网站访问量比较大,这样的操作是需要消耗一定的CPU时间的,而且日志文件将越来越大,所以请慎之又慎。(要是做个脚本就完美无缺,谁去买防火墙?:)
一旦发现异常的端口,可以使用特殊的程序来关联端口、可执行文件和进程(如inzider就有这样的功能,它可以发现服务器的端口并找出与该端口关联的文件,inzider可以下载到),这样无论是使用TCP还是UDP的木马都无处藏身。
7、终端服务的日志
单独将终端服务(TerminalService)的日志分列出来是有原因的,微软Win2000服务器版中自带的终端服务TerminalService是一个基于远程桌面协议(RDP)的工具,它的速度非常快,也很稳定,可以成为一个很好的远程管理软件,但是因为这个软件功能强大而且只受到密码的,所以也非常的,一旦入侵者拥有了管理员密码,就能够象本机一样操作远程服务器(不需要高深的NT命令行技巧,不需要编写特殊的脚本和程序,只要会用鼠标就能进行一切系统管理操作,实在是太方便、也实在是太了)。虽然很多人都在使用终端服务来进行远程管理,但是,并不是人人都知道如何对终端服务进行审核,大多数的终端服务器上并没有打开终端登录的日志,其实打开日志审核是很容易的,在管理工具中打开远程控务配置(TerminalServiceConfigration),点击连接,右击你想配置的RDP服务(比如RDP-TCP(MicrosoftRDP5.0),选中权限,点击左下角的高级,看见那个审核了么?我们来加入一个Everyone组,这代表所有的用户,然后审核他的连接、断开、注销的成功和登录的成功和失败就足够了,审核太多了反而不好,这个审核是记录在安全日志中的,可以从管理工具->日志查看器中查看。现在什么人什么时候登录我都一清二楚了,可是美中不足的是:这个破烂玩艺居然不记录客户端的IP(只能查看在线用户的IP),而是华而不实的记录什么机器名,倒!要是别人起个PIG的机器名你只好受他的嘲弄了,不知道微软是怎么想的,看来还是不能完全依赖微软呀,我们自己来吧?写个程序,一切搞定,你会C么?不会?VB呢?也不会?Delphi?……什么?你什么编程语言都不会?我倒,毕竟系统管理员不是程序员呀,别急别急,我给你想办法,我们来建立一个bat文件,叫做TSLog.bat,这个文件用来记录登录者的IP,内容如下:
tags:路由器密码查看器