一、怎样规划网络安全
如果你是一个安全行业新人,我建议你先从网络安全或者Web安全/渗透测试这两个方向先学起,
一、是市场需求量高
二、则是发展相对成熟入门比较容易
值得一提的是,学网络安全,是先网络后安全;学Web安全,也是先Web再有安全。
安全不是独立存在的,而是建立在其他技术基础之上的上层应用技术。脱离了这个基础,就很容易变成纸上谈兵,变成“知其然,不知其所以然”,在安全的职业道路上也很难走远。
当然学到一定程度、或者有了一定工作经验,不同方向的技术耦合会越来越高,各个方向都需要会一点。
根据以上网络安全技能表不难看出,网络安全需要接触的技术还远远很多,
常见的技能需要学习:
二、自学网络安全学习的误区和陷阱
1.片面追求工具使用
- 误区:过度依赖现成的安全工具,而不深入理解其背后的原理和技术。
- 陷阱:只学会操作工具而无法应对新的、复杂的安全问题,一旦工具无法解决,就会陷入困境。
2.忽视基础知识
- 误区:急于学习高级的攻击和防御技术,忽略了计算机基础、网络基础、操作系统等基础知识。
- 陷阱:导致知识体系不牢固,在面对实际问题时缺乏系统的分析和解决能力。
3.缺乏实践
- 误区:仅仅阅读理论知识,没有进行实际的操作和实验。
- 陷阱:无法真正掌握技术,理论与实际脱节,难以应对实际的网络安全场景。
4.不注重法律和道德规范
- 误区:认为在自学过程中可以随意尝试攻击他人系统来练习。
- 陷阱:可能会触犯法律,给自己带来严重的后果。
5.盲目跟风学习热门技术
- 误区:看到某种技术热门就马上投入学习,而不考虑自身的基础和实际需求。
- 陷阱:无法形成系统的知识体系,对技术的理解也可能只停留在表面。
6.独自学习,缺乏交流
- 误区:完全依靠自己摸索,不与其他学习者或行业专家交流。
- 陷阱:进步缓慢,容易走入死胡同,错过最新的行业动态和最佳实践。
7.没有系统的学习计划
- 误区:学习内容和顺序混乱,想到什么学什么。
- 陷阱:知识碎片化,难以整合和深入,影响学习效果和效率。
8.轻易相信不可靠的资源
- 误区:从来源不明或质量不可靠的渠道获取学习资料和信息。
- 陷阱:可能学到错误或过时的知识,导致学习方向偏差
为了避免这些误区和陷阱,在自学网络安全时,要制定合理的学习计划,注重基础知识,多实践,遵守法律法规,积极参与交流,筛选可靠的学习资源。
三、学习网络安全的一些前期准备
1.硬件选择
经常会问我“学习网络安全需要配置很高的电脑吗?”答案是否定的,黑客用的电脑,不需要什么高的配置,只要稳定就行.因为黑客所使用的一些程序,低端CPU也可以很好的运行,而且不占什么内存.还有一个,黑客是在DOS命令下对进行的,所以电脑能使用到最佳状态!所以,不要打着学习的名义重新购买机器...
2.软件选择
很多人会纠结学习黑客到底是用Linux还是Windows或者是Mac系统,Linux虽然看着很酷炫,但是对于新人入门并不友好。Windows系统一样可以用虚拟机装靶机来进行学习。
至于编程语言,首推Python,因为其良好的拓展支持性。当然现在市面上很多网站都是PHP的开发的,所以选择PHP也是可以的。其他语言还包括C++、Java...
很多朋友会问是不是要学习所有的语言呢?答案是否定的!引用我上面的一句话:学习编程只是工具不是目的,我们的目标不是成为程序员。
(这里额外提一句,学习编程虽然不能带你入门,但是却能决定你能在网络安全这条路上到底能走多远,所以推荐大家自学一些基础编程的知识。
3.语言能力
我们知道计算机最早是在西方发明出来的,很多名词或者代码都是英文的,甚至现有的一些教程最初也是英文原版翻译过来的,而且一个漏洞被发现到翻译成中文一般需要一个星期的时间,在这个时间差上漏洞可能都修补了。而且如果不理解一些专业名词,在与其他黑客交流技术或者经验时也会有障碍,所以需要一定量的英文和黑客专业名词(不需要特别精通,但是要能看懂基础的)。
比如说:肉鸡、挂马、shell、WebShell等
四、网络安全学习路线
如果你真的想通过自学的方式入门web安全的话,那建议你看看下面这个学习路线图,具体到每个知识点学多久,怎么学,自学时间共计半年左右,亲测有效(文末有惊喜):
1、Web安全相关概念(2周)
熟悉基本概念(SQL注入、上传、XSS、CSRF、一句话木马等)。 通过关键字(SQL注入、上传、XSS、CSRF、一句话木马等)进行Google/SecWiki; 阅读《精通脚本黑客》,虽然很旧也有错误,但是入门还是可以的; 看一些渗透笔记/视频,了解渗透实战的整个过程,可以Google(渗透笔记、渗透过程、入侵过程 等);
2、熟悉渗透相关工具(3周)
熟悉AWVS、sqlmap、Burp、nessus、chopper、nmap、Appscan等相关工具的使用。 了解该类工具的用途和使用场景,先用软件名字Google/SecWiki; 下载无后门版的这些软件进行安装; 学习并进行使用,具体教材可以在SecWiki上搜索,例如:Brup的教程、sqlmap; 待常用的这几个软件都学会了可以安装音速启动做一个渗透工具箱;
3、渗透实战操作(5周)
掌握渗透的整个阶段并能够独立渗透小型站点。 网上找渗透视频看并思考其中的思路和原理,关键字(渗透、SQL注入视频、文件上传入侵、数据库备份、dedecms漏洞利用等等); 自己找站点/搭建测试环境进行测试,记住请隐藏好你自己; 思考渗透主要分为几个阶段,每个阶段需要做那些工作,例如这个:PTES渗透测试执行标准; 研究SQL注入的种类、注入原理、手动注入技巧; 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架; 研究XSS形成的原理和种类,具体学习方法可以Google/SecWiki,可以参考:XSS; 研究Windows/Linux提权的方法和具体使用,可以参考:提权; 可以参考: 开源渗透测试脆弱系统;
4、关注安全圈动态(1周)
关注安全圈的最新漏洞、安全事件与技术文章。 通过SecWiki浏览每日的安全技术文章/事件; 通过Weibo/twitter关注安全圈的从业人员(遇到大牛的关注或者好友果断关注),天天抽时间刷一下; 通过feedly/鲜果订阅国内外安全技术博客(不要仅限于国内,平时多注意积累),没有订阅源的可以看一下SecWiki的聚合栏目; 养成习惯,每天主动提交安全技术文章链接到SecWiki进行积淀; 多关注下最新漏洞列表,推荐几个:exploit-db、CVE中文库、Wooyun等,遇到公开的漏洞都去实践下。 关注国内国际上的安全会议的议题或者录像,推荐SecWiki-Conference。
5、熟悉Windows/Kali Linux(3周)
学习Windows/Kali Linux基本命令、常用工具; 熟悉Windows下的常用的cmd命令,例如:ipconfig,nslookup,tracert,net,tasklist,taskkill等; 熟悉Linux下的常用命令,例如:ifconfig,ls,cp,mv,vi,wget,service,sudo等; 熟悉Kali Linux系统下的常用工具,可以参考SecWiki,《Web Penetration Testing with Kali Linux》、《Hacking with Kali》等; 熟悉metasploit工具,可以参考SecWiki、《Metasploit渗透测试指南》。
6、服务器安全配置(3周)
学习服务器环境配置,并能通过思考发现配置存在的安全问题。 Windows2003/2008环境下的IIS配置,特别注意配置安全和运行权限,可以参考:SecWiki-配置; Linux环境下的LAMP的安全配置,主要考虑运行权限、跨目录、文件夹权限等,可以参考:SecWiki-配置; 远程系统加固,限制用户名和口令登陆,通过iptables限制端口; 配置软件Waf加强系统安全,在服务器配置mod_security等系统,参见SecWiki-ModSecurity; 通过Nessus软件对配置环境进行安全检测,发现未知安全威胁。
7、脚本编程学习(4周)
选择脚本语言Perl/Python/PHP/Go/Java中的一种,对常用库进行编程学习。 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime,一些Sublime的技巧:SecWiki-Sublime; Python编程学习,学习内容包含:语法、正则、文件、网络、多线程等常用库,推荐《Python核心编程》,不要看完; 用Python编写漏洞的exp,然后写一个简单的网络爬虫,可参见SecWiki-爬虫、视频; PHP基本语法学习并书写一个简单的博客系统,参见《PHP与MySQL程序设计(第4版)》、视频; 熟悉MVC架构,并试着学习一个PHP框架或者Python框架(可选); 了解Bootstrap的布局或者CSS,可以参考:SecWiki-Bootstrap;
五、补全知识框架(学习内容)
在整理好自己的知识框架,知道该怎么学习之后,下一步就是往框架里面填充内容了。 此时我们的选择也可以很多,比如CSDN,比如知乎,再比如B站,都有很多人在分享自己的学习资料,但我觉得这里存在的很大一个问题就是不连贯、不完善,大部分免费分享的教程,都是东一块西一块,前言不搭后语,学着学着就蒙了,这是我自学之后的亲身感受。
点赞收藏评论区留言“已关注 求 ”!都可以分享给大家!大家注意看后台消息就行!
给小伙伴们的意见是想清楚,自学网络安全没有捷径,相比而言系统的网络安全是最节省成本的方式,因为能够帮你节省大量的时间和精力成本。坚持住,既然已经走到这条路上,虽然前途看似困难重重,只要咬牙坚持,最终会收到你想要的效果。
点赞收藏评论区留言“已关注 求 ”!都可以分享给大家!大家注意看后台消息就行!
六、网络安全前景
人才需求量很大的,市场空缺大,像物联网网应用的普及、5G的普及等,都会增加网络安全岗位的需求。
从长久来看,网络安全只会越来越火,智能学科的崛起必定带动新型的网络安全技术发展。
网络安全未来三大发展方向:
网络安全(安全等保)
云原生安全 AI
人工智能在网络安全的运用( ChatGPT )
发展空间大:
在企业内部,网络工程师基本处于"双高"地位,即地位高、待遇高。就业面广,一专多能,实践经验适用于各个领域。
增值潜力大:
掌握企业核心网络架构、安全技术,具有不可替代的竞争优势。职业价值随着自身经验的丰富以及项目运作的成熟,升值空间一路看涨。
职业寿命长:
网络工程师工作的重点在于对企业信息化建设和维护,其中包含技术及管理等方面的工作,工作相对稳定,随着项目经验的不断增长和对行业背景的深入了解,会越老越吃香。
七、书籍推荐
书单推荐:
计算机操作系统:
【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】英语写作手册:风格的要素
特别声明:
此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。