第十六届山东省职业院校技能大赛中职组网络安全赛项竞赛正式试题

news2024/11/29 9:51:29

第十六届山东省职业院校技能大赛中职组网络安全"赛项竞赛试题

一、竞赛时间

总计:360分钟

二、竞赛阶段

竞赛阶段任务阶段竞赛任务竞赛时间分值
A、B模块A-1登录安全加固180分钟200分
A-2本地安全策略设置
A-3流量完整性保护
A-4事件监控
A-5服务加固
A-6防火墙策略
B-1Linux系统渗透提权400分
B-2内存取证
B-3页面信息发现
B-4数字取证调查
B-5网络安全应急响应
B-6Python代码分析
B-7逆向分析
C、D模块C模块CTF夺旗-攻击180分钟200分
D模块CTF夺旗-防御200分

三、竞赛任务书内容

(一)拓扑图

在这里插入图片描述

(二)A模块基础设施设置/安全加固(200分)

一、项目和任务描述:

假定你是某企业的网络安全工程师,企业服务器可能被黑客攻击, 进行了未知操作,为了确保服务器正常运行,请按照网络安全岗位实 施规范,进行相关操作。通过综合运用用户安全管理与密码策略、Nginx安全策略、日志监控策略、中间件服务安全策略、本地安全策略、防火墙策略等多种安全策略来提升服务器系统的网络安全防御能力。本模块要求根据竞赛现场提供的A模块答题模板对具体任务的操作进行截图并加以相应的文字说明,以word文档的形式书写,以PDF格式保存。

二、服务器环境说明

AServer08(windows)、 用户名:administrator,密码:123456

AServer09(linux) 用户名:root,密码:123456

三、说明:

1.所有截图要求截图界面、字体清晰,并粘贴于相应题目要求的位置;

2.文件名命名及保存:网络安全模块A-XX(XX为工位号),PDF格式保存;

3.文件保存到U盘提交。

A-1** :登录安全加固( Windows, Linux )**

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

1.密码策略(Windows, Linux)

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

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

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\IISWindows, 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.为防止SSH服务被暴力枚举,设置iptables防火墙策略仅允许172.16.10.0/24网段内的主机通过SSH连接本机;

21.为防御拒绝服务攻击,设置iptables防火墙策略对传入的流量进行过滤,限制每分钟允许3个包传入,并将瞬间流量设定为一次最多处理6个数据包(超过上限的网络数据包将丢弃不予处理);

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

(三)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值提交。

(四)模块C CTF夺旗-攻击

(本模块** 200 **分)

一、项目和任务描述:

假定你是某企业的网络安全渗透测试工程师,负责企业某些服务器的安全防护,为了更好的寻找企业网络中可能存在的各种问题和漏洞。你尝试利用各种攻击手段,攻击特定靶机,以便了解最新的攻击手段和技术,了解网络黑客的心态,从而改善您的防御策略。

请根据《赛场参数表》提供的信息,在客户端使用谷歌浏览器登录答题平台。

二、操作系统环境说明:

客户机操作系统:Windows 10/Windows7

靶机服务器操作系统:Linux/Windows

三、漏洞情况说明:

1.服务器中的漏洞可能是常规漏洞也可能是系统漏洞;

2.靶机服务器上的网站可能存在命令注入的漏洞,要求选手找到命令注入的相关漏洞,利用此漏洞获取一定权限;

3.靶机服务器上的网站可能存在文件上传漏洞,要求选手找到文件上传的相关漏洞,利用此漏洞获取一定权限;

4.靶机服务器上的网站可能存在文件包含漏洞,要求选手找到文件包含的相关漏洞,与别的漏洞相结合获取一定权限并进行提权;

5.操作系统提供的服务可能包含了远程代码执行的漏洞,要求用户找到远程代码执行的服务,并利用此漏洞获取系统权限;

6.操作系统提供的服务可能包含了缓冲区溢出漏洞,要求用户找到缓冲区溢出漏洞的服务,并利用此漏洞获取系统权限;

7.操作系统中可能存在一些系统后门,选手可以找到此后门,并利用预留的后门直接获取到系统权限。

四、注意事项:

1.不能对裁判服务器进行攻击,警告一次后若继续攻击将判令该参赛队离场;

2.flag值为每台靶机服务器的唯一性标识,每台靶机服务器仅有1个;

3.在登录自动评分系统后,提交靶机服务器的flag值,同时需要指定靶机服务器的IP地址;

4.赛场根据难度不同设有不同基础分值的靶机,对于每个靶机服务器,前三个获得flag值的参赛队在基础分上进行加分,本阶段每个队伍的总分均计入阶段得分;

5.本环节不予补时。

(五)模块D CTF夺旗-防御

(本模块** 200 **分)

一、项目和任务描述:

假定各位选手是某安全企业的网络安全工程师,负责若干服务器的渗透测试与安全防护,这些服务器可能存在着各种问题和漏洞。你需要尽快对这些服务器进行渗透测试与安全防护。每个参赛队拥有专属的堡垒机服务器,其他队不能访问。参赛选手通过扫描、渗透测试等手段检测自己堡垒服务器中存在的安全缺陷,进行针对性加固,从而提升系统的安全防御性能。

请根据《赛场参数表》提供的信息,在客户端使用谷歌浏览器登录需要加固的堡垒服务器。

二、操作系统环境说明:

客户机操作系统:Windows 10/Windows7

堡垒服务器操作系统:Linux/Windows

三、漏洞情况说明:

1.堡垒服务器中的漏洞可能是常规漏洞也可能是系统漏洞;

2.堡垒服务器上的网站可能存在命令注入的漏洞,要求选手找到命令注入的相关漏洞,利用此漏洞获取一定权限;

3.堡垒服务器上的网站可能存在文件上传漏洞,要求选手找到文件上传的相关漏洞,利用此漏洞获取一定权限;

4.堡垒服务器上的网站可能存在文件包含漏洞,要求选手找到文件包含的相关漏洞,与别的漏洞相结合获取一定权限并进行提权;

5.操作系统提供的服务可能包含了远程代码执行的漏洞,要求用户找到远程代码执行的服务,并利用此漏洞获取系统权限;

6.操作系统提供的服务可能包含了缓冲区溢出漏洞,要求用户找到缓冲区溢出漏洞的服务,并利用此漏洞获取系统权限;

7.操作系统中可能存在一些系统后门,选手可以找到此后门,并利用预留的后门直接获取到系统权限。

四、注意事项:

1.每位选手需要对加固点和加固过程截图,并自行制作系统防御实施报告,最终评分以实施报告为准;

2.系统加固时需要保证堡垒服务器对外提供服务的可用性;

3.不能对裁判服务器进行攻击,警告一次后若继续攻击将判令该参赛队离场;

4.本环节不予补时。

二、说明:

1.所有截图要求截图界面、字体清晰;

2.文件名命名及保存:网络安全模块D-XX(XX为工位号),PDF格式保存;

3.文件保存到U盘提交。

9/ 9

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1291008.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

企业微信开启调试模式

1.关闭企业微信,重新启动 2.启动后按快捷键 ctrlaltshiftD进入调试模式 3.在需要调试的页面点击右键,点击"ShowDevTools",进入调试模式 企业微信 为企业打造的专业办公管理工具;企业微信开放生态平台;企业微…

UniApp H5 跨域代理配置并使用(配置manifest.json、vue.config.js)

UniApp 运行到浏览器的时候,接口会跨域报错,这里通过两种方式解决,第一:修改Uniapp自带的manifest.json 源码视图并进行配置h5设置。第二:在项目根目录新建vue.config.js并配置代理。 二选一即可。 修改或调整配置文件…

QT 中基于 TCP 的网络通信 (备查)

基础 基于 TCP 的套接字通信需要用到两个类: 1)QTcpServer:服务器类,用于监听客户端连接以及和客户端建立连接。 2)QTcpSocket:通信的套接字类,客户端、服务器端都需要使用。 这两个套接字通信类…

记一次mq消息没有收到的问题排查

快速定位和修复问题是程序员的一项基本功,而只有把问题定位准确,才能有针对性的修复。在程序的世界里,神马都是数据。当数据没有按照预期从源头到达目的地,那一定是中间的某个环节出了问题。搞清楚整个链路的模型(包括…

Error: Could not create the Java Virtual Machine(Linux启动tomcat成功后找不到进程8080端口)

文章目录 问题解决问题过程Tomcat版本要求 问题解决 版本冲突,我的jdk是1.8.x, tomcat 是 10.1.x的,要求jdk是11。 问题过程 运行 ./startup.sh 显示如下: 还以为运行成功呢, 使用命令一查,根本查不到进…

Java - InetAddress#isReachable 方法解析

文章目录 前言代码资源 前言 在 Java 中,InetAddress 类提供一个方法来检查一个网络地址是否可达,其作用类似与在命令行执行 ping 命令, 这个方法就是 isReachable 方法。 代码 var baidu InetAddress.getByName("www.baidu.com&quo…

Python之html2text,清晰解读HTML内容!

更多Python学习内容:ipengtao.com 大家好,我是彭涛,今天为大家分享 Python之html2text,清晰解读HTML内容,全文3900字,阅读大约10分钟。 HTML是Web开发中常见的标记语言,但有时我们需要将HTML内容…

LabVIEW发开发电状态监测系统

LabVIEW发开发电状态监测系统 对发电设备的持续监测对于确保可靠的电力供应至消费者极为重要。它不仅能够及时提醒操作员注意发电设备的潜在损坏,还能减少由于设备故障造成的停机时间。为了达到这一目标,开发了一款基于LabVIEW的软件,专门用…

【基于openGauss5.0.0简单使用DBMind】

基于openGauss5.0.0简单使用DBMind 一、环境说明二、初始化tpch测试数据三、使用DBMind索引推荐功能四、使用DBMind实现SQL优化功能 一、环境说明 虚拟机:virtualbox操作系统:openEuler 20.03 TLS数据库:openGauss-5.0.0DBMind:d…

信道的极限容量

目录 信道的最高码元传输速率 限制码元在信道上的传输速率的因素: (1)信道能够通过的频率范围 (2) 信噪比 任何实际的信道都不是理想的,在传输信号时会产生各种失真以及带来多种干扰。 码元传输的速率越…

copilot的使用

📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 🌤️安装和配置编辑器&a…

使用GPT-4V解决Pycharm设置问题

pycharm如何实现关联,用中文回答 在PyCharm中关联PDF文件类型,您可以按照以下步骤操作: 1. 打开PyCharm设置:点击菜单栏中的“File”(文件),然后选择“Settings”(设置)。…

逆向修改Unity的安卓包资源并重新打包

在上一篇文章中,我已经讲过如何逆向获取unity打包出来的源代码和资源了,那么这一节我将介绍如何将解密出来的源代码进行修改并重新压缩到apk中。 其实在很多时候,我们不仅仅想要看Unity的源码,我们还要对他们的客户端源码进行修改和调整,比如替换资源,替换服务器连接地址…

机器的深度强化学习算法可以被诱导

设计一个好的奖励函数是机器深度强化学习算法的关键之一。奖励函数用于给予智能体(机器)在环境中采取不同行动时的反馈信号,以指导其学习过程。一个好的奖励函数应该能够引导智能体朝着期望的行为方向学习,并尽量避免潜在的问题&a…

案例059:基于微信小程序的在线投稿系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

阿里云云通信短信申请教程免费试用3个月

目录 第一步 开通试用短信 第二步、设置调试参数 第三步、根据文档对接 第一步 开通试用短信 阿里云免费试用 - 阿里云 第二步、设置调试参数 打开试用文档 第三步、根据文档对接 SendSms_短信服务_API文档-阿里云OpenAPI开发者门户

C#核心笔记——(三)在C#中创建类型

3.1 类 类是最常见的一种引用类型,最简单的类的声明如下: class MyClass{}而复杂的类可能包含如下内容: 1.在class关键字之前:类的特性(Attribute)和修饰符。非嵌套的类修饰符有: public、int…

微型5G网关如何满足智能巡检机器人应用

在规模庞大、设施复杂的炼化厂、钢铁厂、工业园区等大型、巨型区域,时刻需要对各类设施设备巡查监测,保障生产运行安全可控。传统的人工巡检存在着心态松懈、工作低效、工作强度高、工作环境恶劣等问题,仍然存在安全隐患。 而随着物联网、5G、…

多人聊天Java

服务端 import java.io.*; import java.net.*; import java.util.ArrayList; public class Server{public static ServerSocket server_socket;public static ArrayList<Socket> socketListnew ArrayList<Socket>(); public static void main(String []args){try{…

STM32F1定时器TIM

目录 1. TIM&#xff08;Timer&#xff09;定时器 2. 定时器类型 2.1 基本定时器框图 2.2 通用定时器框图 2.3 高级定时器框图 3. 定时器代码 3.1 恢复缺省配置 3.2 时基单元初始化 3.3 结构体变量附一个默认值 3.4 使能计数器 3.5 使能中断输出信号 3.…