2023年全国网络安全AB模块比赛题

网络安全竞赛试题

AB 模块

(总分 60 分)

赛题说明

一、竞赛项目简介

“网络安全”竞赛共分 A.基础设施设置与安全加固;B.网络安

全事件响应、数字取证调查和应用安全;C.CTF 夺旗-攻击;D.CTF

夺旗-防御等四个模块。根据比赛实际情况,竞赛赛场实际使用赛题

参数、表述及环境可能有适当修改,具体情况以实际比赛发放赛题

为准。竞赛时间安排和分值权重见表1。

表1 竞赛时间安排与分值权重

二、竞赛注意事项

权值

A 基础设施设置与安全加固

4

20%

B 网络安全事件响应、数字取证调查和应用安全 40%

C CTF夺旗-攻击

3

20%

D CTF夺旗-防御 20%

总计 7 100%

1.比赛期间禁止携带和使用移动存储设备、计算器、通信工具

及参考资料。

2.请根据大赛所提供的比赛环境,检查所列的硬件设备、软件

清单、材料清单是否齐全,计算机设备是否能正常使用。

3.在进行任何操作之前,请阅读每个部分的所有任务。各任务

之间可能存在一定关联。

4.操作过程中需要及时按照答题要求保存相关结果。比赛结束

后,所有设备保持运行状态,评判以最后提交的成果为最终依据。

5.比赛完成后,比赛设备、软件和赛题请保留在座位上,禁止

将比赛所用的所有物品(包括试卷等)带离赛场。

6.禁止在提交资料上填写与竞赛无关的标记,如违反规定,可

视为0 分。

竞赛内容

模块A 基础设施设置与安全加固

(本模块20 分)

一、项目和任务描述:

假定你是某企业的网络安全工程师,对于企业的服务器系统,

根据任务要求确保各服务正常运行,并通过综合运用用户安全管理

与密码策略、Nginx安全策略、日志监控策略、中间件服务安全策

略、本地安全策略、防火墙策略等多种安全策略来提升服务器系统

的网络安全防御能力。本模块要求根据竞赛现场提供的A 模块答题

模板对具体任务的操作进行截图并加以相应的文字说明,以 word 文

档的形式书写,以PDF 格式保存,以“赛位号+模块A”作为文件

名,PDF格式文档为此模块评分唯一依据。

二、服务器环境说明

Windows 用户名:administrator,密码:123456

Linux 用户名:root,密码:123456

三、具体任务(每个任务得分以电子答题卡为准)

A-1 任务一 登录安全加固(Windows, Linux)

请对服务器 Windows、Linux 按要求进行相应的设置,提高服务

器的安全性。

1.密码策略(Windows, Linux)

a.最小密码长度不少于 13 个字符;

b.密码必须符合复杂性要求。

2.用户安全管理(Windows)

a.设置取得文件或其他对象的所有权,将该权限只指派给

administrators 组;

b.禁止普通用户使用命令提示符;

c.设置不显示上次登录的用户名。

A-2 任务二 Nginx安全策略(Linux)

3.禁止目录浏览和隐藏服务器版本和信息显示;

4.限制HTTP请求方式,只允许GET、HEAD、POST;

5.设置客户端请求主体读取超时时间为 10;

6.设置客户端请求头读取超时时间为10;

7.将Nginx 服务降权,使用www 用户启动服务。

A-3 任务三 日志监控(Windows)

8.安全日志文件最大大小为128MB,设置当达到最大的日志大小

上限时,按需要覆盖事件(旧事件优先);

9.应用日志文件最大大小为 64MB,设置当达到最大的日志大小

上限时将其存档,不覆盖事件;

10.系统日志文件最大大小为32MB,设置当达到最大的日志大小

上限时,不覆盖事件(手动清除日志)。

A-4 任务四 中间件服务加固 SSHD\VSFTPD\IIS(Windows, Linux)

11.SSH 服务加固(Linux)

a.修改ssh 服务端口为2222;

b.ssh 禁止root 用户远程登录;

c.设置 root 用户的计划任务。每天早上 7:50 自动开启 ssh 服

务,22:50 关闭;每周六的 7:30重新启动ssh 服务;

d.修改SSHD 的PID档案存放地。

12.VSFTPD 服务加固(Linux)

a.设置运行vsftpd的非特权系统用户为 pyftp;

b.限制客户端连接的端口范围在 50000-60000;

c.限制本地用户登录活动范围限制在home 目录。

13.IIS 加固(Windows)

a.开启IIS的日志审计记录(日志文件保存格式为W3C,只记录日

期、时间、客户端IP 地址、用户名、方法);

b.关闭IIS 的WebDAV 功能增强网站的安全性。

A-5 任务五 本地安全策略(Windows)

14.禁止匿名枚举 SAM 帐户;

15.禁止系统在未登录的情况下关闭;

16.禁止存储网络身份验证的密码和凭据;

17.禁止将Everyone 权限应用于匿名用户;

18.在超过登录时间后强制注销。

A-6 任务六 防火墙策略(Linux)

19.设置防火墙允许本机转发除ICMP 协议以外的所有数据包;

20.为防止 Nmap 等扫描软件探测到关键信息,设置 iptables 防

火墙策略对80 号端口进行流量处理;

21.为防御拒绝服务攻击,设置 iptables 防火墙策略对传入的流

量进行过滤,限制每分钟允许3 个包传入,并将瞬间流量设定为一次

最多处理6 个数据包(超过上限的网络数据包将丢弃不予处理);

22.只允许转发来自 172.16.0.0/24 局域网段的 DNS 解析请求数

据包。

模块B 网络安全事件响应、数字取证调查和应用安全

(本模块40 分,每个子任务4 分)

B-1 任务一:主机发现与信息收集

*任务说明:仅能获取 Server1 的IP 地址

1.在Kali 中使用 Nmap 工具查看本地路由与接口,并将该操作使

用的全部命令作为Flag 值提交;

2.通过Kali对靶机场景进行VNC 服务扫描渗透测试,并将使用

的脚本名称作为Flag 值(如:MySQL-brute.nse)提交;

3.通过Kali对靶机场景进行VNC 服务扫描渗透测试,并将该操

作显示结果中VNC协议版本号作为Flag 值提交;

4.在Kali 中使用 Nmap 发送空的UDP 数据对类DNS 服务avahi

进行拒绝服务攻击,并将使用的脚本名称作为Flag 值(如:MySQL-

brute.nse)提交;

5.通过Kali对靶机场景进行模糊测试,来发送异常的HTTP 包

到靶机服务器,探测出隐藏在服务器中的漏洞 ,并将使用的脚本名

称作为Flag值(如:MySQL-brute.nse)提交;

6.在Kali 中使用 Zenmap工具扫描服务器场景可能存在bash 远

程任意代码执行漏洞,并将使用的脚本名称的字符串作为 Flag 值

7 / 14

(如:MySQL-brute.nse)提交;

7.在Kali 中使用 Zenmap工具扫描服务器场景可能存在bash 远

程任意代码执行漏洞(提示:检测路径为/cgi-bin/bin,需添加--

script-args uri=/cgi-bin/bin 参数),并将该操作显示结果中漏

洞编号和发布时间作为 Flag 值(漏洞编号和发布时间的字符串之间

以英文分号隔开)提交。

B-2 任务二:Web 渗透测试

*任务说明:仅能获取 Server6 的IP 地址

1.获取Apache 的版本号作为Flag 值(例如:5.2.14)提交;

2.获取Samba 服务器的版本号作为Flag 值(例如:5.0.22)提

交;

3.获取系统的内核版本号作为Flag 值(例如:2.6.18)提交;

4.网站根路径下的图片内容作为 Flag值提交;

5.找到/root 目录中的txt 文件,将文件内容作为Flag 值提

交。

B-3 任务三:数据分析数字取证

*任务说明:仅能获取 Server2 的IP 地址

1.分析Server2桌面下的attack.pcapng 数据包文件,通过分

析数据包attack.pcapng 找出恶意用户第一次访问HTTP 服务的数据

包是第几号,将该号数作为Flag 值提交;

8 / 14

2.继续查看数据包文件 attack.pcapng,分析出恶意用户扫描

了哪些端口,将全部的端口号从小到大作为 Flag值(形式:端口

1,端口2,端口3…,端口n)提交;

3.继续查看数据包文件 attack.pcapng 分析出恶意用户登录后

台所用的密码是什么,将后台密码作为Flag 值提交;

4.继续查看数据包文件 attack.pcapng 分析出恶意用户写入的

一句话木马的密码是什么,将一句话密码作为Flag 值提交;

5.继续查看数据包文件 attack.pcapng 分析出恶意用户下载了

什么文件,将该文件内容作为Flag 值提交。

B-4 任务四:漏洞扫描与验证

*任务说明:仅能获取 Server2 的IP 地址

1.通过本地PC 中渗透测试平台Kali 对靶机场景Server2进行

系统服务及版本扫描渗透测试,以xml 格式向指定文件输出信息

(使用工具Nmap),将以xml格式向指定文件输出信息必须要使用

的参数作为Flag 值提交;

2.在本地PC的渗透测试平台Kali 中,使用命令初始化MSF 数

据库并将此命令作为 Flag 值提交;

3.在本地PC的渗透测试平台Kali 中,打开MSF,使用

db_import 将扫描结果导入到数据库中,并查看导入的数据,将查

看该数据要使用的命令作为Flag 值提交;

9 / 14

4.在MSF工具中用search 命令搜索CVE-2019-0708漏洞利用模

块,将回显结果中的漏洞公开时间作为 Flag 值(如:2017-10-16)

提交;

5.在MSF工具中调用 CVE-2019-0708漏洞攻击模块,并检测靶

机是否存在漏洞,将回显结果中最后一个单词作为 Flag值提交。

B-5 任务五:PE Reverse

*任务说明:仅能获取 Server9 的IP 地址

1.对靶机服务器场景桌面上的PE01.exe 二进制文件进行静态调

试,将main函数的入口地址作为 Flag值提交;

2.对靶机服务器场景桌面上的PE01.exe 二进制文件进行静态调

试,将该二进制文件中检查许可证的关键函数作为 Flag值提交;

3.对靶机服务器场景桌面上的PE01.exe 二进制文件进行静态调

试,找到Flag1值并提交;

4.对靶机服务器场景桌面上的PE01.exe 二进制文件进行静态调

试,尝试破解该二进制文件,将注册成功后的回显信息作为 Flag 值

提交;

5.对靶机服务器场景桌面上的PE01.exe 二进制文件进行静态调

试,将该激活所需的许可证码作为Flag 值提交;

B-6 任务六:Telnet 弱口令渗透测试

*任务说明:仅能获取 Server1 的IP 地址

1.在渗透机Kali2.0 中使用Zenmap 工具扫描服务器场景

Windows所在网段(例如:172.16.101.0/24)范围内存活的主机 IP

地址和指定开放的21、22、23 端口,并将该操作使用的命令中必须

要添加的字符串作为 Flag 值(忽略ip 地址)提交;

2.通过渗透机 Kali2.0 对服务器场景Windows 进行系统服务及

版本扫描渗透测试,并将该操作显示结果中 TELNET 服务对应的服务

端口信息作为Flag值提交;

3.在渗透机Kali2.0 中使用MSF 中模块对其爆破,使用search

命令,并将扫描弱口令模块的名称信息作为 Flag值提交;

4.在上一题的基础上使用命令调用该模块,并查看需要配置的

信息(使用show options 命令),将回显中需要配置的目标地址,密

码使用的猜解字典,线程,账户配置参数的字段作为Flag 值(字段之

间以英文逗号分隔,例 hello,test,..,..)提交;

5.在msf模块中配置目标靶机IP 地址,将配置命令中的前两个

单词作为Flag 值提交;

6.在msf模块中指定密码字典,字典路径为/root/2.txt,用户

名为root 爆破获取密码并将得到的密码作为 Flag值提交;

7.在上一题的基础上,使用第6 题获取到的密码telnet到靶

机,将用户root 家目录中.bmp图片文件中的英文单词作为 Flag 值

提交。

B-7 任务七:文件 MD5 校验

*任务说明:仅能获取 Server1 的IP 地址

1.进入虚拟机操作系统:Server1中的/root 目录,找到

test.txt 文件,并使用 md5sum工具来计算出该文件的md5 值,并

将计算该文件md5的命令的字符串作为 Flag 值提交;

2.进入虚拟机操作系统:Server1中的/root 目录,找到

test.txt 文件,并使用 md5sum校验工具来计算出该文件的 md5

值,并将计算该文件得到的md5 值的字符串中前6 位作为 Flag 值提

交;

3.进入虚拟机操作系统:Server1中的/root 目录,将

test.txt 文件的文件名称改为txt.txt,然后再使用md5sum 工具计

算txt.txt 文件的md5 值,并将计算该文件得到的md5值的字符串

中前5 位数字和之前 test.txt文件md5 值的字符串中前5位数字相

减的结果作为Flag值提交;

4.进入虚拟机操作系统:Server1,使用md5sum 工具来计算

/etc/passwd 文件的md5 值,并将该md5 值导入到passwd.md5文件

中,并将该命令的字符串作为Flag 值提交;

5.进入虚拟机操作系统:Server1,创建一个新的用户,用户名

为user06,密码为123456。再次计算/etc/passwd的md5值,并将

该值与passwd.md5文件中的值进行对比,并将添加用户后

/etc/passwd 文件的md5 值的字符串中前三位数字和之前

/etc/passwd 文件md5 值的字符串中前三位数字相减的结果作为

Flag值提交。

B-8 任务八:Linux系统安全

*任务说明:仅能获取 Server4 的IP 地址

1.通过本地PC 中渗透测试平台Kali 对服务器场景Server4 进

行系统服务及版本扫描渗透测试,并将该操作显示结果中 22端口对

应的服务版本信息字符串作为Flag 值提交;

2.找到/var/www 目录中的图片文件,将文件名称作为Flag 值

提交;

3.找到Flag1 作为Flag 值提交;

4.找到Flag2 作为Flag 值提交;

5.找到Flag3 作为Flag 值提交。

B-9 任务九:操作系统应急响应

*任务说明:仅能获取 Server3 的IP 地址

1.黑客通过网络攻入本地服务器,在Web 服务器的主页上外挂

了一个木马连接,请你找到此连接并删除该连接,将对应的标题名

称作为Flag值提交;

2.黑客攻入本地的数据库服务器,并添加了除admin以外的具

有一个管理员权限的超级用户,将此用户的密码作为Flag 值提交;

3.黑客攻入本地服务器,在本地服务器建立了多个超级用户,

请你删除除了Administrator 用户以外的其他超级管理员用户,然

后在命令行窗口输入 net user,将Administrator 右边第一个单词

作为Flag 值提交;

4.黑客修改了服务器的启动内容,请你删除不必要的启动项程

序,将该启动项程序的名称作为 Flag值(如有多个名称之间以英文

逗号分隔,如:hello,test)提交;

5.黑客在服务器某处存放了一个木马程序,请你找到此木马程

序并清除木马,将木马文件名作为Flag 值提交。

B-10 任务十:Windows 系统安全

*任务说明:仅能获取 Server5 的IP 地址

1.通过本地PC 中渗透测试平台Kali 对服务器场景Server5 进

行系统服务及版本扫描渗透测试,并将该操作显示结果中 1433 端口

对应的服务版本信息作为 Flag值提交;

2.通过本地PC 中渗透测试平台Kali 对服务器场景Server5 进

行系统服务及版本扫描渗透测试,将DNS 服务器的主机完全合格域

名作为Flag值提交;

3.将目标服务器中SQL-Server 数据库低权限(无法通过数据库

执行指令系统命令)用户的密码作为Flag 值提交;

4.将目标服务器中SQL-Server 数据库权限较高(可以通过数据

库指令执行系统命令)用户的密码作为 Flag 值提交;

5.找到C:\Windows\system32 文件夹中266437 文件夹中后缀

为.docx的文件,将文档内容作为 Flag值提交;

你可能感兴趣的:(网络安全)