湖南省第一届职业技能大赛网络安全竞赛赛卷样题
(一)任务描述:
你和你的团队是 A 公司的网络安全技术支持。你的团队检测到该公司的一些服务器被黑客入侵,并通过技术手段采集到了一些网络数据包和恶意软件样本。现在,您的团队需要帮助该公司追踪此网络攻击的来源,分析黑客的攻击方法,发现系统中的漏洞,提交网络安全事件的事件响应报告; 修复系统中的漏洞,删除系统中黑客隐藏的后门,恢复系统的正常运行。
[X] 🛰:ly3260344435
[X] 🐧:3260344435
[X] BiliBili:鱼影信息
[X] 公众号:鱼影安全
[X] 优快云:落寞的魚丶
[X] 知识星球:中职-高职-CTF竞赛
[X] 信息安全评估(高职)、中职网络安全、金砖比赛、世界技能大赛省选拔选拔赛、电子取证比赛,CTF培训等
欢迎师傅们交流学习,加我可以拉粉丝群~
(二)网络拓扑图
模 块 A 企 业 网 络 基 础 设 施 安 全
网络配置服务,略了
模 块 B 网 络 安 全 事 件 响 应 、 数字 取 证 调 查 和 应 用 程 序 安 全
任务一:内存取证
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB/Volatility
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
*任务说明:本次需要检测的镜像已放置放在本机桌面上。
1.从内存文件中找到异常程序的进程,将进程的名称作为 Flag值提交;
2.从内存文件中找到黑客将异常程序迁移后的进程编号,将迁移后的进程编号作为 Flag 值提交;
3.从内存文件中找到黑客隐藏的文档,将该文档文件名作为 Flag值提交;
4.从内存文件中找到异常程序植入到系统的开机自启痕迹,使用Volatility 工具分析出异常程序在注册表中植入的开机自启项的Virtual 地址,将 Virtual 地址作为 Flag 值提交;
5.从内存文件中找到异常程序植入到系统的开机自启痕迹,将启动项最后一次更新的时间作为 Flag 值(只提交年月日,例如:20210314)提交。
6.从内存文件中找到受害者的管理员帐号密码,将管理员帐号密码的密码哈希作为 flag 提交。
任务二:数据包取证:协议渗透测试
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB/Wireshark
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
*任务说明:
服务器场景 1:linux(版本不详)
服务器场景 1 的 FTP 服务账号:匿名
任务内容:
1.已知有黑客从公司网络中通过某种协议渗透了重要服务器,获取了机密文件,目前从全流量回溯分析中获得了数据包,从靶机服务器场景 1 的 FTP 服务器中下载 capture-z2.pcap数据包文件,通过使用 Wireshark 查看并分析,将在网络里活动的主机 IP,将 IP 地址以 IP1,IP2,IP3,…,做为 FLAG 提交。(形式:从小到大排序)
2.继续分析数据包 capture-z2.pcap,发现了大量的扫描数据包,找出攻击机的 IP 地址,采用了哪一种端口扫描技术。将攻击机的 IP,TCP 的标志位做为 FLAG 提交(形式:IP,TCP)
3.继续分析数据包 capture-z2.pcap,发现攻击机扫描了目标192.168.3.66,请通过分析,发现该目标打开哪些端口。并将端口号,以 PORT1:PORT2:PORT3:…作形式做为 FLAG 提交;
4.继续分析数据包 capture-z2.pcap,分析黑客进行了协议攻击,将数据包协议名称,操作代码的值,协议类型 16 进制,发送者的 MAC 地址后四位 16 进制,发送者的实际 IP 以冒号分隔的形式作为 FLAG 提交。 (形式:XXX:XXX:XXX:XXX;XXX)
5.继续分析数据包 capture-z2.pcap, 接上题,黑客是否获得了服务器密码。若有将密码值做为 FLAG 提交。若无,以 NONE 值做 FLAG 提交。
6.继续分析数据包 capture-z2.pcap, 接上题,分析黑客是否获得了机密文件,将文件名作为 FLAG 提交。
7.继续分析数据包 capture-z2.pcap,破解文件保护,将文件保护密码作为 FLAG 提交。
8.继续分析数据包 capture-z2.pcap,破解文件保护,将文件内容中第一行回显作为 FLAG 提交。
9.继续分析数据包 capture-z2.pcap,破解文件保护,将文件内容中最后一行回显通过 MD5 运算后返回的哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)。
任务三:网络安全事件响应
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
*任务说明:你的团队通过技术手段已经追寻到一台 windows 服务器,并且拿到了黑客修改的用户名密码。现在,您的团队需要帮助该公司追踪此网络攻击的来源,分析黑客的攻击方法,发现系统中的漏洞,发现并删除系统中黑客隐藏的后门,恢复系统的正常运行。
服务器场景 1:WindowsServer
服务器场景 1: 用户名:administrator 密码 Admin123
1.通过本地 PC 中渗透测试平台对服务器场景进行终端服务开启,还原黑客的攻击路径并将该操作显示结果中黑客攻击的服务端口号作为 FLAG 提交;
2.通过本地 PC 中渗透测试平台对服务器场景进行渗透测试,找到服务器场景中的黑客在管理员用户的桌面下中的遗留的恶意可执行文件,并将该可执行文件全称作为 FLAG 提交;
3.通过本地 PC 中渗透测试平台对服务器场景进行渗透测试,找到服务器场景中黑客在管理员桌面下的窃取的文本文档,将文件内容作为 FLAG 提交;
4.通过本地 PC 中渗透测试平台对服务器场景进行渗透测试,找到服务器场景中黑客在管理员用户的文档中窃取的文件,将文件内容作为 FLAG 提交;
5.通过本地 PC 中渗透测试平台对服务器场景进行渗透测试,找到服务器场景中黑客的后门用户并将用户名作为 FLAG 提交;
任务四:应用程序安全分析
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB
9
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
*任务说明:你的团队检测到一个恶意软件样本,并且找到了改
样本对应的连接程序源码,连接程序源码中部分关键代码被黑客破
坏,请根据样本本上下文修复并连接到改恶意软件样本环境中。
服务器场景 1:linux(版本不详)
服务器场景 1 的 FTP 服务账号:匿名
1.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件linux_elf_01 以及 C 程序源文件 linux_elf_01.c,通过攻击机调试工具,对以上可执行文件 linux_elf_01 进行逆向分析,并利用逆向分析的结果,完善 C 程序源文件linux_elf_01.c,补充该 C 程序源文件当中空缺的 FLAG01 字符串(以 F1 占位),并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
2.继续完善本任务第 1 题中的 C 程序源文件,补充该 C 程序源文件当中空缺的 FLAG02(以 F2 占位)字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
3.继续完善本任务第 1 题中的 C 程序源文件,补充该 C 程序源文件当中空缺的 FLAG03 字符串(以 F3 占位),将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
4.继续完善本任务第 1 题中的 C 程序源文件,补充该 C 程序源文件当中空缺的 FLAG04 字符串(以 F4 占位),将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
5.继续完善本任务第 1 题中的 C 程序源文件,补充该 C 程序源文件当中空缺的 FLAG05 字符串(以 F5 占位),将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
模 块 C 夺 旗 行 动 ( CTF)
任务 1:Web 安全测试
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
靶机:
服务器场景 1:linux(版本不详)
靶机环境中已经上传了 WebShell 访问 http://ip/XXXX(登陆密码为在页面上注意审题)
任务内容:
1.登录服务器场景 1 的 WebShell,通过相关手段打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等,命令并非查看文件),将操作命令作为 FLAG 值提交;
2.根据操作命令回显将内核版本信息作为 FLAG 值提交(形式:X.X.X-XXX);
3.通过相关手段对服务器场景 1 上传提权文件,将上传成功提示单词全部作为 FLAG 值提交;
4.在攻击机虚拟机 1 通过 NC 进行监听模式,输出交互信息或报错信息,并且监听 8081 端口,将命令作为 FLAG 值提交;
5.从攻击机虚拟机 1 对服务器场景 2 通过相关手段进行 NC 连接,将成功回显后结果的正数第三排第四个单词作为 FLAG值提交;
6.从攻击机虚拟机 1 对服务器场景 2 通过相关手段进行 NC 成功连接后,通过相关命令修改 root 密码,将回显最后一行后三个单词作为 FLAG 值提交;
7.修改密码后,查看/root/flag.txt 文件,将回显最后一行最后两个单词作为 FLAG 值提交;
8.对当前用户进行提权,提权成功后,再次查看/root/flag.txt,将回显内容后两个单词作为 FLAG 值提交;
任务 2:逆向分析和缓冲区溢出渗透测试
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
靶机:
服务器场景 1:linux(版本不详)
服务器场景 1 的 FTP 服务账号:匿名
任务内容:
1.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG01 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六位结果作为 Flag 值提交(形式:十六进制字符串)
2.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG02 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
3.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG03 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
4.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG04 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
5.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG05 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
6.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG06 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
7.从靶机服务器场景 1 的 FTP 服务器中下载可执行文件OverFlow10,通过攻击机调试工具,对以上可执行文件进行逆向分析;通过缓冲区溢出渗透测试方法对服务器场景 1 的TCP:4444 端口进行渗透测试,获得靶机根路径下的文件FLAG07 中的字符串,并将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
任务 3:人工智能技术应用:Web 安全测试
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
靶机:服务器场景:linux(版本不详)
服务器场景的 FTP 服务账号:匿名
任务内容:
从靶机服务器场景的 FTP 服务器中下载数据集 DS01、DS02,以及 WebSec01.py 脚本,并对该脚本进行完善,实现如下任务(ABC):
A、对数据集进行特征向量表示得到特征矩阵;
B、利用特征矩阵训练 Web 安全异常检测模型;
C、使用 Web安全异常检测模型判断列表中的 URL 请求是否存在异常。
1.补充该脚本当中空缺的 FLAG01 字符串,并将该字符串通过 MD5运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串);
2.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG02 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)
3.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG03 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)
4.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG04 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)
5.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG05 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)
6.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG06 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)
7.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG07 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字符串)
8.继续完善本任务第 1 题中的 WebSec01.py 脚本,补充该脚本当中空缺的 FLAG08 字符串,将该字符串通过 MD5 运算后返回哈希值的十六进制结果作为 Flag 值提交(形式:十六进制字
符串)
任务 4:LINUX 系统渗透测试
任务环境说明:
攻击机:
物理机:Windows
虚拟机操作系统 1:Ubuntu_Linux
虚拟机 1 安装工具:Python/Python3/GDB
虚拟机 1 用户名:root,密码:123456
虚拟机操作系统 2:CentOS_Linux
虚拟机 2 安装工具:GDB
虚拟机 2 用户名:root,密码:123456
虚拟机操作系统 3:Windows
虚拟机 3 安装工具:OllyICE
虚拟机 3 用户名:administrator,密码:123456
靶机:服务器场景 1:linux(版本不详)
任务内容:
1.通过本地 PC 中渗透测试平台对服务器场景使用 Nmap 不带参数对主机进行扫描,将开放的端口号作为 Flag 值提交;
2.根据第一题的扫描结果,使用 Nmap 扫描并分析靶机开放服务端口,将端口的服务版本作为 Flag 值提交;
3.通过开放端口登录主机,将主目录下 flag 文件的内容作为flag 提交;
4. 根据 flag 文件中的提示,找到目标文件中对应的 CVE 号作为flag 值提交;
5. 根据找到的提示访问目标机器,将页面中的应用系统名称作为 flag 值提交;
6. 通过提示对目标主机进行提权,将/var/www/FLAG 计算 MD5,将计算后获得的 Hash 作为 flag 值提交。