网络安全专业岗位详解+自学学习路线图
很多网安专业同学一到毕业就开始迷茫,不知道自己能去做哪些行业?其实网络安全岗位还是蛮多的,下面我会介绍一些网络安全岗位,大家可以根据自身能力与喜好决定放哪个方向发展。
渗透测试/Web安全工程师
主要是模拟黑客攻击,利用黑客技术,挖掘漏洞,提出修复建议;需要用到数据库、网络技术、编程技术、渗透技术等。
任职要求:
1.熟悉渗透测试步骤、方法、流程,具备独立开展渗透工作的能力;
2.熟练掌握WEB安全和漏洞挖掘,熟悉漏洞的原理、方法、利用手段及解决方案;
3.至少掌握一种编程语言,能编写漏洞检测或利用工具;
4.了解代码安全审计的流程、方法及主流代码审计工具的使用;
5.具备CISP/CISP-PTE/CISP-PTS等信息安全领域相关证书者优先。
安全运维/安全服务工程师
主要是对安全防御体系的运维和应急响应工作。能够熟练配置安全设备,具有极强日志分析能力。需精通渗透技术、安全设备原理,知识面要求广,实战能力强。
任职要求:
1.熟悉Owasp ****0漏洞原理、攻击、防御;
2.熟悉常见安全设备,并能够基于安全设备进行分析、处置;
3.熟悉linux等操作系统,能够开展应急响应工作;
4.熟悉安全评估流程;
5.熟悉各类安全工具,如漏洞扫描、基线检查等工具;
6.持有信息安全相关证书CISP、CISSP、CISA、ISO27001等优先考虑。
安全开发工程师
规划、设计并建立公司应用安全整体架构,识别应用系统在架构设计、开发测试、发布上线、运行维护各个阶段的安全风险,提出有效解决方案并落地实施,公司内部安全平台的设计与开发,持续开发迭代平台。
任职要求:
1.有IT技术从业工作经验;
2.熟练掌握Python/Go/C/C++等至少一种语言,和主流WEB框架;
3.了解Spring Boot、Spring MVC、Vue、JavaScript等常用的设计模式和开源框架,有扎实的开发或开发管理技术基础,自学能力强;
4.熟悉信息安全相关知识,具有国内外知名网络安全公司工作经验者优先;
5.具有CISD/CISP/CISSP等网络和信息安全相关认证证书者优先。
安全售前工程师
与客户沟通接洽,根据己方产品,设计技术方案,满足甲方安全需求。需精通服务器,网络技术,安全设备,攻防技术,并对安全趋势跟踪紧密,表达能力和文档能力。
任职要求:
1.具有良好的沟通表达能力与文档编写能力;
2.拥有信息安全相关从业经验,有网络安全或数据安全产品实施、维护经验,熟悉Linux常见操作令;
3.熟悉网络安全相关法律法规以及重要标准,如数安法、个保法、等保2.0、ISO27001等;
4.熟悉项目招投标过程,能根据招标书要求,独立编制投标书、参加招投标会,进行技术讲解和答疑;
5.加分条件:具有信息安全类公司技术研发工作经验;具有CISSP、CISA、CISP等信息安全类资质认证。
如果你现在对于网安还是半懂的状态,可以看看下面我给出的这个学习路线图,教你从零基础到到进阶如何学习
网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。
如果你把每周要学的内容精细化到这种程度,你还会担心学不会,入不了门吗,其实说到底就是学了两个月,但都是东学一下,西学一下,什么内容都是浅尝辄止,没有深入进去,所以才会有学了2个月,入不了门这种感受。 (友情提示:觉得有帮助的话可以收藏一下本篇,免得后续找不到)
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漏洞利用等等);
- 自己找站点/搭建测试环境进行测试,记住请隐藏好你自己;
- 思考渗透主要分为几个阶段,每个阶段需要做那些工作;
- 研究SQL注入的种类、注入原理、手动注入技巧;
- 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等;
- 研究XSS形成的原理和种类,具体学习方法可以Google/SecWiki;
- 研究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配置,特别注意配置安全和运行权限,;
- Linux环境下的LAMP的安全配置,主要考虑运行权限、跨目录、文件夹权限等;
- 远程系统加固,限制用户名和口令登陆,通过iptables限制端口;
- 配置软件Waf加强系统安全,在服务器配置mod_security等系统;
- 通过Nessus软件对配置环境进行安全检测,发现未知安全威胁。
7、脚本编程学习(4周)
- 选择脚本语言Perl/Python/PHP/Go/Java中的一种,对常用库进行编程学习。
- 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
- Python编程学习,学习内容包含:语法、正则、文件、网络、多线程等常用库,推荐《Python核心编程》,不要看完;
- 用Python编写漏洞的exp,然后写一个简单的网络爬虫;
- PHP基本语法学习并书写一个简单的博客系统,参见《PHP与MySQL程序设计(第4版)》、视频;
- 熟悉MVC架构,并试着学习一个PHP框架或者Python框架(可选);
- 了解Bootstrap的布局或者CSS;
8、源码审计与漏洞分析(3周)
- 能独立分析脚本源码程序并发现安全问题。
- 熟悉源码审计的动态和静态方法,并知道如何去分析程序;
- 从Wooyun上寻找开源程序的漏洞进行分析并试着自己分析;
- 了解Web漏洞的形成原因,然后通过关键字进行查找分析;
- 研究Web漏洞形成原理和如何从源码层面避免该类漏洞,并整理成checklist。
9、安全体系设计与开发(5周)
- 能建立自己的安全体系,并能提出一些安全建议或者系统架构。
- 开发一些实用的安全小工具并开源,体现个人实力;
- 建立自己的安全体系,对公司安全有自己的一些认识和见解;
- 提出或者加入大型安全系统的架构或者开发;
这个路线图已经详细到每周要学什么内容,学到什么程度,可以说我整理的这个We安全路线图对新人是非常友好的,除此之外,我还给团队小伙伴整理了相对应的学习资料
如果你需要的话,我也可以分享一部分出来(涉密部分分享不了),需要的可以在下面自取!
2024最新网络安全必备工具、学习、面试资料
相关文章:

网络安全专业岗位详解+自学学习路线图
很多网安专业同学一到毕业就开始迷茫,不知道自己能去做哪些行业?其实网络安全岗位还是蛮多的,下面我会介绍一些网络安全岗位,大家可以根据自身能力与喜好决定放哪个方向发展。 渗透测试/Web安全工程师 主要是模拟黑客攻击&#…...

mybatisPlus一个事务中切换数据源概述
概述 在多数据源的配置下,业务中经常遇到在一个被本地事务包裹的save/edi方法中需要查询另一个数据源的数据; 直接查询会提示table不存在,这是因为一个事务和一个mysql连接是绑定的,mysql的连接背后包含了数据库信息,…...

如何在Android手机上恢复已删除的视频?
有时,由于不同的原因,可能会发生意外的数据丢失灾难。 那么如何在Android手机内存或没有计算机的情况下恢复已删除的视频呢?本文将给你一个答案。 如何在Android上恢复已删除的视频? 不要惊慌!您可以在Android手机上恢…...

【项目实战】使用Github pages、Hexo如何10分钟内快速生成个人博客网站
文章目录 一.准备工作1.安装git2.安装node安装 cnpm 3.使用 GitHub 创建仓库,并配置 GitHub Pages0.Github Pages是什么1. 在 GitHub 上创建一个新仓库2. 创建您的静态网站3. 启用 GitHub Pages4. 等待构建完成5. 访问您的网站 二. Hexo1.什么是Hexo2.安装Hexo1. 安…...

大数据中服役新数据节点和退役旧节点步骤(hive,hadoop)
1- 节点上线操作 当要新上线数据节点的时候 ,需要把数据节点的名字追加在 dfs.hosts (1)关闭新增节点的防火墙 (2)在 NameNode 节点的 hosts 文件中加入新增数据节点的 hostname (3)在每个新…...

数论:不定方程的引入
研究的对象:不定方程 文章目录 研究的对象:不定方程不定方程引入:裴蜀定理证明:欧几里得算法证明:充分性证明:必要性证明: 战术总结: 不定方程引入: 不定方程࿰…...

数据中心法
数据中心法是实现词法分析器的结构化方法。通过设计主表和子表分开存储状态转移信息,实现词法分析器的控制逻辑和数据结构分离。 主要解决了状态爆炸、难以维护和复杂性的问题。 状态爆炸是指当状态和转移较多时,单一使用一个表来存储所有的信息的话会导…...

pdffactory pro8.0虚拟打印机(附注册码)
PdfFactory pro是一款非常受欢迎的PDF虚拟打印机,可以帮助用户将你的其他文档保存为PDF格式。请为用户提供打印/发送/加密等多种实用功能,以及一套完善的PDF打印方案。 使用说明 下载pdfFactory Pro压缩包,解压后,双击exe文件&am…...

处理用户输入
目录 一、传递参数 1.1 读取参数 1.2 读取脚本名 二、跟踪参数 三、移动参数 四、处理选项 4.1 查找选项 4.1.1 处理简单选项 4.1.2 分离参数和选项 4.1.3 处理含值的选项 五、选项标准化 5.1 使用 getopt 命令 5.1.1 命令格式 5.1.2 在脚本中使用getopt 5.2 使用…...

在装有centOS7的虚拟机上进行MySQL的安装部署
1.MySQL数据库介绍 1.开源的,跨平台的,社区版免费 2.支持多种存储引擎 3.支持多种主从复制 MySQL版本:5.6 5.7 8.0 https://www.mysql.com MySQL官网 2.安装MySQL5.7 1.配置MySQL仓库 2.安装MySQL服务端软件 3.启动MySQL服务 s…...

【vivado】debug相关时钟及其约束关系
一、前言 在xilinx fpga的degug过程中,经常出现由于时钟不对而导致的观测波形失败,要想能够解决这些问题需要了解其debug的组成环境以及之间的数据流。本文主要介绍debug过程中需要的时钟及各时钟之间的关系。 二、debug相关时钟 Vivado 硬件管理器使…...

什么是HTTP/2?
HTTP/2(原名HTTP 2.0)即超文本传输协议第二版,使用于万维网。HTTP/2主要基于SPDY协议,通过对HTTP头字段进行数据压缩、对数据传输采用多路复用和增加服务端推送等举措,来减少网络延迟,提高客户端的页面加载…...

【ChatGPT with Date】使用 ChatGPT 时显示消息时间的插件
文章目录 1. 介绍2. 使用方法2.1 安装 Tampermonkey2.2 安装脚本2.3 使用 3. 详细文档指引4. 反馈5. 未来计划6. 开源协议X. Changelog 1. 介绍 有时我们希望看到 ChatGPT 的消息时间,但 ChatGPT 并没有显示消息时间的功能。 本项目通过 Tampermonkey 开发…...

STM:TIM定时器——定时中断
文章目录 1、TIM定时器1.1定时器类型1.2定时中断的基本结构 2 定时器初始化2.2 初始化定时器的步骤2.3 TIM库函数2.4 配置TIM2.4.1 Timer.c2.4.2 Timer.c2.4.3 main.c 1、TIM定时器 定时器的功能可以对输入的时钟进行计数,并在计数值达到设定值时触发中断。 他包含…...
jetson tx2 nx实现在ros1中yolov5实现
亲测用以下链接实现功能。 安装ros。Ubuntu18.04安装ROS Melodic(详细,亲测安装完成,有清晰的截图步骤)_ubuntu 18 ros melodic-CSDN博客文章浏览阅读10w次,点赞835次,收藏3.8k次。这也是我在ubuntu里面安…...

【SpringBoot笔记43】SpringBoot应用程序集成spring-boot-admin监控工具
这篇文章,主要介绍SpringBoot应用程序如何集成spring-boot-admin监控工具。 目录 一、spring-boot-admin监控工具 1.1、创建admin-client客户端 (1)引入依赖...

与队列和栈相关的【OJ题】
✨✨✨专栏:数据结构 🧑🎓个人主页:SWsunlight 目录 一、用队列实现栈: 1、2个队列的关联起来怎么由先进先出转变为先进后出:(核心) 2、认识各个函数干嘛用的: …...

Unity编辑器扩展
Unity编辑器扩展是指为Unity引擎开发者提供的一种扩展功能,可以增强Unity编辑器的功能和效能。这些扩展可以帮助开发者提高工作效率,简化工作流程,并提供更好的用户体验。本文将介绍Unity编辑器扩展的基本概念、开发流程以及一些常见的应用示…...

【kettle】kettle访问数据库系列文章及视频地址(更新中)
1.一直以来想写下基于kettle的系列文章,作为较火的数据ETL工具,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。 2.这里整理了kettle访问数据库系列文章及视频地址整体链接,并及时补充、更新相关…...

共赴科技盛会“2024南京智博会”11月在南京国际博览中心召开
2024年,南京这座历史悠久的文化名城迎来了一场科技与智慧交织的盛会——南京智博会|南京国际智慧城市、物联网、大数据。本次博览会以智慧城市、人工智能、消费电子、物联网、大数据为主题,汇聚了全球各地的智能科技精英,共同探讨智慧城市建设…...

刷代码随想录有感(62):修建二叉搜索树
题干: 代码: class Solution { public:TreeNode* traversal(TreeNode* root, int low, int high){if(root NULL)return NULL;if(root->val < low)return traversal(root->right, low, high);if(root->val > high)return traversal(ro…...

AVL树的旋转
目录 1.平衡因子 2.旋转 a.节点定义 b.插入 插入 平衡因子更新 旋转 左单旋 右单旋 右左双旋 左右双旋 3.AVL树的验证 1.平衡因子 我们知道搜索二叉树有缺陷,就是不平衡,比如下面的树 什么是搜索树的平衡?就是每个节点的左右子树的…...

C++(动态规划之拆分整数)
其实我交上去都有点似懂非懂 题目:(343. 整数拆分 - 力扣(LeetCode)) 给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k > 2 ),并使这些整数的乘积最大化。 返回 …...

unix C之环境变量
什么是环境变量 每个进程都有自己的一张环境变量表,表中的每个条目都是形如 keyvalue 的键值对形式的环境变量。 进程可以通过环境变量访问计算机资源。 在终端下输入env命令,可以查看环境变量列表。 通过echo $name 可以查看某个环境变量的值。 环…...

Flutter实战记录-协作开发遇到的问题
一.前言 Android项目使用了混合架构,部分模块使用Flutter进行开发。在电脑A上开发的项目提交到git仓库,电脑B拉取后进行操作,遇到两个问题,特此做一下记录; 二.问题A Settings file ‘D:\xxx\settings.gradle’ line…...

Linux 安装JDK和Idea
安装JDK 下载安装包 下载地址: Java Downloads | Oracle (1) 使用xshell 上传JDK到虚拟机 (2) 移动JDK 包到/opt/environment cd ~ cd /opt sudo mkdir environment # 在 /opt下创建一个environment文件夹 ls# 复制JDK包dao /opt/environment下 cd 下载 ls jd…...

c#绘制渐变色的Led
项目场景: c#绘制渐变色的button using System; using System.ComponentModel; using System.Drawing; using System.Drawing.Drawing2D; using System.Windows.Forms; using static System.Windows.Forms.AxHost;namespace WindowsFormsApp2 {public class Gradie…...

LifeCycle之ProcessLifeCycleOwner
问题:想要知道应用程序当前处在前台、后台、或从后台回到前台,想要知道应用的状态, LifeCycle提供了ProcessLifeCycleOwner的类,方便我们知道整个应用程序的生命周期情况 ProcessLifeCycleOwner 使用方法 1.首先添加依赖 imple…...

C++ | Leetcode C++题解之第79题单词搜索
题目: 题解: class Solution { public:bool exist(vector<vector<char>>& board, string word) {rows board.size();cols board[0].size();for(int i 0; i < rows; i) {for(int j 0; j < cols; j) {if (dfs(board, word, i, …...

如何通过PHP语言实现远程控制空调
如何通过PHP语言实现远程控制空调呢? 本文描述了使用PHP语言调用HTTP接口,实现控制空调,通过不同规格的通断器,来控制不同功率的空调的电源。 可选用产品:可根据实际场景需求,选择对应的规格 序号设备名称…...