扫描器设计
漏洞扫描器大家都不陌生,几乎是每家公司必备的安全产品。几乎早在快10年前,作为安全乙方,就需要扛着一台极光扫描器,到全国各地去做各种安服。在当时极光扫描器就是一款非常成熟的商业产品了,那么到现在为什么没有出现一款能够通杀的产品,大家还都要一直重复的造轮子呢。我想问题出在两个方面,一是扫描场景复杂,没有一款扫描器能否覆盖所有的场景,而是各有侧重。二是扫描器自身的保密需求,把防御能力完全暴露在外不是一个好主意,最多做到开源扫描框架,poc是万万不能全部开源的。
滴滴建设扫描器也已经好多年,并且去年作为滴滴云安全解决方案,实现了首次商业化输出。如何做扫描器,我比较推崇实用主义的理念,比较看重有利用价值的漏洞,有的扫描器扫完一看,一堆高危全是ssh版本漏洞,报告是好看,但实际利用价值不大(当然,版本漏洞也是有其价值的,我们也有购买商业扫描器,主要用于迎接各种合规检查,自家扫描器人家可能不认)。受限于场景,滴滴自研的扫描器PoC数量至今也才不到500个。商业化扫描器则不同,没有几千个poc都不好意思说自己是做扫描器的。有时候大而全并不一定好,我在某云光一台vm,就给我推了80多个漏洞,客户要么无法处理,要么形成漏洞免疫,反而容易漏过真正的风险。
自研扫描器架构如下图:
1、 采用C-S架构,服务端分为3部分,WEB界面、交互API、调度控制等。数据存储采用mysql,队列服务redis 。
2、WEB界面主要负责与人的交互,包括资产管理、任务管理、Agent管理、插件管理、漏洞管理等模块。
3、交互API 主要负责与Agent的交互,Agent主动拉取任务并推送扫描结果。 生产网、办公网、测试网等公司内部属于不同的安全域,是有网络隔离的,但只要Agent与服务端WEB端口做到单向通信,就能解决一个服务端打通多个扫描安全域的问题。
4、控制调度模块负责 任务调度、维护redis队列、轮询更新任务状态。
5、客户端主要分为指纹识别、spider、WEB扫描、主机扫描四部分。Agent 架构很方便做到横向扩容。
6、web扫描分为两类,一种是基于spider的扫描,Web扫描依赖于spider 爬取的结果,瓶颈在spider,注定效果有限。第二是基于url的扫描。大公司可建设URL库,汇聚来自访问日志,流量镜像、测试人员agent 三者所采集到的url。
7、主机扫描是基于指纹的扫描,扫描效果就要看插件的质量和数量了。所有基于特征性的扫描都可以放到这里,例如对于discus扫描插件,虽然属于web服务,但应该放到主机扫描这里,因为它的明确的指纹特征,而WEB扫描主要基于URL,大多是针对参数的。
指纹识别的实现
今天先谈谈指纹识别吧,最简单的指纹识别方法就是Nmap,它的服务指纹真的很强大,但不适用于大规模的扫描任务,你会发现扫描1-65535个端口实在太慢了。于是拆分成两部分的任务,端口扫描和服务识别,nmap加 -sV选项只负责识别开放端口是什么具体服务。
端口扫描首选要确认是否探活以及扫描范围,例如内网等不大会禁icmp的场景,建议进行ping探活,对于有资产完备且安全性要求较高的场景如外网边界建议不探活直接进行1-65535全端口扫描。
其实最纠结的是扫描方法的选择,我们尝试过nmap、masscan、python、go开发tcp扫描、tcp-syn扫描等,最后的结论是go语言实现的扫描效率最佳。过程就不多说了, 有兴趣的朋友可以参考小伙伴的博客(https://thief.one/2018/05/17/1/)
再说服务识别,世间服务千万种,但大致可以分为web服务和其他服务。非web服务识别主要依赖于nmap,对于少量未识别的,也支持自定义扩展指纹。而对于WEB指纹,主要依赖于自建指纹库,web服务非常规范,http header、title、body、robots.txt等都可以很方便的自定义指纹规则。自建指纹是个逐步积累的过程,在未完善之前,可以依赖于开源的服务如whatsweb,cms规则非常丰富,完善后再逐步淘汰。
指纹识别的功能
1、指纹联动扫描插件
标题为基于指纹识别的漏洞扫描,主要是说扫描条件是由指纹决定的。扫描插件只对匹配到指纹条件的目标进行扫描,编写扫描插件时就要同步check下指纹规则,两者联动更新,这样就可以做到精准扫描。扫描poc未能很好的匹配指纹规则,这样就会存在一定的gap, 有时候使用简单的默认端口会造成漏扫,有时候又扩大了扫描范围,例如一个wordpress漏洞插件需要对所有http服务进行扫描。有了精准指纹识别,则可以发起针对性扫描。
2、指纹识别漏洞
指纹即漏洞:部分漏洞不需要经过漏洞扫描,直接在指纹识别阶段就筛选出来了。对于公司外网扫描,有安全规范的公司一般会要求禁止高危端口开放外网,禁止使用高危框架,后台要有双因素等。这些都可以通过指纹识别来探测到。另外常规的主页信息泄露漏洞也可以探测到,如列目录,报错,敏感信息泄露等。
指纹无漏洞: 即指纹白名单的概念,以外网为例,我们已知SSO是安全的,那么一旦指纹探测到后台接入了SSO,就可以打个标签。其他白名单也类似,我们若是已知某个服务是安全的,就不用去反复扫描了。
3、0day应急响应
有了完备的指纹库,当发生0day漏洞的时候,就能够迅速排查到可能受影响的资产,进而进行快速响应。 当然公司可以有两个指纹库,扫描器探测属于黑盒指纹库,还有主机agent采集上来的“白盒”指纹库。
题外话
初入计算机行业的人或者大学计算机相关专业毕业生,很多因缺少实战经验,就业处处碰壁。下面我们来看两组数据:
- 2023届全国高校毕业生预计达到1158万人,就业形势严峻;
- 国家网络安全宣传周公布的数据显示,到2027年我国网络安全人员缺口将达327万。
一方面是每年应届毕业生就业形势严峻,一方面是网络安全人才百万缺口。
6月9日,麦可思研究2023年版就业蓝皮书(包括《2023年中国本科生就业报告》《2023年中国高职生就业报告》)正式发布。
2022届大学毕业生月收入较高的前10个专业
本科计算机类、高职自动化类专业月收入较高。2022届本科计算机类、高职自动化类专业月收入分别为6863元、5339元。其中,本科计算机类专业起薪与2021届基本持平,高职自动化类月收入增长明显,2022届反超铁道运输类专业(5295元)排在第一位。
具体看专业,2022届本科月收入较高的专业是信息安全(7579元)。对比2018届,电子科学与技术、自动化等与人工智能相关的本科专业表现不俗,较五年前起薪涨幅均达到了19%。数据科学与大数据技术虽是近年新增专业但表现亮眼,已跻身2022届本科毕业生毕业半年后月收入较高专业前三。五年前唯一进入本科高薪榜前10的人文社科类专业——法语已退出前10之列。
“没有网络安全就没有国家安全”。当前,网络安全已被提升到国家战略的高度,成为影响国家安全、社会稳定至关重要的因素之一。
网络安全行业特点
1、就业薪资非常高,涨薪快 2021年猎聘网发布网络安全行业就业薪资行业最高人均33.77万!
2、人才缺口大,就业机会多
2019年9月18日《中华人民共和国中央人民政府》官方网站发表:我国网络空间安全人才 需求140万人,而全国各大学校每年培养的人员不到1.5W人。猎聘网《2021年上半年网络安全报告》预测2027年网安人才需求300W,现在从事网络安全行业的从业人员只有10W人。
行业发展空间大,岗位非常多
网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…
职业增值潜力大
网络安全专业具有很强的技术特性,尤其是掌握工作中的核心网络架构、安全技术,在职业发展上具有不可替代的竞争优势。
随着个人能力的不断提升,所从事工作的职业价值也会随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨,这也是为什么受大家欢迎的主要原因。
从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。
黑客&网络安全如何学习
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
1.学习路线图
攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。
(都打包成一块的了,不能一一展开,总共300多集)
因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取
3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。
因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取
4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。
还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。
因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取
最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…
因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取
标签:网络安全,扫描器,指纹识别,扫描,指纹,漏洞 From: https://blog.csdn.net/2301_81113856/article/details/139416000