4.4 “木马”防范措施
4.4.1“木马”的概述
特洛伊木马是一种隐藏了具有攻击性的应用程序。与病毒不同,它不具备复制能力,其功能具有破坏性。
大部分“木马”采用C/S运行模式,当服务端在目标计算机上被运行后,打开一个特定的端口进行监听,当客户端向服务器发出连接请求时,服务器端的相应程序会自动运行来应答客户机的请求,如表4-1所示。
表4-1 C/S型木马结构
1、首先发起连接 2、连接成功后发出命令 3、接受返回信息 1、 端口打开并监听 接受并运行命令 2、3、 运行并将信息返回客户端 4.4.2 “木马”的防范措施
(1)检查系统配置应用程序。在“木马”程序会想尽一切办法隐藏自己,主要途径有:在任务栏和任务管理器中隐藏自己,即将程序设为“系统服务”来伪装自己,“木马”会在每次服务端启动时自动装载到系统中,如:启动组,win.ini,system.ini,注册表等。比如在“开始”-“运行”输入msconfig,执行windows自带“系统配置应用程序”。在标签为win.ini文件中,在[windows]下面“run=”和“ load=”是可能加载“木马”程序的途径,一般情况下,它们的等号后面什么都没有。在system.ini文件中,在[BOOT]下面有个“shell:文件名”正确的文件名应该是“explorer.exe”如果不是“explorer.exe”,而是“shell: explorer.exe程序名”,那么后面跟着的那个程序就是“木马”了
[21]
。
(2)查看注册表。输入regedit命令
HKEY_LOCAL_MACHINE\\software\\Microsoft\\windows\\current version\\run目录下查看键值有设有自己不熟悉的自动启动文件,扩展名为:“.exe”。
(3)查找“木马”的特征文件,“木马”的一个特征文件是kernl32.exe,另一个是sysexlpr.exe,只要删除了这两个文件,“木马”就不起作用了,但是需要注意的是sysexlpr.exe是和文本文件关联的,在删除时,必须先把文本文件跟notepod关联上,否则不能使用文本文件。
25
4.5 网页恶意代码及防范
目前,网页中的恶意代码开始威胁到网络系统安全,一般分为以下几种: (1)消耗系统资源。 不断地利用cpu的利用率,使计算机不能处理其他的进程,导致系统和网络资源瘫痪。这类病毒大都是利用JavaScrit产生的一个死循环,它可以在有恶意的网站中出现,也可以被当作邮件发给用户,当用户打开html,vbs附件时,屏幕会出现无数个浏览器窗口,最后不得不重启。 (2)非法向用户硬盘写入文件。
(3)IE泄露,利用IE漏洞,网页可以读取客户机的文件,就可以从中获得用户账号和密码。
(4)利用邮件非法安装木马。
4.5.1恶意代码分析
在html中利用死循环原理,交叉显示耀眼的光线,如果继续插入编写的一段代码,扩大恶意程度,那么IE将无法使用。
例如:下面的两段简单代码分别就事用的死循环原理来进行破坏的。
26
本代码的功能是使用白黑两色轮流交换,形成刺眼的效果,当x自增到2,立即回到0,形成死循环。
本段代码的功能是实现某网站的窗体无限地弹出。
4.5.2网页恶意代码的防范措施
(1)运行IE时,点击“工具→Internet选项→安全→ Internet区域的安全级别”,把安全级别由“中”改为“高”。网页恶意代码主要是含有恶意代码的ActiveX或Applet、 JavaScript的网页文件 ,所以在IE设置中将ActiveX插件和控件、Java脚本等全部禁止就可以减少被网页恶意代码感染的几率。具体方案是:在IE窗口中点击“工具”→“Internet选项”,在弹出的对话框中选择“安全”标签,再点击“自定义级别”按钮,就会弹出“安全设置”对话框,把其中所有ActiveX插件和控件以及与Java相关全部选项选择“禁用”。如图4-3所示:
27
图4-3 防范网页恶意代码
(2)网页恶意代码大多是在访问网站时候误下载和激活的,所以不要进入不信任的陌生网站,对于网页上的各种超级连接不要盲目去点击,若被强制安装恶意代码,一经发现立即删除,或者安装相应的恶意代码清除工具,或本机防火墙软件。
4.6 嗅探器(sniffer)的防范
Sniffer是一种常用的收集有用数据方法,这些数据可能是用户的帐号和密码,可能是一些商用机密数据,等等。它可以作为能够捕获网络报文的设备,ISS为sniffer这样定义:sniffer是利用计算机的网络接口截获其他计算机的数据报文的一种工具。
4.6.1 Sniffer的工作原理
Sniffer要捕获的东西必须是要物理信号能收到的报文信息,只要通知网卡接收其收到的所有包,在共享HUB下就能接收到这个网络的所有包,但是交换HUB下就只能是自己的包加上广播包,sniffer工作在网络环境中的底层,它会拦截所有正在网络上传递的数据,并且通过相应的软件处理,可以实时分析这些数据的内容,进而分析所处理的网络状态和整体布局,值得注意的是,sniffer是极其安静的,它是一种消极的安全攻击。
Sniffer在功能和设计方面有很多不同,有些只能分析一种协议,而另一些可能能够分析几百种协议,一般情况下,大多数的嗅探器至少能够分析以下的协议:标准以太网,TCP/IP,IPX,DECNET。
28
4.6.2 Sniffer的检测和防范
(1)对于可能存在的网络监听的检测;对于怀疑运行监听程序的机器,用正确的IP地址和错误的物理地址ping,运行监听程序的机器会有响应,这是因为正常的机器不接收错误的物理地址,处理监听状态的机器能接收,但如果它的Ipstack不再发反向检查的话,就会响应。
(2)向网上发大量不存在的物理地址的包;由于监听程序要分析和处理大量的数据包会占用很多的资源,会导致系统性能下降,通过比较前后该机器性能加以判断,这种办法难度较大。
(3)使用反监听工具如 Antisniffer等进行检测。 对于网络监听的防范措施有: (1)从逻辑或物理上对网络分段。 (2)以交换式HUB代替共享式HUB。 (3)使用加密技术。
(4)划分VLAN(虚拟局域网)。
4.7 数据密文防范措施
在前面的一章中我们已经介绍了数据加密和隐藏技术,在保密系统中,信道中传播的是加密后的消息,即密文,采用截获密文进行分析的攻击称为被动攻击,采用删除、更改、增添、重放、伪造等手段向系统注入假消息并进行分析的攻击称为主动攻击。对此,我们必须采用有效的加密解密的程序来防止密文泄露,可以通过c语言来实现的加密和解密。
下面的例子是用c语言来实现的简易加密算法。 (1)加密算法 #include “stdio.h” main( ) { int key;
char mingma,mima;
printf(“\\n please input the character:“); scanf(“%c”,&mingma); printf(“\\n please input the key:”); scanf(“%d”,&key);
29