CTF快速上手:PicoCTF真题解析(Web篇)

978-7-115-63549-5
作者: 李华峰
译者:
编辑: 胡俊英

图书目录:

详情

CTF比赛在网络安全领域有着较高的影响力,已经成为全球网络安全圈广为流行的赛事。本书旨在帮助初学者把握CTF比赛的解题技巧,提升自身的网络安全能力。PicoCTF为初学者提供了良好的学习平台,本书基于PicoCTF真题进行讲解,主要围绕Web安全主题展开介绍。 本书共11章内容,不仅带领读者从头了解PicoCTF比赛,而且介绍了一系列高效的解题工具。此外,本书结合Web前端(涉及HTML、CSS、JavaScript)、Web通信(涉及HTTP、Cookie)、Web部署、Web数据库、Web数据处理、Web认证等主题全面展示了PicoCTF比赛的特色和参赛技巧。 本书面向有志于参加CTF比赛的读者,旨在帮助大家快速入门。无论是企事业单位和科研机构里从事网络安全工作的专业人员,还是对CTF比赛感兴趣的学生(包括但不限于研究生、本科生、专科生、职业院校学生、高中生),以及各行各业的网络安全爱好者,都可以将本书作为CTF比赛的入门指南。

图书摘要

版权信息

书名:CTF快速上手:PicoCTF真题解析(Web篇)

ISBN:978-7-115-63549-5

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。

版  权

著    李华峰

责任编辑 胡俊英

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315

内 容 提 要

CTF比赛在网络安全领域有着较高的影响力,已经成为全球网络安全圈广为流行的赛事。本书旨在帮助初学者把握CTF比赛的解题技巧,提升自身的网络安全能力。PicoCTF为初学者提供了良好的学习平台,本书基于PicoCTF真题进行讲解,主要围绕Web安全主题展开介绍。

本书共11章内容,不仅带领读者从头了解PicoCTF比赛,而且介绍了一系列高效的解题工具。此外,本书结合Web前端(涉及HTML、CSS、JavaScript)、Web通信(涉及HTTP、Cookie)、Web部署、Web数据库、Web数据处理、Web认证等主题全面展示了PicoCTF比赛的特色和参赛技巧。

本书面向有志于参加CTF比赛的读者,旨在帮助大家快速入门。无论是企事业单位和科研机构里从事网络安全工作的专业人员,还是对CTF比赛感兴趣的学生(包括但不限于研究生、本科生、专科生、职业院校学生、高中生),以及各行各业的网络安全爱好者,都可以将本书作为CTF比赛的入门指南。

这是一本为CTF初学者准备的入门级教程。

本书的编写遵循以下原则。

尽量让计算机相关专业的同学都能读懂,并借此实现对CTF比赛的入门。

以真实CTF比赛的题目作为实例,帮读者树立信心。

“授人以渔”,让读者在读完本书之后,能够初步建立起CTF比赛的解题思路。

另外,在本书的编写过程中,我还特地借鉴了一些职业选手的解题习惯,他们在解题时会尽量采用Python编程,而不仅仅是使用各种现成的工具。在我眼中,这是一个非常好的习惯,一来可以提高个人的编程能力,二来也可以加深个人对题目中知识点的理解。

提示1 使用Python答题可以事半功倍

Python语言相对来说比较友好,易于上手,而且拥有丰富的库和工具支持。通过学习和实践,CTF选手们可以逐步提高自己的编程能力,从而更好地参与CTF比赛。

不过,这样一来似乎将CTF入门的门槛变高了,因为很多同学可能在没太掌握Python时就开始准备CTF比赛了,使用Python编写程序看起来有些强人所难。

提示2 AI可以帮助我们编程

最出乎我意料的是,AI居然可以编写程序,虽然目前还时有犯错,但是在模块的选择和逻辑设计上,可以帮助程序员节省很多时间。

另外像Copilot、Amazon CodeWhisperer及CodeGeeX(一款国产且免费的插件,强烈推荐读者使用)等工具都提供了根据注释生成代码的功能。

这样一来,CTF比赛解题的最后一块拼图也终于补齐了。“编程能力弱,AI来相助”——初学者终于可以同时提高自己的CTF比赛解题能力和Python编程能力了。

本书写完,正值新生入学,愿本书对有志于信息安全方向的同学能有所帮助。

愿各位同学“少年辛苦终身事,莫向光阴惰寸功”。

李华峰

2023年8月

前  言

CTF比赛已成为备受全球网络安全界青睐的竞技形式之一,每年都吸引大量热衷于网络安全技术的学员参加。但是,不少初学者并未对CTF比赛形成明确的认识,难以找到适宜的入门途径。本书的目标就是帮助初学者把握CTF比赛的解题技巧,提升自身的网络安全能力。

在CTF比赛中,Web安全主题备受青睐,被视为初学者最佳的入门领域之一。因此,本书将针对Web安全领域展开深入讨论,帮助读者快速掌握Web安全技术。

PicoCTF比赛是全球网络安全界极受欢迎的一门赛事,PicoCTF为初学者提供了良好的学习平台。本书将围绕PicoCTF比赛的历年真题来讲解Web安全的主要知识点。

全书共分11章,内容分别如下。

第1章先简单介绍了PicoCTF赛事及其特点,然后详细介绍了如何注册PicoCTF、如何对题目进行分类、如何解答题目,以及如何使用PicoCTF提供的Linux答题环境。

第2章主要介绍了Web类题目的解题工具,包括Web应用程序的工作流程、浏览器、Curl、Burp Suite、CyberChef、AI问答工具和AI编程工具。尤其是AI问答工具和AI编程工具可以高效地帮助答题者避开知识盲区,提高解题效率。

第3章主要介绍了用于前端开发的HTML标签语言的特点和语法,以及HTML在CTF比赛中的出题点。该章还提供了一个简单的HTML代码示例,并介绍了如何使用AI工具编写程序来答题。

第4章主要介绍了用于前端开发的CSS的特点和语法,并以PicoCTF真题为例讲解了CSS在CTF比赛中的出题侧重点。

第5章主要介绍了用于前端开发的JavaScript的发展历程和使用基础、WebAssembly的使用基础及工作原理,以及常用的Base64编码。本章还通过实例讲解了如何使用AI构建程序,在HTML、CSS和JavaScript文件中查找Flag。最后,该章还介绍了WebAssembly的安全性、工作原理及其与JavaScript的区别。

第6章主要介绍了HTTP的发展历程和消息结构。该章还通过PicoCTF比赛的3道真题详细介绍了Burp Suite的使用方法。

第7章主要介绍了Cookie技术,包括Cookie的组成部分、查看方式,Cookie在CTF比赛中的常见知识点、答题者在CTF比赛中所涉及的基本技能、出题者会如何利用Cookie,以及历年出现的Cookie相关题目等内容。

第8章介绍了Web服务器目录、URL中的相对路径与绝对路径,以及robots的工作原理与格式。

第9章主要介绍了SQL注入漏洞的原理、分类、防范措施及其他一些相关的SQL注入题目。该章讲解了两个系列(共6道)SQL注入漏洞方面的PicoCTF真题,还通过两道PicoCTF真题介绍了SQLite和PostgreSQL。

第10章主要介绍了正则表达式的基本理论及其实际应用。此外,该章还提供了一个PicoCTF真题“MatchTheRegex”,用以展示应用正则表达式解决实际问题的过程。

第11章主要介绍了以JWT为代表的跨域认证。此外,该章还通过3道PicoCTF真题介绍了在Web应用中可能存在的一些认证缺陷。

目标读者

本书面向有志于参加CTF赛事,但是苦于无法入门的人群,他们可能是企事业单位和科研机构里从事网络安全工作的专业人员、高校研究生、本科生、专科生、职业院校学生、高中生,以及各行各业的网络安全爱好者等。

实践平台

本书中的所有例题均源自PicoCTF比赛的真实题目,读者可以在阅读本书的同时,利用PicoCTF提供的在线答题环境进行练习和考试。

配套资源

为了提升读者学习本书的效率,本书提供所有案例的源代码,以及与案例配套的视频讲解(读者可以关注作者公众号“邪灵工作室”获取视频资源,也可在作者的B站账号“邪灵工作室”中观看相关视频)。

欢迎各位读者关注作者的公众号“邪灵工作室”,作者会在该公众号分享与本书相关的资料和实用的技术指南。

资源与支持

资源获取

本书提供如下资源:

本书源代码;

书中彩图文件;

本书思维导图;

异步社区7天VIP会员。

要获得以上资源,您可以扫描下方二维码,根据指引领取。

提交勘误

作者和编辑尽最大努力来确保书中内容的准确性,但难免会存在疏漏。欢迎您将发现的问题反馈给我们,帮助我们提升图书的质量。

当您发现错误时,请登录异步社区(https://www.epubit.com),按书名搜索,进入本书页面,单击“发表勘误”,输入勘误信息,单击“提交勘误”按钮即可(见右图)。本书的作者和编辑会对您提交的勘误进行审核,确认并接受后,您将获赠异步社区的100积分。积分可用于在异步社区兑换优惠券、样书或奖品。

与我们联系

我们的联系邮箱是contact@epubit.com.cn。

如果您对本书有任何疑问或建议,请您发邮件给我们,并请在邮件标题中注明本书书名,以便我们更高效地做出反馈。

如果您有兴趣出版图书、录制教学视频,或者参与图书翻译、技术审校等工作,可以发邮件给我们。

如果您所在的学校、培训机构或企业想批量购买本书或异步社区出版的其他图书,也可以发邮件给我们。

如果您在网上发现有针对异步社区出品图书的各种形式的盗版行为,包括对图书全部或部分内容的非授权传播,请您将怀疑有侵权行为的链接发邮件给我们。您的这一举动是对作者权益的保护,也是我们持续为您提供有价值的内容的动力之源。

关于异步社区和异步图书

异步社区”(www.epubit.com)是由人民邮电出版社创办的IT专业图书社区,于2015年8月上线运营,致力于优质内容的出版和分享,为读者提供高品质的学习内容,为作译者提供专业的出版服务,实现作者与读者在线交流互动,以及传统出版与数字出版的融合发展。

异步图书”是异步社区策划出版的精品IT图书的品牌,依托于人民邮电出版社在计算机图书领域30余年的发展与积淀。异步图书面向IT行业以及各行业使用IT的用户。

第1章 走进PicoCTF比赛

夺旗(Capture The Flag,CTF)比赛是一种网络安全竞技活动,旨在培养和考核参与者在网络安全领域的技能与知识。CTF参与者通常是网络安全爱好者、学生或网络安全相关领域的专业人士,他们组成队伍参与比赛,争夺解决各种安全挑战的Flag,以获取积分和荣誉。

CTF比赛通过挑战和解决各种安全问题,培养了参与者的技能、团队合作意识和创新能力,对网络安全的发展和人才培养起到了积极的推动作用。

本章将围绕以下内容进行讲解。

经典的CTF比赛。

PicoCTF比赛的特点。

PicoCTF使用指南。

1.1 CTF赛事

CTF比赛是一种流行的信息安全竞赛形式,深受网络安全技术爱好者、网络安全专业人士和学生的喜爱。以下介绍一些著名的全球CTF比赛,方便大家了解它们的历史、举办地、特点和目标受众。

1.DEFCON CTF比赛

DEFCON CTF比赛是世界上最著名、最具挑战性的CTF比赛之一,通常在美国拉斯维加斯的DEFCON黑客大会上举行。该比赛于1996年开始举办,每年都会吸引全球众多顶级安全团队参加。DEFCON CTF比赛覆盖多个领域,包括漏洞利用、密码学、网络安全、逆向工程等。DEFCON CTF比赛主要面向专业选手,具有很高的难度。

2.PicoCTF比赛

PicoCTF比赛是美国卡内基梅隆大学(Carnegie Mellon University,CMU)举办的一项在线CTF比赛。PicoCTF比赛自2013年开始举办,旨在激发学生对信息安全的兴趣并培养新一代安全人才。其比赛题目涵盖基础密码学、逆向工程、渗透测试、网络安全等诸多领域。PicoCTF比赛起初主要面向美国高中生,但现在已经吸引了来自全球各地各个年龄段的参赛者。

3.Google CTF比赛

Google CTF比赛是由谷歌公司组织的全球在线CTF比赛,自2016年开始举办。其比赛题目涵盖Web安全、逆向工程、密码学、漏洞利用等诸多领域。Google CTF对于网络安全新手、学生和网络安全相关领域的专业人士都极具吸引力,题目难度涵盖初级、中级和高级。Google CTF获胜者除了可以得到丰厚的奖金,还能获得在谷歌安全团队实习的机会。

4.PlaidCTF比赛

PlaidCTF比赛是由美国卡内基梅隆大学的安全团队Plaid Parliament of Pwning(PPP)组织举办的CTF比赛。PlaidCTF比赛始于2012年,主题充满创意,涵盖Web安全、密码学、逆向工程、取证分析等诸多领域。PlaidCTF比赛对新手和专业人士都十分友好,因此吸引了来自世界各地的选手参赛。

5.Hack.lu CTF比赛

Hack.lu CTF比赛是在卢森堡举办的一项国际CTF比赛,始于2010年。Hack.lu CTF比赛由卢森堡安全组织(fluxfingers)创建和支持,目标是重新点燃黑客的热情。Hack.lu CTF比赛提供了从简单到高级各种难度的题目,涵盖Web安全、密码学、漏洞利用等诸多领域,对新手和专业人士都十分友好。

除了这些大型CTF比赛,还有众多区域性和主题性的CTF赛事,如欧洲网络安全竞赛(European Cyber Security Challenge,ECSC)、Nuit du Hack CTF等。这些CTF比赛共同为各种年龄阶层和技能水平的选手提供了不同层次的挑战与学习机会。

1.2 PicoCTF比赛的特点

虽然CTF比赛数量众多,但是面向初学者的凤毛麟角。PicoCTF比赛是一项非常受初学者欢迎的在线CTF比赛,与其他CTF比赛相比,它具有一些独特的区别和优势。

面向初学者:PicoCTF比赛注重为初学者提供友好的学习和参与环境,它提供了详细的教程、解释和提示,以帮助参与者学习和理解各种安全领域的挑战。这使PicoCTF比赛成为初学者入门网络安全的理想选择。

逐步引导:PicoCTF比赛通过一系列逐步引导的挑战,帮助参与者逐步掌握不同的安全技能和知识。这种渐进式的学习方式有助于初学者建立自信心,并逐渐提高自身解决问题的能力。

多样的题目类型:PicoCTF比赛提供了多样的题目,涵盖密码学、网络攻防、逆向工程、Web安全等多个安全领域。这使参与者可以选择自己感兴趣或擅长的领域进行挑战,并在多个领域中获得全面的安全知识。

丰富的挑战内容:PicoCTF比赛的挑战内容丰富多样,包括问题解答、漏洞利用、密码破解、代码审计等,这些挑战涵盖了从基础到高级的各个难度级别,能够满足不同参与者的需求和挑战。

强调教育和学习:PicoCTF比赛的主要目标是教育和学习,而不仅仅是比赛和竞争,它提供了丰富的学习资源、解释和提示,帮助参与者理解和掌握安全知识和技能。这也使PicoCTF比赛成为学生、教育机构和网络安全自学者的理想选择。

全球参与:PicoCTF是一个全球化的比赛平台,在全球范围内吸引了许多参与者和团队。这种全球参与的形式促进了知识的交流和合作,参与者可以与来自不同地区和背景的人分享经验和学习。

总之,PicoCTF比赛与其他CTF比赛相比,更注重初学者的学习和参与体验,并提供了友好的学习环境、逐步引导的挑战和丰富的学习资源。它的优势在于教育导向、多样的题目类型和全球参与性,参与者能够在学习中提高自己的安全技能,并与来自世界各地的安全爱好者进行交流和合作。

1.3 PicoCTF实用指南

PicoCTF除了每年举办比赛,还提供了一个提供其历年比赛真题的在线平台。通过这个平台,学习者可以在熟悉CTF比赛题目的同时,了解各种信息安全的知识点。图1-1所示为PicoCTF网站首页。

图1-1 PicoCTF网站首页

1.3.1 注册PicoCTF

初次使用PicoCTF时,需要进行注册。其注册页面如图1-2所示。

图1-2 PicoCTF注册页面

注册成功之后,返回首页就可以看到PicoCTF提供的多种功能,如图1-3所示。

图1-3 PicoCTF提供的多种功能

1.3.2 PicoCTF的题目分类

PicoCTF将所有题目分成了多个大类,这其实也是几乎所有CTF比赛都会采用的方案。因为“术业有专攻”,一个人不可能同时精通所有的网络安全知识体系,所以CTF比赛几乎都以团队形式参赛,由团队成员分别解答自己擅长的题目。

目前PicoCTF已将历年的所有题目进行了分类,如图1-4所示。

图1-4 PicoCTF的题目分类

由图1-4可以发现,这些题目被分成了Web安全、加密、逆向工程、取证、通用技能和二进制渗透6种类型。

Web安全:图1-4中的Web Exploitation,指通过对Web应用程序进行分析和利用来获取敏感信息或实施攻击的过程。在Web安全的CTF比赛中,参赛者需要了解各种Web开发知识和漏洞。

加密:图1-4中的Cryptography,指将信息转换为不可读形式的过程,以保护其机密性。在CTF比赛中,加密通常涉及解密隐藏的信息或破解密码算法。在加密的CTF比赛中参赛者需要了解各种对称加密和非对称加密算法,如AES、RSA等。

逆向工程:图1-4中的Reverse Engineering,指对软件、硬件或其他基础组件进行分析和解构,以了解其内部机制和功能的过程。在CTF比赛中,逆向工程涉及分析与修改二进制文件、反汇编和调试程序等任务。

取证:图1-4中的Forensics,指通过收集、分析和保护数字证据来解决计算机犯罪案件的过程。在CTF比赛中,取证涉及分析给定的数据集,以找到隐藏的信息或解决给定的问题,参赛者需要了解数字取证的基本原理、取证工具和技术,如文件恢复、日志分析和内存取证。

  通用技能:图1-4中的General Skills,是PicoCTF为新手提供入门用的技巧教学题,包含各种CTF比赛中经常用到的技能,包括编程、网络分析、操作系统知识和漏洞利用。这有点像其他CTF比赛中的Misc(杂项),但是PicoCTF中的此类题目普遍比较基础。

  二进制渗透:图1-4中的Binary Exploitation,指对二进制程序进行分析和利用以获取敏感信息或实施攻击的过程,对应其他CTF比赛的PWN题目。在CTF比赛中,参赛者需要分析给定的二进制文件,理解其功能和漏洞,并开发相应的漏洞利用技术。

1.3.3 PicoCTF的题目

PicoCTF的练习界面十分友好,可以通过搜索框直接查找自己感兴趣的题目。例如,要搜索与Java有关的题目,可以使用直接搜索关键词“Java”,如图1-5所示。

图1-5 使用搜索框查找与Java相关的题目

PicoCTF练习界面的左下方按照赛事对题目进行了分类,如果答题者希望能够像参加真实比赛一样答完一整套题目,可以直接选择对应的年份。目前PicoCTF提供的赛事历年题目如图1-6所示。

图1-6 PicoCTF提供的赛事历年题目

对于每一道题目,PicoCTF都给出了十分详细的信息。下面以一道入门题目“Obedient Cat”为例介绍PicoCTF提供信息的方式。在题目列表中,该题的信息简介如图 1-7所示。

图1-7 题目“Obedient Cat”的信息简介

如图1-7所示,这个页面一共给出了5条信息,分别如下。

① 给出了题目的分类,如本题分类为通用技能(General Skills)。

② 给出了题目的分数,一般来说,分数越低,题目越简单。但实际上并不完全如此,不同年份的题目的分数差距很大,答题者在解答不同年份的题目时将这个分数作为简单参考即可。

③ 给出了题目的名称。

④ 给出了已经解答出该题目的人数。

⑤ 给出了题目的好评度。

在图1-7所示页面中单击题目的名称,进入图1-8所示的页面。

图1-8 题目“Obedient Cat”详情页面

在该页面中给出了题目更详细的信息。

作者(AUTHOR)。

题目描述(Description):题目的详细介绍。

线索(Hints):题目的重要提示,同时也可能是网络安全的一个知识点。

下载链接(Download flag):通常是一个下载链接,或者是一个网页链接。

提交Flag(Submit Flag):在题目中找到的Flag可以在这里提交。

以“Obedient Cat”为例,这道题目提供了3条线索,这些线索其实也是PicoCTF的魅力所在。它们一方面给出了题目的提示,另一方面也帮助答题者更好地掌握网络安全的知识点。

这道题的第1条线索给出了这样的提示:“Any hints about entering a command into the Terminal (such as the next one), will start with a '$'... everything after the dollar sign will be typed (or copy and pasted) into your Terminal.”。

翻译过来就是“提示中以$开头的都是要执行的命令,这些内容都是应该在你的终端中输入的”。

这道题的第2条线索给出了这样的提示:“To get the file accessible in your shell, enter the following in the Terminal prompt:  $ wget……”。

翻译过来就是“如果想要在shell中访问这个文件,请在终端的提示符中输入以下内容”。

第3条线索是一条命令“$man cat”。

实际上这3条线索已经给出了题目的解题步骤,显然这道题并非仅仅是测试,更多的是帮助参与者了解Linux答题环境及其常用命令,接下来只需要在Linux操作系统中完成上述操作。

1.3.4 PicoCTF的Linux答题环境

除了使用自己的Linux操作系统,如Kali Linux 2(推荐使用的CTF答题环境),PicoCTF也提供了一个网页版的Linux答题环境供答题者选用。在答题页面中,单击右侧的“Webshell”按钮即可进入该Linux答题环境,如图1-9所示。

图1-9 答题页面的右侧的“Webshell”按钮

使用网页版Linux答题环境前,需要先输入答题者在PicoCTF的用户名和密码。输入正确的用户名和密码后的Linux答题环境,如图1-10所示。

图1-10 PicoCTF提供的Linux答题环境

接下来使用该环境来解答“Obedient Cat”这道题目。首先,在Linux答题环境下输入第2条线索给出的命令,下载Flag文件,如图1-11所示。

图1-11 在Linux答题环境下下载Flag文件

然后,输入第3条线索提供的命令“man cat”。此时系统将给出cat命令的详细使用说明。其实这道题并不是在考试,而是在帮助答题者在实践中掌握常用的Linux命令cat。

之后可以按“q”键退出cat的说明页面。cat是Linux系统中的常用命令,主要用于对文件进行操作。例如,用cat命令显示文件内容。

$ cat filename

上述命令将显示指定文件(filename)的内容。

最后,在Linux答题环境下输入下面的命令,查看刚刚下载的文件。

$ cat flag

成功得到这道题目的Flag,具体如下。

picoCTF{s4n1ty_v3r1f13d_2aa22101}

值得注意的是,PicoCTF比赛中大部分Flag是类似于picoCTF{*******}形式的字符串。

1.3.5 提交Flag

在获得Flag之后,返回“Obedient Cat”题目的详情页面,将Flag的值添加到文本框中,如图1-12所示。

单击“Submit Flag”按钮之后,就可以看到系统提示答题者获得了对应的分数。在系统的题目列表中,已经完成的题目会变成灰色(见图1-13)。

还有一点需要答题者注意的是,从PicoCTF 2022开始,大部分Web题目有了时间限制(见图1-14),不过即使时间结束,答题者也可以答题,只是Web环境需要重启。

图1-12 提交Flag

图1-13 完成的题目会变成灰色

图1-14 时间限制

1.4 小结

CTF比赛是目前非常流行的网络安全比赛方式,全球每年都会举办大量的CTF比赛。但这些比赛针对的人群几乎都是中高级水平的选手,极少有入门级别的比赛举办。

PicoCTF比赛是CTF赛事中别出心裁的一个特例,主要针对中学生和那些刚刚入门的选手。在PicoCTF题目中,一方面考查的知识点相对比较明确,另一方面也会给出比较明确的解题提示,对初学者十分友好。

但是由于CTF比赛需要最终产生排名,所以PicoCTF比赛中也会出现少量难度很大的题目,以此拉开参赛者最后的分值。答题者在遇到此类题目时,也不必灰心丧气,CTF比赛的目的本来就是在帮助参赛者掌握网络安全的基本知识同时,锻炼参赛者及时应对和处理问题的能力。只要平时多积累,一定可以获得好的成绩。

相关图书

数字银行安全体系构建
数字银行安全体系构建
软件开发安全之道概念、设计与实施
软件开发安全之道概念、设计与实施
企业信息安全体系建设之道
企业信息安全体系建设之道
深入浅出密码学
深入浅出密码学
内网渗透技术
内网渗透技术
实用黑客攻防技术
实用黑客攻防技术

相关文章

相关课程