成为一名网络安全工程师,你应该学习什么?
这是我的建议如何成为网络安全工程师,你应该按照下面顺序学习。
简要说明第一件事你应该学习如何编程,我建议首先学python,然后是java。
(非必须)接下来学习一些算法和数据结构是很有帮助的,它将帮助你更好的编程。
一旦你学会如何编程,你应该学习如何用 c 编程。重点关注以下话题:结构体、指针的算术运算、传值调用和引用调用、字符串IO基础、宏、条件编译、程序结构。
学习 UNIX 操作系统基础:Unix shells、shell 变量、文件系统、通用Unix 命令、Shell 脚本编程、Unix Shell 环境。
(非必须)学习汇编语言。理解汇编语言如何转化为机器码再转化为可被计算机硬件执行的程序。并且你应该学习如何分析汇编程序,这对逆向工程很有用。
理解计算机操作系统及架构、进程管理、内存管理、文件系统接口和实现、IO 系统、分布式系统、计算机网络、java 网络编程、防护与安全。理解系统管理员、计算机系统基础组成,对计算机主要组件和结构有宏观的认识。
进程管理:进程、线程、进程同步、CPU 调度、java 多线程编程,以及死锁。内存管理:主内存和虚拟内存。
体验不同操作系统例如 win unix linux 命令行与GUI 模式。
(非必须)学习密码学也是很有用的,密码学中的数学也很有用。传统对称密钥,现代对称密钥、RSA、数字签名等等,应用层安全:PGP、S/MIME
理解计算机网络和Internet 应用层:Web、HTTP、FTP、DNS和socket通信。传输层:UDP、TCP、和拥塞控制等。另一些不错的话题:网络管理、WireShark网络流量分析、渗透测试和网络安全、你也可以深入计算机和网络取证、漏洞和恶意软件分析、低层次协议包分析、理解软件工程。理解软件开发阶段,包括需求、文档、设计、编码、测试和维护,软件开发模型的优缺点。
在学术之外,也有其它的比较好的事情:参加夺旗战、在有一定基础参加安全会议,经常访问安全网站,在你学了一些网站相关知识,尝试建立属于自己的网站。
这个指导可能比其他人给出的要难一些,但当你想成为正义黑客或者是渗透测试专家时,这绝对是有必要的,你不能从脚本小子变为正义黑客,并且我写的这些没有我的知识量的一半,我知道我在做什么。
网络安全学习路线 1.1中华人民共和国网络安全法网络安全学习普法了解并介绍《网络安全法》
《全国人大常委会关于维护互联网安全的决定》《中华人民共和国计算机信息系统安全保护条例( 2011 年修正)》《中华人民共和国计算机信息网络国际联网管理暂行规定》《计算机信息网络国际联网安全保护管理办法》《互联网信息服务管理办法》《计算机信息系统安全专用产品检测和销售许可证管理办法》《通信网络安全防护管理办法》《国家安全法》 1.2LINUX基础运维 LINUX 系统运维基础LINUX 服务管理DOCKER 安装使用LINUX 安全加固 1.3LINUX网络管理 网络必备基础物理层数据链路层与交换机网络模型 OSI TCP 对等传输虚拟局域网 VLAN静态路由与配置网络地址转换 NAT访问控制列表 ACLIP 协议与 IP 地址分类子网掩码网关子网划分 1.4HTML与JAVASCRIPT HTML 入门?为什么要学习 HTMLHTML 文档格式、实体详解HTML 标签、框架、表格、列表、表单、图像、背景讲解JAVASCRIPT 简介JAVASCRIPT 特点JAVASCRIPT 组成如何在网页中写 JAVASCRIPT 1.5PHP入门 PHP 环境搭建、编写代码工具选择PHP 基础语法( 函数、变量、常量、注释、数据类型、流程控制、算术运算)PHP 流程控制(IF 语句 多种嵌套 SWITCH 语句 WHILE 循环 FOR 循环GOTO 循环)PHP 函数PHP 正则表达式PHP 文件上传、PHP 错误处理PHP 操作 MYSQL 数据库PHP 会话管理和控制 1.6MYSQL 数据库介绍、分类、安装、配置、登录、连接等数据库基本操作 创建、查看、选中、查库表、删除数据库等相关命令行操作数据字段操作 创建 修改 增加 调整字段顺序 排序 删除等字段命令行操作* 数据库表操作创建 查看 选中删除数据库表等相关个命令行操作数据类型 整型、浮点、字符、时间、符合型等字符集合索引增删改查之更新记录、数据库权限操作 1.7JAVA入门 1.8密码学 – 穿越密码的迷宫 剖析基本概念 - 什么是编码?什么是加密与解密寻找银弹 - 有没有无法破解的密码通过 JAVA 代码入门加密与解密JAVA 代码解析对称密码 - DES AESJAVA 代码解析公钥密码 - RSA EIGAMAL 椭圆曲线 ECCJAVA 代码解析非对称密钥生成器JAVA 代码解析密钥规范管理JAVA 代码解析数字签名数字证书相关管理JAVA 代码解析安全套接字简单并常用的 BASE64文件校验 - 循环冗余校验 CRC打破出口限制 - 使用 BOUNCY CASTLE 替代默认算法实现编码转化辅助工具 - COMMONS CODEC【一一帮助网络安全提升点我一一】 ①网络安全学习路线 ②20份渗透测试电子书 ③安全攻防357页笔记 ④50份安全攻防面试指南 ⑤安全红队渗透工具包 ⑥网络安全必备书籍 ⑦100个漏洞实战案例 ⑧安全大厂内部视频资源 ⑨历年CTF夺旗赛题解析
第二部分:渗透与攻防 2.1安全基础与社会形势 2.2KALI常用工具的渗透与防御 MSF 问题解答以及 MSF 初识MSF 完美升级以及目录结构解读MSF 基础命令MSF 之 MS08-067 MS17-010MSF 之 CVE-2017-8464 震网三代MSF 之后续权限渗透MSF 之 SAMBA 服务漏洞攻击还原 2.3SQL注入的渗透与防御 SQL 注入-什么是 SQL 注入SQL 注入-产生 SQL 注入的原理SQL 注入-SQL 注入带来的危害有哪些SQL 注入-GET 型 SQL 注入漏洞是什么SQL 注入-工具以及靶场SQL 注入-POST 型 SQL 注入是什么SQL 注入-判断 SQL 注入点SQL 注入-回归测试SQL 注入-注入类型SQL 注入-TIME-BASED 基于时间的盲注SQL 注入-基于 USER-AGENT 注入SQL 注入-基于 USER-AGENT 注入练习SQL 注入-ERROR-BASED 基于报错注入SQL 注入-STACKED QUERIES 基于堆叠注入SQL 注入-BYPASS 混淆绕过SQL 注入-BYPASS WAF 绕过SQL 注入-BYPASS WAF 绕过总结SQL 注入- REMOTE CODE EXECUTION 远程代码执行SQL 注入-SQLMAP 的使用SQL 注入-SQLMAP 原理以及源码阅读SQL 注入-SQLMAP 实战 1-COOKIE 注入SQL 注入-SQLMAP 实战 2-USER-AGENT 注入SQL 注入-SQLMAP 实战 3-手动注入与 SQLMAP 对比SQL 注入-SQLMAP 实战 4-脱库SQL 注入-SQLMAP 高级应用SQL 注入-如何防御 SQL 注入 2.4XSS相关渗透与防御 XSS 基本概念和原理介绍反射型 储存型 DOM 型实战XSS 钓鱼及盲打演示XSS 平台搭建及 COOKIE 获取反射型 XSS( POST) 获取用户密码XSS 获取键盘记录XSS 防御绕过XSS 绕过之 HTMLSPECIALCHARS()函数XSS 安全防御 2.5上传验证渗透与防御 文件上传-基础文件上传-场景文件上传-漏洞原理文件上传-上传文件代码函数原理&上传图片拦截文件上传-漏洞带来的危害有哪些文件上传-一句话木马文件上传-后缀客户端验证-JS 禁用&BURP 改包&本地提交文件上传-后缀黑名单验证-大小写&加空格&符号点&::$DATA文件上传-后缀白名单验证-MIME 修改&%00 截断&0X00 截断文件上传-后缀变异性验证-FINECMS 任意文件上传文件上传-文件头变异验证-验证 MIME文件上传-二次渲染文件上传-代码逻辑&&条件竞争文件上传-格式变异&中间接解析&.HTACCESS文件上传-如何避免文件上传漏洞 2.6文件包含渗透与防御 中间日志包含绕过PHP 包含读写文件STRREPLBE 函数绕过包含截断绕过 FNM_TBH 函数绕过文件包含漏洞防范措施 2.7CSRF渗透与防御 CSRF 漏洞概述及原理;CSRF 快速拖库攻击还原;CSRF 管理员密码修改还原;CSRF 进行地址修改及钓鱼攻击还原;CSRF 漏洞安全防范 2.8 SSRF渗透与防御 SSRF 原理及寻找方法;SSRF 攻防实战及防范方法; 2.9 XXE渗透与防御 XXE 基础知识;XXE CTF 考题XXE CTF 考题测试以及漏洞修复XXE 漏洞攻防测试 2.10 远程代码执行渗透与防御 远程代码执行原理介绍PHP 远程代码执行常用函数演示PHP 反序列化原理和案例演示WEBLOGIC 反序列化攻防过程还原STRUTS2 命令执行攻防过程还原JBOSS 反序列化攻防过程还原远程命令执行漏洞修复 2.11 反序列化渗透与防御 反序列化-什么是反序列化操作反序列化-为什么会出现安全漏洞反序列化-PHP 反序列化漏洞如何发现反序列化-PHP 反序列化漏洞如复现反序列化-CMS 审计-序列化考点反序列化-JAVA 反序列化漏洞发现利用点反序列化-JAVA 反序列化考点-真实环境&CTF反序列化-JAVA 反序 WEBGOAT&YSOSERIAL&PAYLOAD反序列化-如何避免反序列化漏洞 2.12 逻辑相关渗透与防御 逻辑漏洞概述;如何挖掘逻辑漏洞;交易支付中的逻辑问题;密码修改逻辑漏洞;个人项目逻辑漏洞分享;逻辑漏洞修复; 2.13 暴力猜解与防御 C/S 架构暴力猜解( 常用网络、系统、数据库、第三方应用密码爆破)* * B/S 架构暴力猜解( 弱口令)HYDRA 安装与使用暴力猜解安全防范