B模块安全事件响应/网络安全数据取证/应用安全(400分)
B-1:Linux系统渗透提权
服务器场景:Server2214(关闭链接)
用户名:hacker 密码:123456
1.使用渗透机对服务器信息收集,并将服务器中SSH服务端口号作为flag提交;
2.使用渗透机对服务器信息收集,并将服务器中主机名称作为flag提交;
3.使用渗透机对服务器信息收集,并将服务器中系统内核版本作为flag提交;
4.使用渗透机对服务器管理员提权,并将服务器中root目录下的文本内容作为flag提交;
5.使用渗透机对服务器管理员提权,并将服务器中root的密码作为flag提交;
6.使用渗透机对服务器管理员提权,并将服务器中root目录下的图片内容作为flag提交。
B-2:内存取证
服务器场景:win20230306(关闭链接)
FTP用户名:user,密码:123456
1.在服务器中下载内存片段,在内存片段中获取主机信息,将管理员密码作为Flag值提交;
2.在内存片段中获取主机信息,将此片段的地址作为Flag值提交;
3.在内存片段中获取主机信息,将此片段的主机名作为Flag值提交;
4.在内存片段中获取主机信息,将挖矿程序的地址及端口号作为Flag值提交;(若为多个用;分开)
5.在内存片段中获取主机信息,将后台恶意程序所用的程序名称作为Flag值提交;
6.在内存片段中获取主机信息,将此时的浏览器搜寻的关键词作为Flag值提交。
B-3:页面信息发现
服务器场景:win20230305(关闭链接)
1.在渗透机中对服务器信息收集,将获取到的服务器网站端口作为Flag值提交;
2.访问服务器网站页面,找到主页面中的Flag值信息,将Flag值提交;
3.访问服务器网站页面,找到主页面中的脚本信息,并将Flag值提交;
4.访问服务器网站页面,找到登录页面信息,将登录成功后的信息作为Flag值提交;
5.访问服务器网站页面,找到转化页面信息,将Flag值提交;
6.访问服务器网站页面,找到对比页面信息,将Flag值提交。
B-4:数字取证调查
服务器场景:FTPServer20221010(关闭链接)
服务器场景操作系统:未知
FTP用户名:attack817密码:attack817
1.分析attack.pcapng数据包文件,通过分析数据包attack.pcapng找出恶意用户第一次访问HTTP服务的数据包是第几号,将该号数作为Flag值提交;
2.继续查看数据包文件attack.pcapng,分析出恶意用户扫描了哪些端口,将全部的端口号从小到大作为Flag值(形式:端口1,端口2,端口3…,端口n)提交;
3.继续查看数据包文件attack.pcapng分析出恶意用户登录后台所用的密码是什么,将后台密码作为Flag值提交;
4.继续查看数据包文件attack.pcapng分析出恶意用户写入的一句话木马的密码是什么,将一句话密码作为Flag值提交;
5.继续查看数据包文件attack.pcapng分析出恶意用户下载了什么文件,将该文件内容作为Flag值提交。
B-5:网络安全应急响应
服务器场景:Server2228(开放链接)
用户名:root,密码:p@ssw0rd123
1.找出系统中被植入的后门用户删除掉,并将后门用户的账号作为Flag值提交(多个用户名之间以英文逗号分割,如:admin,root);
2.找出黑客在admin用户家目录中添加的ssh后门,将后门的写入时间作为Flag值(提交的时间格式为:2022-01-12 08:08:18)
3.找出黑客篡改过的环境变量文件并还原,将文件的md5值作为Flag值提交;
4.找出黑客修改了bin目录下的某个文件,将该文件的格式作为Flag值提交;
5.找出黑客植入系统中的挖矿病毒,将矿池的钱包地址作为Flag值(提交格式为:0xa1d1fadd4fa30987b7fe4f8721b022f4b4ffc9f8)提交。
B-6:Python代码分析
服务器场景:Server2023111301(开放链接)
用户名:administrator,密码:123456
1.完善Server2023110901桌面上的Flag.py文件,填写该文件当中空缺的Flag1字符串,并将该字符串作为Flag值提交;(Flag.py在Python代码分析文件夹中)
2.继续完善Flag.py文件,填写该文件当中空缺的Flag2字符串,并将该字符串作为Flag值提交;
3.继续完善Flag.py文件,填写该文件当中空缺的Flag3字符串,并将该字符串作为Flag值提交;
4.继续完善Flag.py文件,填写该文件当中空缺的Flag4字符串,并将该字符串作为Flag值提交;
5.将完善好的脚本文件在Kali上执行,将执行成功后的回显内容作为Flag值提交。
B-7:逆向分析
服务器场景:Server2023111301(开放链接)
用户名:administrator,密码:123456
1.在 JavaScript 语言中,将给定的长字符串转换为一个数组的方法,将该方法应用于逆向解码操作(可执行文件位于Server2023111301桌面逆向分析文件夹中),所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
2.写出在字符串中匹配连续的四个字符,且每两个字符之间用空格分隔的正则匹配表达式,将该正则表达式应用于逆向解码操作,所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
3.使用 JavaScript 中的方法,将迭代器中的每个匹配项取出第一个字符,也就是每个四字符组的第一个字符。将该方法应用于逆向解码操作,所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
4.使用 JavaScript 中的方法,对上一个步骤中得到的结果的字符进行操作,将它们用空格分隔、反转顺序,然后再连接起来。所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
5.使用 JavaScript 中的方法,将倒序排列后的字符解释为十六进制数字,然后将其右移2位。所得的结果进行Base64运算,将过程中使用的方法作为Flag值提交(例如:array.splice());
6.将上一步处理后的数字转换为相应的Unicode字符。并将所有转换后的Unicode字符连接成一个字符串。所得的结果进行Base64运算,将运算后得到的结果作为Flag值提交。