2025平航杯复现(服务器部分)

容器密码:早起王的爱恋日记❤
感谢任务书来自:https://blog.csdn.net/BJYBJ/article/details/147373772

起早王服务器

49. 【填空题】 (10分)

以下为服务器部分,该电脑最早的开机时间是什么【格式:2025/1/1 01:01:01】
2022/02/23 12:23:49

50. 【填空题】 (10分)

服务器操作系统内核版本【格式:1.1.1-123】
3.10.0-116

51. 【填空题】 (10分)

除系统用户外,总共有多少个用户【格式:1】
3

52. 【填空题】 (15分)

分析起早王的服务器检材,Trojan服务器混淆流量所使用的域名是什么【格式:xxx.xxx】
/etc/trojan
/root/trojan/
可以判断就这两个路径有用另外的路径是日志和下载包的


首先查看/etc/trojan

可以判断这里只有一个配置文件
在加目录下还有一个配置文件启动网站的话加目录下的可执行文件和配置文件是同一目录下的所以只要在加目录下启动trojan的话就肯定调用的是加目录下的配置文件

[root@localhost trojan]# ls
config.json  CONTRIBUTORS.md  examples  LICENSE  README.md  trojan
[root@localhost trojan]# cat config.json 
{
    "run_type": "you guess",
    "local_addr": "127.0.0.1",
    "local_port": 12345,
    "remote_addr": "wyzshop1.com",
    "remote_port": 443,
    "password": [
        "password1"
    ],
    "log_level": 1,
    "ssl": {
        "verify": true,
        "verify_hostname": true,
        "cert": "",
        "cipher": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA",
        "cipher_tls13": "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384",
        "sni": "",
        "alpn": [
            "h2",
            "http/1.1"
        ],
        "reuse_session": true,
        "session_ticket": false,
        "curves": ""
    },
    "tcp": {
        "no_delay": true,
        "keep_alive": true,
        "reuse_port": false,
        "fast_open": false,
        "fast_open_qlen": 20
    }
}

[root@localhost trojan]# 

答案为wyzshop1.com

53. 【单选题】 (20分)

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

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

在家目录的trojan目录下的examples目录下有样本,可以看到每种模式的样本


{
    "run_type": "nat",
    "local_addr": "127.0.0.1",
    "local_port": 12345,
    "remote_addr": "example.com",
    "remote_port": 443,
    "password": [
        "password1"
    ],
    "log_level": 1,
    "ssl": {
        "verify": true,
        "verify_hostname": true,
        "cert": "",
        "cipher": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA",
        "cipher_tls13": "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384",
        "sni": "",
        "alpn": [
            "h2",
            "http/1.1"
        ],
        "reuse_session": true,
        "session_ticket": false,
        "curves": ""
    },
    "tcp": {
        "no_delay": true,
        "keep_alive": true,
        "reuse_port": false,
        "fast_open": false,
        "fast_open_qlen": 20
    }
}

可以看到NAT模式的样本刚好符合我们配置文件的格式
直接选NAT

54. 【单选题】 (10分)

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

A、代理流量转发到外部互联网服务器
B、将流量转发到本地的 HTTP 服务(如Nginx】
C、用于数据库连接
D、加密流量解密后的目标地址
选B,GPT或者分析一下

55. 【填空题】 (20分)

分析网站后台登录密码的加密逻辑,给出密码sbwyz1加密后存在数据库中的值【格式:1a2b3c4d】
我们需要在源代码里面找到加密逻辑,首先把源代码拉下来
然后直接搜md5,sha256,sha1这三个加密值,这是我的做题方法大家有更好的方法可以用自己的搜到加密方式

这边直接找到了数据库的插入方式
所以

$password = md5('TPSHOP'.trim($_POST['manager_pwd']));

$password=md5(TPSHOPsbwyz1)
所以最后在数据库里面的值是
f8537858eb0eabada34e7021d19974ea

56. 【填空题】 (15分)

网站后台显示的服务器GD版本是多少【格式:1.1.1 abc】
这个题有一个坑点就是宝塔读取到的root用户密码登录之后的root用户只有root本地的权限,但是你的网站又只有本地权限可以连上数据库
+----------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@127.0.0.1 |
+----------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON . TO 'root'@'127.0.0.1' IDENTIFIED BY PASSWORD '*9660F81C4F1CD5F9EFF5C079A92A6A44C98D410E' WITH GRANT OPTION |
+----------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.12 sec)

mysql>

所以我们先要去登录后台现在有多种做法,首先第一步关闭防火墙,导入数据库文件直接用navicat连上去之后拿服务器里面最新的sql文件导入就行
systemctl stop firewalld

方法一:
在/etc/my.cof添加skip-grant-table


然后直接改HOST找后台,搜索得知后台在/index.php/admin下
直接根据上面找到的加密逻辑找修改后台密码
然后就可以登录后台

方法二:
直接使用tpshop用户登录数据库就行了
本质上没有什么区别,就是原本来说root用户没有访问别的数据库的权限因为不是他本地的,加了skip-grant-table,就跳过了本地表的限制了

然后我们来找GD版本,这里除了登录到后台其实还有做法
现在先去后台找

可以看到版本是bundled (2.1.0 compatible)
第二个就是看phpinfo

57. 【填空题】 (10分)

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

1292条

58. 【填空题】 (10分)

在网站购物满多少免运费【格式:1】

100000

59. 【填空题】 (10分)

分析网站日志,成功在网站后台上传木马的攻击者IP是多少【格式:1.1.1.1】
这个日志在服务器里面直接拖出来看一下就行

直接cat 日志|grep peiqi就行

60. 【填空题】 (10分)

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

870BF66B4314A5567BD92142353189643B07963201076C5FC98150EF34CBC7CF

61. 【填空题】 (10分)

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

可以看到这里有搜到goon2 的rdp扫描工具生成了result.txt
直接cat一下发现里面有

62. 【填空题】 (20分)

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

SELECT u.user_id, MIN(o.create_time) - u.reg_time  as time_diff 
FROM tp_users u 
JOIN tp_delivery_doc o ON u.user_id = o.user_id 
GROUP BY u.user_id, u.email, u.reg_time 
ORDER BY time_diff ASC 
LIMIT 1;

63. 【填空题】 (10分)

统计每月订单数量,找出订单最多的月份【XXXX年XX月】
SELECT
EXTRACT(YEAR FROM FROM_UNIXTIME(o.create_time)) as year,
EXTRACT(MONTH FROM FROM_UNIXTIME(o.create_time)) as month,
COUNT(*) as order_count
FROM tp_delivery_doc o
GROUP BY year, month
ORDER BY order_count DESC
LIMIT 1;
67、
SELECT
t1.user_id,
MIN(FROM_UNIXTIME(t1.add_time)) AS earliest_order_date
FROM
tp_order t1
WHERE EXISTS (
SELECT 1
FROM tp_order t2
WHERE t2.user_id = t1.user_id
AND FROM_UNIXTIME(t1.add_time) > FROM_UNIXTIME(t2.add_time)
AND DATEDIFF(FROM_UNIXTIME(t1.add_time), FROM_UNIXTIME(t2.add_time)) <= 3
)
GROUP BY
t1.user_id
ORDER BY
t1.user_id;

64. 【填空题】 (15分)

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

posted @ 2025-04-25 20:58  N1tols  阅读(162)  评论(0)    收藏  举报