第二届平航杯

第二届平航杯

WL Lv3

本章简单复盘一下2024第二届平航杯服务器部分的题目

服务器

首先进行一下初始化,先仿真进入vmdk服务器,然后更换网卡为NAT,可以看到我们的ip为192.168.100.129

image-20250421084349960

1
vi /etc/sysconfig/network-scripts/ifcfg-ens33 #去掉注释符

image-20250421113237699

但是暂时先连不上ssh,先进行一下简单的配置

1
yum list installed | grep openssh-server #查看ssh是否安装

image-20250421084630160

1
vi /etc/ssh/sshd_config    #编辑ssh的配置文件

image-20250421084838152

image-20250421084906372

image-20250421084947454

ssh连接成功

image-20250421085015940

49.该电脑最早的开机时间是什么(格式:2025/1/1 01:01:01

2022/2/23 12:23:49

image

50 服务器操作系统内核版本(格式:1.1.1-123)

3.10.0-1160.119.1.el7.x86_64

image

51 除系统用户外,总共有多少个用户(格式:1)

3

image

52 分析起早王的服务器检材,Trojan服务器混淆流量所使用的域名是什么(格式:xxx.xxx)

wyzaizaoqi.com

找到trojan的配置文件,一开始我找到的是初始化的配置文件,被误导做错了好多题image-20250421090042029

image-20250421090004930

其实是root目录下的这个

image-20250421090103023

配置文件中清楚的告诉了混淆流量的域名wyzshop1.com

53 分析起早王的服务器检材,Trojan服务运行的模式为:

A、foward B、nat C、server D、client

config.json的内容是这样的

image-20250421092548828

在example里有各种运行模式的样例,一一对比,发现与nat的模板相似

image-20250421092600482

image-20250421092701628

54.关于 Trojan服务器配置文件中配置的remote_addr 和 remote_port 的作用,正确的是:

A

A. 代理流量转发到外部互联网服务器

B. 将流量转发到本地的 HTTP 服务(如Nginx)

C. 用于数据库连接

D. 加密流量解密后的目标地址

这里的的trojan配置作为客户端(client),将流量代理转发到境外的wyzshop1.com,服务端的配置一般只有监听本地端口这个特征比较明显。这样可以实现通过一个 Trojan 服务器可以代理访问任意网站

image-20250421091309972

55 分析网站后台登录密码的加密逻辑,给出密码sbwyz1加密后存在数据库中的值(格式:1a2b3c4d)

f8537858eb0eabada34e7021d19974ea

找到网站源码的根目录,然后把源码down下来

image-20250421093507892

建议用anytxt searcher进行多文件同步搜索,方便定位

image-20250421104243750

找到加密代码,接着找加密算法,发现返回的是AUTH_CODE+输入密码进行拼接之后的md5值

image-20250421104347942

搜AUTH_CODE,成功找到

image-20250421104450011

那么输入sbwyz1,储存在数据库中的密码也就是md5(TPSHOPsbwyz1)

f8537858eb0eabada34e7021d19974ea

image-20250421104618691

56 网站后台显示的服务器GD版本是多少(格式:1.1.1 abc)

2.1.0 compatible

启动宝塔面板

image-20250421093002717

找到网站对应的php版本

image-20250421093309319

去运行环境里找phpinfo

image-20250421093442750

57 网站后台中2016-04-01 00:00:00到2025-04-01 00:00:00订单列表有多少条记录(格式:1)

建站,将www.tpshop.com的域名绑到我们的服务器上

image-20250421095521271

image-20250421095628708

image-20250421095638490

可以进到主页,但是不管点哪个功能都会出现报错

image-20250421095707063

先去放行3306端口,然后找到root密码

接着去database.php中把数据库名字改成宝塔里的tpshop2.0,不然最后依然会报网络错误

image-20250421095842846

image-20250421095919963

image-20250421095956932

连接成功,但是最终到的tpshop是空的

image-20250421100024902

下一步就是去找被删掉的数据库文件

没想到吧,其实缺失的sql文件在计算机里面找到了

直接运行sql文件

image-20250421100357401

全局搜索login,没想到是这个目录,确实难找

image-20250421105027090

image-20250421101423207

找到admin的账号密码

image-20250421105325874

改密码为123456,计算md5(TPSHOP123456)的值

58 在网站购物满多少免运费(格式:1)

100000

image-20250421121833575

59 分析网站日志,成功在网站后台上传木马的攻击者IP是多少(格式:1.1.1.1)

222.2.2.2

GET /?s=/admin/\x5Cthink\x5Capp/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=peiqi.php&vars[1][]=

www.tpshop.com.log

image-20250421122203233

60 攻击者插入的一句话木马文件的sha256值是多少(格式:大写sha256)

870BF66B4314A5567BD92142353189643B07963201076C5FC98150EF34CBC7CF

整个网站源码down下来,然后扔d盾里

image

61 攻击者使用工具对内网进行扫描后,rdp扫描结果中的账号密码是什么(格式:abc:def)

administrator:Aa123456@image

62 对于每个用户,计算其注册时间(用户表中的注册时间戳)到首次下单时间(订单表中最早时间戳)的间隔,找出间隔最短的用户id。(格式:1)

180

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
SELECT 
user_info.user_id,
(first_order_time - user_info.reg_time) AS time_to_first_order
FROM
(SELECT
u.user_id,
u.reg_time,
MIN(o.create_time) AS first_order_time
FROM
tp_users u
JOIN
tp_delivery_doc o ON u.user_id = o.user_id
GROUP BY
u.user_id, u.reg_time) AS user_info
ORDER BY
time_to_first_order ASC
LIMIT 1;

image-20250421122412052

63 统计每月订单数量,找出订单最多的月份(XXXX年XX月)

2017年1月

1
2
3
4
5
6
7
8
9
10
11
SELECT 
DATE_FORMAT(FROM_UNIXTIME(create_time), '%Y') AS year,
DATE_FORMAT(FROM_UNIXTIME(create_time), '%m') AS month,
COUNT(*) AS order_count
FROM
tp_delivery_doc
GROUP BY
year, month
ORDER BY
order_count DESC
LIMIT 1;

image-20250421123008953

64 找出连续三天内下单的用户并统计总共有多少个(格式:1)

1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT DISTINCT a.user_id
FROM (
SELECT DISTINCT user_id, DATE(FROM_UNIXTIME(add_time)) AS order_day
FROM tp_order
) a
JOIN (
SELECT DISTINCT user_id, DATE(FROM_UNIXTIME(add_time)) AS order_day
FROM tp_order
) b ON a.user_id = b.user_id AND DATEDIFF(b.order_day, a.order_day) = 1
JOIN (
SELECT DISTINCT user_id, DATE(FROM_UNIXTIME(add_time)) AS order_day
FROM tp_order
) c ON b.user_id = c.user_id AND DATEDIFF(c.order_day, b.order_day) = 1
ORDER BY a.user_id;

image-20250421123110809

  • Title: 第二届平航杯
  • Author: WL
  • Created at : 2025-04-21 08:38:45
  • Updated at : 2025-04-24 23:03:27
  • Link: https://redefine.ohevan.com/2025/04/21/平航杯/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments