一、自学网络安全学习的误区和陷阱
1.不要试图先成为一名程序员(以编程为基础的学习)再开始学习
我在之前的回答中,我都一再强调不要以编程为基础再开始学习网络安全,一般来说,学习编程不但学习周期长,而且实际向安全过渡后可用到的关键知识并不多。
一般人如果想要把编程学好再开始学习网络安全往往需要花费很长时间,容易半途而废。而且学习编程只是工具不是目的,我们的目标不是成为程序员。建议在学习网络安全的过程中,哪里不会补哪里,这样更有目的性且耗时更少。
2.不要把深度学习作为入门第一课
很多人都是冲着要把网络安全学好学扎实来的,于是就很容易用力过猛,陷入一个误区:就是把所有的内容都要进行深度学习,但是把深度学习作为网络安全第一课不是个好主意。原因如下:
- 深度学习的黑箱性更加明显,很容易学的囫囵吞枣
- 深度学习对自身要求高,不适合自学,很容易走进死胡同
3.不要收集过多的资料
网上有很多关于网络安全的学习资料,动辄就有几个G的材料可以下载或者观看。而很多朋友都有“收集癖”,一下子购买十几本书,或者收藏几十个视频。
网上的学习资料很多重复性都极高而且大多数的内容都还是几年前没有更新。在入门期间建议“小而精”的选择材料,下面我会推荐一些自认为对小白还不错的学习资源,耐心往下看。
二、学习网络安全的一些前期准备
1.硬件选择
经常会有私信问我“学习网络安全需要配置很高的电脑吗?”答案是否定的,黑客用的电脑,不需要什么高的配置,只要稳定就行。因为黑客所使用的一些程序,低端CPU也可以很好的运行,而且不占什么内存。还有一个,黑客是在DOS命令下对进行的,所以电脑能使用到最佳状态!所以,不要打着学习的名义重新购买机器。
2.软件选择
很多人会纠结学习黑客到底是用Linux还是Windows或者是Mac系统,Linux虽然看着很酷炫,但是对于新人入门并不友好。Windows系统一样可以用虚拟机装靶机来进行学习。
至于编程语言,首推Python,因为其良好的拓展支持性。当然现在市面上很多网站都是PHP的开发的,所以选择PHP也是可以的。其他语言还包括C++、Java...
很多朋友会问是不是要学习所有的语言呢?答案是否定的!引用我上面的一句话:学习编程只是工具不是目的,我们的目标不是成为程序员。
(这里额外提一句,学习编程虽然不能带你入门,但是却能决定你能在网络安全这条路上到底能走多远,所以推荐大家自学一些基础编程的知识)
3.语言能力
我们知道计算机最早是在西方发明出来的,很多名词或者代码都是英文的,甚至现有的一些教程最初也是英文原版翻译过来的,而且一个漏洞被发现到翻译成中文一般需要一个星期的时间,在这个时间差上漏洞可能都修补了。而且如果不理解一些专业名词,在与其他黑客交流技术或者经验时也会有障碍,所以需要一定量的英文和黑客专业名词。(不需要特别精通,但是要能看懂基础的)
比如说:肉鸡、挂马、shell、WebShell等等
三、网络安全学习路线
第一阶段(打好基础)
- 网络安全行业与法规
- Linux操作系统
- 计算机网络基础课程
- HTML基础课程
- PHP零基础课程
- MySQL基础课程
- 图解Python语法
在学习基础入门课程的同时,推荐同时阅读相关的书籍补充理论知识,这里比较推荐以下几本书:
- 《白帽子讲Web安全》
- 《Web安全深度剖析》
- 《Web安全攻防 渗透测试实战指南》
第二阶段(初级渗透)
- 信息收集
- WEB安全
- 漏洞扫描
- APP渗透
- 渗透工具
- 漏洞复现
- 实战挖洞
第三阶段(高级渗透)
- 渗透框架
- 权限提升
- 权限维持
- 隧道技术
- 内网渗透
- 溯源取证
- 无线安全
- DDOs攻防
第四阶段(安全管理)
- 等级保护
- 风险评估
- 应急响应
- 数据安全
- 面试就业指导
第五阶段 (二进制逆向)
- c语言
- c++
- 汇编语言
- 安卓逆向
- Windows逆向
- 免杀-反杀毒技术
这些是大体学习方向,渗透两阶段可能是小伙伴们最感兴趣的,毕竟渗透对标的就是“黑客”,同时也是学习网安最重要的阶段,要拿出大量精力和时间来学。
四、学习资料的推荐
学习框架已经整理完毕,现在就差资料资源了,我这里整理了所有知识点对应的资料资源文档,大家不想一个一个去找的话,可以参考一下这些资料!
最后给各位学网安的小伙伴打一点鸡血!!!
"只说不做,不如不说;知而未行,还是未知"
为什么很多人都说想学网络安全,但成功的人只是极少数?之所以没能成功达到心中所愿所想,并不是因为做不到,而是没有把“想法”和“行动”统一起来,从而导致二者之间的偏离,以至于白白浪费人生大好时光。其实成功简单得很,只要你一开始都有计划,并且能一直做下去,总会成功的。关键是如何面对成功,你失败了,起码还有人同情你,而成功了,连得到同情的机会都没有。加油,网安人!