2023年 湖南网安比武题 服务器题分析

yagami 发表于 9 月前 共 2,750 字、阅读约 9 分钟

2023年 湖南网安比武题 服务器集群分析

部分解析思路参考
2023某省电子取证比武wp
2023HNBW(服务器部分)
nginx+apach+数据恢复+apk小练习hunan

分别仿真 1.E01和2.E01

image-20231125150944666
image-20231125151649149

1.列出最早登录这两个服务器的IP地址

125.119.155.151

last |tail -n 5

image-20231125152201060

2.列出两个服务器的操作系统版本(如:CentOS Linux release 7.5.14)(版本号从小到大填写,分2项填写)

CentOS Linux release 7.6.1810
CentOS Linux release 7.7.1908

cat /etc/redhat-release

image-20231125154223461

3.列出查看历史命令的linux命令

history

4.列出nginx配置的网站信息(直接填入域名如:www.baidu.com

www.mmarri.com.cn
yzp.api.fzyaxpu.cn
invite.yzp.rziflzj.cn
yzp.fkzizyi.cn

cat /etc/nginx/nginx.conf | grep server_name | grep -v "#" | grep -v "localhost" | awk -F " " '{print $2}'

image-20231125161228277

不过题目没有具体问是1.e01还是两台得nginx配置文件 2.e01也有nginx配置文件设置了域名

image-20231125161419110

5.列出后台网站前端所在目录(如:/root/data)

/data/ns/yzp/dist

service nginx start
netstat -natup |grep nginx
vi /etc/nginx/nginx.conf

image-20231125162409271
浏览器访问 http://1.e01虚拟机ip:8090
image-20231125162633365

6.nginx配置信息中管理后台网站的访问端口是

8090
如上题

7. nginx配置信息中,反向代理API接口是(标准格式:以/结尾)

/api/phoenix/
或者
/api/phoenix-console-backend/

按我得理解这两个答案都应该是正确的

cat /etc/nginx/nginx.conf |grep /api

image-20231125163938065

8.nginx启动完成后,查询nginx进程的命令

A.ps -ef|grep nginx B. ./nginx -s stop C. ./nginx D. ./nginx -s reload

9.列出管理后台网站的配置文件所在目录(如:/root/log)

/data/ns/yzp/dist/config

vi /data/ns/yzp/dist/config/index.js

image-20231125164904396

10.列出可以直接搭建起来的网站前端的域名(不包括后台管理平台如:www.baidu.com

invite.yzp.rziflzj.cn
yzp.fkzizyi.cn

将前面nginx配置文件中设置的域名
www.mmarri.com.cn
yzp.api.fzyaxpu.cn
invite.yzp.rziflzj.cn
yzp.fkzizyi.cn

设置hosts文件后用浏览器挨个打开查看

11.列出java网站监听端口的配置信息中connectionTimeout=_______(如:<con…redirectPort =“8848”>)

20000

这部分到java网站应该看2.e01这台了

查看history
image-20231125170745821

vi /opt/server/conf/server.xml

image-20231125172357383

12.列出java网站后台数据库连接配置文件所在文件和目录(路径加文件名,如:/data/kk/ww.jar)

/opt/bg/webapps/ROOT/WEB-INF/lib/bg-core-1.0-SNAPSHOT.jar

查看java代码 看到有自己封装的jar包

vi /opt/bg/webapps/ROOT/WEB-INF/classes/com/ddy/phoenix/bg/web/interceptor

image-20231125183733567

下载/opt/bg/webapps/ROOT/WEB-INF/lib/bg-core-1.0-SNAPSHOT.jar 到本地使用jd-gui打开

image-20231125184001213

或者解压缩后查看文件 下载到windows本地解压后查看亦可

cd /opt/bg/webapps/ROOT/WEB-INF/lib/
unzip bg-core-1.0-SNAPSHOT.jar -d core
cat ./core/system.properties

image-20231125185636626

13.前端管理后台对应的java网站连接的数据库名称为

yzp_strategy

cd /opt/server/webapps/ROOT/WEB-INF/lib/
unzip phoenix-core-1.0-SNAPSHOT.jar -d core
cat ./core/system.properties

image-20231125190205288

14.前端管理后台对应的java网站连接的数据库账号为

yzp_prod
如上题

15.列出启动java网站的命令代码./opt/bg/bin/___

startup.sh

history |grep /bin/
vi /opt/bg/bin/startup.sh

16.列出java网站中保存的管理员登录账号表格名称为

bg_user

后面的题不用重构起来也能做 我试试重构起来的做法 (暂时重构失败 )
解压缩检材中的4.zip
确认MySQL版本

cat xtrabackup_info |grep server_version

image-20231125194623732

安装MySQL5.7.28

rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs
###解决阿里云镜像仿真后yum安装软件报错
#sed -i 's|http://mirrors.cloud.aliyuncs.com/centos|http://mirrors.aliyun.com/centos|g' /etc/yum.repos.d/CentOS-Base.repo
#sed -i 's|http://mirrors.cloud.aliyuncs.com/epel|http://mirrors.aliyun.com/epel|g' /etc/yum.repos.d/epel.repo
#yum clean all
#yum makecache
###解决error: Failed dependencies:libaio.so.1()(64bit) is needed by mysql-community-server-5.7.28-1.el7.x86_64
#yum install libaio -y
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm

将解压出来的文件上传到虚拟机内的/var/lib/mysql/目录内后

chown -R mysql /var/lib/mysql
chgrp -R mysql /var/lib/mysql

修改root密码
参考 企业实战(16)关于将阿里云RDS数据库或其他主机数据库全备文件恢复至自建数据库后密码被覆盖,并在重置密码时出现各种报错的问题解决

rm -rf /var/lib/mysql/mysql/user.TRG
rm -rf /var/lib/mysql/mysql/proxies_priv.TRG
vi /etc/my.cnf

在[mysqld]字段下添加

skip-grant-tables

启动MySQL

service mysqld start

使用空密码登录MySQL并且修改root密码

mysql -uroot -p
USE mysql;
UPDATE user SET authentication_string=PASSWORD("testtest12#") WHERE User='root';
FLUSH PRIVILEGES;
quit

去除skip-grant-tables

vi /etc/my.cnf

将skip-grant-tables删除或者注释

重启MySQL

service mysqld restart

测试账号登录和开启mysql general_log

mysql -uyzp_prod -pGXuuCg8xNYqN8hwASU9t9fe
quit
mysql -h 127.0.0.1 -uroot -p'testtest12#'
set global general_log = ON;
set global general_log_file='/tmp/general.log';
quit

查看mysql general_log

tail -f /tmp/general.log

###如果断网比武的情况下可以将数据库恢复到本地机器PhpStudy中的MySQL 5.7.26中(事先将可以安装的所有版本都安装好 5.0 5.1 5.5 5.7 8.0 以备不时之需)
###如果要追求速度可以只恢复yzp_strategy
Redis部分
判断 Redis情况

history |grep redis

发现redis启动命令 cd /home/tools/redis/bin && ./redis-server …/etc/redis.conf
确认一下配置文件

vi /home/tools/redis/etc/redis.conf

给虚拟机添加一块NAT的网卡并确认网卡名

ip a

修改IP地址

ip addr add 172.16.14.77 dev eth1

启动Redis

cd /home/tools/redis/bin && ./redis-server ../etc/redis.conf

测试连接

./redis-cli -h 172.16.14.77 -p 6379 -a '*&yzprspCa'
ping
info
quit

设置MySQL地址

echo '127.0.0.1 rm-bp1088br30459kz82.mysql.rds.aliyuncs.com' >> /etc/hosts'

###如果不想增加网卡可以用压缩软件解压bg-core-1.0-SNAPSHOT.jar后修改system.properties中jedis.host=172.16.14.77为jedis.host=127.0.0.1后用压缩瑞案件打开bg-core-1.0-SNAPSHOT.jar后将文件拖入 然后替换服务器上的此jar文件

启动java网站

cd /opt/bg/bin/ && ./startup.sh

1.e01 服务器设置,设置vmware NAT如下图

image-20231126000454752

给1.e01添加nat网卡获取ip 47.114.97.252

给1.e01和2.e01分别添加桥接网卡 使之能互通

1.e01修改nginx配置文件

vi /etc/nginx/nginx.conf

        server {
        listen       8090;
        #server_name  houtai.mmarri.com.cn;
        server_name localhost;
        root /data/ns/yzp/dist;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
                try_files $uri $uri/ @router;
                 index index.html;
        }

        location /api/phoenix-console-backend/ {
           proxy_pass http://172.16.14.77:8089/;

改为

        server {
        listen       8090;
        #server_name  houtai.mmarri.com.cn;
        server_name localhost;
        root /data/ns/yzp/dist;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
                try_files $uri $uri/ @router;
                 index index.html;
        }

        location /api/phoenix-console-backend/ {
           #proxy_pass http://172.16.14.77:8089/;
           proxy_pass http://2.e01虚拟机IP:8089/;

重启Nginx

service nginx restart

浏览器访问

http://47.114.97.42:8090/

使用账号 15057301199 密码 123456 登录

image-20231126001953150


2.e01 web日志

image-20231126002735094

数据库 general_log

image-20231126002905698

数据库插入登录日志

image-20231126003053353

按理说都通了,不知道问题出再哪里了,重构失败。期待有重构成功的小伙伴指导方法

不过从general_log 里可以确认用户表是bg_user
接下去只有盲做数据库分析的题了

17.管理员登录密码加密方式为(标准格式:大写)

SHA1
将10470c3b4b1fed12c3baac014be15fac67c6e815去cmd5.com查询

image-20231126004043855

或者使用pwcrack-framework

image-20231126004325876

18.管理员账号是_____(1),明文密码(2)__

15057301199
123456

19.该网站的用户总人数为____(1)____ 用户余额数为_____(2)

516

5011523.89

数据库查询

SELECT COUNT(*) as user_count FROM `user`;

image-20231126005253495

SELECT SUM(`balance`) as total_balance FROM `balance`;

image-20231126010740232

或者查看bg_homepage_daily_statistic表balance字段

20.列出登录后台地址记录的APP下载地址并判断IP所属地域,APP下载地址_____(1)_____ ; IP地域所属国家是_____(2)____

http://8.56.55.9/apk/yzp.apk
美国
在数据库中查找.apk

image-20231126011534468

image-20231126011611386

ip138.com

或者

curl www.cip.cc/8.56.55.9

image-20231126012142937

感谢

最后感谢提供检材和题目的小伙伴,另外感谢每个日日夜夜一起研究技术的小伙伴们。

image-20231120211033162

退回首页 留下一言