文章目录
一、前言
简单介绍一下“江苏省第二届数据安全技术应用职业技能竞赛”的情况;
“江苏省第二届数据安全技术应用职业技能竞赛”是一个面向全省职业院校学生的专业竞赛,旨在提升学生在数据安全技术方面的实战能力和创新能力。竞赛内容包括数据加密与解密、数据备份与恢复、网络安全攻击与防御等多个方面,涉及实际操作和理论知识的综合考验。通过这种竞赛形式,参赛学生可以在实践中应用所学知识,提升自身技能,并与其他参赛者交流学习,进一步提高对数据安全技术的理解和应用能力。
123云盘下载;
实操例题附件:https://www.123pan.com/s/q2J1jv-DvBvd.html——提取码:0905
比赛理论样题:https://www.123pan.com/s/q2J1jv-rvBvd.html——提取码:0905
二、竞赛通知和报名表
三、考点大纲、实操题样例、实操题推荐工具清单
(一)考点大纲
2024 年江苏省第二届数据安全技术应用职业技能竞赛选拔赛 考试大纲
(二)实操题推荐工具清单
2024 年江苏省第二届数据安全技术应用职业技能竞 赛选拔赛实操题推荐工具清单
(三)实操题样例——例题
1、解析赛
数据安全存储
题目类型:数据安全存储
题目名称:不安全的数据存储
描述:数据存储有很多种方法,这样的数据存储安全吗?
解题思路
首先下载附件,得到一个“不安全的数据存储.enc”的文件,简单说一下“.enc”结尾的文件都是些什么文件吧;
简单来说就是“.enc”结尾的文件通常是经过加密处理的文件。
-
加密文件: 这些文件使用某种加密算法将内容转换为不可读的形式,只有使用正确的解密密钥才能恢复其原始内容。常见的加密算法包括AES、DES、RSA等。
-
安全性: 通过加密保护文件内容,防止未经授权的访问。这在传输敏感数据或存储机密信息时尤其重要。
应用场景:
- 备份文件: 备份时为了保护数据安全,文件可能会被加密后保存。
- 传输文件: 在不安全的网络环境中传输文件时,使用加密保护数据免受窃听和篡改。
- 敏感数据: 存储包含个人信息、财务数据或其他敏感内容的文件。
解密工具: 需要使用特定的软件或工具,以及正确的解密密钥来解密“.enc”文件,以便恢复其原始内容。
总结来说,“.enc”结尾的文件是为了保护文件内容安全而进行加密处理的文件,在数据安全和隐私保护中起着重要作用。
那这里我们既然知道了这是个加密过的文件,直接右键“记事本”打开;
得到;
ZmxhZ3syZGFhZjBiMWVlMzkxOGFkZDlmN2NiMTk2NDFhNGYwNH0=
一眼“base64”解码;
直接随便找一个在线的“base64解码”;
得到;
至此;(就是一个简单的解码没什么说的)
flag{2daaf0b1ee3918add9f7cb19641a4f04}
数据安全应急响应
题目类型:数据安全应急响应
题目名称:Prefetch
题目说明:小明某天发现数据服务器被入侵,攻击者运行了恶意程序,窃取了资料。请分析文件,帮他找到最后一次运行的程序,将该程序最后运行的时间的32位小写md5当做答案提交(时间格式 hh:mm:ss,如13:37:28)
解题思路
题目名称是“Prefetch”,下载得到的附件中文件名字也是“Prefetch”,那这到底是一个什么文件呢?可能很多师傅不太明白这是一个什么文件,其实这是一种用于加速应用程序启动速度的系统文件,主要存在于“windows”操作系统中;
简单分析一下文件“Prefetch”;
-
用途:
- 加速启动: Prefetch 文件记录了程序启动过程中所需的文件和资源。操作系统可以利用这些记录来优化读取顺序,提高程序启动速度。
-
位置:
- 存储位置: Prefetch 文件通常存储在
C:\Windows\Prefetch
目录中。
- 存储位置: Prefetch 文件通常存储在
-
命名:
- 文件名格式: Prefetch 文件的命名通常为
[应用程序名]-[哈希值].pf
,其中包含应用程序名称和哈希值,用于唯一标识。
- 文件名格式: Prefetch 文件的命名通常为
-
生成:
- 生成时机: 当用户首次运行某个程序时,Windows 会创建一个对应的 Prefetch 文件,记录该程序启动时访问的文件路径和资源。
-
管理:
- 自动管理: Windows 会自动管理和更新 Prefetch 文件,不需要用户手动干预。系统会定期清理旧的和不再使用的 Prefetch 文件。
-
安全性:
- 法医分析: Prefetch 文件可以作为计算机取证中的一个线索,通过分析 Prefetch 文件,可以确定某个程序是否在某个时间点被运行过。(这里的“法医”分析并不是我们想的那种分析,这是因为"Prefetch"文件分析属于计算机取证的一部分,我们通常被称为法医分析。)
注意!“法医分析”这个术语指的是在计算机取证中分析数据以确定具体的活动或事件。
那这里既然知道了这是“windows”用于加速应用程序启动速度的系统文件,而且题目让我们找出最后一次运行的程序,那肯定是母庸质疑需要我们使用工具来进行分析这个“Prefetch”文件,那这里我们推荐使用工具“PECMD”,那工具“PECMD”到底是个怎么样的工具呢?我们下面简单分析一下;
什么是 PECMD
PECMD 是一个命令行工具,用于解析和分析 Windows 操作系统中的 Prefetch 文件。它能够提取 Prefetch 文件中的详细信息,包括程序名称、执行路径、访问的文件列表等。
使用 PECMD 分析 Prefetch 文件
-
下载和安装 PECMD:
- 下载 PECMD 工具,可以在 PECMD 官方网站 获取最新版本。
- 解压并安装 PECMD 工具。
-
准备分析环境:
- 打开命令提示符(CMD)或者 PowerShell,以管理员身份运行。
-
执行 PECMD 命令:
- 使用以下命令解析指定的 Prefetch 文件,并将结果输出到一个可读的文本文件中:
pecmd.exe -f <Prefetch文件路径> --json output.txt
例如;
pecmd.exe -f C:\Windows\Prefetch\EXAMPLE-12345678.pf --json D:\output.txt
查看分析结果:
- 打开生成的
output
文件,可以看到详细的分析结果。结果通常包含以下信息:- 应用程序名称:被分析的程序名称。
- 执行路径:程序的完整路径。
- 访问的文件列表:程序启动过程中访问的文件和资源。
那这里我们直接开始实操,首先就是打开下载并且解压附件;
得到
发现很多".pf"结尾的文件,可能有的师傅第一次接触不太清楚这么多“.pf”结尾的文件是什么文件,这里简单说一下;
简单来说就是Prefetch 文件是 Windows 操作系统的一部分,用于加速应用程序启动时间。这些文件以
.pf
为扩展名,存储在系统目录C:\Windows\Prefetch
中。每当一个应用程序在 Windows 中首次运行时,系统会创建一个对应的 Prefetch 文件,并记录该程序启动时所需的所有数据,如加载的 DLL 文件和访问的文件路径。
Prefetch 文件的命名规则
Prefetch 文件的命名方式通常为 程序名-哈希值.pf
,例如 NOTEPAD.EXE-12345678.pf
。文件名部分是程序的可执行文件名,哈希值部分是基于程序路径计算出的一个唯一值。
简单来说就是每启动一次window系统中就会自动生成一个“.pf”后缀结尾的文件,那这里就好办了啊,题目不是问我们最后一次启动程序的时间嘛,那我们直接简单按“时间排序”一下就知道了最后一次启动程序的时间,接着使用PECMD进行分析即可得知时间
得到;
直接使用工具PECMD进行分析得到;
命令;
PECmd.exe -f D:\最新下载\PECmd\Prefetch\MSEDGE.EXE-F6B373B0.pf --json D:\output
得到;
注意是“-f”,还需注意文件的具体路径以及解析完存放文件以及文件路径,最后顺着自己填的路径就可以打开刚刚解析出的文件;
直接选中右键“记事本”打开分析即可;
最后也是在文件的开头发现了“最后启动程序的时间”,那为什么就可以确定是这个呢?
其实也很简单,光从字面的单词“LastRun”师傅们也能猜个大概,当然这确实是最简单分辨的方法之一;
具体分析;
{
"SourceFilename": "D:\\最新下载\\PECmd\\Prefetch\\MSEDGE.EXE-F6B373B0.pf",
"SourceCreated": "2024-07-22 04:15:09",
"SourceModified": "2022-03-30 02:46:16",
"SourceAccessed": "2024-07-22 04:55:40",
"ExecutableName": "MSEDGE.EXE",
"Hash": "F6B373B0",
"Size": "139806",
"Version": "Windows 10 or Windows 11",
"RunCount": "29",
"LastRun": "2022-03-30 02:46:04",
"PreviousRun0": "2022-03-30 02:40:11",
"PreviousRun1": "2022-03-30 02:32:31",
"PreviousRun2": "2022-03-30 02:28:45",
"PreviousRun3": "2022-03-30 02:25:56",
"PreviousRun4": "2022-03-30 02:21:23",
"PreviousRun5": "2022-03-30 02:18:02",
"PreviousRun6": "2022-03-30 02:18:02",
"Volume0Name": "\\VOLUME{01d4f243703fdfeb-0c70563e}",
"Volume0Serial": "C70563E",
"Volume0Created": "2019-04-13"
}
这样一排序,是不是大家就简单可以看个大概?
关键字段解释
- LastRun:
2022-03-30 02:46:04
- 这个字段明确记录了应用程序最后一次被运行的时间。 - RunCount:
29
- 表示这个程序总共运行了29次。 - PreviousRun0 至 PreviousRun6: 记录了之前的运行时间,最近的一次在
PreviousRun0: 2022-03-30 02:40:11
。
- 连续时间记录:
LastRun
和PreviousRun
字段提供了应用程序每次启动的时间。LastRun
字段记录的时间(2022-03-30 02:46:04
)是程序启动的最新时间。 - 运行时间顺序:
PreviousRun0
至PreviousRun6
显示了之前的启动时间,可以看出这些时间按照从近到远的顺序排列。- 例如,
PreviousRun0
是2022-03-30 02:40:11
,表示在LastRun
时间之前,程序最近一次启动是在2022-03-30 02:40:11
。
- 例如,
总的来说,
LastRun
字段就是Prefetch文件中特别用于记录程序最后一次启动时间的字段,并且时间序列是从LastRun
开始逆序排列的,可以确定2022-03-30 02:46:04
是应用程序MSEDGE.EXE的最后一次启动时间。
所以最后程序启动的时间:02:46:04
但是题目要求将该程序最后运行的时间的32位小写md5当做答案提交;
方法不唯一,这里仅供参考;
首先将我们得到的时间随便保存到文件“123.txt”中;
接着在创建文件“123.txt”的目录下\或者桌面唤出“PowerSshell”;
使用命令;
certutil -hashfile ".\123.txt" md5
得到;
至此;
flag{a02d0a8442af78c58b847dfffcd53067}
当然这里也可以直接丢进在线网站,或者工具加密都可,方法不唯一,仅供参考;
2、分析赛
数据安全传输
背景
在当前信息时代,数据安全已经成为了一个至关重要的议题。FTP(文件传输协议)作为数据交换的重要工具,其安全性直接关系到企业、组织乃至个人的信息资产安全。由于FTP协议本身的某些特性,如缺乏内置的数据加密机制,使得数据在传输过程中容易受到未经授权的访问和窃取。因此,确保FTP传输的数据安全,不仅需要对服务器和客户端进行严格的配置和管理,还需要采取加密、访问控制等安全措施,以防止数据泄露和被非法利用。数据安全的保护不仅关乎技术层面的防范,更需要我们树立强烈的安全意识,共同维护一个安全、可靠的数据环境。
场景描述
在“智x科技”公司的某个普通工作日,一场看似普通的魔术表演却暗藏了数据安全领域的重大威胁。这场魔术以“数据安全场景魔术”为名,巧妙地将数据丢失、后门程序和口令爆破等安全威胁融入其中,让观众在惊叹之余也深刻体会到数据安全的重要性。
魔术开始时,魔术师展示了一个看似普通的FTP服务器模型,并声称其中存储着公司的重要项目文档和客户资料。他神秘地操作着服务器,模拟了数据丢失的场景。只见模型中的硬盘突然停止工作,指示灯熄灭,象征着数据的突然消失。观众被这一幕深深吸引,纷纷猜测数据丢失的可能原因。
紧接着,魔术师又展示了后门程序的威力。他悄悄地将一个看似普通的U盘插入到服务器模型中,模拟了攻击者通过后门程序入侵服务器的过程。只见服务器模型的指示灯开始闪烁,屏幕上出现了未知的代码和数据流,象征着黑客正在窃取敏感信息。观众被这一幕震惊,意识到后门程序对数据安全的威胁不容小觑。
最后,魔术师以口令爆破为主题,展示了攻击者如何通过猜测或暴力破解的方式获取用户账号的密码。他邀请一位观众上台,尝试破解一个预设的密码。尽管观众尝试了多种可能的组合,但始终无法成功。然而,魔术师却通过一种神秘的手法,轻易地破解了密码,并成功登录了服务器模型。这一幕让观众惊叹不已,也让他们深刻认识到口令安全的重要性。
题干
1. 通过分析入侵附件的数据,获取黑客成功入侵FTP服务器所使用的特定用户名与密码。
【评测标准】本题按结果给分。最终提交的结果为flag{md5(用户名+密码)},注意:md5是使用32位小写md5值。
例:flag{md5(zhangsan+123456)}
解题思路
题目让我们获取黑客入侵成功FTP服务器所使用的特定用户名与密码并且进行MD5加密提交,那这里我们下载附件得到“eeeeee.pcapng”,那既然是流量包,我们这里直接使用工具“Wireshark”进行分析;
得到;
那要在流量包中获取黑客入侵成功FTP服务器所使用的特定用户名和密码,我们可以通过分析FTP通信的流量数据。通常,FTP协议以明文形式传输用户名和密码;
查找登录信息:
- FTP的控制连接通常使用明文协议,通过查看FTP控制连接的流量,可以找到用户名和密码。
- 常见的FTP登录命令包括
USER
和PASS
。 - 在Wireshark中,浏览过滤后的流量,查找包含这些命令的TCP数据包。
提取用户名和密码:
- 当找到包含
USER
和PASS
命令的包时,查看包的详细信息,提取用户名和密码。 - 例如,
USER
后面的字符串是用户名,PASS
后面的字符串是密码。
那这里我们还要一个关键的信息,题目中说黑客已成功入侵,所以说他是已经获取了登录的用户以及密码,所以我们就可以查找黑客登录成功的包进行分析即可找到用户密码;
使用命令;
ftp.response.code == 230
得到;
这条命令会显示所有带有响应代码230的FTP响应,那这里都一样随便选中右键TCP流追踪进行分析即可;
简单分析一下;
简单来说就是这段FTP通信日志展示了一个用户成功登录FTP服务器的过程;
-
- 服务器向客户端发送欢迎消息,表示FTP服务器已准备好接收连接。
-
USER 242406
- 客户端向服务器发送用户名
242406
。
- 客户端向服务器发送用户名
-
331 Password required for 242406.
- 服务器响应,要求输入密码以验证用户
242406
的身份。
- 服务器响应,要求输入密码以验证用户
-
PASS 06061818
- 客户端发送密码
06061818
进行身份验证。
- 客户端发送密码
-
230 User 242406 logged in.
- 服务器确认用户
242406
使用提供的密码06061818
成功登录。
- 服务器确认用户
-
FEAT
- 客户端请求服务器支持的功能列表。
-
211-Extensions supported:
- 服务器列出其支持的扩展功能,包括:
HOST
: 虚拟主机支持SIZE
: 获取文件大小REST STREAM
: 文件传输恢复MDTM
: 获取或设置文件修改时间MLST
: 获取文件详细信息MFMT
: 修改文件时间MD5
,XCRC
,XMD5
: 文件校验CLNT
: 客户端标识SITE INDEX;ZONE;CMLSD;DMLSD
: 特定站点命令XCMLSD
,XDMLSD
: 扩展目录列表
- 211 END: 表示功能列表结束。
- 服务器列出其支持的扩展功能,包括:
-
SYST
- 客户端请求服务器的系统类型。
-
215 UNIX Type: L8 Internet Component Suite
- 服务器响应其系统类型为
UNIX Type: L8 Internet Component Suite
,表明服务器操作系统类型。
- 服务器响应其系统类型为
-
QUIT
- 客户端发送
QUIT
命令以终止会话。
- 客户端发送
-
221 Goodbye.
- 服务器确认会话终止,并发送再见消息。
题目问我们用户以及密码,所以;
用户:242406
密码:06061818
根据题目的提交方式:MD5(242406+06061818)
这里跟上面一样,我还是直接使用window进行MD5加密提交;
使用命令;
certutil -hashfile ".\123.txt" md5
得到;
至此;
flag{0211bf9f44264de4759cef8b3787146b}
2. 黑客通过非法手段入侵了FTP服务器,获取到想要的数据后,上传一个后门,请找出上传的后门的文件名称进行提交。
【评测标准】本题按结果给分。最终提交的结果为flag{md5(文件名称)},注意:md5是使用32位小写md5值。
例:flag{md5(1.txt)}
解题思路
题目让我们找出黑客入侵FTP服务器后上传的后门文件,将后门文件进行MD5加密提交,那既然说了在FTP服务器中上传了文件至此,那这里我们就直接可以在协议分级中找到FTP-DATA进行选中分析,或者我们可以直接使用命令进行筛选,方法不唯一仅供参考;
协议分级中,在TCP下发现了FTP-DATA,我们可以直接右键选中进行分析;
按大小简单排个序,发现其中占比最大的就是“12.exe”,怀疑可能有问题,我们右键TCP流进行分析一下;
并没有发现什么,那包里既然看不出什么,我们可以直接全部把可疑的FTP-DATA导出进行分析;
选中"FTP-DATA"随便保持一个文件夹,接着进行分析即可;
得到;
这里保存下来,既然说了后门程序那就猜测是可执行的,所以可以想到肯定是在.exe中,那这里1到12都全部具备,压缩包也全部打开进行分析过,并没有发现什么可疑之处,那这里实在没办法了只能用笨方法了,这边我从1到12都把它们进行了MD5加密一个一个进行提交,最后发现少一个“11.exe”,就大胆推测被隐藏起来了,那题目让我们提交的也只是文件名,所以,我们直接将“11.exe”进行小写的32MD5加密提交即可;
老规矩还是使用window进行MD5加密即可;
命令;
certutil -hashfile ".\123.txt" md5
得到;
提交正确;
至此;
flag{4d7bc3cf8525caa5074ea758705a8a06}
3. 黑客通过入侵FTP服务器,复制了提权知识相关目录的文件,复制的文件名称是?
【评测标准】本题按结果给分。最终提交的结果为flag{md5(sqlmap)},注意:md5是使用32位小写md5值。
例:flag{md5(QQ.exe)}
解题思路
题目让我们找出黑客复制提权的文件名是什么,那既然要求那么细,我们这里可以直接筛选几个关键点;
- USER 命令:筛选用户登录的用户名。
- PASS 命令:筛选用户登录的密码。
- CWD 命令:筛选目录切换操作,特别是切换到包含提权文件的目录。
- LIST 命令:筛选目录列表操作。
- RETR 命令:筛选文件下载操作。
所以使用命令;
ftp.request.command == "USER" || ftp.request.command == "PASS" || ftp.request.command == "CWD" || ftp.request.command == "LIST" || ftp.request.command == "RETR"
得到;
这里直接简单排个序,老规矩直接先分析包最大的,右键追踪tcp流;
简单分析一下;
简单来说,我们可以看到黑客在FTP服务器上的一系列操作,特别是进入目录 /sqlmap/data/udf/mysql/windows/64/
并下载文件 lib_mysqludf_sys.dll_
。
具体分析一下;
目录切换 (CWD):
CWD /sqlmap/data/udf/mysql/windows/64/
250 CWD command successful. "/sqlmap/data/udf/mysql/windows/64" is current directory.
黑客多次切换到目录 /sqlmap/data/udf/mysql/windows/64/
,说明这个目录包含他们感兴趣的内容。
文件大小查询 (SIZE):
SIZE lib_mysqludf_sys.dll_
213 5267
- 黑客查询了文件
lib_mysqludf_sys.dll_
的大小,这是准备下载文件的常见步骤。
文件下载 (RETR):
RETR lib_mysqludf_sys.dll_
最终,黑客下载了文件 lib_mysqludf_sys.dll_
,而且lib_mysqludf_sys.dll_
是一个常见的用于MySQL UDF(用户自定义函数)提权的恶意文件。
-
提权功能:
lib_mysqludf_sys.dll
是一个已知的恶意UDF库文件,可以用于在MySQL数据库中执行系统命令。黑客通过上传这个DLL文件并在MySQL中注册UDF函数,可以利用MySQL的权限来执行任意系统命令,从而提权。 -
目录结构: 从目录结构
/sqlmap/data/udf/mysql/windows/64/
可以看出,这个路径与udf
和mysql
相关,进一步表明这是一个与MySQL用户自定义函数相关的文件。 -
文件名格式: 文件名
lib_mysqludf_sys.dll_
是典型的用于MySQL UDF提权的文件名。黑客通常会在文件名末尾添加下划线_
以避免与系统中已有的同名文件冲突,并绕过简单的文件名检查。 -
下载文件: 黑客下载这个文件,明确表明他们打算使用这个文件进行后续操作,例如在MySQL中注册这个UDF并执行提权操作。
总结;
lib_mysqludf_sys.dll_
是一个恶意文件,黑客通过FTP下载该文件,准备在目标系统上利用MySQL UDF提权漏洞来获得更高的权限。
题目问我们黑客复制的文件是什么,这样分析下来,并没有发现黑客明确下载的文件,也就只发现了“lib_mysqludf_sys.dll_”,所以这里我们可以尝试提交一下;
简单进行一个MD5加密(同上);
命令;
certutil -hashfile ".\123.txt" md5
得到;
至此;
flag{bfcd04069a9bd8630f126199da5044ee}