九大网络安全失误,需要注意
在我们的职业生涯中大都曾经有过一次这样的经历——我是说你认为足以让你丢掉饭碗的失误。我的第一次重大失误是曾经重启了校园里的所有路由器,不是一个接一个的,而是所有一次完成。我写了一个脚本,为所有的路由器安装一个安全更新,然后依次重启这些路由器——至少我是这样想的。事实上我的脚本有误,遗漏了路由器之间的等待时间。
当时我认为自己肯定要被解雇了,但是谢天谢地,我没有。有些重大的事故,最后往往都为我们的学习提供重要帮助。我们都或多或少的知道些危机管理,所有的东西都可以从在线备份中恢复过来,我的老板花了几个小时的时间教会我如何正确的检测网络是否正常运行。
好消息是大部分的时间,我们所犯的错误并没有这么严重,而坏消息是很多失误并不会当时就表现出来。也就是说,这种失误会一直遗留而不能被发现,有可能是几个星期,也有可能是几个月或者几年,直到有一天它们引发了严重的中断事故,或者被审计人员发现来传唤我们。在网络安全一线,防火墙管理是这样一个行当——对规则和配置文件进行更改时,一个小小的错误可能给你带来巨大的后患。以下是一些常犯的失误:
一、创建毫无意义的防火墙组
一名防火墙管理员在把设备加入到网络中时,拥有超过一半的规则权限。后来这便用一个球星的名字来命名,我们称之为Joe_Montana。出论任何时候,管理员需要某台设备加入到网络中,他们就把这台设备的IP地址添加到他们常用的、拥有许多授权的规则当中去,添加到这样的组里。最后,这些规则库让审计员看起来可能是没问题的,因为这里面没有“任意”这样的规则,但是事实上却埋下了许多的防火墙漏洞。防火墙规则变得毫无意义,如果一旦被审计整改,清理这些规则库的活是费力不讨好的任务,需要很多个月的时间来解决规则库问题,以安全、适当地映射到业务需求。
二、从不升级你的防火墙软件
有数量惊人的组织使用过时的防火墙软件。当被问及原因时,得到的往往是非常类似的几个回复“我们要保持版本的稳定性”或者“防火墙不能撤下进行升级”…等等。事实上,防火墙厂商升级自己的软件是有原因的。你不需要安装最新发布的防火墙版本,但如果您正在运行一个已经过时15或20个版本的软件,或者已经7、8年没有更新版本,那么请立即停止抱怨,开始更新!
三、使用错误的技术
我们都听过的把方形钉砸进圆洞的说法,在防火墙行业里也有这么一说。一个网络安全管理员激烈的和他们的审计员争论,因为他们有一个防火墙布置在安全WEB服务器的前面,这样就构成了一个双重身份验证:一个密码和一个防火墙。这家伙的创造力可以打A,但是防火墙(本身)不是一个双重身份验证解决方案。双重身份认证需要您的用户有一个令牌和密码。
四、意外宕机事件
我听过这样一个意外宕机事件,防火墙管理员正在收集一些防火墙数据。管理员无意中碰到桌子上的鼠标,而此时的鼠标正悬停在开始菜单上。如同命中注定一样,鼠标令人难以置信的激活了开始菜单,并且恰好悬停在“关闭”菜单项上。是的,就这样那个金融公司的人看着他们的防火墙就这样被关闭了。
五、创建糟糕的防火墙配置文档
你经常会听到有些防火墙管理员忙的焦头烂额,试图了解到底他们之前所做的防火墙规则是用来干什么的。图得一时省事(马虎创建防火墙文档)让自己以后变得繁忙,还是花时间来创建合理的防火墙文档?马虎对待防火墙文档等于给自己创建一个定时爆弹。调查一些参与管理防火墙的管理员,常常会听到这样的抱怨“现在我害怕调整我的防火墙,所有的高级管理人员已经离开,而我们不知道那些防火墙文档,里面那些大多数的名字的意思,或这些规则是用来做什么的。”
六、使用过度授权和过多忽略
通常,当我们在匆忙中,经常创建一些授权过度的防火墙规则,并在规则中忽略那些我们不需要的访问。我们这样做是因为我们不想花时间去研究如何编写正确的防火墙规则。例如:“允许所有因特网设备访问DMZ设备的请求”,然后再来一个该规则的补充“安全网络设备忽略所有DMZ设备”。这两个规则看起来还行,但实际上它是一个非常蹩脚的方法,因为我们没有写出来业务需求的首要规则。随着时间的推移,当我们这种不负责的规则增多,我们的规则库就会出现很多互相抵触的规则,重新排序或编辑规则库有可能会暴露更多的风险甚至于阻止必要网络需求。不管怎样,我们已经把防火墙弄得一团糟,到某种程度,可能必须重写这些规则。
七、请勿使用路由作为您的安全策略
我见到很多这样的防火墙,他们的规则库在做出修正时,需要路由器相应做出改变,以适应新的防火墙规则。或许这是可以理解的——当处在防火墙之内的网络,需要重新组建时,但事实往往是网络并没有发生变化,只是防火墙需要作出变化。有两种类似这种“绑架”路由器的错误,在工作中经常发生。
第一种情况,是防火墙没有默认路由。每条路由线路都被手动添加到防火墙,而且,往往使用最小的子网掩码,许多不在计划之内的设备,在将来如果不设置防火墙策略就会受到阻碍,无法通过路由。这听起来很棒,貌似更加安全,但它是完全不必要的——如果你删除这条防火墙策略,那么该策略将会恢复成“忽略所有”。
这个设计将会使防火墙变得难以管理,之后的防火墙团队将会害怕做出改变,因为这将会牵扯到很多东西。每个策略更改都需要一个工程师来检查路由,因此每一个防火墙策略更改花费的时间太长,大大影响了网络维修任务,所以,这是没有实际价值的增加安全性。
这种错误看法还有一种情况,在思科设备管理员群体中最常出现,比方说管理员需要建立一个访问控制列表,这个控制列表包括两个设备之间的任何源地址或目标地址。他们的本意实际上是指两个设备之间中的所有地址,而并非在任何的时候。但是管理员太懒了,他们不想花力气输入地址。这样,只有知道连接防火墙的路由表,才能知道这条防火墙策略实际的内涵。这些是需要管理员记在脑子里的,对一个初级防火墙管理员来说,这太难接管这个防火墙了。
八、使用路由器DNS对象作为防火墙策略对象
很多防火墙提供这么一个功能选项,允许管理员插入一个DNS对象作为源或目标地址,比方说www.google.com。这听起来不错,因为google.com可以作用于这么多的IP地址,这样即使google.com的ip地址发生改变的时候,我的防火墙,也还是可以作用于该域名下的地址。这种错误做法,会导致许多风险,大多数组织应该考虑不要使用这种做法。
首先防火墙现在很容易受到拒绝服务***,你能想象防火墙不能解析google.com域名时会发生什么吗?第二个,在为所有的数据包做DNS解析时,防火墙需要查找每个数据包,以试图决定该数据包是否属于google.com时,会极大的浪费CPU、内存和网络IO。第三,如果你的DNS服务器中毒,你的防火墙将允许所有的僵尸网络命令通过,并记录它作为正常域名。
九、在危急时刻盲目修改设备配置
假设某些东西出错,或者你的RAID磁盘中有坏磁盘。你替换掉故障磁盘重新组建RAID,但是RAID服务效率还是下降,而你没有意识问题出在RAID本身。而此时,你的客户40小时都不能得到服务,每一分钟你都在损失大把大把的钱,更不用说客户会离开你的网站,转投到对手网站那里寻×××。
你为此而焦虑并开始改变配置:交换机、路由器、负载平衡器和防火墙——任何可能会引起问题的设备都在你的怀疑之列。24小时后,又经过另一个无眠之夜和许多小时昂贵的咨询,你终于找出问题的真正原因。现在你想要恢复所有你所做的更改,包括交换机、路由器、负载平衡器,防火墙等等,但没有人知道他们的具体配置,因为他们是匆忙创建,没有建立任何文档。所以你还要另花3天时间搞清楚如何让系统恢复正常,直到它全面投入使用。
总结
我希望在你的组织中没有看到任何这些错误,如果你犯了这些错误,放心,犯同样错误的人多的是。运行健康的组织,可以在他们的防火墙规则中,找到这些错误或其他潜在的威胁
转载于:https://blog.51cto.com/3403450/935289
相关文章:

python学习笔记——Thread常用方法
http://blog.sina.com.cn/s/blog_4b5039210100ewie.html Thread对象中的一些方法: 以前说过多线程,用到threading模块中的Thread对象,其中的start和run方法比较熟悉了,start()是重载了Thread对象中的run方法…

常见的路由选择算法
一、路由表 所谓路由表,指的是路由器或者其他互联网网络设备上存储的表,该表中存有到达特定网络终端的路径,在某些情况下,还有一些与这些路径相关的度量。 二、常见路由表生成算法 路由算法是提高路由协议功能,尽量…

linux 远程挂载摄像头_基于Linux的嵌入式网络摄像机设计
本嵌入式网络摄像机采用高性能ARM9芯片微处理器,内置嵌入式Web服务器。通过嵌入式多任务操作系统采集摄像机视频数据;采集的视频信号数字化后经MJPEG算法压缩,再通过内部总线送到内置的Web服务器;使用者可以直接用浏览器观看Web服…

2012 ARM嵌入式开发应用研讨会杂谈
记得以前参加的ARM的研讨会,名称是技术研讨会,不知道为什么现在改名为嵌入式开发应用研讨会了。不过今年演讲的重点就是 ARM DS-5开发工具(还免费发放了一本《Linux/Android开发利器 ARM DS-5使用指南》书籍),也许这就…

打印不同对象的字节表示 ( 对int*强制转换成unsigned char*的理解 )
此文章参考《深入理解计算机系统》P31。 先看如下代码: 12345的十六进制表示为:0x00003039 1 #include <stdio.h>2 3 int main()4 {5 int a 12345;6 char *q (char *)(&a);7 for(int i 0; i < sizeof(a); i)8 prin…

NAT技术和代理服务器
一、代理服务器 所谓“代理”,就是代而劳之的意思。代理服务器就是代理网络用户去取得网络信息,形象的说:它是网络信息的中转站,使得一个网络终端和另一个网络终端不直接进行相连,代理网络用户去取得信息。主要工作在O…
链接全局变量再说BSS段的清理
废话就不多说了,开始。。。 再说BSS段的清算 以前遇到一个裸机程序不能改变全局变量值的问题,最后模模糊糊处理了:手动添加了一个链接脚本,清算了BSS段。问题得以处理,就认定是BSS段清算的问题,全局变量在B…

ios启动页尺寸_关于移动端App启动页的策划方案
App启动页是指app在启东时需要加载必要的运行环境和配置,在这个过程中提示用户等待的一个过渡页面。在产品经理眼里启动页是app给予用户重要的第一印象;也是App最重要的黄金页面之一,所有用户100%都会看到的页面。启动页适合用来做以下几个事…

事件流--事件冒泡现象及阻止
事件冒泡现象 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>事件冒泡现象</title><style>div{padding: 50px;}#div1{background: red;}#div2{background: blue;}#div3{background: yell…

谁知道静态成员的纠结心境
我们在实际开发的过程中,可能需要某些类的成员变量并不是针对每一个对象的,而是针对每一个类而言的,比如在银行中有一个利率数据,我们希望的是,当一个利率改变的时候,所有的对象都能够看到这个改变的数据&a…
.net ConfigurationSectionDesigner插件使用
最近接触了vs2010的一款插件:ConfigurationSectionDesigner。ConfigurationSectionDesigner是一个图型化设计.net的配置块和自动生成需要代码和schema定义的codeplex上的一个开源项目,现在分享出来,希望对大家有所帮助。 .Net配置体系中可以是…

对应到对象 数据库驼峰_【GI的自主空间数据库】一种竞争力,叫技术引领;一种竞争力,叫时间沉淀...
引子:GI的自主空间数据库及GIS框架来自于求学时MAPGIS的引导,工作时ARCGIS的追随,读博时IBM和Microsoft2篇文献...。即使在大数据技术发展的今天,自主空间数据库存储仍然有其技术优势,近20年的时间沉淀,是G…

TSM备份Windows数据
一、备份数据 1.使用备份勾当客户端,可以在原始文件出现损坏的时候,恢复备份版本。TSM提供备份和恢复文档的类型包括:FAT,NTFS和FAT32.2.合适备份和合适归档文件当备份-归档客户端备份或归档一个文件,他会发送一份文档的副本和它的…

GM Tech 2 works with Hummer Yes or No
This is about GM Tech 2 scan tool for Hummer troubleshooting and programming. Can I have a cheap Tech 2 for Hummer? Yep. Both the original and HQ clone can work for your car. Where can I get a working clone at a good price? https://www.obd2tool.com/goods…
程序的编译和链接过程
一.虚拟机、linux简介简单介绍一下虚拟机还有就是各种操作系统,比如centos,Ubuntu操作系统:linux(centos、Ubuntu、redhat),Android,Windows(xp、win8、win10)进程&#…

Nosql网络阅读
#1 Node.jsmongodb 开源项目 https://github.com/DoubleSpout/wujb 作者博客:http://snoopyxdy.blog.163.com/blog/static/60117440201261844125973/ #1 关系数据库还是NoSQL数据库 NoSQL的分类 NoSQL仅仅是一个概念,NoSQL数据库根据数据的存储模型和特点分为很多…

python 文案自动生成_Python自动化测试如何自动生成测试用例?
原文作者:陈安妮annie1原出处:简书上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰,我们将立即处理。传统的测试用例需要测试或者开发人员将用户的操作用代码表示出来,通过断言判断是否和预…

Linux下图解minicom安装
Linux下图解minicom安装 minicom是一个串口通信工具,就像Windows下的HyperTerminal。可用来与串口设备通信,如调试交换机和Modem等。它的Ubuntu软件包的名称就叫minicom,用apt-get install minicom即可安装。全文见附件pdf

【C#技术】一篇文章搞掂:Infragistics组件库
工具栏 // 按钮不可按 tool.SharedProps.Enabled false; Grid // Grid中记录时间 // 建议SQL Server中使用字符字段(没有深入测试,只是字符字段可行),然后设置Grid的属性中,列的Style属性为Time或TimeWithSpin// 使用…

移动端开发小结
1. viewport viewport:除去所有工具栏、状态栏、滚动条等之后用于查看网页的区域,打个比方,现在有一张报纸摆在你面前,但是这张报纸被一本书压住了,所以你只能看到报纸的一部分,这部分可以查看到的区域就是…
vim编辑文章后不能修改
我们在使用vim打开一个文件的时候,经常会弹出下面的界面 为什么会出现这个界面呢 用vim编辑文件(如这里的test.txt)时,系统会自动产生一个文件叫.test.txt.swp.如果正常退出,此文件会被自动删去.如果上次非正常退出,如果再编辑它,系统会首先查.test.txt.swp 是否存…

echart x轴标签偏移_移动端H5页面滑动手势X轴实例
话不多少,上代码。let touchX 0 // 默认初始值// 两行注释伪代码,绑定 touchstart 与 touchend 事件// dom.addEvenetListener(touchstart, touchStart)// dom.addEvenetListener(touchend, touchEnd)function touchStart(e) { // 手指触碰时候…

读书笔记(2) OpenLayers中的图层
OpenLayers有多个不同的图层类,每一个都可以连接到不同的地图服务器。例如通过Layer.WMS类可以连接到WMS地图服务器,通过Layer.Google类可以连接到谷歌地图服务器。OpenLayers中的每个图层都是独立的,对一个的操作不会影响到另外一个。 不管地…

自定义WPF窗体形状
介绍 你好WPF爱好者。 随着WPF等统一API语言的发明,丰富用户界面变得非常容易。 创建丰富的用户界面只是一个想法。 您需要拥有的是创造性思维和最新技术融合。 WPF和Expression Blend在制作丰富的UI应用程序,清晰的图形和非常好的动画方面非常有用。 背…

与jQuery的感情碰撞——由浅入深学jQuery
原来的时候自己看过jQuery,但是对于什么是jQuery,除了知道jQuery是一种javascript类库外,除了会用几个网页特效外,其他的我这真的是不知道啊。眼看自己就要找工作了,所以自己需要好好学习一下,系统的了解一…

线程互斥和同步-- 互斥锁
一. 线程分离我们一般创建的线程是可结合的,这个时候如果我们调用pthread_jion()去等待的话,这种等待的方式是阻塞式等待,如果主线程一直等待,主线程就无法做其他的事情了,所以应该使用线程分离,让子线程由…

calipso是什么意思_眰恦是什么意思?
展开全部眰恦作为一个不常见到的词,其实出自一本同名小说的书名。眰恦读作zh shng ,在书中62616964757a686964616fe59b9ee7ad9431333433656665的意思就是,目光所至,心之所向,皆是你。眰,单字意思是视&#…

一个mongosee例子
var express require(express),mongoose require(mongoose); //引入mongoose模块 //连接mongodb数据库 nodejs为数据库名称 mongoose.connect(mongodb://localhost/nodejs);//获取Schema 以及 ObjectId 对象 var Schema mongoose.Schema,ObjectId Schema.ObjectId;//创建一…

mongoDB入门
**使用了不存在的对象,即创建该对象use db 使用db数据库 show dbs 查看当前服务器中写在磁盘上的数据库 show tables 查看数据库中的collection db 查看当前使用的数据库1.增删改查: 增:db.collection.insert({数据}) 自动生成 _id : ObjectI…

哈希--直接定值法和除留取余法
1. 哈希是一种算法,哈希表是用哈希算法构造出来的一种数据结构2. 哈希算方法的几种方法直接定值法 这里有一个例题,就是我们想判断某一字符串中,某一个字符出现的个数,我们可以使用哈希的思想,就是可以遍历一遍字符串&…