防火墙是怎么做出来的

防火墙是怎么做出来的

网络安全与防火墙的关系是目标和手段的关系,保障网络及业务系统的安全是目标,使用防火墙执行访问控制拦截不该访问的请求是手段。要达成安全的目标,手段多种多样,需要组合使用,仅有防火墙是远远不够的。

侠义的防火墙通常指网络层的硬件防火墙设备,或主机层的防火墙软件,一般基于五元组(源IP、源端口、目标IP、目标端口、传输协议)中的部分要素进行访问控制(放行或阻断)。

广义的防火墙,还包括Web应用防火墙(Web Application Firewall,简称WAF),主要功能是拦截针对WEB应用的攻击,如SQL注入、跨站脚本、命令注入、WEBSHELL等,产品形态多种多样。

此外,还有NGFW(下一代防火墙),但这个下一代的主要特性(比如往应用层检测方向发展等)基本没有大规模使用,暂不展开。

在笔者看来,在当前防火墙基础上扩展的下一代防火墙,未必就是合理的发展方向,主要原因之一就是HTTPS的普及,让网络层设备不再具备应用层的检测与访问控制能力。也正是基于这个考虑,Janusec打造的WAF网关,可用于HTTPS的安全防御、负载均衡、私钥加密等。

Web应用防火墙(也称为网站应用级入侵防御系统。英文:Web Application Firewall,简称: WAF)。国际上传统的一种说法:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web提供保护的一种产品。

而目前的WAF,在功能、性能上都发生了一些变化。

原始WAF基于规则进行防御,典型的产品如绿盟的WAF,这是第一代WAF产品。

发展到现在,涌现出了一批新的WAF,功能更为强大,性能更为卓越。可称为下一代WAF,比如:ShareWAF,这类WAF,除了可以用规则防御传统攻击,还可以抵御自动化攻击、未知攻击、0Day攻击等等,并且往往集成了态势感知、攻击溯源等新兴的功能,这些强大的功能是传统WAF所不具备的。还有一类WAF,被称为前端WAF,或SDK式WAF。传统的WAF工作在服务器后端,接入时可能需要部署软件,甚至是安装硬件,并修改网络结构,部署是相当的复杂,使用、维护也有大量的工作。给很多企业的使用上带来了众多困难,在这种情况下,WAF中衍生出了前端WAF,就像引入一个JS文件一样,这种WAF通过一行代码就可以接入,能实现绝大多数的WAF功能,比如防SQL注入、防CSRF、防XSS,防自动化攻击、防爬虫等等,功能也是相当强大。这类产品的代表作品如:BrwoserWAF。

总之,WAF被称为WAF应用防火墙,实质上就是防护网站的产品,不管是软件或是硬件,他们的功能、目标是一至的。时代在发展,技术在进展,WAF也在推陈出新,也在进化。

一个个工不能组成字,正确的应该是:一个人一个工念“仝”字。

仝,现代汉语规范三级字,普通话读音为tóng,最早见于楚系简帛时代。仝的基本含义为“同”的古字。相同,一样;仝的引申含义为姓。

基本信息

中文名: 仝

字码基本区: U+4EDD

结构 :上下结构

部首笔画 :2笔

四角号码 :80102

部外笔画 :3笔

字级 :三级字

仓颉码 :xom

注音 :ㄊㄨㄥˊ

拼音 :tónɡ

笔顺号码 :34121

平水韵 :一东平声

同音字 :同,童

释义 :同“同”;姓

偏旁部首 :人

笔画顺序 :撇、捺、横 、竖、横

笔画数 :5笔

五笔 :waf

郑码 :odbi

首先对于高薪的定位,其实是应该应该区分城市的,比如在超一线城市,一线城市、准一线城市、二线城市、三线城市等等。这是一个很大的因素。

姑且认为从业N年以上的,薪水在城市中属于可观人群的为高薪吧。嗯,姑且这么定义。

有以下几种类型。

开发工程师

这类人一般的工作,就是拿着设计文档,或者高级开发工程师拆解过的任务清单,coding。就是这样:

也可能是是页面:

又或者是接口对接。好吧,我摊牌了,还是coding……

高级开发工程师

这类人的一般性工作就要多了许多,但是,比起初级、中级的开发工程师,不再写具体的业务代码,或者说很少写。那么干啥呢?

一般来说,就是做一些核心算法、核心业务逻辑、重点业务。最重要的,协助CTO/技术经理/部门经理/项目经理,拆解需求为小任务,然后因地制宜的分派下去,并做好跟踪确认、复盘检查。另外,有些单位还要带人,跨团队协调、代码协调等等,都不太一样,根据公司而定。

看一下招聘要求就能明白。

架构师

架构师的工作其实很枯燥,整天就是在鼓捣架构,这个产品/项目用什么架构好呢?要不要上NoSql,要不要上ES?要不要上微服务?

还有,可能会培养团队的技术能力、代码审查、标准制定、协助CTO/技术经理完成工作等等。

或者,根据公司发展,制定技术路线,关键技术研究、验证、攻关。技术路线选择、工具选择等等。

也有可能,负责团队招聘、高级人才招聘、系统优化、团队建设、解决核心问题等。

不管做什么,架构师都是团队的技术领头羊,具有核心作用。

技术经理

有不少的单位,把技术经理和架构师作为一个岗位,比如下面这个。

而有些单位,虽然没有架构师,但是一般也都由技术经理兼职,也可以算作同一个职位(真省钱)。

单纯的技术经理,其实界限也不是那么明显,一般单位也不会配一个技术经理,再配一个架构师,一般都是岗位合并。

没有合并岗位的单位,技术经理差不多都要达到技术总监/CTO的要求了。

比如根据公司整体规划,制定技术发展战略规划;组织制定技术开发管理规范、技术标准、并监督实施;负责公司整体技术层面,组织重大和核心技术决策等等,这不就是技术总监的活儿吗?

技术总监/CTO

可能是最大的技术头头了。要负责的事情都是大方面的,想写代码?门儿都没有。哪给你时间和精力。

你要做的,就是技术团队管理、技术探索、技术策略制定、行业技术研判、整体架构设计、技术规划选型等等大面上的工作,运筹帷幄之中的角色。

混到这个地步,可以说是技术人的巅峰了,努力吧。

这个问题让我不禁想到了一个词——爬虫。

等等,图片错了,应该是这样的爬虫:

爬虫就是一个探测机器,它的基本操作就是模拟人的行为去各个网站溜达,点点按钮,查查数据,或者把看到的信息背回来。就像一只虫子在一幢楼里不知疲倦地爬来爬去。

你可以简单地想象:每个爬虫都是你的“分身”。就像孙悟空拔了一撮汗毛,吹出一堆猴子一样。

你每天使用的百度,其实就是利用了这种爬虫技术:每天放出无数爬虫到各个网站,把他们的信息抓回来,然后化好淡妆排着小队等你来检索。

抢票软件,就相当于撒出去无数个分身,每一个分身都帮助你不断刷新 12306 网站的火车余票。一旦发现有票,就马上拍下来,然后对你喊:土豪快来付款。

正好在上周末,一位黑客盆友御风神秘兮兮地给我发来一份《爬虫图鉴》,这哥们在腾讯云鼎实验室主要负责加班,顺便和同事们开发了很多黑科技。比如他们搞了一个威胁情报系统,号称能探测到全世界的“爬虫”都在做什么。

我吹着口哨打开《图鉴》,但一分钟以后,我整个人都不好了。

我看到了另一个“平行世界”:

就在我们身边的网络上,已经密密麻麻爬满了各种网络爬虫,它们善恶不同,各怀心思。而越是每个人切身利益所在的地方,就越是爬满了爬虫。

看到最后,我发现这哪里是《爬虫图鉴》,这分明是一份《焦虑图鉴》。

我们今天要说的,就和这些 App 有关。

一、爬虫的“骚操作”爬虫也分善恶。

像谷歌这样的搜索引擎爬虫,每隔几天对全网的网页扫一遍,供大家查阅,各个被扫的网站大都很开心。这种就被定义为“善意爬虫”。

但是,像抢票软件这样的爬虫,对着 12306 每秒钟恨不得撸几万次。铁总并不觉得很开心。这种就被定义为“恶意爬虫”。(注意,抢票的你觉得开心没用,被扫描的网站觉得不开心,它就是恶意的。)

给你看一张图:

这张图里显示的,就是各行各业被爬“叨扰”的比例。(注意,这张图显示是全世界,不是全。)而每一个色块背后,都是一条真实而强大的利益链条。

接下来,中哥就给你科普一下里面的骚操作。

1、排名第一的是出行

出行行业中爬虫的占比最高(20.87%)。在出行的爬虫中,有89.02%的流量都是冲着 12306 去的。这不意外,全卖火车票的独此一家别无分号。

你还记得当年12306 上线王珞丹和白百何的“史上最坑图片验证码”么?

这些东西不是为了故意难为老老实实卖票的人的,而恰恰是为了阻止爬虫(也就是抢票软件)的点击。刚才说了,爬虫只会简单的机械点击,它不认识白百何,所以很大一部分爬虫就被挡在了门外。

你可能会说,不对啊,我现在还可以用抢票软件抢到票啊。

没错。抢票软件也不是吃素的。它们在和铁总搞“对抗”。

有一种东西叫做“打码平台”,你可以了解一下。

打码平台雇佣了很多叔叔阿姨,他们在电脑屏幕前不做别的事情,专门帮人识别验证码。那边抢票软件遇到了验证码,系统就会自动把这些验证码传到叔叔阿姨面前,他们手工选好哪个是白百何哪个是王珞丹,然后再把结果传回去。总共的过程用不了几秒时间。

当然,这样的打码平台还有记忆功能。如果叔叔阿姨已经标记了这张图是“锅铲”,那么下次这张图片再出现的时候,系统就直接判断它是“锅铲”。时间一长,12306 系统里的图片就被标记完了,机器自己都能认识,叔叔阿姨都可以坐在一边斗地主了。

你可能会问:为什么 12306 这么抠呢?它大方地让爬虫随意爬会死吗?

答:会死。

你知道每年过年之前,12306 被点成什么样了吗?公开数据是这么说的:“最高峰时1天内页面浏览量达813.4亿次,1小时最高点击量59.3亿次,平均每秒164.8万次。”这还是加上验证码防护之后的数据。可想而知被拦截在外面的爬虫还有多少。

况且这里还没有讨论,被抢票软件把票抢走,对我们父母那样的不会抢票的人来说,是不是公平呢?

铁路被爬虫“点鸡”成这样已经够惨了,但它还有个难兄难弟,就是航空。

而航空里,被搞得最惨的不是国航,不是海航,也不是东航。而是亚航。

航空类爬虫的分布比例

很多人可能都没坐过亚洲航空。这是一家马来西亚的廉价航空公司,航线基本都是从各地飞往东南亚的旅游胜地,飞机上连矿泉水都得自费买,是丝穷X度假之首选。

为什么爬虫这么青睐亚航呢?因为它便宜。确切地说,因为它经常放出便宜的票。

本来,亚航的初衷只是随机放出一些便宜的票来吸引游客,但这里面黄牛党是有利可图的。

据我所知,他们是这样玩的:

技术宅黄牛党们利用爬虫,不断刷新亚航的票务接口,一旦出现便宜的票,不管三七二十一先拍下来再说。

亚航有规定,你拍下来半小时(具体时间记不清了)不付款票就自动回到票池,继续卖。但是黄牛党们在爬虫脚本里写好了精确的时间,到了半小时,一毫秒都不多,他又把票拍下来,如此循环。直到有人从黄牛党这里定了这个票,黄牛党就接着利用程序,在亚航系统里放弃这张票,然后0.00001秒之后,就帮你用你的名字预定了这张票。

“我是中间商,我就要赚差价!”这波骚操作,堪称完美。

2、排名第二的是社交

社交的爬虫重灾区,就是你们喜闻乐见的微博。

给你看张图:

这是爬虫经常光顾的微博地址。

这里的代码其实指向了微博的一个接口。它可以用来获取某个人的微博列表、微博的状态、索引等等等等。

获得这些,能搞出什么骚操作呢?

你想想看,如果我能随心所欲地指挥一帮机器人,打开某人的微博,然后刷到某一条,然后疯狂关注、点赞或者留言,这不就是标准的僵尸粉上班儿的流程么。。。

其实,僵尸粉都只是爬虫的常规操作,更骚的来了:

1、我是一个路人甲,我的微博没人关注,我用大量的爬虫,给自己做了十万人的僵尸粉,一群僵尸在我的微博下面点赞评论,不亦乐乎。

2、我去找一个游戏厂商,跟他说:你看我有这么多粉丝,你在我这投广告吧。我帮你发一条游戏的注册链接,每有一个人通过我的链接注册了游戏,你就给我一毛钱。广告主说,不错,就这么办。

3、我发出注册链接,然后没人点。。。

4、不慌,我让十万爬虫继续前赴后继地点击注册链接,然后自动去完成注册动作。

5、我躺在床上,数着赚来的一万块钱。

(以上数据不一定和现实吻合,只是展现一个逻辑。具体操作也会更复杂。)

还有更骚的么?有的。

你家爱豆不是经常在微博上发红包么?好的,我率十万僵尸粉去抢。

凭本事抢来的红包,就问你有什么不妥吗?

3、排名第三的是电商你回忆一下,有几种东西叫做“比价平台”“聚合电商”和“返利平台”。他们大体都是一个原理:

你搜索一样商品,这类聚合平台就会自动把各个电商的商品都放在你面前供你选择。有淘宝、京东,还有唯品会苏宁易购。

这就是爬虫的功劳。它们去淘宝上,把胖次袜子杜蕾斯的图片和价格统统扒下来,然后在自己这里展示。

这个原理和谷歌差不多。只不过他们展示的不是网页而是商品。但是被放在一起比价,淘宝是拒绝的,京东也是拒绝的啊。。。

然鹅,由于机器爬虫模拟的是人的点击,电商很难阻止这类事情发生。他们甚至都不能向12306学习。你想想看,如果你每点开一个商品详情,淘宝都让你先分辨一次白百何和王珞丹,你肯定没心情剁手,没准还要提刀去剁马云呢。。。

当然,电商对抗爬虫有另外的方法,那就是“web 应用防火墙”,简称 WAF。这个我们后面再单独说。

说到这,有童鞋会有个疑问:

那些聚合平台,自己写爬虫,然后帮助淘宝京东卖货,他们的名字叫么?

醒醒啊同学,叔叔已经走了很多年了。我随便给你说一下这种聚合电商平台的盈利模式:

1、假设几家店铺都卖杜蕾斯,但是用户在我这里搜索“杜蕾斯”的时候,我是有权利决定谁的店铺在前面谁在后面的啊。谁给的钱多,我就让谁在搜索的前面呗。@百度君,你说说是不是这个道理?(注意,每个店铺和淘宝平台可不是一致行动人。淘宝平台不希望自己的内容被聚合平台抓取,但每个店铺可是很乐意多一个渠道帮他们卖货的。)

2、如果你觉得搞竞价排名良心会痛,也可以用更简单的——在网页上展示独立的广告。访问你网站的用户,看到页面上的广告,也有可能会点击。每点击一次,你就赚一次钱。

3、你还可以作为中间商,收点中介费。我帮你店家卖货了,你是不是要给我意思意思。除了给我意思意思,你还得给来买东西的用户意思意思。这种套路,就是“返利网”这类平台的玩法。

4、接下来是 O2O 和搜索引擎

你还记得上车之前,我问了你一个问题吗?

你在大众点评上看到的信息,真是吃货们点评的吗?

答:大部分时候是,但有时候不是。

这里面的影响因素还是爬虫。

御风告诉我,这些爬虫很可能被用来做两件事:

1、大众点评毕竟是最好的点评网站。很多网站都会爬取大众点评的数据,用来丰富自己的信息。

2、很多刚上点评的商户,信誉值不高,可以用爬虫来模拟留言、点赞,刷高自己的信誉值。

所以,理论上讲一旦大众点评对这些爬虫对抗出现松懈,就会有一些不三不四的店铺被“刷”到顶部。

而与之相似的,是爬虫针对搜索引擎的进攻。

你可能了解,搜索引擎决定哪个网页排名靠前,(除了广告以外)主要一个指标就是看哪个搜索结果被人点击的次数更多。

既然这样,那么我就派出爬虫,搜索某个特定的“关键词”,然后在结果里拼命地点击某个链接,那么这个网站在搜索引擎的权重里自然就会上升。这个过程就叫做 SEO(搜索引擎优化)。

举个例子:

我随意搜索一个关键词。

它排在前面的网址,有可能就是经过 SEO 的。作为任何一个搜索引擎,都肯定不允许外人对于自己的搜索结果动手动脚,否则就会丧失公立性。它们会通过不定期调整算法来对抗 SEO。

尤其是很多、,搜索引擎如果敢收广告费让他们排到前面,那就离倒闭不远了。所以黄赌毒网站只能利用黑色 SEO,强行把自己刷到前面。直到被搜索引擎发现,赶紧对它们“降权”处理。不过御风算了算,这些如果能把自己刷到前几位一两个小时,赚来的钱就远远超过 SEO 的费用。

这也就解释了为什么有时我们“众里寻他千百度”,蓦然回首,却看到“有人正在脱裤裤”了。

5、最后再说说部门

你看这张图,全是爬虫针对信息的爬取。

第二名,北京市预约挂号统一平台。这个锅,板上钉钉要号贩子来背。

其他的,例如法院公告、信用、信用安徽,为什么爬虫要爬这些信息呢?

因为有些信息,是只有部门才掌握的。

比如,谁被告过,哪家公司曾经被行政处罚,哪个人曾经进入了失信名单。这些信息综合起来,可以用来做一个公司或者个人的信誉记录。

我试着打开了一下排名第四位的“信用”。

在这个平台上,你只要输入一个身份证号或者手机号,就可以查询到一个人的信用情况。拉到最底下一看,这个网站果然是是根红苗正的。

如果一家公司要对外做信誉库的服务,它必须先把信用的信息下载到自己的库里,然后才能和其他数据进行综合运算。

如此,信用被爬,也就很容易解释了。

不过刚才那张表格里,排名第七的是四川住建厅。这又是什么骚操作?

根据御风的推测,这很可能是某些公司提供的一项“”:

他们把四川省各个地区的招标情况汇总起来,然后实时提醒那些房地产公司:别睡了,起来投标了。

二、爬虫战争

说了这么多,我猜你会有几个疑问。

问题 1、爬虫搞出这么多姿势,它究竟是不是违法呢?

这个问题还真的不简单。

我打开网安第一《网络安全法》仔细看了半小时,在里面没有发现“爬取网络息被认定为违法”的条款。

于是我又继续搜索,发现了几条司法解释:

未经授权爬取用户手机通讯录超过50条记录;未经授权抓取用户淘宝交易记录超过500条;未经授权读取用户运营商网站通话记录超过500条;未经授权读取用户公积金社保记录的超过50000条的。以上这些情况可以入刑

。但是仔细看看,如果我只是用机器代替了人的手点击鼠标敲击键盘,接触的都是息,并不触犯这些司法解释。(这只是我简单查询后的结果,不代表任何官方意见)

但是,对企业来说,爬虫却着实伤害了自己。有句话说:“主救自救者。”他们得组织“民兵”自己保卫自己。

问题 2、爬虫战争谁会赢?

爬虫和被爬企业越来越势不两立。

说白了,他们的对抗都是在阻挡对方的财路。所以下手都挺重。

企业经典的对抗,大概有几种:图片验证码、滑块验证、封禁 IP、给访问者增加一些加解密运算,耗费爬虫的程序资源等等。。。

这张图来自极验验证的滑块验证技术

除了刚才这些小模块,企业还可以通过 WAF(Web 应用防火墙)来防护,WAF 的功能就是通过设置一些规则,拦截掉那些不符合规则的请求。

但是,爬虫的请求,和真人的请求真的太像了。

我觉得,对这种战争一个形象的比喻就是抗癌。癌细胞的目的就是拼命躲过免疫细胞的识别,而免疫细胞的目标就是拼命分辨哪个是好细胞哪个是癌细胞。

在我看来,这场对抗爬虫的常规战眼看就要升级为“智能战”,而且战线会向云端转移

。比如腾讯云的 WAF,听说最近就要通过人工智能的方法来识别爬虫。这里就不帮他们打广告了。还有很多其他的云安全厂商,也开始主推反爬虫的技术。

不过,就像人类目前难以消灭癌症一样,企业也难以完全消灭爬虫。但是我相信,在对抗中这条战线会达到一个精妙的平衡。这个战线每向前推进一步,都需要安全研究员付出艰辛的努力。

三、《焦虑图鉴》

最后,中哥帮你搞到了一张秘密表格。

这是被监测到的受爬虫侵扰最多的 Top50。(采样数据,仅供参考)

这张表里,除了google、Youtube、ask、亚洲航空这四家企业之外,应该全是企业(或机关)。正是从这些名字背后,我体会到了很多人的辛酸和焦虑。

爬虫是趋利的,它们永远会向有利益的地方爬行。而爬虫觉得有利益的地方,往往是我们不忍提及的隐痛。

你看,排名第1的“铁路路客户服务中心”

无数像幺哥一样的游子,他们奋斗在一个远离家乡的城市,为了让家人有更幸福的生活。正是他们难以买到过年回家车票的事实,才把 12306 推上了爬虫榜的第一名。

你看,排名第8的“最高法院公告查询”

在,我们的信用体系还很不完善,骗子和老赖还可以继续蒙骗新人。所以才催生了爬虫收集法院公告,形成民间信用记录的服务。

你看,排名第15的“北京市预约挂号统一平台”

我们的医疗改革在进行,但像你我一样的普通人仍然看病难,看病贵。又便宜又好的医疗资源需要争夺,这才有了“一号难求”的现实,才有了黄牛用爬虫拼命抢号的现象。

自不用说那些神坑的虚假广告,冲榜刷量,背后都有爬虫的影子。

有人说技术有罪,有人说技术无罪。

我不知道技术是否有罪,我只知道,这些盘踞在我们广袤版图上数以十亿计的爬虫,无时无刻不在提醒着我们:

抱怨不会让这个世界变得更好,你想生活在一个怎样的世界,就要用自己的双手去创造它。