网络安全这条路怎么走?应该学些什么?

2023-11-03

我之前就写过一篇文章专门解答了这个问题。但是还是有很多小伙伴并不清楚这条路该怎么走下去!

不同于Java、C/C++等后端开发岗位有非常明晰的学习路线,网路安全更多是靠自己摸索,要学的东西又杂又多,难成体系。

网络安全虽然是计算机众多方向中的一支,但这个方向中,还可以进一步细分诸多细分方向,不同的方向要学的东西差别还是挺大的,所以需要分开讨论。

网络安全分支

其实在网络安全这个概念之上,还有一个更大的概念:信息安全。我们不去探讨二者在学术划分上的区别,如无特殊说明,文中将其视为一个概念,我们来看下实际工作方向上,有哪些细分路线。

img

在这个圈子技术门类中,工作岗位主要有以下三个方向:

安全研发
安全研究:二进制方向
安全研究:网络渗透方向

下面逐一说明一下。

安全研发

安全行业的研发岗主要有两种分类:

与安全业务关系不大的研发岗位
与安全业务紧密相关的研发岗位

你可以把网络安全理解成电商行业、教育行业等其他行业一样,每个行业都有自己的软件研发,网络安全作为一个行业也不例外,不同的是这个行业的研发就是开发与网络安全业务相关的软件。

既然如此,那其他行业通用的岗位在安全行业也是存在的,前端、后端、大数据分析等等,也就是属于上面的第一个分类,与安全业务关系不大的类型。这里我们重点关注下第二种,与安全业务紧密相关的研发岗位。

这个分类下面又可以分为两个子类型:

做安全产品开发,做防
做安全工具开发,做攻

安全行业要研发的产品,主要(但不限于)有下面这些:

防火墙、IDS、IPS
WAF(Web网站应用防火墙)
数据库网关
NTA(网络流量分析)
SIEM(安全事件分析中心、态势感知)
大数据安全分析
EDR(终端设备上的安全软件)
DLP(数据泄漏防护)
杀毒软件
安全检测沙箱

总结一下,安全研发的产品大部分都是用于检测发现、抵御安全攻击用的,涉及终端侧(PC电脑、手机、网络设备等)、网络侧。

开发这些产品用到的技术主要以C/C++、Java、Python三大技术栈为主,也有少部分的GoLang、Rust。

安全研发岗位,相对其他两个方向,对网络安全技术的要求要低一些(只是相对,部分产品的研发对安全技能要求并不低),甚至我见过不少公司的研发对安全一无所知。在这种情况下,如果除了基本的开发功底以外,对网络安全技术有所了解,自然会是你面试这些岗位时的加分项。

安全研发岗位,除了通用开发技能的要求以外,可以重点关注一下下面这些技术:

上面列举的只是最直接相关的部分,还需要有了解更多安全技术才能更好的开发产品,继续往下看。

二进制安全

二进制安全方向,这是安全领域两大技术方向之一。

这个方向主要涉及到软件漏洞挖掘、逆向工程、病毒木马分析等工作,涉及操作系统内核分析、调试与反调试、反病毒等技术。因为经常都是与二进制的数据打交道,所以久而久之用二进制安全来统称这个方向。

这个方向的特点是:需要耐得住寂寞

比不上安全研发可以有实实在在的产品输出,也比不上网络渗透方向听起来的狂拽炫酷,这个方向更多时间是在默默的分析和研究。

以漏洞挖掘为例,光是学习五花八门的攻击手法就需要花不少的时间。在这个领域,为了研究一个问题,可能花费数月甚至数年时间,这绝非一般人能坚持下来的。不仅如此,不是勤奋就可以成功,更多还要靠天分。

像腾讯几大安全实验室的掌门人,业界知名的TK教主、吴石这些人物,他们已经深谙漏洞挖掘的奥义,并将这门绝技融会贯通,做个梦都能想到新的玩法。不过像这样的天才实在是少之又少,绝大多数人都无法企及。

如果说程序员是苦逼的话,那二进制安全研究就是苦逼Plus。

如果看了这些你还是有勇气进入这个领域,那下面这些东西是你需要学的:

img

这个方向比起安全研发,不仅技术难度更大,提供这些岗位的公司也很少,且基本上分布于北上广深几个一线城市。

网络渗透

这个方向更符合于大部分人对“黑客”的认知,他们能够黑手机、黑电脑、黑网站、黑服务器、黑内网,万物皆可黑。

相比二进制安全方向,这个方向初期更容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。

不过,要想从脚本小子变成黑客大神,这个方向越往后,需要学习和掌握的东西就多了:

img

网络渗透的方向更偏向于“实战”,因此对技术在广度上有更高的要求,从网络硬件设备、网络通信协议、网络服务(web、邮件、文件、数据库等)、到操作系统、攻击手法等等都需要了解。更偏向于一个全能型的计算机专家,将各种技术融会贯通,以用于“实战”。

网络渗透方向的工作有下面几个方向:

安全服务,俗称乙方,这是最主要的一个方向,为甲方公司提供安全能力支持,如渗透测试,产品安全检测等。
安全能力建设,俗称甲方,国内稍微有点规模的公司都有自己的SRC(安全应急响应中心),也就是有自己的安全团队。
国家队:你懂的

学习路线

上面说完了三个大的技术方向后,下面来聊聊该怎么上路呢?下面说说我的看法。

img

第一阶段:基础操作入门,学习基础知识

入门的第一步是学习一些当下主流的安全工具课程并配套基础原理的书籍,一般来说这个过程在1个月左右比较合适。

在这个阶段,你已经对网络安全有了基本的了解。如果你学完了第一步,相信你已经在理论上明白了上面是sql注入,什么是xss攻击,对burp、msf、cs等安全工具也掌握了基础操作。这个时候最重要的就是开始打地基!

所谓的“打地基”其实就是系统化的学习计算机基础知识。而想要学习好网络安全,首先要具备5个基础知识模块:

1.操作系统

2.协议/网络

3.数据库

4.开发语言

5.常见漏洞原理

学习这些基础知识有什么用呢?

计算机各领域的知识水平决定你渗透水平的上限。

【1】比如:你编程水平高,那你在代码审计的时候就会比别人强,写出的漏洞利用工具就会比别人的好用;

【2】比如:你数据库知识水平高,那你在进行SQL注入攻击的时候,你就可以写出更多更好的SQL注入语句,能绕过别人绕不过的WAF;

【3】比如:你网络水平高,那你在内网渗透的时候就可以比别人更容易了解目标的网络架构,拿到一张网络拓扑就能自己在哪个部位,拿到以一个路由器的配置文件,就知道人家做了哪些路由;

【4】再比如你操作系统玩的好,你提权就更加强,你的信息收集效率就会更加高,你就可以高效筛选出想要得到的信息

第二阶段:实战操作

1.挖SRC

挖SRC的目的主要是讲技能落在实处,学习网络安全最大的幻觉就是觉得自己什么都懂了,但是到了真的挖漏洞的时候却一筹莫展,而SRC是一个非常好的技能应用机会。

2.从技术分享帖(漏洞挖掘类型)学习

观看学习近十年所有0day挖掘的帖,然后搭建环境,去复现漏洞,去思考学习笔者的挖洞思维,培养自己的渗透思维

3.靶场练习

自己搭建靶场或者去免费的靶场网站练习,有条件的话可以去购买或者报靠谱的培训机构,一般就有配套的靶场练习

第三阶段:参加CTF比赛或者HVV行动

推荐: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专家编程

我下面也给大家整理了一些网络安全的资料,大家不想一个一个去找的话,可以参考一下这些资料哈

部分内容展示

视频教程

img

书籍资料

img

SRC资料包&HW护网行动

img
这份完整版的学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

网络安全这条路怎么走?应该学些什么? 的相关文章

  • 信号浪涌保护器的原理和行业应用方案

    信号浪涌保护器 Surge Protective Device 简称SPD 是一种用于限制信号线路中瞬态过电压和分泄浪涌电流的防雷装置 主要用于保护各类信号线路及设备的防雷安全 信号浪涌保护器的原理是利用气体放电管 压敏电阻 齐纳二极管等非
  • Web 安全漏洞之 OS 命令注入

    什么是 OS 命令注入 上周我们分享了一篇 Web 安全漏洞之 SQL 注入 其原理简单来说就是因为 SQL 是一种结构化字符串语言 攻击者利用可以随意构造语句的漏洞构造了开发者意料之外的语句 而今天要讲的 OS 命令注入其实原理和 SQL
  • 5个步骤,教你瞬间明白线程和线程安全

    记得今年3月份刚来杭州面试的时候 有一家公司的技术总监问了我这样一个问题 你来说说有哪些线程安全的类 我心里一想 这我早都背好了 稀里哗啦说了一大堆 他又接着问 那你再来说说什么是线程安全 然后我就GG了 说真的 我们整天说线程安全 但是对
  • 前端必备的 web 安全知识手记

    前言 安全这种东西就是不发生则已 一发生则惊人 作为前端 平时对这方面的知识没啥研究 最近了解了下 特此沉淀 文章内容包括以下几个典型的 web 安全知识点 XSS CSRF 点击劫持 SQL 注入和上传问题等 下文以小王代指攻击者 话不多
  • WEB前端常见受攻击方式及解决办法总结

    一个网址建立后 如果不注意安全问题 就很容易被人攻击 下面讨论一下集中漏洞情况和放置攻击的方法 一 SQL注入 所谓的SQL注入 就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串 最终达到欺骗服务器执行恶意的SQL命
  • J2EE常见面试题(一)

    StringBuilder和StringBuffer的区别 String 字符串常量 不可变 使用字符串拼接时是不同的2个空间 StringBuffer 字符串变量 可变 线程安全 字符串拼接直接在字符串后追加 StringBuilder
  • 2024年金三银四网络安全考试试题

    2023年金三银四网络安全考试试题 1 关于数据使用说法错误的是 A 在知识分享 案例中如涉及客户网络数据 应取敏感化 不得直接使用 B 在公开场合 公共媒体等谈论 传播或发布客户网络中的数据 需获得客户书面授权或取敏感化 公开渠道获得的除
  • 「网络安全渗透」如果你还不懂CSRF?这一篇让你彻底掌握

    1 什么是 CSRF 面试的时候的著名问题 谈一谈你对 CSRF 与 SSRF 区别的看法 这个问题 如果我们用非常通俗的语言讲的话 CSRF 更像是钓鱼的举动 是用户攻击用户的 而对于 SSRF 来说 是由服务器发出请求 用户 日 服务器
  • 通俗易懂,十分钟读懂DES,详解DES加密算法原理,DES攻击手段以及3DES原理

    文章目录 1 什么是DES 2 DES的基本概念 3 DES的加密流程 4 DES算法步骤详解 4 1 初始置换 Initial Permutation IP置换 4 2 加密轮次 4 3 F轮函数 4 3 1 拓展R到48位 4 3 2
  • 远程控制软件安全吗?一文看懂ToDesk、RayLink、TeamViewer、Splashtop相关安全机制_raylink todesk

    目录 一 前言 二 远程控制中的安全威胁 三 国内外远控软件安全机制 ToDesk RayLink Teamviewer Splashtop 四 安全远控预防 一 前言 近期 远程控制话题再一次引起关注 据相关新闻报道 不少不法分子利用远程
  • 【网络安全】Facebook代码执行实现命令执行、敏感信息泄露

    部分网站开设编码练习 若安全配置不当 则代码执行将升级为操作系统命令注入 导致敏感信息泄露 本文仅分享命令执行相关知识 不承担任何由于传播 利用本文所发布内容而造成的任何后果及法律责任 未经许可 不可转载 文章目录 信息泄露 扩大危害 信息
  • 小白入门黑客之渗透测试(超详细)基本流程(内附工具)

    经常会收到小伙伴们这样的私信 为什么我总是挖不到漏洞呢 渗透到底是什么样的流程呢 所以全网最详细的渗透测试流程来了 渗透测试其实就是通过一些手段来找到网站 APP 网络服务 软件 服务器等网络设备和应用的漏洞 告诉管理员有哪些漏洞 怎么填补
  • 渗透测试常用工具汇总_渗透测试实战

    1 Wireshark Wireshark 前称Ethereal 是一个网络分包分析软件 是世界上使用最多的网络协议分析器 Wireshark 兼容所有主要的操作系统 如 Windows Linux macOS 和 Solaris kali
  • 网络安全基础知识面试题库

    1 基于路由器的攻击手段 1 1 源IP地址欺骗式攻击 入侵者从外部传输一个伪装成来自内部主机的数据包 数据包的IP是 内网的合法IP 对策 丢弃所有来自路由器外端口 却使用内部源地址的数据包 1 2 源路由攻击 入侵者让数据包循着一个不可
  • 你的服务器还安全吗?用户数据是否面临泄露风险?

    一系列严重的网络安全事件引起了广泛关注 多家知名公司的服务器遭到黑客挟持 用户的个人数据和敏感信息面临泄露的风险 这些事件揭示了网络安全的脆弱性和黑客攻击的威胁性 提醒着企业和个人加强对网络安全的重视 一 入侵案例 1 1 蔚来数据泄露 1
  • 全网最全(黑客)网络安全自学路线!熬夜两周整理(巨详细)

    学网络安全有什么好处 1 可以学习计算机方面的知识 在正式学习网络安全之前是一定要学习计算机基础知识的 只要把网络安全认真的学透了 那么计算机基础知识是没有任何问题的 操作系统 网络架构 网站容器 数据库 前端后端等等 可以说不想成为计算机
  • 网络安全(黑客)自学启蒙

    一 什么是网络安全 网络安全是一种综合性的概念 涵盖了保护计算机系统 网络基础设施和数据免受未经授权的访问 攻击 损害或盗窃的一系列措施和技术 经常听到的 红队 渗透测试 等就是研究攻击技术 而 蓝队 安全运营 安全运维 则研究防御技术 作
  • 【安全】mybatis中#{}和${}导致sql注入问题及解决办法

    0 问题 使用mybatis的时候遇到了 和 可能导致sql注入的问题 1 预先了解 1 底层通过prepareStatement对当前传入的sql进行了预编译 一个 被解析为一个参数占位符 解析之后会将String类型的数据自动加上引号
  • 【方法】如何把Excel“只读方式”变成可直接编辑?

    Excel在 只读方式 下 编辑后是无法直接保存原文件的 那如何可以直接编辑原文件呢 下面来一起看看看吧 如果Excel设置的是无密码的 只读方式 那在打开Excel后 会出现对话框 提示 是否以只读方式打开 如果想直接编辑文件 选择 否
  • 【安全-SSH】SSH安全设置

    今天发现自己的公有云服务器被攻击了 在这里插入图片描述 https img blog csdnimg cn direct cafdca04646f4b8b838400ec79ac282f png 然后查看了登录日志 如上图 ls sh va

随机推荐

  • 联想服务器如何恢复预装系统,Thinkcentre E73 E63z等预装Win7系统如何恢复出厂系统...

    故障现象 Thinkcentre系列机型 如E73 E63z等机型 随机预装win7系统如何恢复出厂系统的操作方法 解决方案 适应机型 E73 E73s E63z E93z等thinkcentre机型 适应操作系统 随机预装的Windows
  • spring boot判断需要跳转的页面文件是否存在

    在Spring Boot项目中 你可以使用ResourceLoader来判断要跳转的页面HTML路径文件是否存在 首先 你需要注入ResourceLoader到你的类中 可以使用 Autowired注解进行依赖注入 如下所示 Autowir
  • windows下搭载apache+svn服务器

    原文地址 http www cnblogs com ricksun articles 1564905 html 花了72小时 终于把 Subversion 初步掌握了 从一个连 什么是版本控制 都不知道的门外汉 到配置出精确至每目录访问的入
  • 关于AI如何实现短视频制作的方案仅供参考

    随着短视频平台的红火 短视频制作逐渐成为了大众娱乐的主流之一 同时也孕育出了巨大的商业价值 但是 短视频制作的过程需要消耗大量人力 物力 时间 并且需要调整画面的色彩 亮度 饱和度等因素 让整个过程显得较为复杂 因此 采用 AI 技术来实现
  • php-event 文档,@event

    event 描述 描述一个事件 语法 event event 概述 描述一个事件 event标签允许您描述一个可触发的事件 一个典型的事件是由对象定义的一组属性来表示 标签来定义事件的具体类型 您可以使用 fires标记 以表明这个种方法可
  • mysql isamchk_MySQL之myisamchk

    Description check and repair of MyISAM tables Used without options all tables on the command will be checked for errors
  • Microsemi 2017 Q2 招聘

    有意者发送简历到 dong zhang microsemi com Position Staff ASIC Design Engineer Business Unit ESC PerformanceStorage Location Shan
  • ajax循环输出,Ajax轮询 select循环输出

    弹出层 del color red addname color 337ab7 款项名目操作 vo name 删除 添加 addname on click function layer prompt title 添加款项名目 formType
  • 半导体学习——三极管正确理解

    学习三极管时候的问题 1 能量不是守恒的吗 为什么三极管会有放大电路的效果 2 既然是PNP型或者是NPN型 那么总有一个PN结是反向偏置的 那么电流是如何通过这个反向偏置的PN结到达集电极的呢 1 三极管的 放大 并不是把小电流变成大电流
  • paramiko.ssh_exception.SSHException: EOF during negotiation

    查找sftp server的位置 sudo find name sftp server usr lib openssh sftp server 然后查看ssh的配置文件 sudo vim etc ssh sshd config 找到配置文件
  • Java8 stream 对List<Map<String,Object>> 去重、过滤、排序等操作

    1 去重 List
  • 业务敏捷与SOA

    Web2 0催生广泛的蝴蝶效应 亚洲蝴蝶拍拍翅膀 将使美洲几个月后出现比狂风还厉害的龙卷风 蝴蝶效应触发了六十年代对混沌理论的广泛关注 过去十几年 由圣菲研究所发起的复杂性理 论的研究也在对传统经济学发起挑战 有位经济学家还专门写了本 蝴蝶
  • 找不到msvcp120dll,无法继续执行代码,怎么解决?

    当msvcp120 dll文件丢失或找不到时 会导致无法运行使用C 编写的程序 这可能是由于以下原因导致的 1 删除或移动文件 如果你不小心删除了或移动了msvcp120 dll文件 你将无法找到它并加载它 从而导致程序无法正常运行 2 文
  • 使用docker编排容器

    使用Dockerfile构建一个自定义的nginx 首先用docker拉一个nginx镜像 docker pull nginx 拉取完成后 编辑一个Dockerfile文件 vim Dockerfile 命令如下所示 FROM 后面跟的你的
  • Python---copy()、deepcopy()与赋值的区别

    copy 与deepcopy 之间的主要区别是python对数据的存储方式 首先直接上结论 深复制 即将被复制对象完全再复制一遍作为独立的新个体单独存在 所以改变原有被复制对象不会对已经复制出来的新对象产生影响 而等于赋值 并不会产生一个独
  • jmeter的安装与配置环境变量_win7系统

    一 jmeter篇 1 安装JDK ps JMeter是纯java应用程序 需要配置Java环境才能正常运行 JVM1 8或者更高版本 注 JMeter3 2版本 要求jdk1 8及以上 官网 https www oracle com te
  • linux rar解压命令

    一 简介 解压缩是一个常用的操作 在 Linux 中通常比较常用的是 tar 命令 zip 和 rar 命令则是 Windows 中比较常用 二 快速使用 1 tar 命令 语法 tar 主选项 辅选项 文件或目录 示例 压缩文件 file
  • 树莓派静态库和动态库的生成和使用

    静态库 编译时就加入库文件 运行快 但是更新版本操作较麻烦 动态库 程序运行时动态加载的库文件 供给调用程序使用 只调用一次 多个程序可使用 节省内存 因为APP里面没有库文件源码 升级时只要库的名字不变 函数名和参数不变 只是实现做了优化
  • SQL Server数据类型

    最小单位是bit 位 一个字节是8位 一般一个中文字符占据2字节 英文字符占据1个字节 var开头的会把尾部不足的部分去掉 不带var的会补上 n开头的存储一个字符占2个字节 采用Unicode字符集 tinyint 1个字节 8位 范围0
  • 网络安全这条路怎么走?应该学些什么?

    我之前就写过一篇文章专门解答了这个问题 但是还是有很多小伙伴并不清楚这条路该怎么走下去 不同于Java C C 等后端开发岗位有非常明晰的学习路线 网路安全更多是靠自己摸索 要学的东西又杂又多 难成体系 网络安全虽然是计算机众多方向中的一支