2020年全国职业院校技能大赛改革试点赛(中职组)
网络安全竞赛试题
(四)
(总分100分)
一、竞赛项目简介
“网络安全”竞赛共分A. 基础设施设置与安全加固;B. 网络安全事件响应、数字取证调查和应用安全;C. CTF夺旗-攻击;D. CTF夺旗-防御等四个模块。根据比赛实际情况,竞赛赛场实际使用赛题参数、表述及环境可能有适当修改,具体情况以实际比赛发放赛题为准。竞赛时间安排和分值权重见表1。
表1 竞赛时间安排与分值权重
模块编号 |
模块名称 |
竞赛时间 (小时) |
权值 |
A |
基础设施设置与安全加固 |
3 |
20% |
B |
网络安全事件响应、数字取证调查和应用安全 |
40% |
|
C |
CTF夺旗-攻击 |
3 |
20% |
D |
CTF夺旗-防御 |
20% |
|
总计 |
6 |
100% |
二、竞赛注意事项
1.比赛期间禁止携带和使用移动存储设备、计算器、通信工具及参考资料。
2.请根据大赛所提供的比赛环境,检查所列的硬件设备、软件清单、材料清单是否齐全,计算机设备是否能正常使用。
3.在进行任何操作之前,请阅读每个部分的所有任务。各任务之间可能存在一定关联。
4.操作过程中需要及时按照答题要求保存相关结果。比赛结束后,所有设备保持运行状态,评判以最后提交的成果为最终依据。
5.比赛完成后,比赛设备、软件和赛题请保留在座位上,禁止将比赛所用的所有物品(包括试卷等)带离赛场。
6.禁止在提交资料上填写与竞赛无关的标记,如违反规定,可视为0分。
竞赛内容
(本模块20分)
一、项目和任务描述:
假定你是某企业的网络安全工程师,对于企业的服务器系统,根据任务要求确保各服务正常运行,并通过综合运用登录和密码策略、数据库安全策略、流量完整性保护策略、事件监控策略、防火墙策略等多种安全策略来提升服务器系统的网络安全防御能力。本模块要求对具体任务的操作截图并加以相应的文字说明,以word文档的形式书写,以PDF格式保存,以赛位号作为文件名.
二、服务器环境说明
IDS:入侵检测系统服务器(Snort),操作系统为Linux
LOG:日志服务器(Splunk),操作系统为Linux
Web:IIS服务器,操作系统为Windows
Data:数据库服务器(Mysql),操作系统为Linux
三、具体任务(每个任务得分以电子答题卡为准)
请对服务器Log、Web、Data 按要求进行相应的设置,提高服务器的安全性。
1.密码策略(Log,Web,Data)
a. 最小密码长度不少于8个字符;
b. 密码策略必须同时满足大小写字母、数字、特殊字符。
2. 登录策略(Log,Web,Data)
a.在用户登录系统时,应该有“For authorized users only”提示信息;
b.一分钟内仅允许5次登录失败的尝试,超过5次,登录帐号锁定1分钟;
c.远程用户非活动会话连接超时应小于等于5分钟。
3. 用户安全管理(Web)
a.对服务器进行远程管理安全性SSL加固,防止敏感信息泄露被监听;
b.查找并删除服务器中可能存在的帐号hacker;
c.普通用户进行最小权限管理,对关闭系统仅限管理员帐号。
1.以普通帐户MySql安全运行MySql,禁止MySql以管理员帐号权限运行;
2.删除默认数据库(test);
3.改变默认MySql管理员用户为:SuperRoot;
4.使用MySql内置MD5加密函数加密用户user1的密码为(P@ssw0rd1!);
5.赋予user1用户对数据库所有表只有select,insert,delete,update权限;
6. 对忘记mysql数据库SuperRoot管理员密码进行重置操作;
7.禁用LOCAL INFILE命令防止非授权用户访问本地文件;
8.为防止数据库操作信息泄露,请禁止使用MySql命令行历史记录;
9.为了分析数据库运行过程中的一些异常活动,请开启MySql二进制日志。
1.为了防止web中.mdb数据库文件非法下载,请对Web配置文件进行安全加固;
2.限制目录执行权限,对picture和upload目录设置执行权限为无;
3.开启IIS的日志审计记录(日志文件保存格式为W3C,只记录日期、时间、客户端IP地址、用户名、方法);
4.为了减轻网站负载,设置网站最大并发连接数为1000;
5.防止文件枚举漏洞枚举网络服务器根目录文件,禁止IIS短文件名泄露;
6.关闭IIS的WebDAV功能增强网站的安全性。
1.对Web网站进行HTTP重定向HTTPS设置,仅使用HTTPS协议访问网站(Web)(注证书颁发给test.com 并通过https://www.test.com访问Web网站);
2.为了防止密码在登录或者传输信息中被窃取,仅使用证书登录SSH(Data)。
1.将Web服务器开启审核策略
登录事件 成功/失败;
特权使用 成功;
策略更改 成功/失败;
进程跟踪 成功/失败;
2.配置splunk接收Web服务器,安全日志,系统日志,CPU负载,内存,磁盘空间,网络状态。
1.修改ssh服务端口为2222;
2.ssh禁止ROOT用户远程登录;
3.vsFTPd禁止匿名用户上传;
4.激活vsFTPd上传下载日志;
5.vsFTPd同一个IP只能连接两个;
6.vsFTPd将使客户端连接时的端口范围在50000和60000之间;
7.vsFTPd使本地用户登录活动范围限制在home目录。
所有服务器开启防火墙,为防止勒索病毒攻击对防火墙进行加固策略:
1.Windows系统禁用445端口;
2.Linux系统禁用23端口;
3.Linux系统禁止别人ping通;
4.Linux系统为确保安全禁止所有人连接ssh除了192.168.1.1这个ip。
(本模块40分,每个子任务4分)
一、项目和任务描述:
假定你是某网络安全技术支持团队成员,某企业的服务器系统被黑客攻击,你的团队前来帮助企业进行调查并追踪本次网络攻击的源头,分析黑客的攻击方式,发现系统漏洞,提交网络安全事件响应报告,修复系统漏洞,删除黑客在系统中创建的后门,并帮助系统恢复正常运行。
二、服务器环境参考(以实际赛题为准)
操作系统:Windows/Linux
三、PC机环境参考(以实际赛题为准)
物理机:Windows7或Windows10;
虚拟机1:Ubuntu Linux(用户名:root;密码:123456),安装工具集:Backtrack5,安装开发环境:Python3;
虚拟机2:Kali1.0(用户名:root;密码:123456);
虚拟机3:Kali2.0(用户名:root;密码:123456);
虚拟机4:WindowsXP(用户名:administrator;密码:123456)。
四、具体任务
任务说明:flag格式:flag{Xxxx123},括号中的内容作为flag值,提交Xxxx123即可
*任务说明:仅能获取Server1的IP地址
1.黑客通过网络攻入本地服务器,在Web服务器的主页上外挂了一个木马链接,请你找到此链接并删除链接,将删除链接后的主页第一排标题栏显示的第三个单词,作为flag提交。
2. 黑客攻入本地服务器的数据库服务器,并添加了除admin以外的具有一个管理员权限的超级用户,请你找到此用户并删除用户,将此用户的密码作为flag提交。
3. 黑客攻入本地服务器,在本地服务器建立了多个超级用户,请你删除除了Administrator用户以外的其他超级管理员用户,在命令行窗口输入net user,将Administrator右边第一个单词作为flag提交。
4. 黑客修改了服务器的启动内容,请你删除不必要的启动内容,打开任务管理器的“启动”标签栏,将名称列中所有的名称作为flag提交。(提交形式:名称1,名称2,名称3)
5. 黑客在服务器某处存放了一个木马程序,请你找到此木马程序并清除木马。打开任务管理器的“进程”标签栏,将应用名称中的第三个单词作为flag提交。
*任务说明:仅能获取Server2的IP地址
1.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,telnet服务器是一台路由器,找出此台路由器的特权密码,并将密码作为flag值提交。
2.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,FTP服务器已经传输文件结束,将建立FTP服务器的数据连接的次数作为flag值提交。
3.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,web服务器地址是192.168.181.250,将web服务器软件的版本号作为flag值提交。
4.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,这些数据中有非常多的ICMP报文,这些报文中有大量的非正常ICMP报文,找出类型为重定向的所有报文,将报文重定向的数量作为flag值提交。
5.使用Wireshark查看并分析Server2桌面下的capture.pcapng数据包文件,这些数据中有ssh报文,由于ssh有加密功能,现需要将这些加密报文的算法分析出来,将ssh服务器支持的第一个算法的密钥长度作为flag值提交。
*任务说明:仅能获取Server3的IP地址
1.通过本地PC中渗透测试平台Kali对服务器场景Server3进行系统服务及版本扫描渗透测试,并将该操作显示结果中445端口对应的服务状态信息作为flag值提交;
2.找到网络适配器信息,将首选DNS服务器地址作为flag值提交;
3.找到桌面上111文件夹中后缀为.docx的文件,将文档内容作为flag值提交;
4.找到回收站内的文档,将文档内容作为flag值提交;
5.获取系统最高账户管理员的密码,将密码作为flag值提交。
*任务说明:仅能获取Server4的IP地址
1.通过本地PC中渗透测试平台Kali对服务器场景Server4进行系统服务及版本扫描渗透测试,并将该操作显示结果中21端口对应的服务版本信息字符串作为flag值提交;
2.找到/var/www目录中的图片文件,将文件名称作为flag值提交;
3.找到/var/www目录中的图片文件,将图中的英文单词作为flag值提交;
4.找到/home/guest目录中的txt文件,将文件内容作为flag值提交;
5.找到/root目录中的txt文件,将文件内容作为flag值提交。
*任务说明:仅能获取Server5的IP地址
1.获取PHP的版本号作为flag值提交;(例如:5.2.14)
2.获取MySQL数据库的版本号作为flag值提交;(例如:5.0.22)
3.获取系统的内核版本号作为flag值提交;(例如:2.6.18)
4.获取网站后台管理员admin用户的密码作为flag值提交;
5.找到/root目录中的txt文件,将文件内容作为flag值提交。
*任务说明:仅能获取Server6的IP地址,FTP服务器用户名:admin,密码:123456
1.从靶机服务器场景FTP服务器中下载文件BO.py,编辑该Python程序文件,使该程序实现对Server6进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F1字符串,将该字符串作为flag值提交;
2.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server6进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F2字符串,将该字符串作为flag值提交;
3.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server6进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F3字符串,将该字符串作为flag值提交;
4.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server6进行缓冲区溢出渗透测试的功能,填写该文件当中空缺的F4字符串,将该字符串作为flag值提交;
5.继续编辑命名为BO.py的Python程序文件,使该程序实现对Server6进行缓冲区溢出渗透测试的功能,成功渗透后找到Server6回收站内的文档,将文档内容作为flag值提交;
*任务说明:仅能获取Server7的IP地址,FTP服务器用户名:admin,密码:123456
1.从靶机服务器场景FTP服务器中下载文件RCE.py,编辑该Python程序文件,使该程序实现对Server7进行远程代码执行渗透测试的功能,填写该文件当中空缺的F1字符串,将该字符串作为flag值提交;
2.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server12进行远程代码执行渗透测试的功能,填写该文件当中空缺的F2字符串,将该字符串作为flag值提交;
3.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server7进行远程代码执行渗透测试的功能,填写该文件当中空缺的F3字符串,将该字符串作为flag值提交;
4.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server7进行远程代码执行渗透测试的功能,填写该文件当中空缺的F4字符串,将该字符串作为flag值提交;
5.继续编辑命名为RCE.py的Python程序文件,使该程序实现对Server7进行远程代码执行测试的功能,成功渗透后找到Server7桌面上的文档,将文档内容作为flag值提交;
*任务说明:仅能获取Server8的IP地址
FLAG:-sV -O -oX
FLAG:msfdb init
FLAG:db_import db.xml
FLAG:2017-03-14
FLAH:created
*任务说明:仅能获取Server9的IP地址
FLAG:-O -sV -oX
FLAG:msfdb init
FLAG:db_import db.xml
FLAG:2008-10-28
FLAG:created
*任务说明:仅能获取Server10的IP地址
1.从内存中获取到用户admin的密码并且破解密码,以flag{admin,password}形式提交(密码为6位);
2.获取当前系统ip地址及主机名,以flag{ip:主机名}形式提交;
3.获取当前系统浏览器搜索过的关键词,作为flag提交;
4.当前系统中存在挖矿进程,请获取指向的矿池地址,以flag{ip:端口}形式提交;
5.恶意进程在系统中注册了服务,请将服务名以flag{服务名}形式提交。
(本模块20分)
一、项目和任务描述:
假定你是某企业的网络安全渗透测试工程师,负责企业某些服务器的安全防护,为了更好的寻找企业网络中可能存在的各种问题和漏洞。你尝试利用各种攻击手段,攻击特定靶机,以便了解最新的攻击手段和技术,了解网络黑客的心态,从而改善您的防御策略。
请根据《赛场参数表》提供的信息,在客户端使用谷歌浏览器登录攻击机。
二、操作系统环境说明:
客户机操作系统:Windows 10
攻击机操作系统:Kali Linux 2019版
靶机服务器操作系统:Linux/Windows
三、漏洞情况说明:
1.服务器中的漏洞可能是常规漏洞也可能是系统漏洞;
2.靶机服务器上的网站可能存在命令注入的漏洞,要求选手找到命令注入的相关漏洞,利用此漏洞获取一定权限;
3.靶机服务器上的网站可能存在文件上传漏洞,要求选手找到文件上传的相关漏洞,利用此漏洞获取一定权限;
4.靶机服务器上的网站可能存在文件包含漏洞,要求选手找到文件包含的相关漏洞,与别的漏洞相结合获取一定权限并进行提权;
5.操作系统提供的服务可能包含了远程代码执行的漏洞,要求用户找到远程代码执行的服务,并利用此漏洞获取系统权限;
6.操作系统提供的服务可能包含了缓冲区溢出漏洞,要求用户找到缓冲区溢出漏洞的服务,并利用此漏洞获取系统权限;
7.操作系统中可能存在一些系统后门,选手可以找到此后门,并利用预留的后门直接获取到系统权限。
四、注意事项:
1.不能对裁判服务器进行攻击,警告一次后若继续攻击将判令该参赛队离场;
2.flag值为每台靶机服务器的唯一性标识,每台靶机服务器仅有1个;
3.选手攻入靶机后不得对靶机进行关闭端口、修改密码、重启或者关闭靶机、删除或者修改flag、建立不必要的文件等操作;
4.在登录自动评分系统后,提交靶机服务器的flag值,同时需要指定靶机服务器的IP地址;
5.赛场根据难度不同设有不同基础分值的靶机,对于每个靶机服务器,前三个获得flag值的参赛队在基础分上进行加分,本阶段每个队伍的总分均计入阶段得分,具体加分规则参照赛场评分标准;
6.本环节不予补时。
(本模块20分)
一、项目和任务描述:
假定各位选手是某安全企业的网络安全工程师,负责若干服务器的渗透测试与安全防护,这些服务器可能存在着各种问题和漏洞。你需要尽快对这些服务器进行渗透测试与安全防护。每个参赛队拥有专属的堡垒机服务器,其他队不能访问。参赛选手通过扫描、渗透测试等手段检测自己堡垒服务器中存在的安全缺陷,进行针对性加固,从而提升系统的安全防御性能。
请根据《赛场参数表》提供的信息,在客户端使用谷歌浏览器登录需要加固的堡垒服务器。
二、操作系统环境说明:
客户机操作系统:Windows 10
攻击机操作系统:Kali Linux 2019版
堡垒服务器操作系统:Linux/Windows
三、漏洞情况说明:
1.堡垒服务器中的漏洞可能是常规漏洞也可能是系统漏洞;
2.堡垒服务器上的网站可能存在命令注入的漏洞,要求选手找到命令注入的相关漏洞,利用此漏洞获取一定权限;
3.堡垒服务器上的网站可能存在文件上传漏洞,要求选手找到文件上传的相关漏洞,利用此漏洞获取一定权限;
4.堡垒服务器上的网站可能存在文件包含漏洞,要求选手找到文件包含的相关漏洞,与别的漏洞相结合获取一定权限并进行提权;
5.操作系统提供的服务可能包含了远程代码执行的漏洞,要求用户找到远程代码执行的服务,并利用此漏洞获取系统权限;
6.操作系统提供的服务可能包含了缓冲区溢出漏洞,要求用户找到缓冲区溢出漏洞的服务,并利用此漏洞获取系统权限;
7.操作系统中可能存在一些系统后门,选手可以找到此后门,并利用预留的后门直接获取到系统权限。
四、注意事项:
1.每位选手需要对加固点和加固过程截图,并自行制作系统防御实施报告,最终评分以实施报告为准;
2.系统加固时需要保证堡垒服务器对外提供服务的可用性;
3.不能对裁判服务器进行攻击,警告一次后若继续攻击将判令该参赛队离场;
4.本环节不予补时。