前 言
写这篇文章的初衷是很多朋友都想了解如何入门/转行网络安全,实现自己的“黑客梦”。文章的宗旨是:
1.指出一些自学的误区
2.提供客观可行的学习表
3.推荐我认为适合小白学习的资源.大佬绕道哈!
我的经历:
我19年毕业,大学专业是物联网工程,我相信很多人在象牙塔里都很迷茫,到了大三大四才开始慢慢焦虑自己该从事什么工作培养一技之长,或者是跟随大部队考研继续逃避社会,我选择了后者。19年7月拿到毕业证以后因为没有一技之长,工作一直不顺。城市换了又换, 工作也一直在变。一直没有稳定下来,浑浑噩噩地被社会毒打。
因为我是计算机相关专业,身边做网络安全的同学真是挺多的。
去年三月份和大学室友聊天,得知他已经在杭州拿到了安全岗12k的offer,周末双休。
还有两个同班女孩子在深圳一个拿了13k一个拿了12k。 (此处更新,她们四月底跳槽了,薪资嘛。。。时刻提醒我是fw)当时真是给了我的内心造成了巨大冲击,顿时陷入一阵迷茫, 我就在反思还是要这么每天混日子吗?甘心嘛?肯定不甘心啊~
于是自学网安的想法这个时候就发了芽。不过发芽归发芽,日子还是继续混,毕竟我们常人做一件事大多都是磨蹭半天才开始,而且日常也需要工作,有时候觉得累就不想学,有时候觉得想在玩一玩。
于是,就这么一直到了20年十一月份。真正让我下定决心的是自己的几个朋友,他们给了我不少建议:
一、来我是计算机专业的,IT的知识学起来相对轻松;
二、是他们就是做这方面工作,能帮我在学习少走弯路;
三、是当时的工作实在让我看不到希望,于是毅然辞职开始了网安
自学道路:
同时也咨询了很多培训,给了我一些必须学网安的建议,加上我自身的原因,也给我了好多建议。
这算是一阵强心剂,再加上一些特殊原因,就决定学网安!
我学习用到的教程,都是在B站找的视频。。。
先开始学习时候是没有辞职的,辞职前陆陆续续学了一丁点HTML和css皮毛,代码编程也学了些。
正式开始学的时候是十一月份,直接辞职了
当时还建了个群,但是吧。。。
我建群的初心是想着多交流学习心得和解决学习问题,但是群里的表现嘛真的和表情包一样:
我的过程和学习心得
我找的所有教程都是B站上的,比较基础适合小白,这部分一定要多练,知识点多,就去练,还要多回头看 ,我敢说这部分你学了一周,等周六日在回头看,你发现有些东西就不好写出来 ,所以要周六日回头看下,在练好的基础上做总结。
但只是这些太少了,还需要往下学
我学完后已经二月底了,因为不想错过金三银四就直接南下来了深圳硬着头皮面试。
不过自己没有经验并且刚来深圳求稳,就选了一家物联网公司,6.5K~ ,也有工资高的,但不是双休,福利也不是很好,我在初期还是求稳多学习,就选了双休的。
上面就是我的经历,但是我希望大家不要误会,千万别觉得自学四个月随便就出来找工作,如果你这么想也这么干会死的很惨!很惨很惨!我只不过恰巧运气好
较为完整的学习路线:
这个路线是我和一些已入职大佬来规划整理,也加上了小提示,我也希望你们能看看上面我的心得,都会有所帮助。
第一阶段:基础操作入门
入门的第一步是学习一些当下主流的安全工具课程并配套基础原理的书籍,一般来说这个过程在1个月左右比较合适。
第二阶段:学习基础知识
在这个阶段,你已经对网络安全有了基本的了解。如果你学完了第一步,相信你已经在理论上明白了上面是sql注入,什么是xss攻击 ,对burp、msf、cs等安全工具也掌握了基础操作。这个时候最重要的就是开始打地基!
所谓的“打地基”其实就是系统化的学习计算机基础知识。而想要学习好网络安全,首先要具备5个基础知识模块:
1.操作系统
2.协议/网络
3.数据库
4.开发语言
5.常见漏洞原理
学习这些基础知识有什么用呢?
计算机各领域的知识水平决定你渗透水平的上限。
【1】比如:你编程水平高,那你在代码审计的时候就会比别人强,写出的漏洞利用工具就会比别人的好用;
【2】比如:你数据库知识水平高,那你在进行SQL注入攻击的时候,你就可以写出更多更好的SQL注入语句,能绕过别人绕不过的WAF;
【3】比如:你网络水平高,那你在内网渗透的时候就可以比别人更容易了解目标的网络架构,拿到一张 网络拓扑就能自己在哪个部位,拿到以一个路由器的配置文件,就知道人家做了哪些路由;
【4】再比如你操作系统玩的好,你提权就更加强,你的信息收集效率就会更加高,你就可以高效筛选出想要得到的信息
第三阶段:实战操作
1.挖SRC
挖SRC的目的主要是讲技能落在实处,学习网络安全最大的幻觉就是觉得自己什么都懂了,但是到了真的挖漏洞的时候却一筹莫展,而SRC是一个非常好的技能应用机会。
2.从技术分享帖(漏洞挖掘类型)学习
观看学习近十年所有0day挖掘的帖,然后搭建环境,去复现漏洞,去思考学习笔者的挖洞思维,培自己的渗透思维
3.靶场练习
自己搭建靶场或者去免费的靶场网站练习,有条件的话可以去购买或者报靠谱的培训机构,一般就有配套的靶场练习
第四阶段:参加CTF比赛或者HVV行动
推荐:CTF
CTF有两点:
【1】接近实战的机会。现在网络安全法很严格,不像之前大家能瞎搞
【2】题目紧跟技术前沿,而书籍很多落后了
【3】如果是大学生的话,以后对找工作也很有帮助
如果你想打CTF比赛,直接去看赛题,赛题看不懂,根据不懂的地方接着去看资料
推荐:HVV(护网)
HVV有三点:
【1】也能极大的锻炼你,提高自身的技术,最好是参加每年举行的HVV行动
【2】能认识许多圈内的大佬,扩大你的人脉
【3】HVV的工资也很高,所以参加的话也能让你赚到不少钱
【4】和CTF比赛一样如果是大学生的话,以后对找工作也很有帮助
为什么会自学失败?
还记得我前文说的那个交流群吗?里面一百多个人里真正自学有结果的可能一双手数得过来,剩下很大一 部分都在打嘴炮吹牛逼,坚持下去比较难。
失败的原因:
我们分析了下,大的主要原因有2个:
一、没有成熟的路线。本专业的人都不知道上哪儿找路线,何况转行的呢?
二、没有人引导以及错误的学习方法,说白了,就是苦练。
三、自制力差+诱惑太多,没法静下心学习,几个月了学习进度一直停滞不前;
战胜失败的良药:
一、正确、合适的路线。
二、必胜的勇气,历史的行军打仗,士气很重要,一定要有信心,不然你会不停陷入自我怀疑,然后走上放弃道路。
三、小目标与连续性,学习网安,非常需要连续,连着学习很重要,也要有自己的小目标,比如十五天/ 一个月内学习多少内容,要做出什么样的成绩,这样不断印证加强信心,有成就的反馈,自然有持续 的动力。或者让一个心狠手辣的人对你监督,经常敲打你。以及尝试打卡的方式。但是我不太推荐加群 ,群要么变成有目的盈利性质,要么适合工作加的吹水摸鱼。
四、多练习与多复习。
五、不要急于求成,一 般来说,自学时间是6个月~10个月,所以不要着急,更不要在技术不扎实的时候去面试,只会 让我们有挫败感。
自学坚持真的很重要,守得云开见月明。
自学结束后,我们的还会存在的痛点:
自学结束,不代表我们能顺利过渡到就业,我们依然会存在几个痛点。
下面的痛点 都会在多数自学者身上出现,甚至导致不少自学者就此放弃,我觉得非常非常非常惋惜,都已经自学到这里了,在放弃,你甘心吗?
1、技能掌握不扎实,想解决这个问题,一来我们要多练习多复习,二来做完整的项目来锻炼我们的技能。
2、面试简历的书写。关于包装简历与否,我可以给出答案,如果毕业几年了,请包装简历,应届生不必包装简历。
3、面试会遇到的问题,只要我们技术扎实且到了这一步,我们已经非常接近成功了,面试遇到的问题一种是围绕技术问,一种是围绕项目问,一种是围绕你的个人发展问,一般来说大公司围绕底层技术比较多,中小公司多围绕项目问,这个多去各大平台,比如知乎、掘金找一些面试经历与面试题来看看。
最后的建议:
网安是一路探索的,无论选择何种方式入行,工作里还有太多知识与领域,是我们学习中接触不到的(无论你是培训还是自学),我所罗列或者机构罗列的知识点的深度,不过是让你能勉强胜任工作,大片大片的工作空白,无论广度和深度,都需要我们来体验。
开始学习网络安全开始,不是你卷别人就是别卷你。
你想好了吗?
生命不息学习不止。
网络安全学习路线&学习资源
网络安全的知识多而杂,怎么科学合理安排?
下面给大家总结了一套适用于网安零基础的学习路线,应届生和转行人员都适用,学完保底6k!就算你底子差,如果能趁着网安良好的发展势头不断学习,日后跳槽大厂、拿到百万年薪也不是不可能!
初级网工
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k
到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?
7、脚本编程(初级/中级/高级)
在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.
零基础入门,建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习; 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime; ·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完; ·用Python编写漏洞的exp,然后写一个简单的网络爬虫; ·PHP基本语法学习并书写一个简单的博客系统; 熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选); ·了解Bootstrap的布局或者CSS。
8、超级网工
这部分内容对零基础的同学来说还比较遥远,就不展开细说了,贴一个大概的路线。感兴趣的童鞋可以研究一下,不懂得地方可以【点这里】加我耗油,跟我学习交流一下。
网络安全工程师企业级学习路线
如图片过大被平台压缩导致看不清的话,可以【点这里】加我耗油发给你,大家也可以一起学习交流一下。
一些我自己买的、其他平台白嫖不到的视频教程:
需要的话可以扫描下方卡片加我耗油发给你(都是无偿分享的),大家也可以一起学习交流一下。
网络安全学习路线&学习资源
结语
网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。
特别声明:
此教程为纯技术分享!本书的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本书的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失!!!