当你开始在网上搜索关于网络安全的学习资料,常常会陷入自我怀疑:尝试自学后能使用工具进行简单的扫描和挖洞,但总感觉后期学习很难有突破,不知道是哪里出现问题…于是又不得不推倒重来。
了解网络安全,首先要搞清楚下面这些前提
这些问题,会贯穿你学习网络安全的始终,建议从入门学习开始就做好规划。
国际国内网络环境的迅速变化催生了一系列安全政策,使得网络安全产业从小众产业逐步发展成为国家战略性新兴产业,与人工智能、大数据、云计算等领域并驾齐驱。
网络安全对于大部分政企单位来说,已经从[可选项]变成了[必选项]甚至是[强制项]。安全团队再也不是大厂或者互联网公司专有,只要是“触网”的企业,都需要安全人才加入。
在以前,很多政企单位在进行 IT 部门及岗位划分时,只有研发和运维部门,安全人员直接归属到基础运维部;而现在,越来越多单位为了满足国家安全法律法规的要求,必须成立独立的网络安全部门,拉拢各方安全人才、组建 SRC(安全响应中心),为自己的产品、应用、数据保卫护航。
而且,我们到招聘网站上,搜索【网络安全】【Web安全工程师】【渗透测试】等职位名称,可以看到安全岗位薪酬待遇好,随着工龄和薪酬增长,呈现「越老越吃香」的情况。
要了解网络安全行业,首先要理解网络安全技术的整体框架。
安全行业的岗位和需求层出不穷,可以站在甲乙双方来分类,可以站在攻防两端来分类、可以站在技术链来分类,也可以根据岗位具体业务来分类。
按照应用场景和技术栈,安全行业一般可以细分为以下方向
网络安全还可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。
无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如 Web 安全技术,既有 Web 渗透,也有 Web 防御技术(WAF)。作为一个合格的网络安全工程师,应该做到攻守兼备,毕竟知己知彼,才能百战百胜。
如果你是一个安全行业新人,我推荐你先从网络安全或者Web安全/渗透测试这两个方向先学起,原因如下:
值得一提的是,学网络安全,是先网络后安全;学Web安全,也是先Web再有安全。安全不是独立存在的,而是建立在其他技术基础之上的上层应用技术。脱离了这个基础,就很容易变成纸上谈兵,变成“知其然,不知其所以然”,在安全的职业道路上也很难走远。
如果你是一个安全行业新人,我建议你先从网络安全或者Web安全/渗透测试这两个方向先学起,一是市场需求量高,二则是发展相对成熟入门比较容易。
值得一提的是,学网络安全,是先网络后安全;学Web安全,也是先Web再有安全。
安全不是独立存在的,而是建立在其他技术基础之上的上层应用技术。脱离了这个基础,就很容易变成纸上谈兵,变成“知其然,不知其所以然”,在安全的职业道路上也很难走远。
如果你是原本从事网工运维,那么可以选择网络安全方向入门;如果你原本从事程序开发,推荐选择Web安全/渗透测试方向入门。当然学到一定程度、或者有了一定工作经验,不同方向的技术耦合会越来越高,各个方向都需要会一点。
根据以上网络安全技能表不难看出,网络安全需要接触的技术还远远很多,常见的技能需要学习:外围打点能力、钓鱼远控能力、域渗透能力、流量分析能力、漏洞挖掘能力、代码审计能力等。
这里整理了很多网络安全相关资料分享给大家学习 ,点卡片领取
网络安全大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
包含:
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
网络安全的知识多而杂,怎么科学合理安排?
一、基础阶段
中华人民共和国网络安全法 (包含18个知识点) Linux操作系统 (包含16个知识点) 计算机网络 (包含12个知识点) SHELL (包含14个知识点) HTML/CSS (包含44个知识点) JavaScript (包含41个知识点) PHP入门 (包含12个知识点) MySQL数据库 (包含30个知识点) Python (包含18个知识点) ————————————————
入门的第一步是系统化的学习计算机基础知识,也就是学习以下这几个基础知识模块:操作系统、协议/网络、数据库、开发语言、常用漏洞原理。前面的基础知识学完之后,就要进行实操了。
因为互联网与信息化的普及网站系统对外的业务比较多,而且程序员的水平参差不齐和运维人员的配置事物,所以需要掌握的内容比较多。
二、渗透阶段
SQL注入的渗透与防御(包含36个知识点) XSS相关渗透与防御(包含12个知识点) 上传验证渗透与防御(包含16个知识点) |文件包含渗透与防御(包含12个知识点) CSRF渗透与防御(包含7个知识点) SSRF渗透与防御(包含6个知识点) XXE渗透与防御(包含5个知识点) 远程代码执行渗透与防御(包含7个知识点) …(包含…个知识点) ————————————————
掌握常见漏洞的原理、使用、防御等知识。Web渗透阶段还是需要掌握一些必要的工具。
主要要掌握的工具和平台:burp、AWVS、Appscan、Nessus、sqlmap、nmap、shodan、fofa、代理工具ssrs、hydra、medusa、airspoof等,以上工具的练习完全可以利用上面的开源靶场去练习,足够了;
三、安全管理(提升)
渗透报告编写(包含21个知识点) 等级保护2.0(包含50个知识点) 急响应(包含5个知识点) 代码审计(包含8个知识点) 风险评估(包含11个知识点) 安全巡检(包含12个知识点) 数据安全(包含25个知识点)
主要包括渗透报告编写、网络安全等级保护的定级、应急响应、代码审计、风险评估、安全巡检、数据安全、法律法规汇编等。
这一阶段主要针对已经从事网络安全相关工作需要提升进阶成管理层的岗位。如果你只学习参加工程师方面的岗位,这一阶段可学可不学。
四、提升阶段(提升)
密码学(包含34个知识点) JavaSE入门(包含92个知识点) C语言(包含140个知识点) C++语言(包含181个知识点) Windows逆向(包含46个知识点) CTF夺旗赛(包含36个知识点) Android逆向(包含40个知识点) ————————————————
主要包括密码学、JavaSE、C语言、C++、Windows逆向、CTF夺旗赛、Android逆向等。主要针对已经从事网络安全相关工作需要提升进阶安全架构需要提升的知识。
网络安全是一个广阔而复杂的领域,学习起来需要时间和耐心。对于网络安全新手,建议先了解一些基础概念和入门知识,例如网络架构、攻击类型、安全措施等。同时,也需要持续关注最新的安全威胁和技术,不断学习和实践,以提高自己的技能和实战能力。在学习过程中,要谨记安全第一的原则,不要盲目尝试和攻击,否则可能会导致不必要的安全风险和后果。最后,推荐参加一些网络安全的培训和认证课程,以获得更系统和全面的网络安全知识和技能。