零基础学习路线和资源列表
计算机入门阶段
学习目标
掌握计算机的基本组成、工作原理和常用操作系统的基本操作,为后续学习打下坚实基础,适合零基础且不了解计算机的同学。
学习内容
- 计算机硬件
- CPU、内存、硬盘、主板等硬件的功能、类型及参数影响
- 计算机软件
- 操作系统(Windows、Linux、macOS)的概念、功能、特点及基本操作
- 常用办公软件的使用
- 网络基础
- IP 地址、子网掩码、网关的概念及基本网络操作
推荐资源
(强烈推荐没有计算机基础的同学先行阅读这本书)
编程语言学习阶段
学习目标
掌握至少一门编程语言的基本语法、编程思想和常用库的使用,为后续 CTF 相关领域的学习提供编程基础。
学习内容
- Python
基本语法:变量、数据类型、控制语句、函数
常用库:requests、pwntools、re 等
- C 语言
- 基本语法:变量、数据类型、循环 / 分支语句、函数参数传递、指针
- 或者其他你感兴趣的,Java?JS?Rust?and so on.
推荐资源
(强烈推荐,提供多种编程语言的基础使用与技术教程,含在线实例)
LeetCode、牛客网
(可进行编程练习,巩固所学知识)
(配套代码示例和实战项目)
CTF 基础阶段
学习目标
了解 CTF 的基本概念、比赛形式和常见题型,掌握 CTF 比赛中常用工具的基本使用。
学习内容
- CTF 概述
- 定义及常见比赛形式(解题模式、攻防模式等)
- 常见题型
- Web 安全、二进制安全、逆向工程、密码学、misc(杂项)等领域的基本题型
- 常用工具
虚拟机(VMware、VirtualBox)的使用
CTF 工具集(如 Kali Linux 中的工具)的基本功能和使用方法
