目录

2020年山东省职业院校网络空间安全技能大赛自己模拟的做题流程,仅参考

目录

2020年山东省职业院校网络空间安全技能大赛自己模拟的做题流程,仅参考

2020 年山东省职业院校技能大赛

2021这次改革后的比赛中,不要去全网段扫主机!容易扫到裁判机,然后出现了有几个人打了裁判机被通报

(中职组)网络安全赛项竞赛

正式赛卷

(B 卷)
(总分 1000 分)
2020 年 11 月 14 日

2020 年山东省职业院校技能大赛

中职组网络安全赛项竞赛试题

(总分 1000 分)

赛题说明

竞赛时间安排与分值权重
模块编号模块名称竞赛时间(小时)权值
A基础设施设置与安全加固1.520%
B网络安全事件响应、数字取证调查和应用安全1.540%
CCTF 夺旗-攻击1.520%
DCTF 夺旗-防御1.520%
总计6100%

3小时内同时考A,B模块,3小时内同时考C,D模块。 别骂了别骂了代码无法实现上下合并表格QAQ

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

(本模块 200 分)

一、项目和任务描述:

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

确保各服务正常运行,并通过综合运用登录和密码策略、数据库安全策略、流量

完整性保护策略、事件监控策略、防火墙策略等多种安全策略来提升服务器系统

的网络安全防御能力。本模块要求对具体任务的操作按照竞赛场地物理主机 E 盘

根目录下提供的报告单模板(网络安全模块 A 报告单)要求进行截图,若需要截

取多个窗口请加以相应的文字说明,以 word 文档形式编辑、PDF 格式保存;以“网

络安全模块 A-XX” 作为文件名保存到 U 盘提交(其中:“XX”代表的是工位号;

比如工位号为“01”,以“网络安全模块 A-01”)。

二、服务器环境说明

LOG:日志服务器(Splunk),操作系统为 windows

Web:apache 服务器,操作系统为 linux

Data:数据库服务器(Mysql),操作系统为 Linux

三、具体任务(每个任务得分以提交的报告单为准)

A-1 任务一 登录安全加固

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

1.服务器密码策略(Log、Web、Data)

Linux操作系统操作步骤

(1)服务器最小密码长度不少于 6 个字符、密码的使用期限 7-30 天;
设置linux下的login.defs文件

该文件是设置用户帐号限制的文件/etc/login.defs,这里我们用来对用户的过期时间,密码的最大长度进行修改

vi /etc/login.defs

![在这里插入图片描述](https://img-blog.csdnimg.cn/20210319163747974.png)
###### 修改下面的项目值


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

https://i-blog.csdnimg.cn/blog_migrate/25a46d5444350cc4a2f41e07bdc1bad2.png

wq!				#保存

Windows操作系统操作步骤

打开本地安全策略组,打开账户策略,打开密码策略

按照题目要求对相应文件进行修改

https://i-blog.csdnimg.cn/blog_migrate/e1aca74fb6054dfb4ea015803e3e7906.png

https://i-blog.csdnimg.cn/blog_migrate/e38a09568a41f504462fa3305dc677b3.png

(2)服务器密码策略必须同时满足大小写字母、数字、特殊字符。

Linux操作系统操作步骤

修改/etc目录下的密码设置及登陆控制文件(system-auth)
vi /etc/pam.d/system-auth			

https://i-blog.csdnimg.cn/blog_migrate/c13529fc94ee3ca9bd9e10fee79dbcc0.png

在pam_cracklib.so 后面添加
ucredit=-1 					#大写字母
lcredit=-1						#小写字母
dcredit=-1 					#数字
ocredit=-1					#特殊字符
password    requisite     pam_cracklib.so try_first_pass retry=3 type= ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1

https://i-blog.csdnimg.cn/blog_migrate/f80e802d9e9c735148ee3f45fbc70b51.png

pam_cracklib.so新建密码时会受到该代码限制,新密码复杂度不满足不要
retry尝试次数
difok最小不同字符
dcredit数字个数
ocredit特殊字符个数
ucredit大写字母个数
lcredit小写字母个数
minlen最小长度

Windows操作系统操作步骤

打开本地安全策略组,打开账户策略,打开密码策略

进入密码复杂性要求,勾选启用

https://i-blog.csdnimg.cn/blog_migrate/5c1c27624d93765277400ff06141e12a.png

2. 登录策略(Log、Web、Data)
(1)用户登录服务器系统时,应该有警告标题“warning”内容为“Forauthorized users only”提示信息;

Linux操作系统操作步骤

修改/etc目录下的iisue文件,该文件是Linux系统开机启动时在命令行界面弹出的欢迎语句文件。

vi /etc/issue

https://i-blog.csdnimg.cn/blog_migrate/c25ac056a2ac0b6205b9adaf7cdb04e6.png

添加欢迎标题
-----------warning-------------
For authorized users only
------------------------------

https://i-blog.csdnimg.cn/blog_migrate/0e467d99f17dc35100fcb2a794e5ec16.png

init 3	#验证

https://i-blog.csdnimg.cn/blog_migrate/8818338e88915ee899598be7a91e0539.png

编辑sshd_config

不会真有人以为ssh登录不算服务器吧。

vi /etc/ssh/sshd_config

https://i-blog.csdnimg.cn/blog_migrate/c7f194d6e7fd527eb94a29967a9740f9.png

添加下面的代码
Banner /etc/ssh/Banner

https://i-blog.csdnimg.cn/blog_migrate/0900173cf8cf2d2d8ace09a85986736f.png

在ssh目录下新建一个文件Banner和sshd_config里的对应
vi /etc/ssh/Banner

https://i-blog.csdnimg.cn/blog_migrate/bbc89f19422b58f4dc2299d063ab3686.png

把标题写进去

https://i-blog.csdnimg.cn/blog_migrate/25190be96bec6d42ade0fe07bba40772.png

重启sshd服务
service sshd restart

https://i-blog.csdnimg.cn/blog_migrate/b3bfdc90ad2fa782302b771a94d84af6.png

成功返回

https://i-blog.csdnimg.cn/blog_migrate/bffe3b634f3253214c0e33990751b808.png

Windows操作系统操作步骤

打开本地安全策略组,进入本地策略,打开安全选项

https://i-blog.csdnimg.cn/blog_migrate/f143eaa727c8e44c2cf208b1fc36840a.png

对交换式登录:试图登录的用户标题以及试图登录的用户消息文本进行编辑

https://i-blog.csdnimg.cn/blog_migrate/c4f29e4281825cbb087da4901a0e0d3b.png

(2)一分钟内仅允许 5 次登录失败的尝试,超过 5 次,登录帐号锁定 1 分

钟;

Linux操作系统操作步骤

修改文件
vi /etc/pam.d/system-auth

https://i-blog.csdnimg.cn/blog_migrate/69c9c78f9ac9614253413d7cee9a9112.png

unlock_time 	#设定普通用户锁定后多少时间后解锁单位是秒
auth        required      pam_tally2.so deny=5  unlock_time=60

https://i-blog.csdnimg.cn/blog_migrate/e0a1196a8321a6d621f0e5f97b108e60.png

Windows操作系统操作步骤

打开本地安全策略组,进入账户策略,打开账户锁定策略

按照题目要求修改对应文件 在这里插入图片描述

(3)远程用户非活动会话连接超时应小于等于 5 分钟。

Linux操作系统操作步骤

修改sshd_config文件
vi /etc/ssh/sshd_config

https://i-blog.csdnimg.cn/blog_migrate/a84f51e824b386d2200a4e381365080a.png

修改下面的文件记得去掉#

https://i-blog.csdnimg.cn/blog_migrate/85d96beffa3c7dd2a3cee6332717a921.png

Windows操作系统操作步骤

打开本地安全策略组,进入账户策略,打开账户锁定策略

打开管理工具,找到远程桌面服务,进入远程桌面会话主机设置

右键RDP-Tcp属性,在会话栏目进行修改

https://i-blog.csdnimg.cn/blog_migrate/825fb319e818ddf7dc41d8e0b3146cf0.png

A-2 任务二 数据库加固(Data)

1. 以普通帐户 MySql 安全运行 MySql,禁止 MySql 以管理员帐号权限运行;

修改my.cnf文件

vi /etc/my.cnf

https://i-blog.csdnimg.cn/blog_migrate/a41784554d0e24f6b613c62b689ae9e6.png

添加下面代码

user=mysql

https://i-blog.csdnimg.cn/blog_migrate/6136a97e88412d1ff9002d37aa5ab0c6.png

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

https://i-blog.csdnimg.cn/blog_migrate/8288be5afa3acc4f26e06ee75d971999.png

3. 改变默认 MySql 管理员用户为:SuperRoot;
update user set user='SuerRoot' where user='root';

https://i-blog.csdnimg.cn/blog_migrate/f0edd41a7c7ed1c73a0678e3887593b2.png

4. 使用 MySql 内置 MD5 加密函数加密用户 user1 的密码为(P@ssw0rd1!);
update user set password=md5(password) where user="user1";

https://i-blog.csdnimg.cn/blog_migrate/693eddcf330609a92caba787b5bcb7a9.png

5. 赋予 user1 用户对数据库所有表只有 select,insert,delete,update 权限;
grant select,insert,delete,update on testdb.* to user1@‘localhost;

https://i-blog.csdnimg.cn/blog_migrate/5465c16eef0f6f49cce6ef6771353fd6.png

show grants for 'user1'@'localhost';

https://i-blog.csdnimg.cn/blog_migrate/4494cb3f3fa274bbc127f2fef12ce867.png

6. 对忘记 mysql 数据库 SuperRoot 管理员密码进行重置操作;
vi /etc/my.cnf

https://i-blog.csdnimg.cn/blog_migrate/a7d496d616a483bdea1296be753e9dc5.png

添加下方代码

skip-grant-tables

https://i-blog.csdnimg.cn/blog_migrate/874f0b3978e46d299306fdefbab6af2c.png

 update mysql.user set password=password('123456') where user='SuperRoot';

https://i-blog.csdnimg.cn/blog_migrate/65f3d4d2de95314506a2b1d4d260ff45.png

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

https://i-blog.csdnimg.cn/blog_migrate/a8747ffa76db888138521a87675a783b.png

添加下方代码

set-variable=local-infile=0

https://i-blog.csdnimg.cn/blog_migrate/e49e4eda54c6f47b3fcaf1e47b581216.png

8. 为防止数据库操作信息泄露,请禁止使用 MySql 命令行历史记录;

添加下方的代码

rm -f $HOME/.mysql_history
ln -s /dev/null $HOME/.mysql_history

https://i-blog.csdnimg.cn/blog_migrate/11f222afa927186f57a573a84b64c763.png

9. 为了分析数据库运行过程中的一些异常活动,请开启 MySql 二进制日志。
vi /etc/my.cnf

https://i-blog.csdnimg.cn/blog_migrate/9ec55a9b693e6632bd12bd19e79247d1.png

添加下面的代码

log-bin=mysql-bin
server mysql restart  #重启数据库

https://i-blog.csdnimg.cn/blog_migrate/b542f85a156715be34c7bc4a7b5c3959.png

https://i-blog.csdnimg.cn/blog_migrate/97914fa821cf4dacfd156cf425bf98a7.png

A-3 任务三 Web 安全加固(Web)

1. 防止网站信息探测及泄露,隐藏 Apache 版本和操作系统版本相关信息;
ServerTokens Prod					#隐藏apach版本

https://i-blog.csdnimg.cn/blog_migrate/781611797e274cd767ad433603991677.png

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

https://i-blog.csdnimg.cn/blog_migrate/7a24193116c1d253796655b62e2a5de7.png

2. 防止 PHP 版本信息泄露,隐藏 PHP 的 X-Powered-By 信息;

编辑php.ini文件

vi /etc/php.ini

https://i-blog.csdnimg.cn/blog_migrate/605921ad45b90912294ec6f99ff66096.png

添加下方代码

expose_php = Off

https://i-blog.csdnimg.cn/blog_migrate/77075481ed3cd06cea65f51e447daa05.png

3. 防止网站目录信息泄露,禁用目录列表显示;

编辑http.conf文件

vi /etc/httpd/conf/httpd.conf

https://i-blog.csdnimg.cn/blog_migrate/ae9c4342954bb901c4ec5d5a05f55beb.png

将Option 中的 Indexes 去掉

https://i-blog.csdnimg.cn/blog_migrate/ad3122acd82dd02469f6787113d9dcaf.png

4. 修改 php 配置文件禁用 php 危险函数:Assert、phpinfo、eval、passthru、

exec、system、chroot;

vi /etc/php.ini

https://i-blog.csdnimg.cn/blog_migrate/edfb6110f1a190fbb227d558f8c996fa.png

添加下方代码

disable_functions=assert,phpinfo,eval,passthru,exec,system,chroot

https://i-blog.csdnimg.cn/blog_migrate/14165c6854b47c4eb49cc41374010858.png

5. 为了减轻网站负载,设置网站最大并发连接数为 200;
vi /etc/httpd/conf/httpd.conf

https://i-blog.csdnimg.cn/blog_migrate/f3aa75405773e3f34724096c32bbb41d.png

将MaxClients的连接数修改成200

MaxClients			200

https://i-blog.csdnimg.cn/blog_migrate/e2a5a45a972230df27bee5e9f26b3517.png

6 为了保障服务器安全,限制访问 Web 根目录之外的文件;

A-4 任务四 流量完整性保护(Web、Data)

1. 对 Web 网站进行 HTTPS 配置,仅使用 HTTPS 协议访问网站(Web)(利用本

地 host 文件解析域名 访问 Web 网站);

修改host文件

vi /etc/hosts

https://i-blog.csdnimg.cn/blog_migrate/059724c9ca18665e0f910f3fa86d28f5.png

IP	www.test.com

https://i-blog.csdnimg.cn/blog_migrate/f2e191d04e1806f5061c6248dd4b0785.png

安装ssl组件

yum install mod_ssl

https://i-blog.csdnimg.cn/blog_migrate/0b2a44218e3688311bfc7c645078727b.png

生成私钥

[root@localhost 6]# openssl genrsa -out server.key 1024
Generating RSA private key, 1024 bit long modulus
...................................................++++++
.++++++
e is 65537 (0x10001)
[root@localhost 6]# ls
server.key

https://i-blog.csdnimg.cn/blog_migrate/286e964217fcdfc71ee8ffcddc4264bb.png

生成证书

[root@localhost 6]# openssl req -new -x509 -key server.key -out server.crt

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:Cn
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:www.test.com
Email Address []:1

[root@localhost 6]# ls
server.crt  server.key

https://i-blog.csdnimg.cn/blog_migrate/af8223e115e6e16cfd872fa6aa92d610.png

修改下方代码

https://i-blog.csdnimg.cn/blog_migrate/31b83d6ced79a8efaf44633a7aeda849.png

vi /etc/httpd/conf/httpd.conf
NameVirtualHost 172.16.100.2:443	#修改端口为443

<VirtualHost 172.16.104.2:443>
ServerName www.test.com  #设置域名
SSLEngine on
SSLCertificateFile /etc/httpd/.ssl/server.crt   #设置证书
SSLCertificateKeyFile /etc/httpd/.ssl/server.key  #设置私钥
</VirtualHost>

https://i-blog.csdnimg.cn/blog_migrate/0a58d0ce86d0c0dd2991cff898d3c809.png

service httpd restart

https://i-blog.csdnimg.cn/blog_migrate/9a16cfa2e5c10371875dbd549a5aedd4.png

2. 为了防止密码在登录或者传输信息中被窃取,仅使用证书登录 SSH

(Data)。

生成私钥和公钥,私钥给客户端,公钥留在服务器

ssh-keygen -t rsa 

https://i-blog.csdnimg.cn/blog_migrate/8c0d45d4184d886c64ec37cbc17508ee.png

vim /etc/ssh/sshd_config

https://i-blog.csdnimg.cn/blog_migrate/124468838b4bf35d9400541c23747c25.png

StrictModes no  #可以避免因为~.ssh/文件夹权限设置不正确导致的无法登陆
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile  %h/.ssh/authorized_keys	#公钥文件存放位置

https://i-blog.csdnimg.cn/blog_migrate/581b50f232370358d5fc888626dd6153.png

https://i-blog.csdnimg.cn/blog_migrate/b3b403454483bf740016f69570694afa.png

Windows系统

防止文件枚举漏洞枚举网络服务器根目录文件,禁止IIS短文件名泄露,将配置命令截图

fsutil 8dot3name set 1

https://i-blog.csdnimg.cn/blog_migrate/b2afec49fbcb98920e9de2898b992bf0.png

A-5 任务五 事件监控(Web)

1. Web 服务器开启自定义日志要求记录:客户端 IP、用户、时间、行为、状

态码、大小;

Linux操作系统操作步骤

vi /etc/httpd/conf/httpd.conf

https://i-blog.csdnimg.cn/blog_migrate/57f7c7ac882b009c59f084c19116a960.png

按照下方代码添加和修改

LogFormat "%a %i %t %U %s %b" common # 分别对应客户端ip用户等等
CustomLog logs/access_log common     #日志文件位置

https://i-blog.csdnimg.cn/blog_migrate/b26feac9bc0bf309af79c92f237b3230.png

https://i-blog.csdnimg.cn/blog_migrate/615c0b81fa41892c183ba20624a1e082.png

Windows操作系统操作步骤

https://i-blog.csdnimg.cn/blog_migrate/dd5f5927efcbf78814c97f2cbdb24c14.png

按照题目要求勾选

https://i-blog.csdnimg.cn/blog_migrate/cb2158522814bc8e04cb9f062da19fc9.png

2. 配置 splunk 接收 Web 服务器、网站日志、系统日志、CPU 负载、内存、磁

盘空间、网络状态。

https://i-blog.csdnimg.cn/blog_migrate/c678944d1e298b0afd05d56557d90eeb.png

A-6 任务六 服务加固 vsFTPd (Data)

1. 修改配置文件,将 ftp 服务预设端口改为 2121,并对 iptables 进行配

置;

vi /etc/vsftpd/vsftpd.conf

https://i-blog.csdnimg.cn/blog_migrate/9ba100521074df3445c6913af186d922.png

修改下方的代码

listen_port=2121

https://i-blog.csdnimg.cn/blog_migrate/8a7396baa5fe2c66898cef6240cae2f9.png

添加防火墙规则

iptables -A INPUT -p tcp -m tcp --dport 2121 -j ACCEPT

https://i-blog.csdnimg.cn/blog_migrate/a9f484f1b87a53314dee5136f3d364db.png

2. 修改配置文件,禁止匿名用户登录;
vi /etc/vsftpd/vsftpd.conf

https://i-blog.csdnimg.cn/blog_migrate/9ba100521074df3445c6913af186d922.png

修改下方的代码

anonymous_enable=NO

https://i-blog.csdnimg.cn/blog_migrate/c13b856c7c1fc754d7cce3a6d97a879e.png

3. 修改配置文件,关闭 ascii 模式下载,防止被用于 DoS 攻击;
vi /etc/vsftpd/vsftpd.conf

https://i-blog.csdnimg.cn/blog_migrate/9ba100521074df3445c6913af186d922.png

修改下方的代码

ascii_download_enable=NO 

https://i-blog.csdnimg.cn/blog_migrate/d05573cdd9bc5eb3c4076c19ffc081e9.png

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

https://i-blog.csdnimg.cn/blog_migrate/9ba100521074df3445c6913af186d922.png

修改下方的代码

ls_recurse_enable=NO

https://i-blog.csdnimg.cn/blog_migrate/57089eaae0200cecc0574c4172daab9b.png

5. 修改 ftp 默认主目录为/ftp 文件夹,并将用户锁定在主目录内;
vi /etc/vsftpd/vsftpd.conf

https://i-blog.csdnimg.cn/blog_migrate/9ba100521074df3445c6913af186d922.png

修改下方的代码

chroot_local_user=YES
local_root=/ftp

https://i-blog.csdnimg.cn/blog_migrate/47ae573a806e17c4321d4279c105dde4.png

https://i-blog.csdnimg.cn/blog_migrate/f84cacda0b25b4e0023048df0419fc35.png

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

(本模块 400 分,每个子任务 80 分)

B-1 任务一 数据库安全加固

任务环境说明:
服务器场景:CentOS6.8(用户名:root;密码:123456)
服务器场景操作系统:CentOS6.8
  1. 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:

    root),查看数据库版本号,将查看数据库版本号的命令作为 flag 提交;

select version();
  1. 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:

    root),查看数据库版本号,将查询到的数据库版本号作为 flag 提交;

select version();
  1. 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:

    root),查看数据库列表,将查看数据库列表的命令作为 flag 提交;

select version();
  1. 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:

    root),进入 mysql 数据库,查看所有用户及权限,找到可以从任意 IP 地址访

    问的用户,将该用户的用户名作为 flag 提交;(如有多个可以从任意 IP 地址访

    问的用户,提交形式为用户名|用户名|用户名|用户名)

  2. 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:

    root),进入 mysql 数据库,查看所有用户及权限,找到可以从任意 IP 地址访

    问的用户,使用 drop 命令将该用户删除,将操作命令作为 flag 提交。

  3. 进入虚拟机操作系统:CentOS 6.8,登陆数据库(用户名:root;密码:

    root),进入 mysql 数据库,改变默认 mysql 管理员的名称,将系统的默认管理

    员 root 改为 admin,防止被列举,将操作命令作为 flag 提交。

B-2 任务二 Web 渗透测试

任务环境说明:
服务器场景:Pysystem2020
服务器场景操作系统:未知(关闭链接)

1. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 PYsystem2020 进行渗透测试,将该场景中 Apache 的版本号作为 FLAG(例如:2.2.3)提交;

nikto -h IP

https://i-blog.csdnimg.cn/blog_migrate/42054d54122c91c9d0b3644dc9fe8d02.png

2. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 PYsystem2020 进行渗透测试,将该场景中 PHP 的版本号作为 FLAG(例如:5.2.14)提交;

nikto -h IP

https://i-blog.csdnimg.cn/blog_migrate/ee3f923bface2233eed2a84309725f38.png

方法二

rpm -qa|grep php

3. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 PYsystem2020 进行渗透测试,将该场景中数据库的版本号作为 FLAG(例如:5.0.22)提交;

nmap -sV -n IP

https://i-blog.csdnimg.cn/blog_migrate/ba9be55bac6c00622b124ed2f89c0517.png

方法二

进入mysql
select version();

4. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 PYsystem2020 进行渗透测试,将该场景的内核版本号作为 FLAG(例如:2.6.18)提交;

nmap -O -n IP

https://i-blog.csdnimg.cn/blog_migrate/49024c2317a4878117dd451452367cc6.png

方法二

uname -r

5. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 PYsystem2020 进行渗透测试,将该场景中网站后台管理员 admin 用户的密码作为 FLAG 提交;

进入msf(适用于Apache2.2.15)


        search  apache_mod
        apache_mod_cgi_bash_env_exec
        set targeturi /cgi-bin/bin
        set rhost IP

https://i-blog.csdnimg.cn/blog_migrate/964bf184079b43398445d9012df4b212.png

https://i-blog.csdnimg.cn/blog_migrate/7c8f29037eb7501a7ca4a941ce7f2cac.png

6. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 PYsystem2020 进行渗透测试,将该场景/var/www/html 目录中唯一一个后缀为 shtml 文件的文件内容作为 FLAG 提交。

B-3 任务三 系统漏洞

任务环境说明:
服务器场景名:Web20200529
服务器场景用户名:未知(关闭链接)
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 提交;
mount -t nfs IP:/tmp/SZYZ /tmp/test
mount -t nfs即挂载nfs共享,后面的ip:/tmp是nfs路径/tmp/test是自己本地要挂载到的目录
4. 通过本地 PC 中渗透测试平台 Kali 计算目标靶机磁盘可用空间(以 M 或 G为单位)作为 Flag 提交;
df -h
df -h命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况,可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
-H 等于“-h”,但是计算式,1K=1000,而不是1K=1024
-T 文件系统类型
--help 显示帮助信息
--version 显示版本信息
df -i以inode模式来显示磁盘使用情况
5. 通过本地 PC 中渗透测试平台 Kali 使用“flag.txt”作为关键词搜索靶机文件系统中该文件的位置,并将搜索所需命令作为 Flag 提交;
find /mnt -name flag.txt
6. 通过本地 PC 中渗透测试平台 Kali 下载 flag.txt 文件,将文件中的 Flag提交;

登上了就直接看,登不上就去挂载目录找

download 文件 /root

B-4 任务四 隐藏信息探索

任务环境说明:
服务器场景:Web20200529
服务器场景操作系统:未知 (关闭链接)
  1. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,找到登录界面中的 FLAG,并将 FLAG 提交;

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

    行访问,找到登录界面背景中的 FLAG,并将 FLAG 提交;

  3. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,在登录界面中登录,登录成功后在成功的界面中找到 FLAG 并提交;

  4. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,登录成功后找到页面中的月亮,将月亮中的信息解密,并将解密后的信

    息作为 FLAG 提交;

  5. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,登录成功后找到页面中的十字星,将十字星中页面内容进行下载,将下

    载到的文件解密,并将解密后的文件内容作为 FLAG 提交;

  6. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,在登录界面中登录,登录失败后找到页面中的链接访问连接并下载文件,

    将文件中的隐藏文件全称作为 FLAG 提交;

  7. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,在登录界面中登录,登录失败后找到页面中的链接访问连接并下载文件,

    将文件中隐藏信息文件的内容作为 FLAG 提交;

  8. 通过本地 PC 中渗透测试平台 Kali 对服务器场景 Web20200529 中的网站进

    行访问,寻找每页中的隐藏信息,将每条信息按顺序合并,作为 FLAG 提交。

个人见解提示

1.一般是图片隐写或者藏在数据包头和数据包结尾

2.可能要修改cookie

3.也可能给你个文件通过经验分析文件格式(因为会把文件转成其他不可读取的格式),然后转换文件格式或者是通过其他编码进制打开文件

4.可能藏在源代码里面F12找

5.图片的话一种是把文件藏在图片里面,第二种是快速闪烁的图片,截图就行( 别说这个真的有 )。第三种有加密,要把图片解密。第四种图片的长或宽被修改,需要通过修改图片的大小来显示flag(ctf多此类型)

B-5 任务五 Web 安全之综合渗透测试

任务环境说明:
服务器场景名称:PYFile_W
服务器场景操作系统:未知(关闭链接)
  1. 使用渗透机场景 Kali2.0 中的工具扫描服务器,通过扫描服务器得到 web

    端口,登陆网站(网站路径为 IP/up),找到网站首页中的 Flag 并提交;

  2. 使用渗透机场景 windows7 访问服务其场景中的网站,通过上题给的信息

    获取本题,并将本题中的 Flag 提交;

  3. 使用渗透机场景 windows7 根据第二题的入口继续访问服务器本题场景,

    通过提示得到 Flag 并提交;

  4. 使用渗透机场景 windows7 根据第三题入口继续访问服务器的本题场景,

    通过提示联系前两题上传特定文件名得到 Flag 并提交;

  5. 使用渗透机场景 windows7 根据第四题入口继续访问服务器的本题场景,

    通过提示得到 Flag 并提交;

  6. 使用渗透机场景 windows7 根据第五题入口继续访问服务器的本题场景,

    通过提示得到 Flag 并提交;

  7. 使用渗透机场景 windows7 访问 http://靶机 IP/7,对该页面进行渗透测

    试,通过提示得到 Flag 并提交;

  8. 使用渗透机场景 windows7 访问 http://靶机 IP/8,对该页面进行渗透测

    试,通过提示得到 Flag 并提交;

  9. 使用渗透机场景 windows7 访问 http://靶机 IP/9,对该页面进行渗透测

    试,通过提示得到 Flag 并提交;

  10. 使用渗透机场景 windows7 访问 http://靶机 IP/10,对该页面进行渗透

    测试,通过提示得到 Flag 并提交;

  11. 使用渗透机场景 windows7 访问 http://靶机 IP/11,对该页面进行渗透

    测试,通过提示得到 Flag 并提交;

  12. 使用渗透机场景 windows7 访问 http://靶机 IP/12,对该页面进行渗透

    测试,通过提示得到 Flag 并提交;

  13. 使用渗透机场景 windows7 访问 http://靶机 IP/13,对该页面进行渗透

    测试,通过提示得到 Flag 并提交;

个人见解提示

建议不要批量打,容易打到裁判机。

一般是分为3个层次的靶机,每个层次分数不同,越难的分越高。

每个层次靶机有3个(具体看人数而定,会发生变化)当有人打一个靶机时,一般其他人再打会出现卡顿,或者打不进去。建议不要盲目认为靶机出问题就放过,可以先打其他的最后回来,不要死命和他杠。

模块 C CTF 夺旗-攻击

(本模块 200 分)

一、项目和任务描述:

假定你是某企业的网络安全渗透测试工程师,负责企业某些服务器的安全防

护,为了更好的寻找企业网络中可能存在的各种问题和漏洞。你尝试利用各种攻

击手段,攻击特定靶机,以便了解最新的攻击手段和技术,了解网络黑客的心态,

从而改善您的防御策略。

请根据《赛场参数表》提供的信息,在客户端使用本地电脑中的攻击机。

二、操作系统环境说明:

客户机操作系统:Windows 10 或 Windows 7

攻击机操作系统:Kali1.0、Kali2.0、BT5、Windows 7

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

三、漏洞情况说明:

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

  2. 靶机服务器上的网站可能存在命令注入的漏洞,要求选手找到命令注入的

    相关漏洞,利用此漏洞获取一定权限;

  3. 靶机服务器上的网站可能存在文件上传漏洞,要求选手找到文件上传的相

    关漏洞,利用此漏洞获取一定权限;

  4. 靶机服务器上的网站可能存在文件包含漏洞,要求选手找到文件包含的相

    关漏洞,与别的漏洞相结合获取一定权限并进行提权;

  5. 操作系统提供的服务可能包含了远程代码执行的漏洞,要求用户找到远程

    代码执行的服务,并利用此漏洞获取系统权限;

  6. 操作系统提供的服务可能包含了缓冲区溢出漏洞,要求用户找到缓冲区溢

    出漏洞的服务,并利用此漏洞获取系统权限;

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

    后门直接获取到系统权限。

个人见解提示

自己可以打一遍自己的靶机来看漏洞(别打傻了!)可能会与前面的题目出现的靶机具有类似的漏洞。

你可以和你的同伴商量,即他加固时可以留意一下有那些漏洞,有什么端口开放,有什么后门漏洞。这样可以减少走弯路

建议查看用户密码,远程连接,数据库,ftp,http,ssh等多个服务。然后根据题目提示来进行判断,和寻找漏洞,记得提前截图。不要打完后再截图,最好有个过程,即你如何发现,如何解决,解决完。

四、注意事项:

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

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

  3. 选手攻入靶机后不得对靶机进行关闭端口、修改密码、重启或者关闭靶机、

    删除或者修改 flag、建立不必要的文件等操作;

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

    服务器的 IP 地址;

  5. 赛场根据难度不同设有不同基础分值的靶机,对于每个靶机服务器,前三

    个获得 flag 值的参赛队在基础分上进行加分,本阶段每个队伍的总分均计入阶

    段得分,具体加分规则参照赛场评分标准;

  6. 本环节不予补时。

模块 D CTF 夺旗-防御

(本模块 200 分)

一、项目和任务描述:

假定各位选手是某安全企业的网络安全工程师,负责若干服务器的渗透测试

与安全防护,这些服务器可能存在着各种问题和漏洞。你需要尽快对这些服务器

进行渗透测试与安全防护。每个参赛队拥有专属的堡垒机服务器,其他队不能访

问。参赛选手通过扫描、渗透测试等手段检测自己堡垒服务器中存在的安全缺陷,

进行针对性加固,从而提升系统的安全防御性能。

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

的堡垒服务器。

二、操作系统环境说明:

客户机操作系统:Windows 10 或 Windows 7

攻击机操作系统:Kali1.0、Kali2.0、BT5、Windows 7

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

三、漏洞情况说明:

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

  2. 堡垒服务器上的网站可能存在命令注入的漏洞,要求选手找到命令注入的

    相关漏洞,利用此漏洞获取一定权限;

  3. 堡垒服务器上的网站可能存在文件上传漏洞,要求选手找到文件上传的相

    关漏洞,利用此漏洞获取一定权限;

  4. 堡垒服务器上的网站可能存在文件包含漏洞,要求选手找到文件包含的相

    关漏洞,与别的漏洞相结合获取一定权限并进行提权;

  5. 操作系统提供的服务可能包含了远程代码执行的漏洞,要求用户找到远程

    代码执行的服务,并利用此漏洞获取系统权限;

  6. 操作系统提供的服务可能包含了缓冲区溢出漏洞,要求用户找到缓冲区溢

    出漏洞的服务,并利用此漏洞获取系统权限;

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

    后门直接获取到系统权限。

个人见解提示

自己可以打一遍自己的靶机来看漏洞(别打傻了!)可能会与前面的题目出现的靶机具有类似的漏洞,建议查看用户密码,远程连接,数据库,ftp,http,ssh等多个服务。然后根据题目提示来进行判断,和寻找漏洞,记得提前截图。不要加固完后再截图,最好有个过程,即你如何发现,如何解决,解决完。

四、注意事项:

  1. 每位选手需要对加固点和加固过程截图,并自行制作系统防御实施报告,

    最终评分以实施报告为准;

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

  3. 不能对裁判服务器进行攻击,警告一次后若继续攻击将判令该参赛队离场;老是有人打,不要拿脚本批量打!

  4. 本环节不予补时。