【卷首语:越来越复杂的安全威胁、持续提高的规章制度要求以及不断开发的新型应用程序,给企业网络安全带来了更多新问题。由于管理问题,增加更多的单点式解决方案并不总是最理想的方案。Fortinet公司亚太区副总裁Jens Andreassen先生考虑的问题是:企业如何才能进行一种实用的安全差距分析,以及选择合适的厂商来提高网络安全,同时不会增加管理的复杂性。】 【赛迪网-IT技术报道】每天都在努力维护网络安全的IT管理者们面临越来越复杂的挑战,因为他们面对的威胁越来越复杂,合规负担不断增加,且新的应用和技术也带来了更多漏洞。 黑客们目前更多关注的是获取经济利益而不是扬名立万,而有组织的犯罪在网络安全斗争中开始占据越来越大的比重。此外,由于网络层要求保持持续的警惕并且已经开发出了各种防火墙和入侵防御系统(IPS),因此,安全问题不仅局限在网络层,进而包括内容(数据)层。 信息安全、防病毒、反垃圾邮件、网页过滤、反间谍软件…这个技术需求清单还在不断地加长,小型企业很难跟上这个发展速度。 合规与保障应用的指导原则给IT管理者们带来了更重的责任。他们不仅必须采用最新的技术来应对潜在的威胁,而且必须证明已竭尽全力来保护敏感的数据和网络。 各种流量和活动都必须记入日志,以便于审查并证明其合规,另外也是为了方便取证。这一点对于查明并迅速修补网络安全制度方面的漏洞至关重要。这些更加重了他们的负担。 因此,为了全力提高经营效率和获得竞争优势及业务成功,IT管理者们辛勤工作,努力提供更好的用户移动性、互联互通性和第三方网络接入能力。 通过增加新的或升级现有的应用来实现对各种新技术的最基本改善,或许可以提高业务绩效,但不幸的是,这也增加了新的攻击漏洞。 实用的网络安全 IT安全一般只是总体IT预算的一部分,而总体IT预算又只是总体业务预算的一小部分。我们不仅需要按照各种威胁对业务的潜在影响程度对它们进行分级,而且还需要平衡IT预算中与之相关的技术和产品等。所有这一切都必须按照规则进行,以降低与资本支出相关的运营费用。 这就解释了大家对整合网络安全功能越来越感兴趣的原因,因为它能够降低实施和管理安全设施的复杂性和成本。 局域网具有设备共享、信息共享、可进行高速数据通讯和多媒体信息通信、分布式处理、具有较高的兼容性和安全性等基本功能和特点。目前局域网主要用于办公室自动化和校园教学及管理,一般可根据具体情况采用总线形、环形、树形及星形的拓扑结构。 一、网络监听 网络监听技术本来是提供给网络安全管理人员进行管理的工具,可以用来监视网络的状态、数据流动情况以及网络上传输的信息等。当信息以明文的形式在网络上传输时,使用监听技术进行攻击并不是一件难事,只要将网络接口设置成监听模式,便可以源源不断地将网上传输的信息截获。网络监听可以在网上的任何一个位置实施,如局域网中的一台主机、网关上或远程网的调制解调器之间等。 二、在局域网实现监听的基本原理 对于目前很流行的以太网协议,其工作方式是:将要发送的数据包发往连接在一起的所有主机,包中包含着应该接收数据包主机的正确地址,只有与数据包中目标地址一致的那台主机才能接收。但是,当主机工作监听模式下,无论数据包中的目标地址是什么,主机都将接收(当然只能监听经过自己网络接口的那些包)。 在因特网上有很多使用以太网协议的局域网,许多主机通过电缆、集线器连在一起。当同一网络中的两台主机通信的时候,源主机将写有目的的主机地址的数据包直接发向目的主机。但这种数据包不能在IP层直接发送,必须从TCP/IP协议的IP层交给网络接口,也就是数据链路层,而网络接口是不会识别IP地址的,因此在网络接口数据包又增加了一部分以太帧头的信息。在帧头中有两个域,分别为只有网络接口才能识别的源主机和目的主机的物理地址,这是一个与IP地址相对应的48位的地址。 传输数据时,包含物理地址的帧从网络接口(网卡)发送到物理的线路上,如果局域网是由一条粗缆或细缆连接而成,则数字信号在电缆上传输,能够到达线路上的每一台主机。当使用集线器时,由集线器再发向连接在集线器上的每一条线路,数字信号也能到达连接在集线器上的每一台主机。当数字信号到达一台主机的网络接口时,正常情况下,网络接口读入数据帧,进行检查,如果数据帧中携带的物理地址是自己的或者是广播地址,则将数据帧交给上层协议软件,也就是IP层软件,否则就将这个帧丢弃。对于每一个到达网络接口的数据帧,都要进行这个过程。 【赛迪网-IT技术】近来黑客攻击事件频频发生,我们身边的朋友也不断有QQ、E-mail和游戏账号被盗事件发生。现在的黑客技术有朝着大众化方向发展的趋势,能够掌握攻击他人系统技术的人越来越多了,只要你的电脑稍微有点系统Bug或者安装了有问题的应用程序,就有可能成为他人的肉鸡。如何给一台上网的机器查漏洞并做出相应的处理呢? 一、要命的端口 计算机要与外界进行通信,必须通过一些端口。别人要想入侵和控制我们的电脑,也要从某些端口连接进来。某日笔者查看了一位朋友的系统,吃惊地发现开放了139、445、3389、4899等重要端口,要知道这些端口都可以为黑客入侵提供便利,尤其是4899,可能是入侵者安装的后门工具Radmin打开的,他可以通过这个端口取得系统的完全控制权。 在Windows 98下,通过“开始”选取“运行”,然后输入“command”(Windows 2000/XP/2003下在“运行”中输入“cmd”),进入命令提示窗口,然后输入netstat/an,就可以看到本机端口开放和网络连接情况。 那怎么关闭这些端口呢?因为计算机的每个端口都对应着某个服务或者应用程序,因此只要我们停止该服务或者卸载该程序,这些端口就自动关闭了。例如可以在“我的电脑 →控制面板→计算机管理→服务”中停止Radmin服务,就可以关闭4899端口了。 如果暂时没有找到打开某端口的服务或者停止该项服务可能会影响计算机的正常使用,我们也可以利用防火墙来屏蔽端口。以天网个人防火墙关闭4899端口为例。打开天网“自定义IP规则”界面,点击“增加规则”添加一条新的规则,在“数据包方向”中选择“接受”,在“对方IP地址”中选择“任何地址”,在TCP选项卡的本地端口中填写从4899到0,对方端口填写从0到0,在“当满足上面条件时”中选择“拦截”,这样就可以关闭4899端口了。其他的端口关闭方法可以此类推。 二、敌人的“进程” 在Windows 2000下,可以通过同时按下“Ctrl+Alt+Del”键调出任务管理器来查看和关闭进程;但在Windows98下按“Ctrl+Alt+del”键只能看到部分应用程序,有些服务级的进程却被隐藏因而无法看到了,不过通过系统自带的工具msinfo32还是可以看到的。在“开始→运行”里输入msinfo32,打开“Microsoft系统信息”界面,在“软件环境”的“正在运行任务”下可以看到本机的进程。但是在Windows98下要想终止进程,还是得通过第三方的工具。很多系统优化软件都带有查看和关闭进程的工具,如春光系统修改器等。 但目前很多木马进程都会伪装系统进程,新手朋友很难分辨其真伪,所以这里推荐一款强大的杀木马工具──“木马克星”,它可以查杀8000多种国际木马,1000多种密码偷窃木马,功能十分强大,实在是安全上网的必备工具! 三、小心,远程管理软件有大麻烦 现在很多人都喜欢在自己的机器上安装远程管理软件,如Pcanywhere、Radmin、VNC或者Windows自带的远程桌面,这确实方便了远程管理维护和办公,但同时远程管理软件也给我们带来了很多安全隐患。例如Pcanywhere10.0版本及更早的版本存在着口令文件*.CIF容易被解密(解码而非爆破)的问题,一旦入侵者通过某种途径得到了*.CIF文件,他就可以用一款叫做Pcanywherepwd的工具破解出管理员账号和密码。 而Radmin则主要是空口令问题,因为Radmin默认为空口令,所以大多数人安装了Radmin之后,都忽略了口令安全设置,因此,任何一个攻击者都可以用Radmin客户端连接上安装了Radmin的机器,并做一切他想做的事情。 Windows系统自带的远程桌面也会给黑客入侵提供方便的大门,当然是在他通过一定的手段拿到了一个可以访问的账号之后。 可以说几乎每种远程管理软件都有它的问题,如本报43期G12版介绍的强大的远程管理软件DameWare NTUtilitie。它工具包中的DameWare Mini RemoteControl某些版本也存在着缓冲区溢出漏洞,黑客可以利用这个漏洞在系统上执行任意指令。所以,要安全地远程使用它就要进行IP限制。这里以Windows 2000远程桌面为例,谈谈6129端口(DameWare Mini RemoteControl使用的端口)的IP限制:打开天网“自定义IP规则”界面,点击“增加规则”添加一条新的规则。在“数据包方向”中选择“接受”,在“对方IP地址”中选择“指定地址”,然后填写你的IP地址,在TCP选项卡的本地端口中填写从6129到0,对方端口填写从0到0,在“当满足上面条件时”中选择“通行”,这样一来除了你指定的那个IP(这里假定为192.168.1.70)之外,别人都连接不到你的电脑上了。 安装最新版的远程控制软件也有利于提高安全性,比如最新版的Pcanywhere的密码文件采用了较强的加密方案。 |
【卷首语:当企业设法降低其网络安全防御的复杂性、提高有效性并增强运营效率时,Fortinet公司亚太区副总裁Jens Andreassen先生透彻地分析了:为什么这些公司现在开始转向通过一种整合的、综合的统一威胁管理(UTM)方法来实现定制化的网络安全。】 【赛迪网-IT技术报道】过去几年经受了各种连篇累牍的解释之后,大多数IT和安全专业人员现在完全了解了基于单点产品的安全战略日益失宠的诸多原因。 如今,赚钱而不是扬名立万成为了黑客们的主要动机,这就导致了威胁在多样性、复杂性和狡诈性方面发生了变化。容易被利用的编码漏洞的总体数目在持续增加,而实现更高的收入和运营效率的各种机遇也带来了更高的用户移动性和互连互通性,这就意味着更多网络登录点的出现。 因此,企业亟需获得一种混合式统一威胁管理(UTM)解决方案,它能够处理更为复杂的多重威胁,提供功能覆盖,并融合各种对策,包括预防性对策(如入侵防御)。 与更加多样化的威胁作斗争 过去几年来,威胁和技术的发展变化显示,在一个统一的平台上,任意程度的网络安全整合都能产生某些出乎意料的好处,优于低效的“补丁式解决方案”。 企业采用的基于周边的大量网络层应对措施均感觉力不从心,因为网络登录点增加了,更多的资源需要保护,并且更为多样化的威胁都在设法利用可能存在的各种漏洞。 与规章、威胁和技术情况有关的现状,正在改变着信息安全要求的性质和范围。为计算系统及相关的信息资产提供全面的保护,不仅是良好的业务实践,而且,在目前的很多情况下都是强制性的要求。 许多公司已经选择性地采用了UTM设备,而且还将继续把它们当作平衡其总体安全解决方案的一种手段。 最佳的安全效果 通过一台设备提供多种安全功能以降低成本和复杂性并提高效果,这基本上是无庸置疑的好办法。但同样应当清楚的是:其“实际效果”将会有所变化。毕竟,不是所有的UTM技术都完全一样。 从一个产品到包含各种可能差异的下一款产品,其使用效果将不可避免地出现巨大变化,所谓可能的差别包括:来源、质量以及个体安全和网络组件的综合性;功能整合的程度;管理统一的程度;以及基础硬件的适宜性和功能。 【赛迪网-IT技术】Windows系统集成了无数的工具,它们各司其职,满足用户不同的应用需求。其实这些工具“多才多艺”,如果你有足够的想象力并且善于挖掘,你会发现它们除了本行之外还可以帮我们杀毒。 一、任务管理器给病毒背后一刀 Windows任务管理器是大家对进程进行管理的主要工具,在它的“进程”选项卡中能查看当前系统进程信息。在默认设置下,一般只能看到映像名称、用户名、CPU占用、内存使用等几项,而更多如I/O读写、虚拟内存大小等信息却被隐藏了起来。可别小看了这些被隐藏的信息,当系统出现莫名其妙的故障时,没准就能从它们中间找出突破口。 1.查杀会自动消失的双进程木马 前段时间朋友的电脑中了某木马,通过任务管理器查出该木马进程为“system.exe”,终止它后再刷新,它又会复活。进入安全模式把c:\windows\system32\system.exe删除,重启后它又会重新加载,怎么也无法彻底清除它。从此现象来看,朋友中的应该是双进程木马。这种木马有监护进程,会定时进行扫描,一旦发现被监护的进程遭到查杀就会复活它。而且现在很多双进程木马互为监视,互相复活。因此查杀的关键是找到这“互相依靠”的两个木马文件。借助任务管理器的PID标识可以找到木马进程。 调出Windows任务管理器,首先在“查看→选择列”中勾选“PID(进程标识符)”,这样返回任务管理器窗口后可以看到每一个进程的PID标识。这样当我们终止一个进程,它再生后通过PID标识就可以找到再生它的父进程。启动命令提示符窗口,执行“taskkill /im system.exe /f”命令。刷新一下电脑后重新输入上述命令如图1,可以看到这次终止的system.exe进程的PID为1536,它属于PID为676的某个进程。也就是说PID为1536的system.exe进程是由PID为676的进程创建的。返回任务管理器,通过查询进程PID得知它就是“internet.exe”进程进程。(如图) ![]() 找到了元凶就好办了,现在重新启动系统进入安全模式,使用搜索功能找到木马文件c:\windows\internet.exe ,然后将它们删除即可。前面无法删除system.exe,主要是由于没有找到internet.exe(且没有删除其启动键值),导致重新进入系统后internet.exe复活木马。 个人用户感染病毒后,使用单机版杀毒软件即可清除;然而企业的网络中,一台机器一旦感染病毒,它便会自动复制、发送并采用各种手段不停交叉感染局域网内的其他用户。 计算机病毒形式及传播途径日趋多样化,因此,大型企业网络系统的防病毒工作已不再像单台计算机病毒的检测及清除那样简单,而需要建立多层次的、立体的病毒防护体系,而且要具备完善的管理系统来设置和维护对病毒的防护策略。 一个企业网的防病毒体系是建立在每个局域网的防病毒系统上的,应该根据每个局域网的防病毒要求,建立局域网防病毒控制系统,分别设置有针对性的防病毒策略。 1增加安全意识 杜绝病毒,主观能动性起到很重要的作用。病毒的蔓延,经常是由于企业内部员工对病毒的传播方式不够了解,病毒传播的渠道有很多种,可通过网络、物理介质等。查杀病毒,首先要知道病毒到底是什么,它的危害是怎么样的,知道了病毒危害性,提高了安全意识,杜绝毒瘤的战役就已经成功了一半。平时,企业要从加强安全意识着手,对日常工作中隐藏的病毒危害增加警觉性,如安装一种大众认可的网络版杀毒软件,定时更新病毒定义,对来历不明的文件运行前进行查杀,每周查杀一次病毒,减少共享文件夹的数量,文件共享的时候尽量控制权限和增加密码等,都可以很好地防止病毒在网络中的传播。 2小心邮件 随着网络的普及,电子信箱成了人们工作中不可缺少的一种媒介。它方便快捷在提高了人们的工作效率的同时,也无意之中成为了病毒的帮凶。有数据显示,如今有超过90%的病毒通过邮件进行传播。 尽管这些病毒的传播原理很简单,但这块决非仅仅是技术问题,还应该教育用户和企业,让它们采取适当的措施。只要用户随时小心警惕,不要打开值得怀疑的邮件,就可把病毒拒绝在外。 3挑选网络版杀毒软件 选择一个功力高深的网络版病毒"杀手"就至关重要了。一般而言,查杀是否彻底,界面是否友好、方便,能否集中管理是决定一个网络杀毒软件的三大要素。 【赛迪网技术社区整理】 INSERT、DELETE、UPDATE 三种SQL语句是数据库技术的三大基本语句. 在通常的web开发中对它的处理可以说是无处不在. 如果简单的都用手工来构造这些SQL语句的话, 一方面给我们的开发带来很大的工作量, 另一方面系统灵活性受到很大的限制. 那么能不能基于某种规则让系统自动从页面表单中取出元素构造出SQL语句呢? 首先让我们看看一般INSERT、DELETE、UPDATE 三种语句的基本形式:
INSERT INTO table_name (col_1,col_2,col_3,) VALUES (value_1,value_2,value_3 …) DELETE FROM table_name WHERE col_n=value_n UPDATE table_name SET col_1=value_1,col_2=value_2,col_3=value_3 WHERE col_x=value_x
我们知道,借用j2ee中的request.getParameterNames()方法可以读到表单中的所有元素的名称,有了元素名称借用request.getParameter(elementName)方法可以获取该元素的值。假设在开发中我们让页面元素的名称和底层数据库表的字段名一致。那么在这三种语句中col_n 和 value_n 对我们来说就不是未知的,未知的数据就剩下了 table_name,col_x和value_x 。现在如果我们写一个方法,传入request对象,再把table_name,col_x,value_x作为参数传入方法,那么我们可以轻松的自动构造SQL语句了。但这样做还是有欠灵活,因为一方面每一次使用该方法我们都得人工的设置table_name,col_x和value_x;另一方面别忘了sql语句中对于字符串的字段需要加单引号和替换字符串中间的单引号,而整型、浮点型、系统函数(如now(),to_date()等数据库函数)等不需要做单引号的处理,这些如果没有好的解决的话,我们的方法将受到非常大的限制。要达到再进一步分离最好的办法就是在表单元素命名上面做文章,我们可以自己定义一套元素命名规则,对不同规则命名的元素做不同的处理--设我们定义元素命名规格如下: 1.table_name,col_x,value_x这类元素,为公共元素。我们规定这类元素名以c_k开头(c=common),我们限制table_name的元素名为c_table,col_x=value_x定义到一起,元素名定为c_where. 当然我们别忘了我们还需要一个元素表示构造什么样(INSERT、DELETE、UPDATE)的SQL语句。我们给这个元素命名c_genre,它的值被限制在INSERT、DELETE、UPDATE这三者之中 。 2. 对于表单中对应数据库字符串类型的元素,在SQL构造中需要做单引号的处理。这类元素我们暂且称他们为字符串型元素。字符串型元素我们规定其名为s_ 数据库表字段名 (s=String)。 3. 对于不需要做但引号处理的元素(如integer型、float型、数据库系统函数--如now(),to_date()等等)。我们暂且简单的统称这类元素为整型元素。对于整型元素我们限制其命名规则为i_ 数据库表字段名(i=Integer)。 【赛迪网技术报道】 Servlet/JSP技术和ASP、PHP等相比,由于其多线程运行而具有很高的执行效率。由于Servlet/JSP默认是以多线程模式执行的,所以,在编写代码时需要非常细致地考虑多线程的同步问题。然而,很多人编写Servlet/JSP程序时并没有注意到多线程同步的问题,这往往造成编写的程序在少量用户访问时没有任何问题,而在并发用户上升到一定值时,就会经常出现一些莫明其妙的问题,对于这类随机性的问题调试难度也很大。 在Servlet/JSP中的几种变量类型
在编写Servlet/JSP程序时,对实例变量一定要小心使用。因为实例变量是非线程安全的。在Servlet/JSP中,变量可以归为下面的几类:
1. 类变量
request,response,session,config,application,以及JSP页面内置的page, pageContext。其中除了application外,其它都是线程安全的。
2. 实例变量
实例变量是实例所有的,在堆中分配。在Servlet/JSP容器中,一般仅实例化一个Servlet/JSP实例,启动多个该实例的线程来处理请求。而实例变量是该实例所有的线程所共享,所以,实例变量不是线程安全的。
3. 局部变量
局部变量在堆栈中分配,因为每一个线程有自己的执行堆栈,所以,局部变量是线程安全的。 问:我使用的在线检查软件警告说,发现DDoS攻击,请问这到底是什么意思?机器是单位的局域网,和这个有关系吗?我应该如何去判断是否遭到流量攻击?
答:DDoS是英文Distributed Denial of Service的缩写,意即“分布式拒绝服务”。你可以这么理解,凡是能导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击。也就是说,拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达成攻击者不可告人的目的。 DDoS的攻击策略侧重于通过很多“僵尸主机”(被攻击者入侵过或可间接利用的主机)向受害主机发送大量看似合法的网络包,从而造成网络阻塞或服务器资源耗尽而导致拒绝服务。分布式拒绝服务攻击一旦被实施,攻击网络包就会犹如洪水般涌向受害主机,从而把合法用户的网络包淹没,导致合法用户无法正常访问服务器的网络资源。 判断网站是否遭受了流量攻击很简单,可通过Ping命令来测试,若发现Ping超时或丢包严重,则可能遭受了流量攻击。此时若发现和你的主机接在同一交换机上的服务器也访问不了了,基本可以确定是遭受了流量攻击。 |
||||||||||