开封市第二届职业技能大赛
网络安全项目(世赛)-B模块
试
题
文
件
一、竞赛阶段
竞赛阶段 | 任务阶段 | 竞赛任务 | 竞赛时间 | 分值 |
B模块 | B-1 | SSH弱口令渗透测试 | 120分钟 | 400分 |
B-2 | Windows操作系统渗透测试 | |||
B-3 | 数字取证调查 | |||
B-4 | 隐藏信息探索 | |||
B-5 | 内存取证 | |||
B-6 | Web安全渗透测试 | |||
B-7 | Linux系统渗透提权 | |||
B-8 | 系统渗透 | |||
B-9 | 事件分析应急响应 | |||
B-10 | 逆向分析 |
二、竞赛任务书内容
B模块安全事件响应/网络安全数据取证/应用安全(400分)
B-1:网页渗透
- 服务器场景:Server2120(关闭链接)
- 服务器场景操作系统:未知
- 访问服务器的网站主页,猜测后台数据库中本网页中应用的库名称长度,将长度作为flag提交;
- 访问服务器的网站主页,猜测后台数据库中本网页中应用的库名称,将名称作为flag提交;
- 访问服务器的网站主页,猜测后台数据库中本页面中应用的表名称长度,将表名称长度作为flag提交;
- 访问服务器的网站主页,猜测后台数据库中本网页中应用的表名称,将名称作为flag提交
- 访问服务器的网站主页,猜测后台数据库中本页面中第二个应用的字段名称,将名作为flag提交。
- 访问服务器的网站主页,猜测后台数据库中本页面中ID为1的用户名,将用户名作为flag提交。
B-2:隐藏信息探索
- 服务器场景:FTPServer2201010
- 服务器场景操作系统: Linux(关闭链接)
- FTP用户名:qdbgts密码:qdbgts
- 访问服务器的FTP服务,下载图片QR,从图片中获取flag,并将flag提交;
- 访问服务器的FTP服务,下载文件document,从文件中获取flag,并将flag提交;
- 访问服务器的FTP服务,下载图片beach,从图片中获取flag,并将flag提交;
- 访问服务器的FTP服务,下载图片grass,从图片中获取flag,并将flag提交;
- 访问服务器的FTP服务,下载图片tree,从图片中获取flag,并将flag提交;
- 访问服务器的FTP服务,下载压缩文件style,从压缩文件中获取flag,并将flag提交。
B-3:数字取证调查
- 服务器场景:FTPServer20221010(关闭链接)
- 服务器场景操作系统:未知
- FTP用户名:attack817密码:attack817
- FTP下载数据包,分析attack.pcapng数据包文件,通过分析数据包attack.pcapng找出恶意用户第一次访问HTTP服务的数据包是第几号,将该号数作为Flag值提交;
- 继续查看数据包文件attack.pcapng,分析出恶意用户扫描了哪些端口,将全部的端口号从小到大作为Flag值(形式:端口1,端口2,端口3…,端口n)提交;
- 继续查看数据包文件attack.pcapng分析出恶意用户登录后台所用的密码是什么,将后台密码作为Flag值提交;
- 继续查看数据包文件attack.pcapng分析出恶意用户写入的一句话木马的密码是什么,将一句话密码作为Flag值提交;
- 继续查看数据包文件attack.pcapng分析出恶意用户下载了什么文件,将该文件内容作为Flag值提交。
B-4:隐藏信息探索
- 服务器场景:Server2007(关闭链接)
- 服务器场景操作系统:未知
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,找到登录界面中的FLAG,并将FLAG提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,找到登录界面背景中的FLAG,并将FLAG提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,在登录界面中登录,登录成功后在成功的界面中找到FLAG并提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,登录成功后找到页面中的月亮,将月亮中的信息解密,并将解密后的信息作为FLAG提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,登录成功后找到页面中的十字星,将十字星中页面内容进行下载,将下载到的文件解密,并将解密后的文件内容作为FLAG提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,在登录界面中登录,登录失败后找到页面中的链接访问连接并下载文件,将文件中的隐藏文件全称作为FLAG提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,在登录界面中登录,登录失败后找到页面中的链接访问连接并下载文件,将文件中隐藏信息文件的内容作为FLAG提交;
- 通过本地PC中渗透测试平台Kali对服务器场景Server2007中的网站进行访问,寻找每页中的隐藏信息,将每条信息按顺序合并,作为FLAG提交;
B-5:内存取证
- 仅能获取win20230306的IP地址
- FTP用户名:user,密码:123456
- 在服务器中下载内存片段,在内存片段中获取主机信息,将管理员密码作为Flag值提交;
- 在内存片段中获取主机信息,将此片段的地址作为Flag值提交;
- 在内存片段中获取主机信息,将此片段的主机名作为Flag值提交;
- 在内存片段中获取主机信息,将挖矿程序的地址及端口号作为Flag值提交;(若为多个用;分开)
- 在内存片段中获取主机信息,将后台恶意程序所用的程序名称作为Flag值提交;
- 在内存片段中获取主机信息,将此时的浏览器搜寻的关键词作为Flag值提交。
B-6:Web安全渗透测试
- 服务器场景:PYsystem003
- 服务器场景操作系统:未知(关闭链接)
- 服务器用户名:未知 密码:未知
- 通过浏览器访问http://靶机服务器IP/1,对该页面进行渗透测试, 找到flag格式:flag{Xxxx123},括号中的内容作为flag值并提交;
- 通过浏览器访问http://靶机服务器IP/2,对该页面进行渗透测试, 找到flag格式:flag{Xxxx123},括号中的内容作为flag值并提交;
- 通过浏览器访问http://靶机服务器IP/3,对该页面进行渗透测试, 找到flag格式:flag{Xxxx123},括号中的内容作为flag值并提交;
- 通过浏览器访问http://靶机服务器IP/4,对该页面进行渗透测试, 找到flag格式:flag{Xxxx123},括号中的内容作为flag值并提交;
- 通过浏览器访问http://靶机服务器IP/5,对该页面进行渗透测试, 找到flag格式:flag{Xxxx123},括号中的内容作为flag值并提交。
B-7:Linux系统渗透提权
- 服务器场景:Server2204(关闭链接)
- 用户名:hacker 密码:123456
- 使用渗透机对服务器信息收集,并将服务器中SSH服务端口号作为flag提交;
- 使用渗透机对服务器信息收集,并将服务器中主机名称作为flag提交;
- 使用渗透机对服务器信息收集,并将服务器中系统内核版本作为flag提交;
- 使用渗透机对服务器管理员提权,并将服务器中root目录下的文本内容作为flag提交;
- 使用渗透机对服务器管理员提权,并将服务器中root的密码作为flag提交;
- 使用渗透机对服务器管理员提权,并将服务器中root目录下的图片内容作为flag提交。
B-8:系统渗透
- 仅能获取lin20230502的IP地址
- 在渗透机中对服务器主机进行信息收集,将服务器开启的端口号作为Flag值提交;
- 在渗透机中对服务器主机进行渗透,在服务器主机中获取服务器主机名称,将主机名作为Flag值提交;
- 在渗透机中对服务器主机进行渗透,在服务器主机中获取内核版本,将内核版本作为Flag值提交;
- 在渗透机中对服务器主机进行渗透,在服务器主机中获取管理员的密码,将密码作为Flag值提交;
- 在渗透机中对服务器主机进行渗透,在服务器主机中找到网站根目录下的flag文件,将文件中内容作为Flag值提交;
- 在渗透机中对服务器主机进行渗透,在服务器主机中找到管理员家目录下的flag文件,将文件中内容作为Flag值提交。
B-9:事件分析应急响应
- 服务器场景:Server2229(开放链接)
- 用户名:root,密码:p@ssw0rd123
- 找出黑客植入到系统中的二进制木马程序,并将木马程序的名称作为Flag值(若存在多个提交时使用英文逗号隔开,例如bin,sbin,...)提交;
- 找出被黑客修改的系统默认指令,并将被修改的指令里最后一个单词作为Flag值提交;
- 找出被黑客替换的系统指令,并将其绝对路径作为Flag值提交;
- 找出被黑客修改的服务配置文件,将文件的md5值前四位作为Flag值提交;
- 找出系统中的弱口令账号,将该账号的用户名及密码作为Flag值(用户名和密码之间用英文冒号隔开,例如:root:toor)提交。
B-10:逆向分析
- 任务说明:Server2023111301(开放链接)
- 用户名:administrator,密码:123456
- 在 JavaScript 语言中,将给定的长字符串转换为一个数组的方法,将该方法应用于逆向解码操作(可执行文件位于Server2023111301桌面逆向分析文件夹中),所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
- 写出在字符串中匹配连续的四个字符,且每两个字符之间用空格分隔的正则匹配表达式,将该正则表达式应用于逆向解码操作,所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
- 使用 JavaScript 中的方法,将迭代器中的每个匹配项取出第一个字符,也就是每个四字符组的第一个字符。将该方法应用于逆向解码操作,所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
- 使用 JavaScript 中的方法,对上一个步骤中得到的结果的字符进行操作,将它们用空格分隔、反转顺序,然后再连接起来。所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
- 使用 JavaScript 中的方法,将倒序排列后的字符解释为十六进制数字,然后将其右移2位。所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
- 将上一步处理后的数字转换为相应的Unicode字符。并将所有转换后的Unicode字符连接成一个字符串。所得的结果进行Base64运算,将运算后得到的结果作为Flag值提交。