Skip to content

Commit 4c96a7e

Browse files
authored
Merge pull request #6 from Cnily03/pr/learn
Complete crypto documentation for learning
2 parents a45c34f + 063242a commit 4c96a7e

23 files changed

+576
-265
lines changed
52.4 KB
Loading
283 KB
Loading

docs/guide/2024/index.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,17 @@ aside: false
88

99
![NewStarCTF 2024](/assets/images/banner-2024.png)
1010

11+
## 赛事背景
12+
13+
「没有网络安全,就没有国家安全。」目前我国网民规模已突破 9 亿,成为名副其实的网络大国,网络安全的重要性愈发突出。习近平总书记指出:「网络安全的本质在对抗,对抗的本质在攻防两端能力较量。」为建立高素质网络安全和信息化人才队伍,积极响应国家网络空间安全人才战略,发挥专业优势,发掘网络安全人才,特此发起本活动。
14+
1115
## 赛事介绍
1216

13-
NewStar CTF 2024 是由 13 所高校联合发起的新生入门赛事,比赛持续五周时间,每周更新赛题,以个人赛形式展现,并分设公开赛道和校内赛道。
17+
NewStar CTF 2024 是由来自 13 所高校的战队联合发起的新生入门赛事,比赛持续五周时间,每周更新赛题,以个人赛形式展现,并分设公开赛道和校内赛道。
1418

1519
在此之前,NewStar 网络安全新生赛已连续举办多届,并一直为各高校提供高质量的新生选拔方案。本届赛事联手春秋杯,以新生的探索能力、知识面、网络安全素养等综合素质为培养目标,致力于挖掘和培养适应新时代新趋势的网络安全新兴力量。本届比赛将取过往之精华,优化比赛难度,使之随时间呈阶梯式上升,并通过题目逐步引导等方式,避免选手大海捞针的情况,以使其能够更专注于知识和技能水平的锻炼。
1620

17-
比赛采用网络安全靶场赛的形式<span style="color: #7c7c7c">(传统 Jeopardy 解题模式)</span>,动态计分。赛题涵盖 Web、Crypto、Pwn、Reverse、Misc 五大方向,题目的考察范围亦在传统的基础上增加了一些近年来新的构想和思路,做到与时俱进、不断创新。比赛期待各位选手的光临,诚邀任何有兴趣的同学参与。
21+
比赛采用网络安全靶场赛的形式<span class='desc-text'>(传统 Jeopardy 解题模式)</span>,动态计分。赛题涵盖 Web、Crypto、Pwn、Reverse、Misc 五大方向,题目的考察范围亦在传统的基础上增加了一些近年来新的构想和思路,做到与时俱进、不断创新。比赛期待各位选手的光临,诚邀任何有兴趣的同学参与。
1822

1923
## 赛事时间
2024

@@ -24,15 +28,15 @@ NewStar CTF 2024 是由 13 所高校联合发起的新生入门赛事,比赛
2428

2529
## 赛事群
2630

27-
公开赛道 QQ 群:1169651901<span style="color: #7c7c7c">(①群)</span>、806733185<span style="color: #7c7c7c">(②群)</span>
31+
公开赛道 QQ 群:1169651901<span class='desc-text'>(①群)</span>、806733185<span class='desc-text'>(②群)</span>
2832

29-
校内赛道 QQ 群:<span style="color: #7c7c7c">(请联系各校赛事负责人)</span>
33+
校内赛道 QQ 群:994951789<span class='desc-text'>(各校赛事群请联系所在院校赛事负责人)</span>
3034

3135
## 组织方式
3236

33-
### 发起方(战队)
37+
### 主办方
3438

35-
西安工业大学、中国矿业大学、中国人民公安大学、东北大学秦皇岛分校、海南大学、南京理工大学、广东工业大学、江南大学、浙江师范大学、福建师范大学、中山大学、太原理工大学、中国人民警察大学<span style="color: #7c7c7c">(以上排名不分先后)</span>
39+
西安工业大学、中国矿业大学、中国人民公安大学、东北大学秦皇岛分校、海南大学、南京理工大学、广东工业大学、江南大学、浙江师范大学、福建师范大学、中山大学、太原理工大学、中国人民警察大学<span class='desc-text'>(以上排名不分先后)</span>
3640

3741
### 赞助支持
3842

docs/learn/crypto.md

Lines changed: 246 additions & 142 deletions
Large diffs are not rendered by default.

docs/learn/index.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,28 +15,32 @@ import 'element-plus/es/components/tag/style/css'
1515

1616
## 什么是 CTF
1717

18-
CTF 是一种比赛形式,你会得到一个题面<span style="color: #7c7c7c">(可能是一段话、一个压缩包、一张图片、一个网站、一个链接、一份源码、一个程序等)</span>,你需要根据题面,通过各种手法找到或得到诸如 `flag{xxx}` 的内容,这便是此题的答案。
18+
CTF 是一种比赛形式,你会得到一个题面<span class='desc-text'>(可能是一段话、一个压缩包、一张图片、一个网站、一个链接、一份源码、一个程序等)</span>,你需要根据题面,通过各种手法找到或得到诸如 `flag{xxx}` 的内容,这便是此题的答案。
1919

2020
## 走出洞穴的第一步
2121

22+
如果你还没有掌握一门编程语言,建议先从编程语言入手,C 语言或者 Python,培养对编程的感觉。只要你掌握了一门语言,再学习其他语言能够触类旁通。
23+
2224
如果你此前从未接触过 CTF,你可能需要先了解其形式,即通过一些在线靶场或新生赛的低门槛题目进行适应。下面的一些公益新生赛事或平台或许会对你有所帮助:
2325

24-
- <ElTag type="primary" size="small">赛事</ElTag> <Link icon="external" theme="plain" href="https://ctf.xidian.edu.cn/">西电 MoeCTF</Link>
25-
- <ElTag type="primary" size="small">赛事</ElTag> <Link icon="external" theme="plain" href="https://basectf.fun/">BaseCTF</Link>
26-
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="plain" href="https://www.ctfhub.com/">CTFHub</Link>
27-
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="plain" href="https://ctf.show/">CTFSHOW</Link>
28-
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="plain" href="https://buuoj.cn">BUUOJ</Link>
29-
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="plain" href="https://www.nssctf.cn">NSSCTF</Link>
26+
- <ElTag type="primary" size="small">赛事</ElTag> <Link icon="external" theme="underline hover" href="https://ctf.xidian.edu.cn/">西电 MoeCTF</Link>
27+
- <ElTag type="primary" size="small">赛事</ElTag> <Link icon="external" theme="underline hover" href="https://basectf.fun/">BaseCTF</Link>
28+
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="underline hover" href="https://www.ctfhub.com/">CTFHub</Link>
29+
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="underline hover" href="https://ctf.show/">CTFSHOW</Link>
30+
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="underline hover" href="https://buuoj.cn">BUUOJ</Link>
31+
- <ElTag type="info" size="small">平台</ElTag> <Link icon="external" theme="underline hover" href="https://www.nssctf.cn">NSSCTF</Link>
3032

3133
随后,你应当选定一个方向,作为你主攻方向。例如,对网络感兴趣、有基础的同学可能更适合 Web 方向,而对程序运行底层逻辑、二进制感兴趣的可能更适合逆向(Reverse)和 Pwn,等等。
3234

3335
然后,当你接触到特定的题目时,你会遇到特定的知识点。设计得当的引导会控制好你所接触的「新事物」的量。这个时候,辅以实践,你再通过搜索、询问等各种方式学习知识细节,或许会轻松许多。
3436

37+
如果你在寻求更细节和全面的指导,可以查看 [CTF Wiki](https://ctf-wiki.org/) 或由探姬师傅主导的 [Hello CTF](https://hello-ctf.com/) 等网站。注意,与传统的课堂教育模式不同,这些网站并不要求你立即并全部掌握其中的内容,而是充当一个手册供你速查。
38+
3539
对于自己无能为力的题,记得在赛后根据题解(WriteUp)进行复现。温故而知新,可以为师矣。
3640

3741
## 我还没有准备好
3842

39-
<Container type='warning'>
43+
<Container type='tip'>
4044
参与 CTF 赛事,是一个不断在历练中成长的过程,是对自我螺旋上升式的提升,是理论与实践相结合的又一深入尝试。请时刻铭记:<strong>充分发挥自己的主观能动性,在实践中成长。</strong>
4145
</Container>
4246

@@ -57,4 +61,4 @@ CTF 是一种比赛形式,你会得到一个题面<span style="color: #7c7c7c"
5761

5862
此外,必备的知识迁移能力和动手尝试(试错)能力是不可或缺的。
5963

60-
在这趟旅途中,请收藏对你帮助巨大或需要日后查阅的链接或文档。值得一提的是,偶尔的旅途记录或许将在某些时刻发挥意想不到的作用。
64+
在这趟旅途中,请收藏对你帮助巨大或需要日后查阅的链接或文档。值得一提的是,偶尔的旅途记录或许将在某些时刻发挥意想不到的作用,例如知识速查、快速回顾等

docs/learn/reverse.md

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,31 @@
11
---
22
titleTemplate: ':title | 快速入门 - NewStar CTF'
33
---
4-
<script setup>
5-
import Link from '@/components/docs/Link.vue'
6-
</script>
74

8-
# Reverse
5+
# 逆向工程
96

107
逆向工程通常是在没有源代码的情况下对软件进行分析,相对于正向的代码编程来说,逻辑通常是反过来的,需要有好的代码分析和反向思维能力。
118

129
## 0x01. 学习 C 语言代码
1310

1411
C 语言是逆向工程的基础,务必重点学习以下内容。
1512

16-
1. 流程控制: if、switch、goto、break
17-
2. 指针操作: 引用,解引用,取地址,数组与指针转化
18-
3. 数据类型: 熟记 char、int、int64 等类型大小
19-
4. 可逆运算: 异或运算、算数运算、移位与循环移位运算
13+
1. 流程控制if、switch、goto、break
14+
2. 指针操作引用,解引用,取地址,数组与指针转化
15+
3. 数据类型熟记 char、int、int64 等类型大小
16+
4. 可逆运算异或运算、算数运算、移位与循环移位运算
2017

2118
## 0x02. 学习常见加密
2219

2320
加密是逆向工程对抗的核心,务必熟记加密算法原理和特征,这样在面对混淆和魔改加密时才能游刃有余。
2421

2522
1. TEA 系列加密: TEA、XTEA、XXTEA
2623
2. RC4 加密
27-
3. AES/DES加密
28-
4. 16进制编码
29-
5. Base64编码
24+
3. AES/DES 加密
25+
4. 16 进制编码
26+
5. Base64 编码
3027

31-
加密特征识别可参阅:<Link icon="external" theme="underline blink" href="https://pangbai.work/IT/re/ctf_encode/">常见加密算法特征识别</Link>
28+
加密特征识别可参阅:[常见加密算法特征识别](https://pangbai.work/IT/re/ctf_encode/)
3229

3330
常见加密不是一成不变的模板,死记硬背不可能通杀,请务必读懂加密过程和大致原理。
3431

docs/learn/web.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ CTF 中的 Web 方向通常指的是通过阅读阅读网站源码,或是根
1414

1515
## 收拾行李
1616

17-
Web 方向需要有较强的代码阅读能力<span style="color: #7c7c7c">(即便是未接触过的代码,不要求会写,但需能够阅读)</span>,以及搜索能力。
17+
Web 方向需要有较强的代码阅读能力<span class='desc-text'>(即便是未接触过的代码,不要求会写,但需能够阅读)</span>,以及搜索能力。
1818
以下建议可能能够帮助你提升代码阅读能力,但任何事物都是循序渐进的,你也可以在做题的同时学习和成长。
1919

2020
- 学习和掌握 Python 语言

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"element-plus": "^2.8.1",
1515
"markdown-it-mathjax3": "^4.3.2",
1616
"nodemon": "^3.1.4",
17-
"sass": "^1.77.8",
17+
"sass": "~1.76.0",
1818
"unplugin-element-plus": "^0.8.0",
1919
"vitepress": "^1.3.1",
2020
"vue": "^3.4.35",

pnpm-lock.yaml

Lines changed: 13 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

theme-config.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ sidebar:
2222
link: /learn/web
2323
- text: Reverse
2424
link: /learn/reverse
25+
- text: Crypto
26+
link: /learn/crypto
2527

2628
'/guide/2024/':
2729
- text: 参考文档

0 commit comments

Comments
 (0)