如何成为一名职业网络安全专家?
要成为一名优秀的专业安全研究人员,需要广泛的 IT 技术和技巧知识。真正掌握这些技能是成为合格专家的基础。我将所需技能分为三类:基本技能、中级技能和无形技能,帮助你从入门到进阶。
基本技能
这些是每个安全从业者在尝试深入之前都应该了解的基础知识。一旦掌握了本节中的所有内容,就可以进入中级水平。
1. 基本计算机技能
要成为一名安全专家,你需要一些基本的计算机技能。你需要能够在 Windows 中使用命令行、编辑注册表并设置网络参数。
2. 网络技能
你需要了解网络的基础知识,例如以下内容:
- DHCP
- NAT
- 子网划分
- IPv4 / IPv6
- 公共与私有 IP
- 域名系统 (DNS)
- 路由器和交换机
- VLAN
- OSI 模型
- MAC 寻址
- ARP
由于我们经常利用这些技术,你越了解它们的工作原理,你就会越成功。
3. Linux 技能
培养 Linux 技能对安全研究至关重要。我们使用的几乎所有工具都是为 Linux 开发的,而 Linux 为我们提供了使用 Windows 所没有的功能。
如果你需要提高你的 Linux 技能,或者你刚刚开始使用 Linux,网上资料一大堆,兴趣是最好的老师。
4. Wireshark 或 Tcpdump
Wireshark 是使用最广泛的嗅探器/协议分析器,而 tcpdump 是命令行嗅探器/协议分析器。两者在分析 TCP/IP 流量和攻击时都非常有用。
5. 虚拟化
你需要熟练使用其中一种虚拟化软件包,例如 VirtualBox 或 VMWare Workstation。你需要一个安全的环境来练习你的技巧,然后再将它们应用到实际场景中。虚拟环境为你提供了一个安全的沙箱。
6. 安全概念与技术
优秀的专家了解安全概念和技术。克服安全管理员设置的障碍的唯一方法是熟悉它们。必须了解 PKI(公钥基础设施)、SSL(安全套接字层)、IDS(入侵检测系统)、防火墙等。
7. 无线技术
为了能够分析无线网络,你必须首先了解它是如何工作的。诸如加密算法(WEP、WPA、WPA2)、四次握手和 WPS 之类的东西。此外,还需要了解连接和身份验证协议以及无线技术的法律限制等内容。
中级技能
这才是你真正开始感受到自己作为安全专家的能力的地方。了解所有这些将使你能够推进更直观的攻击测试。
8. 脚本
如果没有脚本技能,安全人员将只能使用现有的工具。这限制了你的效率。每天都有一个新工具存在,随着防御措施提出,它就会失去作用。
要开发独特的工具,你至少需要精通一种脚本语言,包括 BASH shell。这些应该包括 Perl、Python 或 Ruby 之一。
9. 数据库技能
如果你希望能够熟练地处理数据库安全,你将需要了解数据库及其工作原理。这包括 SQL 语言。我还建议掌握主要的 DBMS 之一,例如 SQL Server、Oracle 或 MySQL。
10. 网络应用
Web 应用程序可能是近年来安全测试最喜欢的对象了。对 Web 应用程序的工作原理及其背后的数据库了解得越多,你就会越成功。
11. 取证
要成为优秀的专家,你一定不能被抓住!你对数字取证了解得越多,你被识别的概率就越小。
12. 高级 TCP/IP
初学者必须了解 TCP/IP 基础知识,但要达到中级水平,则必须深入了解 TCP/IP 协议栈和领域。其中包括如何操纵 TCP 和 IP 数据包中的每个字段(flags, window, df, tos, seq, ack 等)将其用于针对受害系统以启用中间人攻击等。
13. 密码学
虽然不需要成为密码学家才能成为一名优秀的专家,但你对每种密码算法的优缺点了解得越多,破解它的机会就越大。此外,可以使用密码学来隐藏活动痕迹。
14. 逆向工程
逆向工程使你能够打开一个恶意软件并使用其他特性和功能重新构建它。就像在软件工程中一样,没有人从头开始构建新的应用程序。几乎每个新的漏洞利用或恶意软件都使用来自其他现有恶意软件的组件。


