2024山东省职业院校技能大赛“网络空间安全”赛题及赛题解析(超详细)_2024年山东省职业院校技能大赛中职组网络安全赛项竞赛样题(2)

共计6小时
模块编号 模块名称 竞赛时间(小时) 权值
A 基础设施设置与安全加固 1.5 20%
B 网络安全事件响应、数字取证调查和应用安全 1.5 40%
C CTF 夺旗-攻击 1.5 20%
D CTF 夺旗-防御 1.5 20%

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

一、项目和任务描述:
假定你是某企业的网络安全工程师,对于企业的服务器系统,根据任务要求确保各服务正常运行,并通过综合运用登录和密码策略、数据库安全策略、流量完整性保护策略、事件监控策略、防火墙策略等多种安全策略来提升服务器系统的网络安全防御能力。
二、服务器环境说明:
LOG:日志服务器(Splunk),操作系统为windows
Web:apache服务器,操作系统为linux
Data:数据库服务器(Mysql),操作系统为Linux
LOG:日志服务器(Splunk),操作系统为windows
Web:apache服务器,操作系统为linux
Data:数据库服务器(Mysql),操作系统为Linux

A-1任务一 登录安全加固
请对服务器Log、Web、Data 按要求进行相应的设置,提高服务器的安全性。
1.服务器密码策略(Log、Web、Data)
(1)服务器最小密码长度不少于6个字符、密码的使用期限7-30天;

windows:Win + R gpedit.msc 打开本地组策略编辑器

Windows:管理工具-本地安全策略-帐户策略-密码策略,设置密码长度不小于6,密码使用期限最短为7,最长为30
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Linux:设置vim /etc/login.defs文件

PASS_MAX_DAYS 30 #最大时间
PASS_MIN_DAYS 7 #最小时间
PASS_MIN_LEN 6 #长度限制

![请添加图片描述](https://img-blog.csdnimg.cn/9b847becac5748ed9a1202deeb677d08.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA6JC95a-
(2)服务器密码策略必须同时满足大小写字母、数字、特殊字符。

windows:Win + R gpedit.msc 打开本地组策略编辑器

windows:计算机配置–windows 设置–安全设置–账户策略–密码策略–密码必须符合复杂性要求
在这里插入图片描述
Linux:vim /etc/pam.d/system-authpam_cracklib.so的参数后面附加:

设置数字:dcredit= -1
设置大写字母::ucredit= -1
设置小写字母:lcredit= -1
设置特殊字符:ocredit= -1
-1 代表必须包含

2.登录策略(Log、Web、Data)
(1)用户登录服务器系统时,应该有警告标题“warning”内容为“For authorized users only”提示信息;
windows:计算机配置–windows 设置–本地策略–安全设置–安全选项–找到交互式登入得消息文本 输入 “warning” 标题 “For authorized users only”
在这里插入图片描述在这里插入图片描述
linux:/etc/issue 输入 “For authorized users only”
在这里插入图片描述

init 3 验证一下

在这里插入图片描述
(2)一分钟内仅允许5次登录失败的尝试,超过5次,登录帐号锁定1分钟;
windows:计算机配置–windows 设置–安全设置–账户策略–账户锁定策略
在这里插入图片描述
Linux:vim /etc/pam.d/login 添加: auth required pam_tally2.so deny=5 unlock_time=60 even_deny_root root_unlock_time=300
五次登录失败:deny =5 设置登录账号锁定一分钟:unlock_time=60

(3)远程用户非活动会话连接超时应小于等于5分钟。
Linux:vim /etc/ssh/sshd_config 直接搜索🔍 / + 关键字(Client) 把注释去掉
在这里插入图片描述
windows:计算机配置–用户设置–管理模板–windows组件-远程桌面服务–会话时间限制 启用设置为5分钟
在这里插入图片描述

A-2任务二 数据库加固(Data)
1.以普通帐户MySql安全运行MySql,禁止MySql以管理员帐号权限运行;

vim /etc/my.cnf 在配置中进行设置 [mysqld] 添加user=mysql

2.删除默认数据库(test);

drop databases test;

在这里插入图片描述

3.改变默认MySql管理员用户为:SuperRoot;、

update user set user=“SuperRoot” where user=“root”;

在这里插入图片描述

flush privileges;

4.使用MySql内置MD5加密函数加密用户user1的密码为(P@ssw0rd1!);

update mysql.user set password=md5(“P@ssw0rd1!”) where user = ‘user1’;

5.赋予user1用户对数据库所有表只有select,insert,delete,update权限;

grant select,insert,delete,update on . to ‘user1’@’localhost’;

6.对忘记mysql数据库SuperRoot管理员密码进行重置操作;
在/etc/my.cnf 文件my[mysqd]下面添加 skip_grant_tables
Service mysqld restart 空密码登入进行修改密码

Update user set password=password(“P@ssw0rd1!”)where user=’SuperRoot’ and host=’localhost’;

在删除刚刚my.cnf 中添加的skip_grant_tables 重启使用新密码即可。

7.禁用LOCAL INFILE命令防止非授权用户访问本地文件;

Vim /etc/my.cnf 文件 在[mysqld]下添加 local-infile=0

8.为防止数据库操作信息泄露,请禁止使用MySql命令行历史记录;
find / -name “.mysql_history” 查看是否存在mysql的历史命令记录,如果有 就把他删除

rm -f /root/.mysql_history #删除历史记录文件 ln -s /dev/null

$HOME/.mysql_history #mysql_histfile变量设置为/dev/null

在这里插入图片描述
9.为了分析数据库运行过程中的一些异常活动,请开启MySql二进制日志。
在这里插入图片描述
vim /etc/my.cnf 在[mysqld]下面添加一行 log-bin = mysql-bin
保存重启 service mysqld restart 登入数据库
使用 show variables like ‘%log_bin%’;

在这里插入图片描述
(如果log_bin 是off就表示没有开启,是on表示开启了)

A-3任务三 Web安全加固(Web)
1.防止网站信息探测及泄露,隐藏Apache 版本和操作系统版本相关信息;

vim /etc/httpd/conf/httpd.conf

ServerTokens Prod # 隐藏Apache版本号

在这里插入图片描述

ServerSignature OFF #隐藏操作系统版本信息

在这里插入图片描述
2.防止PHP版本信息泄露,隐藏PHP的X-Powered-By信息;

vim /etc/php.ini #打开php配置文件

expose_php 默认是on改为off #隐藏php信息版本

在这里插入图片描述
3.防止网站目录信息泄露,禁用目录列表显示;

vim /etc/httpd/conf/httpd.conf

将 Indexes去掉 就可以防止网站目录信息泄露了
在这里插入图片描述
4.修改php配置文件禁用php危险函数:Assert、phpinfo、eval、passthru、exec、system、chroot;

vim /etc/php.ini #打开php配置文件

搜索关键词 disable_functions 把后面要禁用的函数填上去即可。
在这里插入图片描述
5.为了减轻网站负载,设置网站最大并发连接数为200;

vim /etc/httpd/conf/httpd.conf

MaxClients 200 #连接最大数为200

在这里插入图片描述
6.为了保障服务器安全,限制访问Web根目录之外的文件;

A-4任务四 流量完整性保护(Web、Data)
1.对Web网站进行HTTPS配置,仅使用HTTPS协议访问网站(Web)(利用本地host文件解析域名https://www.test.com访问Web网站);
2.为了防止密码在登录或者传输信息中被窃取,仅使用证书登录SSH(Data)。

vim etc/ssh/sshd_config

Password Authentication yes 改为noPubkey Authentication yes 的注释去掉即可
在这里插入图片描述
在这里插入图片描述
windows:cmd里面输入一条fsutil 8dot3name set 1
在这里插入图片描述
A-5任务五 事件监控(Web)
1.Web服务器开启自定义日志要求记录:客户端IP、用户、时间、行为、状态码、大小;
在这里插入图片描述
这个需要按题目要求勾选✔即可
在这里插入图片描述
2.配置splunk接收Web服务器、网站日志、系统日志、CPU负载、内存、磁盘空间、网络状态。

A-6任务六 服务加固vsFTPd (Data)
1.修改配置文件,将ftp服务预设端口改为2121,并对iptables进行配置;

vim /etc/vsftpd/vsftpd.conf

添加一条listen_port=2121

在这里插入图片描述
防火墙规则: iptables -A INPUT -p tcp -m tcp --dport 2121 -j ACCEPT

2.修改配置文件,禁止匿名用户登录;

vim /etc/vsftpd/vsftpd.conf

在这里插入图片描述
3.修改配置文件,关闭ascii模式下载,防止被用于DoS攻击;

vim /etc/vsftpd/vsftpd.conf

ascii_download_enable=NO

在这里插入图片描述

4.修改配置文件,关闭ls -R命令,防止服务器被DoS攻击;

vim /etc/vsftpd/vsftpd.conf

ls_recurse_enable=NO

在这里插入图片描述
5.修改ftp默认主目录为/ftp文件夹,并将用户锁定在主目录内;

vim /etc/vsftpd/vsftpd.conf

添加这条chroot_local_user=YES ##是否将所有用户限制在主目录,YES为启用 NO禁用

在这里插入图片描述
在这里插入图片描述

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

B-1 任务一 数据库安全加固
任务环境说明:
服务器场景:CentOS6.8(用户名:root;密码:123456)
服务器场景操作系统:CentOS6.8
1.进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:root),查看数据库版本号,将查看数据库版本号的命令作为flag提交;

  select version();

在这里插入图片描述
2.进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:root),查看数据库版本号,将查询到的数据库版本号作为flag提交;

5.0.95

3.进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:root),查看数据库列表,将查看数据库列表的命令作为flag提交;

show databases;

在这里插入图片描述
4.进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:root),进入mysql数据库,查看所有用户及权限,找到可以从任意 IP 地址访问的用户,将该用户的用户名作为flag提交;(如有多个可以从任意 IP 地址访问的用户,提交形式为用户名|用户名|用户名|用户名)

Use mysql;

select user,host from user where host=‘%’

在这里插入图片描述
5.进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:root),进入mysql数据库,查看所有用户及权限,找到可以从任意 IP 地址访问的用户,使用drop命令将该用户删除,将操作命令作为flag提交。

drop user ‘test’@'%'删除test用户

6.进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:root),进入mysql数据库,改变默认 mysql 管理员的名称,将系统的默认管理员root 改为 admin,防止被列举,将操作命令作为flag提交。

update user set user=‘admin’ where user=‘root’;

在这里插入图片描述

B-2 任务二 Web渗透测试
任务环境说明:
服务器场景:Pysystem2021
服务器场景操作系统:未知(关闭链接)
1.通过本地PC中渗透测试平台Kali对服务器场景PYsystem2021进行渗透测试,将该场景中Apache的版本号作为FLAG(例如:2.2.3)提交;

nikto  -h

2.通过本地PC中渗透测试平台Kali对服务器场景PYsystem2021进行渗透测试,将该场景中PHP的版本号作为FLAG(例如:5.2.14)提交;
3.通过本地PC中渗透测试平台Kali对服务器场景PYsystem2021进行渗透测试,将该场景中数据库的版本号作为FLAG(例如:5.0.22)提交;
4.通过本地PC中渗透测试平台Kali对服务器场景PYsystem2021进行渗透测试,将该场景的内核版本号作为FLAG(例如:2.6.18)提交;
5.通过本地PC中渗透测试平台Kali对服务器场景PYsystem2021进行渗透测试,将该场景中网站后台管理员admin用户的密码作为FLAG提交;
6.通过本地PC中渗透测试平台Kali对服务器场景PYsystem2021进行渗透测试,将该场景/var/www/html目录中唯一一个后缀为shtml文件的文件内容作为FLAG提交。

B-3 任务三 系统漏洞
任务环境说明:
服务器场景名:Web20210529
服务器场景用户名:未知(关闭链接)
1.通过本地PC中渗透测试平台Kali查看目标靶机共享的目录及IP地址白名单(将IP地址替换为0.0.0.0),将查看命令作为Flag提交;

showmount -e 0.0.0.0

2.通过本地PC中渗透测试平台Kali 查看目标靶机共享的目录及IP地址白名单,将查看命令执行结果的共享目录作为Flag提交;
3.通过本地PC中渗透测试平台Kali渗透进入目标靶机,将挂载目标靶机文件系统到本地/mnt的命令(将IP地址替换为0.0.0.0)作为Flag提交;
4.通过本地PC中渗透测试平台Kali计算目标靶机磁盘可用空间(以M或G为单位)作为Flag提交;
5.通过本地PC中渗透测试平台Kali使用“flag.txt”作为关键词搜索靶机文件系统中该文件的位置,并将搜索所需命令作为Flag提交;
6.通过本地PC中渗透测试平台Kali下载flag.txt文件,将文件中的Flag提交;

这题的pdf已经上传到资源了有详细的解题思路这里我就不写了 不懂得可以私信我

B-4 任务四 隐藏信息探索
任务环境说明:
服务器场景:Web20210529
服务器场景操作系统:未知 (关闭链接)
1.通过本地PC中渗透测试平台Kali对服务器场景Web20210529中的网站进行访问,找到登录界面中的FLAG,并将FLAG提交;

访问是一个很好看得登入页面 通过发现右键被禁用了 在URL 添加一条协议 view-source: 就可以看源代码了 发现 FLAG

在这里插入图片描述
请添加图片描述

FLAG: welcome to css ! #这里有个感叹号 提交得时候可能有可能没有多尝试即可。

2.通过本地PC中渗透测试平台Kali对服务器场景Web20200529中的网站进行访问,找到登录界面背景中的FLAG,并将FLAG提交;

在sources中找到bgf.jpg文件,将它下载到桌面并使用WinHex打开,flag就在最后

在这里插入图片描述
3.通过本地PC中渗透测试平台Kali对服务器场景Web20200529中的网站进行访问,在登录界面中登录,登录成功后在成功的界面中找到FLAG并提交;

F12打开 修改 maxlength 不为0就行 这个是输入账号密码得长度限制 而且这个网站他会过一段时间刷新 应该是延时注入

给大家的福利

零基础入门

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:

在这里插入图片描述

因篇幅有限,仅展示部分资料

网络安全面试题

绿盟护网行动

还有大家最喜欢的黑客技术

网络安全源码合集+工具包

所有资料共282G,朋友们如果有需要全套《网络安全入门+黑客进阶学习资源包》,可以扫描下方二维码领取(如遇扫码问题,可以在评论区留言领取哦)~

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值