在这个互联网信息时代,许多公司都拥有自己的服务器,自己的网站和运营平台,那么互联网的网络安全就成为了保护自己公司机密的一个重要部分。甚至就是个人电脑都装有各种的安全卫士,杀毒软件等等。那么目前市面上有哪几种安全防御技术呢?
下面电脑培训针对这三种技术进行详细说明:
1云查杀和云引擎
如今很多安全厂商的“云引擎”,主要是希望通过缩短反病毒引擎特征更新周期来与病毒作者拼速度,从而达到快速抑制病毒扩散的效果。当然,这显然不是“云安全”的本质,但由于篇幅所限,本文并不对“云安全”这一话题进行讨论。
“云引擎”虽然可以实时同步云端的计算结果,但由于网络带宽的限制,在有限的扫描时间内,云引擎只能在本地提取高度抽象的数据特征发送到云端进行匹配,所以一般云引擎会选择哈希类特征(通常是全文哈希)。而哈希类特征的检出能力与样本基本是1:1的关系,即一条哈希特征通常只能检出一个样本。
由于“云引擎”采用哈希类特征,所以每个“伪装”过的病毒样本对于云引擎来说都是全新的,都需要进行“鉴定”。我们并不需要进行精确的计算,就可以得出如下结论:“云引擎”从采集到样本并传到云端分析,到云端分析出结果,再到客户端能够请求到结果,这个周期远远长于病毒作者通过“病毒混淆器”批量生成变形病毒样本的周期。
虽然“云引擎”能够缩短反病毒引擎特征更新周期、提高安全产品的反应速度,但是对于“病毒混淆器”批量生成的变形病毒,起到的作用只不过是“掩耳盗铃”罢了。
2利用大数据和“人工智能“,猜测病毒的“伪装“
近些年,国内一些安全软件发布了各自的基于大数据或“人工智能”的反病毒引擎。这些引擎本质上都是基于统计学算法,通过对海量样本以固定方法抽取特征,并对特征进行统计、分析,进而产生计算模型。依照计算模型对待扫描样本进行分类,进而预测新样本是否属于恶意分类。
在没有数据为依托的前提下,我不能对此类引擎的效果妄加揣测。但无论算法如何、样本如何选取,都逃不过一个重要条件,那就是对特征的抽取。我们不妨做如下假设:我们通过外貌、服饰、声音、举止等方面可以基本准确地判断一个人的性别,这就像扫描明文的恶意代码。如果将人关进房间,只有房间的颜色、外观等特征可见,而人本身相关的特征完全看不到,这就像是被混淆过的恶意代码。将大量的人随机安排进不同颜色,不同外观的房间,试问仅通过房间的颜色和外观,通过统计、分析,产生计算模型,并推测某一房间内人的性别是否可靠我想答案是否定的。
对于编程开发程序员来说,除了需要完成软件编程工作以外,同时也需要增加一些基础的信息安全措施。今天我们就一起来了解一下,提高服务器安全等级的安全措施都有哪些类型。
深度防范
深度防范原则是安全专业人员人人皆知的原则,它说明了冗余安全措施的价值,这是被历史所证明的。
深度防范原则可以延伸到其它领域,不仅仅是局限于编程领域。使用过备份伞的跳伞队员可以证明有冗余安全措施是多么的有价值,尽管大家永远不希望主伞失效。一个冗余的安全措施可以在主安全措施失效的潜在的起到重大作用。
回到编程领域,坚持深度防范原则要求您时刻有一个备份方案。如果一个安全措施失效了,必须有另外一个提供一些保护。例如,在用户进行重要 *** 作前进行重新用户认证就是一个很好的习惯,尽管你的用户认证逻辑里面没有已知缺陷。如果一个未认证用户通过某种方法伪装成另一个用户,提示录入密码可以潜在地避免未认证(未验证)用户进行一些关键 *** 作。
尽管深度防范是一个合理的原则,但是过度地增加安全措施只能增加成本和降低价值。
小权限
我过去有一辆汽车有一个佣人钥匙。这个钥匙只能用来点火,所以它不能打开车门、控制台、后备箱,它只能用来启动汽车。我可以把它给泊车员(或把它留在点火器上),我确认这个钥匙不能用于其它目的。
把一个不能打开控制台或后备箱的钥匙给泊车员是有道理的,毕竟,你可能想在这些地方保存贵重物品。但我觉得没有道理的是为什么它不能开车门。当然,这是因为我的观点是在于权限的收回。我是在想为什么泊车员被取消了开车门的权限。在编程中,这是一个很不好的观点。相反地,你应该考虑什么权限是必须的,只能给予每个人完成他本职工作所必须的尽量少的权限。
一个为什么佣人钥匙不能打开车门的理由是这个钥匙可以被复制,而这个复制的钥匙在将来可能被用于偷车。这个情况听起来不太可能发生,但这个例子说明了不必要的授权会加大你的风险,即使是增加了很小权限也会如此。风险小化是安全程序开发的主要组成部分。
你无需去考虑一项权限被滥用的所有方法。事实上,你要预测每一个潜在攻击者的动作是几乎不可能的。
简单就是美
复杂滋生错误,错误能导致安全漏洞。这个简单的事实说明了为什么简单对于一个安全的应用来说是多么重要。没有必要的复杂与没有必要的风险一样糟糕。
暴露小化
PHP应用程序需要在PHP与外部数据源间进行频繁通信。主要的外部数据源是客户端浏览器和数据库。如果你正确的跟踪数据,你可以确定哪些数据被暴露了。Internet是主要的暴露源,这是因为它是一个非常公共的网络,您必须时刻小心防止数据被暴露在Internet上。
数据暴露不一定就意味着安全风险。可是数据暴露必须尽量小化。例如,一个用户进入支付系统,在向你的服务器传输他的xyk数据时,你应该用SSL去保护它。如果你想要在一个确认页面上显示他的xyk号时,由于该卡号信息是由服务器发向他的客户端的,你同样要用SSL去保护它。
比如前面的例子,显示xyk号显然增加了暴露的机率。SSL确实可以降低风险,但是佳的解决方案是通过只显示后四位数,从而达到彻底杜绝风险的目的。
为了降低对敏感数据的暴露率,回龙观电脑培训认为你必须确认什么数据是敏感的,同时跟踪它,并消除所有不必要的数据暴露。在本书中,我会展示一些技巧,用以帮助你实现对很多常见敏感数据的保护。
1安装和配置一个防火墙一个配置适当的防火墙不仅是系统有效应对外部攻击的第一道防线,也是最重要的一道防线。在新系统第一次连接上Internet之前,防火墙就应该被安装并且配置好。防火墙配置成拒绝接收所有数据包,然后再打开允许接收的数据包,将有利于系统的安全。Linux为我们提供了一个非常优秀的防火墙工具,它就是netfilter/iptables。它完全是免费的,并且可以在一台低配置的老机器上很好地运行。防火墙的具体设置方法请参见iptables使用方法。
2、关闭无用的服务和端口
任何网络连接都是通过开放的应用端口来实现的。如果我们尽可能少地开放端口,就使网络攻击变成无源之水,从而大大减少了攻击者成功的机会。把Linux作为专用服务器是个明智的举措。例如,希望Linux成为的Web服务器,可以取消系统内所有非必要的服务,只开启必要服务。这样做可以尽量减少后门,降低隐患,而且可以合理分配系统资源,提高整机性能。以下是几个不常用的服务:
① fingerd(finger服务器)报告指定用户的个人信息,包括用户名、真实姓名、shell、目录和,它将使系统暴露在不受欢迎的情报收集活动下,应避免启动此服务。
② R服务(rshd、rlogin、rwhod、rexec)提供各种级别的命令,它们可以在远程主机上运行或与远程主机交互,在封闭的网络环境中登录而不再要求输入用户名和口令,相当方便。然而在公共服务器上就会暴露问题,导致安全威胁。
3、删除不用的软件包
在进行系统规划时,总的原则是将不需要的服务一律去掉。默认的Linux就是一个强大的系统,运行了很多的服务。但有许多服务是不需要的,很容易引起安全风险。这个文件就是/etc/xinetdconf,它制定了/usr/sbin/xinetd将要监听的服务,你可能只需要其中的一个:ftp,其它的类如telnet、shell、login、exec、talk、ntalk、imap、finger、auth等,除非你真的想用它,否则统统关闭。
4、不设置缺省路由
在主机中,应该严格禁止设置缺省路由,即default route。建议为每一个子网或网段设置一个路由,否则其它机器就可能通过一定方式访问该主机。
5、口令管理
口令的长度一般不要少于8个字符,口令的组成应以无规则的大小写字母、数字和符号相结合,严格避免用英语单词或词组等设置口令,而且各用户的口令应该养成定期更换的习惯。另外,口令的保护还涉及到对/etc/passwd和/etc/shadow文件的保护,必须做到只有系统管理员才能访问这2个文件。安装一个口令过滤工具加npasswd,能帮你检查你的口令是否耐得住攻击。如果你以前没有安装此类的工具,建议你现在马上安装。如果你是系统管理员,你的系统中又没有安装口令过滤工具,请你马上检查所有用户的口令是否能被穷尽搜索到,即对你的/ect/passwd文件实施穷尽搜索攻击。用单词作密码是根本架不住暴力攻击的。黑客们经常用一些常用字来破解密码。曾经有一位美国黑客表示,只要用“password”这个字,就可以打开全美多数的计算机。其它常用的单词还有:account、ald、alpha、beta、computer、dead、demo、dollar、games、bod、hello、help、intro、kill、love、no、ok、okay、please、sex、secret、superuser、system、test、work、yes等。
密码设置和原则:
a足够长,指头只要多动一下为密码加一位,就可以让攻击者的辛苦增加十倍;
b 不要用完整的单词,尽可能包括数字、标点符号和特殊字符等;
c混用大小写字符;
d经常修改。
6、分区管理
一个潜在的攻击,它首先就会尝试缓冲区溢出。在过去的几年中,以缓冲区溢出为类型的安全漏洞是最为常见的一种形式了。更为严重的是,缓冲区溢出漏洞占了远程网络攻击的绝大多数,这种攻击可以轻易使得一个匿名的Internet用户有机会获得一台主机的部分或全部的控制权!。
为了防止此类攻击,我们从安装系统时就应该注意。如果用root分区记录数据,如log文件,就可能因为拒绝服务产生大量日志或垃圾邮件,从而导致系统崩溃。所以建议为/var开辟单独的分区,用来存放日志和邮件,以避免root分区被溢出。最好为特殊的应用程序单独开一个分区,特别是可以产生大量日志的程序,还建议为/home单独分一个区,这样他们就不能填满/分区了,从而就避免了部分针对Linux分区溢出的恶意攻击。
很多Linux桌面用户往往是使用Windows、Linux双系统。最好使用双硬盘。方法如下:首先将主硬盘的数据线拆下,找一个10GB左右的硬盘挂在计算机上,将小硬盘设置为从盘,按照平常的 *** 作安装Linux服务器版本,除了启动的引导程序放在MBR外,其它没有区别。 安装完成,调试出桌面后,关闭计算机。将小硬盘的数据线拆下,装上原硬盘,并设定为主盘(这是为了原硬盘和小硬盘同时挂接在一个数据线上),然后安装Windows软件。将两个硬盘都挂在数据线上,数据线是IDE 0接口,将原硬盘设定为主盘,小硬盘设定为从盘。如果要从原硬盘启动,就在CMOS里将启动的顺序设定为“C、D、CDROM”,或者是“IDE0(HDD-0)”。这样计算机启动的时候,进入Windows界面。如果要从小硬盘启动,就将启动顺序改为“D、C、CDROM”,或者是“IDE1(HDD-1)”,启动之后,将进入Linux界面。平时两个 *** 作系统是互相不能够访问的。
7、防范网络嗅探:
嗅探器技术被广泛应用于网络维护和管理方面,它工作的时候就像一部被动声纳,默默的接收看来自网络的各种信息,通过对这些数据的分析,网络管理员可以深入了解网络当前的运行状况,以便找出网络中的漏洞。在网络安全日益被注意的今天我们不但要正确使用嗅探器还要合理防范嗅探器的危害嗅探器能够造成很大的安全危害,主要是因为它们不容易被发现。对于一个安全性能要求很严格的企业,同时使用安全的拓扑结构、会话加密、使用静态的ARP地址是有必要的。
8、完整的日志管理
日志文件时刻为你记录着你的系统的运行情况。当黑客光临时,也不能逃脱日志的法眼。所以黑客往往在攻击时修改日志文件,来隐藏踪迹。因此我们要限制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。
另外要使用日志服务器。将客户机的日志信息保存副本是好主意,创建一台服务器专门存放日志文件,可以通过检查日志来发现问题。修改/etc/sysconfig/syslog文件加入接受远程日志记录。
/etc/sysconfig/syslog SYSLOGD_OPTIONS="-m r 0"
还应该设定日志远程保存。修改/etc/syslogconf文件加入日志服务器的设置,syslog将保存副本在日志服务器上。
/etc/syslogconf @log_server_IP
可以使用彩色日志过滤器。彩色日志loco过滤器,目前版本是032。使用loco /var/log/messages | more可以显示出彩色的日志,明显标记出root的位置和日志中异常的命令。这样可以减少分析日志时人为遗漏。还要进行日志的定期检查。Red Hat Linux中提供了logwatch工具,定期自动检查日志并发送邮件到管理员信箱。需要修改/etc/logd/conf/ logwatchconf文件,在MailTo = root参数后增加管理员的邮件地址。Logwatch会定期检查日志,过滤有关使用root、sudo、telnet、ftp登录等信息,协助管理员分析日常安全。完整的日志管理要包括网络数据的正确性、有效性、合法性。对日志文件的分析还可以预防入侵。例如、某一个用户几小时内的20次的注册失败记录,很可能是入侵者正在尝试该用户的口令。
9、终止正进行的攻击
假如你在检查日志文件时,发现了一个用户从你未知的主机登录,而且你确定此用户在这台主机上没有账号,此时你可能正被攻击。首先你要马上锁住此账号(在口令文件或shadow文件中,此用户的口令前加一个Ib或其他的字符)。若攻击者已经连接到系统,你应马上断开主机与网络的物理连接。如有可能,你还要进一步查看此用户的历史记录,查看其他用户是否也被假冒,攻击音是否拥有根权限。杀掉此用户的所有进程并把此主机的ip地址掩码加到文件hostsdeny中。
10、使用安全工具软件:
Linux已经有一些工具可以保障服务器的安全。如bastille linux和Selinux。 bastille linux对于不熟悉 linux 安全设定的使用者来说,是一套相当方便的软件,bastille linux 目的是希望在已经存在的 linux 系统上,建构出一个安全性的环境。增强安全性的Linux(SELinux)是美国安全部的一个研发项目,它的目的在于增强开发代码的Linux内核,以提供更强的保护措施,防止一些关于安全方面的应用程序走弯路,减轻恶意软件带来的灾难。普通的Linux系统的安全性是依赖内核的,这个依赖是通过setuid/setgid产生的。在传统的安全机制下,暴露了一些应用授权问题、配置问题或进程运行造成整个系统的安全问题。这些问题在现在的 *** 作系统中都存在,这是由于他们的复杂性和与其它程序的互用性造成的。SELinux只单单依赖于系统的内核和安全配置政策。一旦你正确配置了系统,不正常的应用程序配置或错误将只返回错误给用户的程序和它的系统后台程序。其它用户程序的安全性和他们的后台程序仍然可以正常运行,并保持着它们的安全系统结构。用简单一点的话说就是:没有任何的程序配置错误可以造成整个系统的崩溃。安装SELinux SELinux的内核、工具、程序/工具包,还有文档都可以到增强安全性的Linux网站上上下载你必须有一个已经存在的Linux系统来编译你的新内核,这样才能访问没有更改的系统补丁包。
11使用保留IP地址
维护网络安全性最简单的方法是保证网络中的主机不同外界接触。最基本的方法是与公共网络隔离。然而,这种通过隔离达到的安全性策略在许多情况下是不能接受的。这时,使用保留IP地址是一种简单可行的方法,它可以让用户访问Internet同时保证一定的安全性。- RFC 1918规定了能够用于本地 TCP/IP网络使用的IP地址范围,这些IP地址不会在Internet上路由,因此不必注册这些地址。通过在该范围分配IP地址,可以有效地将网络流量限制在本地网络内。这是一种拒绝外部计算机访问而允许内部计算机互联的快速有效的方法。 保留IP地址范围:
---- 1000 0 - 10255255255
---- 1721600 - 17231255255
--- 19216800 - 192168255255。
来自保留IP地址的网络交通不会经过Internet路由器,因此被赋予保留IP地址的任何计算机不能从外部网络访问。但是,这种方法同时也不允许用户访问外部网络。IP伪装可以解决这一问题。
12、合理选择Linux发行版本:
对于服务器使用的Linux版本,既不使用最新的发行版本,也不选择太老的版本。应当使用比较成熟的版本:前一个产品的最后发行版本如RHEL 30等。毕竟对于服务器来说安全稳定是第一的。
13、部署Linux防范病毒软件
Linux *** 作系统一直被认为是Windows系统的劲敌,因为它不仅安全、稳定、成本低,而且很少发现有病毒传播。但是,随着越来越多的服务器、工作站和个人电脑使用Linux软件,电脑病毒制造者也开始攻击这一系统。对于Linux系统无论是服务器,还是工作站的安全性和权限控制都是比较强大的,这主要得力于其优秀的技术设计,不仅使它的作业系统难以宕机,而且也使其难以被滥用。Unix经过20多年的发展和完善,已经变得非常坚固,而Linux基本上继承了它的优点。在Linux里,如果不是超级用户,那么恶意感染系统文件的程序将很难得逞。速客一号(Slammer)、冲击波(Blast)、霸王虫(Sobig)、 米虫(Mimail)、劳拉(Win32Xorala)病毒等恶性程序虽然不会损坏Linux服务器,但是却会传播给访问它的Windows系统平台的计算机。从信息系统安全防护技术来讲主要有以下几种:
1) 内联网信息系统的一些重要信息交互, 可以采用专用的通信线路(特别是采用没有电磁泄漏问题的光缆)来防止信息在传输的过程中被非法截获。一些重要信息应进行加密后传输,
可以进一步防止被截获信息的有效识别。这些技术主要为了保证信息的机密性。
2) 网络和系统隔离(防火墙等) 防火墙可以隔离内部网络和外部网络, 使得所有内外网之间的通信都经过特殊的检查以确保安全。
对一些特别主特别服务可以采用包装代理技术(如Wrapper等), 隔离用户对系统的直接访问, 加强系统的安全性。
3) 网络和系统安全扫描 网络安全扫描和系统扫描产品可以对内部网络、 *** 作系统、系统服务、以及防火墙等系统的安全漏洞进行检测,
即时发现漏洞给予修补, 使入侵者无机可乘。
4) 安全实时监控与入侵发现技术 信息系统的安全状况是动态变化的, 安全实时监控系统可以发现入侵行为并可以调整系统进行及时的保护反应。
5) *** 作系统安全加固 采用B级系统替代传统的C级系统是解决系统安全问题的比较根本性的措施。考虑到可用性和经济性的原则,
可以首先考虑在最敏感的服务器和网络隔离设备上采用B级系统。
6) 数据库系统和应用系统安全加固 在要害信息系统的服务器中采用B级 *** 作系统, 并配备B级数据库管理系统, 将应用、服务都建设在B级的基础上。这样整个信息系统恶性循环才有比较根本性的保障。
<br>
7) 可生存技术 可生存性是指在遭受攻击, 发生失效或事故时, 仍能及时完成服务使命的能力。主要是指健康性、适应性、多样性、进化性和恢复性。
8) 加强安全管理技术 信息系统安全问题中最核心的问题是管理问题。"人"是实现信息系统安全的关键因素。因此需要大力加强人员安全培训,
制订安全管理规范。同时, 要充分利用各种技术手段进行自动化管理。
我是在戴威尔网络安全培训学习网络安全的,多多少少了解一点 呵呵 希望对你写论文有帮助吧 ^_^
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)