信息安全专业如何零基础学习到就业升学
信息安全专业学习之路
一、专业基础课
1.1 计算机基础知识
- C语言,Python,Java
- 数据结构及算法
初学可以看《大话数据结构》,刷leetcode - 计算机网络
- 七层网络模型
- TCP/IP
- HTTP及HTTPS
- TLS1.3
计网一定要学好(我考研的科目就是计网和数据结构)
- 数据库
- 常见语法,增删改查,union,order by,group by等关键字
- Mysql相关知识,如information_schema
- sql注入的原理及防御
- 预编译的原理,预编译的局限,如何实现预编译等
- 计组 操作系统 (大厂笔试面试都有很多基础知识的考察)
进程与线程
死锁
用户态与内核态
Linux常用指令
Windows常用指令 - 密码学
- 对称密码,知晓对应的原理及优缺点,局限性
- 非对称密码,知晓对应的原理及优缺点,局限性
- 会话密钥交换
- HTTPS中TLS - 网络攻防技术
选好自己发展的方向,如可以从Web安全入手,逐渐往内网安全,Java安全,移动安全和云安全等方向深入。 - 编译原理
如果你学逆向,NLP,AI等方向,强烈建议你学好编译原理。 - 工作面试可能需要你去熟读熟知计算机基础知识
常见的八股知识库有- 小林coding
- JavaGuide
- 代码随想录等
不要盲目地背面经,应该有自己的理解,强烈建议自行整理一个计算机基础知识库,不断积累并深入知晓其中的原理,相信你会有很大的收获!
1.2 书籍分享
编程思想很重要,当你开始学习面向对象语言时,比如Java或C#,以下为我的建议:
- 精通一门编程语言Python Java(要求有一门完整的语言过完了语法以及独立完成一个项目)
Python: 信安建议学Python 当然只是建议。
我个人确实喜欢Java,而且最开始学习的面向对象语言也是Java
后来还学了C#(做图像处理,用EmguCV的库) - 信息安全专业科班,很多书籍可以参考武汉大学的计算机学院的书籍和课程
- 安全方面,如果感兴趣哪个方向,就去找相关的团队和知识库,再思考可以购买哪类型的书籍,比如我入门就购买了《白帽子讲Web安全》。
二、所有阶段都可以参加的事
2.1 LeetCode
程序员如果就业或者为了提高编程技能,还是要刷题的。
一定要学好数据结构,编程语言,计网等专业课。
2.2 实习
无论你处于大学阶段的哪个时期,大胆投递实习简历,大胆地了解技术栈,根据企业要求来学习,不断丰富你的知识技能,通过面试及实习加深对该岗位工作内容的了解,同时丰富个人简历,不断去接近自己的理想岗位。
2.3 CTF不是必经之路,但确实是加分项
学习几个方向,边刷CTF题边学习,譬如你是Web安全方向的可以刷Web的题目
尽量接触其他大学的CTF比赛(很多大学都有,有的甚至有自建网站,这个看你自己的信息检索能力了),如果打过CTF拿奖或者有经验的话,企业招聘和考研面试都有加分。
除了ctf,我强烈建议你不断阅读博客,不管是安全公众号,安全博客,各类知识库都好,了解最新的安全知识,并动手学习,从基本的漏洞靶场开始,复现漏洞,知晓原理,整理笔记,再不断实战累计经验,挖各类src漏洞。
三、专业方向及安全知识库
大学期间我的三个方向主要为1. NLP自然语言处理 2. CV计算机视觉 3. Web安全
综合来说如果是有兴趣的话,可以努力往算法方向发展,争取读研,大三寒暑假开始备考。
我硕士期间的研究方向为区块链,区块链安全,公钥密码学。
之后我会罗列一些相关的安全团队,你也可以从以下的安全知识库知晓现有的一些安全从业方向。
3.1 安全订阅:
3.2 安全知识库:
以下为St3py师傅整理的安全知识库列表:
-
综合攻防:
https://websec.readthedocs.io/zh/latest/
https://www.heresecurity.wiki/
https://blog.gm7.org/
https://gitbook.se7ensec.cn/
https://book.hacktricks.xyz/welcome/readme -
云安全知识库
https://wiki.teamssix.com/CloudService/
https://cloudsec.huoxian.cn/docs/articles
https://lzcloudsecurity.gitbook.io/yun-an-quan-gong-fang-ru-men/ -
内网、域
https://hideandsec.sh/books/
https://micro8.gitbook.io/micro8/
https://www.ired.team/
https://github.com/Ridter/Intranet_Penetration_Tips -
Web安全优质内容
https://github.com/CHYbeta/Web-Security-Learning
https://github.com/ffffffff0x/1earn -
Java Web安全
https://javasec.org/ -
安卓、app渗透
https://wizardforcel.gitbooks.io/lpad/content/
https://bbs.kanxue.com/homepage-905443.htm -
powershell渗透指南
https://rootclay.gitbook.io/powershell-attack-guide/ -
全网优秀的攻防武器工具
https://github.com/guchangan1/All-Defense-Tool -
集成了Vulhub、Peiqi、EdgeSecurity、0sec、Wooyun等开源漏洞库的知识库:
https://github.com/Threekiii/Vulnerability-Wiki -
各种在线工具、常用tips等的聚合:
https://gitbook.se7ensec.cn/
三、时间线(实验室项目、比赛等)
大一:参加的多个工作室笔试,都被刷了;
大二:学习图像处理,这期间受益良多,学习如何快速入门某个领域,研究生师兄对我影响颇深;
大三:大三大创省级,美赛优秀奖(惭愧) 。大三下学期开始准备考研,最好是提前9个月开始准备。
大四:考研
研一研二:出研究成果
研二下学期及研三上学期:
开始实习,实习收获了四个offer,最终去往两个大厂实习,分别是运营商及互联网大厂,主要做安全合规及渗透方面的工作。
最终,秋招收获数个offer。涉及安全运营,安全管理,渗透等岗位。
研三:毕业论文及春招,正在努力中,想去大厂。
四、 就业方向
安全就业岗位类型:
- 安全研发(AI算法)
- 安全开发(Java,Go,Python,安卓开发)
- 安全合规管理,安全运营(远程或甲方SOC)
- 安全服务(外派驻场)
- 渗透测试工程师(红蓝对抗)。
安全就业甲乙方:
- 乙方企业提供安全产品,安全服务,需要外派驻场工作等,例如奇安信,绿盟,深信服,启明星辰等等。去招聘网看。
- 甲方企业如各互联网大厂,BAT均有安全岗位,且种类众多;手机厂商,新能源汽车领域也可以重点关注。
之后我会对每个具体地方向出一份简介报告。欢迎关注我的公众号“打代码的猫”。