数证杯顺心借JAVA网站重构详细版(服务器取证基础考点+检材+题目+重构视频)
点击上方蓝字“小谢取证”一起玩耍
## 数证杯初赛服务器取证 先看一下所提供的检材是2个镜像文件。
如果提供的检材是两个镜像文件要注意对这两个镜像的处理方式是仿真的时候是站库分离进行分别仿真还是system盘和data盘同时挂载仿真。
那么如何判断两个镜像是要同时仿真还是分别仿真? 那这个时候就可以用到介质加载工具,如X-ways对两个镜像同时进行加载,查看是否有完整的Linux目录。 可以看到system镜像文件有完整的“Linux目录”。
也可以看到data镜像有完整的“Linux目录”。
通过上述判断,该服务器检材做了站库分离,需要分别进行仿真。
对服务器的镜像的处理方式可以移步
服务器镜像处理方法(比武简易新手版)
### 1. 对服务器检材进行分析,站点服务器可能是从哪个云服务平台上调证过来的?(填写汉字,答案格式:亿速云)
//可以使用工具直接进行查看Finalshell或者云取证工作站
或者使用命令ls /etc/yum.repos.d/
【服务器系统基础考点】系统的发行版本、系统的主机名、当前有几个可用的用户、某个用户的salt值、登录系统最早的用户及登录的时间点及ip地址、当前时区、历史命令(宝塔history.pl)(可能有题目当中问的某个应用程序或者服务名称或者是重构网站的重要步骤或者是重要的配置文件) 【磁盘相关基础考点】
磁盘分区情况、Linux系统的文件系统、挂载点、
### 2. 对服务器检材进行分析,站点服务器中数据库的密码是?(按实际值填写)
【网站相关基础考点】
网站源码的目录、网站的运行目录、网站的访问端口、网站的访问日志、网站后台地址、网站源码当中的数据库配置文件、网站后台的加密方式、网站后台账号所对应的明文密码
上图可以发现,用的是java网站,nginx做反向代理 1.要判断网站源码在哪里就得先判断使用的是哪个中间件(网站源码的路径在中间件的配置文件当中)
- 使用ss -lntp命令查看当前正在运行的应用程序,可以看到有nginx的中间件
这个时候,这个nginx有可能是两种情况。一个是利用nginx+php+mysql的组合搭配。第二种是jar+nginx+mysql。第二种的nginx只做反向代理的作用。可以使用nginx -T命令查看进一步确认。
反向代理的标识为peoxy_pass http:
可以从上图看到,8082的端口反向代理到80端口且访问的域名为sxj.elitzoe.cn,所以反向代理的好处是可以将jar包原本只能用端口访问,现在经过nginx反向代理之后,可以使用域名和端口访问,提高了安全性。 知道了jar+nginx+mysql的组合搭配,(常见的搭配如下图)。
接下来找jar包。
找jar包的思路可以查看历史命令是否有jar包痕迹或者find命令查找
排除java-1.8.0目录(为java环境)
也可以在历史命令中确定jar包的位置
将此jar包下载下来,对源码当中的配置文件进行查看 查看配置文件可以得到的信息是jar包网站的访问端口是8082,所生效的模块是sxj
所以还要继续看sxj模块查看数据库信息
既可看到服务器中数据库密码是Sxy000**
### 3. 对服务器检材进行分析,站点服务器用于提供服务发现的工具名是?(答案格式:zookeeper) //在历史命令中发现的consul
### 4. 对服务器检材进行分析,站点服务器数据库配置文件名是?(答案格式:database.php)
### 5. 对服务器检材进行分析,该网站涉及的APP名称是?(答案格式:微信)
### 6. 对服务器检材进行分析,该网站用于存储大量身份证照的OSS中的AccessKeyID后八位是?(答案格式:按实际值填写)
### 7. 对服务器检材进行分析,站点服务器用于消息转发代理工具所使用的端口号是?(填写数字,答案格式:3306)
### 8. 对服务器检材进行分析,站点服务器用于启动定时任务的代码片段存在于?(答案格式:LoginIndex.class)
//搜索定时任务
### 9. 对服务器检材进行分析,站点服务器用于验证用户输入的验证码是否匹配的代码片段存在于?(答案格式:LoginIndex.class)
//搜索验证码可得
### 10. 对服务器检材进行分析,数据库服务器中Docker容器镜像中mysql的镜像ID号前6位是?(答案格式:123asd) //容器id、镜像id、挂载目录、映射的端口、mysql的密码、容器创建的时间、镜像的数据、仓库的数量
### 11. 对服务器检材进行分析,数据库服务器中DockerCompose的版本号是?(答案格式:1.1.1)
【docker基础考点】
docker的镜像数量、容器数量、仓库数量、docker的仓库地址、docker的映射目录、docker的映射端口、docker中mysql的root密码、docker容器的创建时间(注意时区)、docker的日志、docker compose的版本、docker compose的配置文件
### 12. 对服务器检材进行分析,数据库服务器中用于存储后台登录账号的数据表名是?(答案格式:login)
现在数据库配置文件当中确定了数据库名称为sxy_prod(即问号的前面为数据库名称)
mysql的数据库会以数据库名称为文件夹的形式进行存储。一般文件夹的名称就是数据库名称。故可以全局查找“sxj_prod”关键词,将其文件夹进行导出。而且此文件夹一定是在“数据库服务器”。
到出完成后,使用“数据库恢复”对其文件夹进行恢复
### 13. 对服务器检材进行分析,后台管理员“xpt-0”所绑定的手机号码是?(答案格式:13001880188)
搜索关键词可得
### 14. 对服务器检材进行分析,用户首次借款初始额度是?(填写数字,答案格式:1)
### 15. 对服务器检材进行分析,受害者在平台中一共结款了几次?(填写数字,答案格式:1) 【网站重构详细过程】 1.通过上述对两个服务器镜像进行判断,判断出当前的服务器检材是站库分离,所以需要对两个镜像分别仿真,但会发现,其中数据库服务器仿真起来看到该服务器设置了静态IP。该静态IP地址为192.168.160.150
解决的方式是可以去新建一个仅主机或者NAT模式的虚拟网卡设置的网关为192.168.160.0/24,DHCP自动获取范围可以从192.168.160.150开始获取。设置如下
设置网段
DHCP设置 在虚拟机设置出切换为刚刚设置的“VMnet2”网卡
再使用“systemctl restart network”命令重启网卡。
测试一下即可以ping通
另外一个“顺心借网站”服务器镜像也是执行同样的操作。可以获取到IP地址为192.168.160.152
【网站重构关键步骤】
一般来说,站库分离的检材对应的数据库在数据库服务器当中,但是在数据库服务器当中连接的过程中,数据库密码错误。故需要在数据库服务器中执行绕密的操作,执行步骤如下。
1.docker中mysql8.0绕密
docker exec -it f2 sed -i '/\[mysqld\]/a skip-grant-tables' /etc/my.cnf
docker restart f2
docker exec -it f2 mysql -uroot
进入到数据库中执行以下命令
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
ALTER USER 'root'@'%' IDENTIFIED BY '123456';
FLUSH PRIVILEGES; exit; 退出之后也要注意将“skip-grant-tables”的语句去除。再重启。运行如下语句即可 docker exec -it f2 sed -i "s/skip-grant-tables/ /" /etc/my.cnf
最后再将容器重启。
docker restart f2 同时也要注意管理员账号在数据库当中做了登录限制,可以在navicat当中修改。也可以使用sql语句
UPDATE sxj_prod.sys_user SET state = 0 WHERE id = 23; 2.修改jar包当中的数据库配置文件 3.分析历史命令启动需要启动的服务 启动consul(consul.sh)与rabbitmq 启动rabbitmq会碰到报错 修改hosts⽂件让ip和主机名正确对应即可 4.再启动jar包,可以使用history启动的命令进行启动。也可以直接前台启动:java -jar +jar包 前台启动的好处是可以直接看到报错信息,但不能将当前的终端界面关闭。 5.使用nginx反向代理中的82端口进行访问。但会发现需要手机和验证码登录。验证码会请求47.96.140.186 使用命令进行替换(前提是要切换到/www/admin/目录下) find ./ -type f -exec sed -i 's/47.96.140.186/192.168.160.152/g' {} +
6.验证码值自动获取不到,需要手工添加
redis-cli -a Sxy000**
set ADMIN-PHONE18888888888 666666 7.数据库中表解除禁⽤,修改state为0,登录成功
### 16. 对服务器检材进行分析,该平台中所有下单用户成功完成订单总金额是?(填写数字,答案格式:1)
### 17. 对服务器检材进行分析,该平台中逾期费率是?(答案格式:1.1)
### 18. 对服务器检材进行分析,该平台中累计还款总金额是?(填写数字,答案格式:1)
### 19. 对服务器检材进行分析,该平台总共设置了多少种借款额度?(填写数字,答案格式:1)
【18】一个禁用
### 20. 对服务器检材进行分析,该平台一共有多少个借款渠道?(填写数字,答案格式:1)
### 21. 对服务器检材进行分析,该平台对已完成用户收取了总计多少元服务费,结果精确到整数?(填写数字,答案格式:123)
检材和视频后台回复“顺心借”即可。
敬请各位大佬关注:小谢取证
小谢取证