作为从16年接触网络安全的小白,谈谈零基础如何入门网络安全,有不对的地方,请多多指教。
这些年最后悔的事情莫过于没有把自己学习的东西积累下来形成一个知识体系。
后续我也会陆续的整理网络安全的相关学习资料及文章,与大家一起探讨学习。
如何入门
简单了解网络安全
网络安全就是指的确保网络系统中的数据不被别人破坏,而网安工程师就是涉及程序来维护网络安全。
网安方向有很多职位,比如安全产品工程师,安全分析师,数据恢复工程师,网络架构工程师,安全编程工程师,以及网络集成工程师等。
工作内容主要包括: 安全评测,风险评估,安全服务,防火墙,入侵检测,渗透测试,云防护,系统防护,代码审计等
入门路线
了解电脑知识
这个够基础了吧,包括windwos基础,Linux基础,标记语言,代码js基础,网络基础,数据库及虚拟机使用等
可以简单的学会抓包,知道抓到的包在说什么。
入手web安全
web架构,web优化及安全防护,学点Python能看懂代码,网站开发也可以学习一些,这里的都是一些基础,不用太深入。
其次想要进入web安全领域,还要学会web渗透,OWASP top 10 等常见的web漏洞原理及利用方式,包括SQL注入,XSS攻击,webshell木马编写,提权,命令执行等。
熟悉基本的概念: SQL 注入,上传,XSS,CSRF,一句话木马等
推荐书籍《 精通脚本黑客》,很老的书了,而且也有一些错误,但是对于入门来说足够。
到这里你就算基本上入门了。
后续学习
攻防演练,等保测评,风险评估,这些都是在你入门后学习的。
熟悉渗透相关的工具:
AWVS ,sqlmap.Burp,nessus,chopper,namp,Appscan 等工具
具体教材可以在SecWiki上搜索。
广义上说,你作为一个网络安全师需要学习的内容如下:
通信协议:TCP、HTTP、HTTPs
操作系统:Linux、Windows
服务架设:Apache、Nginx、LAMP、LNMP、MVC
架构数据库:MySQL、SQL Server、Oracle
编程语言:前端语言(HTML/CSS/JavaScript)、后端语言(PHP/Java/ASP/Python)
但我们通常学习20%的核心内容来完成80%的工作,所以压缩一下:
安全理论:OWASP TOP 10 、PETS、ISO 27001
后端安全:SQL注入、文件上传、Webshell(木马)、文件包含、命令执
前端安全:XSS跨站脚本攻击、CSRF跨站请求伪造…
安全产品:Web漏洞扫描(Burp/WVS/Appscan)、WAF(Web应用防火墙)、IDS/IPS(Web入侵防御)、Web主机防护
学习这些基础知识有什么用呢?
计算机各领域的知识水平决定你渗透水平的上限。
【1】比如:你编程水平高,那你在代码审计的时候就会比别人强,写出的漏洞利用工具就会比别人的好用;
【2】比如:你数据库知识水平高,那你在进行SQL注入攻击的时候,你就可以写出更多更好的SQL注入语句,能绕过别人绕不过的WAF;
【3】比如:你网络水平高,那你在内网渗透的时候就可以比别人更容易了解目标的网络架构,拿到一张网络拓扑就能自己在哪个部位,拿到以一个路由器的配置文件,就知道人家做了哪些路由;
【4】再比如你操作系统玩的好,你提权就更加强,你的信息收集效率就会更加高,你就可以高效筛选出想要得到的信息
1.挖SRC
挖SRC的目的主要是讲技能落在实处,学习网络安全最大的幻觉就是觉得自己什么都懂了,但是到了真的挖漏洞的时候却一筹莫展,而SRC是一个非常好的技能应用机会。
2.从技术分享帖(漏洞挖掘类型)学习
观看学习近十年所有0day挖掘的帖,然后搭建环境,去复现漏洞,去思考学习笔者的挖洞思维,培养自己的渗透思维
3.靶场练习
自己搭建靶场或者去免费的靶场网站练习,有条件的话可以去购买或者报靠谱的培训机构,一般就有配套的靶场练习
推荐:CTF比赛
CTF有三点:
【1】接近实战的机会。现在网络安全法很严格,不像之前大家能瞎搞
【2】题目紧跟技术前沿,而书籍很多落后了
【3】如果是大学生的话,以后对找工作也很有帮助
如果你想打CTF比赛,直接去看赛题,赛题看不懂,根据不懂的地方接着去看资料
推荐:HVV(护网)
HVV有四点:
【1】也能极大的锻炼你,提高自身的技术,最好是参加每年举行的HVV行动
【2】能认识许多圈内的大佬,扩大你的人脉
【3】HVV的工资也很高,所以参加的话也能让你赚到不少钱
【4】和CTF比赛一样如果是大学生的话,以后对找工作也很有帮助
学习资料的推荐
书单推荐:
计算机操作系统:
【1】编码:隐藏在计算机软硬件背后的语言
【2】深入理解操作系统
【3】深入理解windows操作系统
【4】Linux内核与实现
编程开发类:
【1】 windows程序设计
【2】windwos核心变成
【3】Linux程序设计
【4】unix环境高级变成
【5】IOS变成
【6】第一行代码Android
【7】C程序语言设计
【8】C primer plus
【9】C和指针
【10】C专家编程
【11】C陷阱与缺陷
【12】汇编语言(王爽)
【13】java核心技术
【14】java编程思想
【15】Python核心编程
【16】Linuxshell脚本攻略
【17】算法导论
【18】编译原理
【19】编译与反编译技术实战
【20】代码整洁之道
【21】代码大全
【22】TCP/IP详解
【23】Rootkit : 系统灰色地带的潜伏者
【24】黑客攻防技术宝典
【25】加密与解密
【26】C++ 反汇编与逆向分析技术揭秘
【27】web安全测试
【28】白帽子讲web安全
【29】精通脚本黑客
【30】web 前端黑客技术揭秘
【31】程序员的应用
【32】英语写作手册:风格的要素
常见的网络安全及论坛
看雪论坛
安全课
安全牛
安全内参
绿盟
先知社区
XCTF联盟
我下面也给大家整理了一些网络安全的资料,大家不想一个一个去找的话,可以参考一下这些资料哈
视频教程
SRC&黑客技术文档
黑客工具合集