2021第三届长安杯

检材一

  2021年4月25日,上午8点左右,警方接到被害人金某报案,声称自己被敲诈数万元。经询问,昨日金某被嫌疑人诱导裸聊,下载了某“裸聊”软件,导致自己的通讯录和裸聊视频被嫌疑人获取,对其进行敲诈,最终金某不堪重负,选择了报警。警方从金某提供的本人手机中,定向采集到了该“裸聊”软件的安装包—zhibo.apk(检材一)。请各位回答下列问题:(题目中需要通过分析出来的答案对检材二三四五解压,解压密码为IP的情况,需要在密码后增加-CAB2021,例: 192.168.100.100-CAB2021)

检材一加挂密码:2021第三届CAB-changancup.com

1 、请计算检材一Apk的SHA256值
3fece1e93be4f422c8446b77b6863eb6a39f19d8fa71ff0250aac10f8bdde73a
雷电APP直接跑
d288fdafe63949c3bc2fd4d466e77ca9.png
2 、该APK的应用包名为
plus.H5B8E45D3
见上题图
3 、该APK程序在封装服务商的应用唯一标识(APPID)为
H5B8E45D3
反编译之后的资源文件里也有
5ff38c962d8e49799237753ccd4f3ea7.png

4 、该APK具备下列哪些危险权限(多选题):
A.读取短信 B.读取通讯录 C.读取精确位置 D.修改通讯录 E.修改短信
ABCDE
01a56479c11f4bf6bd82647598f9c712.png

5 、该APK发送回后台服务器的数据包含一下哪些内容(多选题):
A.手机通讯录 B.手机应用列表 C.手机号码 D.验证码 E.GPS定位信息
ACDE
雷电的HTTP和TCP抓不到包,开代理模式,在马铃薯视频填上手机号和邀请码(编一个),填上
后APP直接申请了手机通讯录权限,A确定,在后台抓到的包里能看到我输入的手机号和邀请码,
CD确定
566e3c9f91ea42058e9f53b08563bd40.png

接第8题,解密后能发现调用定位权限的代码,E确定

0cd28222ad2342a9be937970cc142a36.png

6 、该APK程序回传通讯录时,使用的http请求方式为()
POST
7040bee4f2bd4ddfab8a06060967ebd7.png

7 、该APK程序的回传地址域名为【标准格式:www.abc.com】
www.honglian7001.com
见上题图

 
8 、该APK程序代码中配置的变量apiserver的值为【标准格式:www.abc.com/abc】
www.honglian7001.com/api/uploads/
在资源文件中找到APP首页的html即index.html,上面是填写手机号和邀请码,下面的script是
sojson.v4加密
2b8de0cc942445c590ff9e2dec776293.png

解密Sojson v4 解密 - Bugku CTF后直接搜索就找到了

c235c7d5ff2b4751aa5d3f9c72bb6f63.png

9 、分析该APK,发现该程序还具备获取短信回传到后台的功能,短信上传服务器接口地址为【标准格式:www.abc.com/abc】
www.honglian7001.com/api/uploads/apisms
在短信sms代码中找到mui.ajax函数,是向服务器发送数据,后面跟的url是请求发送的目标地址
ab667d4df48249dcad16f6b55246655a.png

10 、经分析,发现该APK在运行过程中会在手机中产生一个数据库文件,该文件的文件名为
test.db
直接用雷电自带的Frida脚本直接出
4cc1839d07404bef95276b4bd02d4a7c.png

11 、经分析,发现该APK在运行过程中会在手机中产生一个数据库文件,该数据库的初始密码为

c74d97b01eae257e44aa9d5bade97baf

见上题图

检材二

经过掌握的APK程序后台服务器回连地址,警方成功调取该服务器的镜像,请使用第7题的答案对检材二进行解压进行分析

检材二解压密码:www.honglian7001.com

12 、检材二的原始硬盘的SHA256值为:
E6873068B83AF9988D297C6916329CEC9D8BCB672C6A894D393E68764391C589
13 、查询涉案于案发时间段内登陆服务器的IP地址为【标准格式:111.111.111.111】
192.168.110.203
根据案件背景判断,案发时间是2021年4月24,弘连上有两个ip192.168.110.129、192.168.110.203,不好判断
cb2c9f45fc91426e8f035a106982ae0f.png

仿真后last显示用户最近登录信息,192.168.110.129仅登录3秒,还是192.168.110.203更靠谱

361dcebd2bd34d9baa9136692bd693d8.png

14 、请对检材二进行分析,并回答该服务器在集群中承担的主要作用是()【格式:文件存储】
负载均衡
查看历史命令
99d1ccf004da4d0f814a52e3cc94f374.png

进入su再查看,发现最后有个弘连竞赛的文件夹

508a41afa45e475f96b6531cd874e1e1.png

进入/opt/honglianjingsai

ea1e4722daa641119cf83bb42a1defdd.png

查看README.txt

e4edf2f195474294aac74e741a13ace8.png

进入/controller,判断出这个文件夹存放网站的源代码

b5bd38290d084fb6831876168c617c9b.png

查看ADProxy.js,反向代理的ip是192.168.110.111、192.168.110.112、192.168.110.113,根据不同的条件(51-63行),传入不同的服务器,因此这个服务器就是负载均衡设备

/**
 * 反向代理
 *
 */
module.exports = function(_brain, _app) {
    /* INCLUDE */
    const path = _brain.A.path;
    const async = _brain.A.async;
    const proxy = require('http-proxy-middleware');
    const net = require('net');
    /* DEFINE */
    const _tag = path.basename(__filename, ".js");
    var _isBanned = false;
    var _isStarted = false;
    if(!_brain.A.checkIsNull(_brain.C.autorun_config[_tag], _tag)){
        _isStarted = _brain.C.autorun_config[_tag];
    }
    /* DEFINE PROXY */
    const _proxy50 = {
        protocol: 'http:',
        host: '192.168.110.111',
        port: 80
    }
    const _proxy100 = {
        protocol: 'http:',
        host: '192.168.110.112',
        port: 80
    }
    const _proxy100p = {
        protocol: 'http:',
        host: '192.168.110.113',
        port: 80
    }
    /* Private Function */
    /**
     * Service Running
     */
    var service = function (){
        if(!_isStarted) return;
        // proxy middleware options
        const _proxyer_chronus = proxy({
            target: '/', // target host
            changeOrigin: true,               // needed for virtual hosted sites
            ws: true,                          // proxy websockets
            router: function(req) {
                var clientIP = req.get("x-forwarded-for")
                if (clientIP == undefined) {
                    clientIP = req.connection.remoteAddress
                }
                var clientIPArr = clientIP.split(".")
                if (clientIPArr.length == 4) {
                    var clientIP3Int = parseInt(clientIPArr[2])
                    global.logger.warn('[Proxy_RequestHeader] -> ' + JSON.stringify(req.headers));
                    global.logger.warn('[Proxy_ClientIP] -> ' + clientIP);
                    if (clientIP3Int <= 50) {
                        global.logger.warn('[Proxy_Destination] -> ' + JSON.stringify(_proxy50));
                        return _proxy50
                    } else if (clientIP3Int <= 100) {
                        global.logger.warn('[Proxy_Destination] -> ' + JSON.stringify(_proxy100));
                        return _proxy100
                    } else {
                        global.logger.warn('[Proxy_Destination] -> ' + JSON.stringify(_proxy100p));
                        return _proxy100p
                    }
                }
            }
        })

        _app.all('/*', _proxyer_chronus);
    };

    /**
     * Service Killing
     */
    var serviceKiller = function (){
    };


    /* Public Function */
    /* 返回_tag */
    var getTag = function (){
        return _tag;
    };
    /* 判断服务是否开启 */
    var isStarted = function (){
        return _isStarted;
    };
    /* 判断服务是否被意外禁止 */
    var isBanned = function (){
        return _isBanned;
    };

    /* 服务开关 */
    var startServer = function (callBack){
        _isStarted = true;
        service();
        if(callBack)
            callBack(100, _tag + ' Started');
    };

    var stopServer = function (callBack){
        _isStarted = false;
        serviceKiller();
        if(callBack)
            callBack(100, _tag + ' Stopped');
    };

    /* Service AutoRun */
    if(_isStarted){
        startServer();
    }else{
        stopServer();
    }

    return{
        getTag             : getTag,
        isStarted          : isStarted,
        isBanned           : isBanned,
        startServer        : startServer,
        stopServer         : stopServer,
    };
}
15 、上一题中,提到的主要功能对应的服务监听的端口为:

80

见上题代码

16 、上一题中,提到的服务所使用的启动命令为:
node app.js
history中发现重启之后第一个就是开启node app.js,下面的是查看文件、清屏等
b3941c66e5a844c1b89a32a0184f4926.png
17 、经分析,该服务对于请求来源IP的处理依据是:根据请求源IP地址的第()位进行判断【标准格式:9】
3
将ip按照中间的.分开,分成4段 ,如果是4段,判断ip地址的第3位是否在0-50之间、在50到100之间、大于100,根据不同的条件转发到不同的服务器
var clientIPArr = clientIP.split(".")
                if (clientIPArr.length == 4) {
                    var clientIP3Int = parseInt(clientIPArr[2])
                    global.logger.warn('[Proxy_RequestHeader] -> ' + JSON.stringify(req.headers));
                    global.logger.warn('[Proxy_ClientIP] -> ' + clientIP);
                    if (clientIP3Int <= 50) {
                        global.logger.warn('[Proxy_Destination] -> ' + JSON.stringify(_proxy50));
                        return _proxy50
                    } else if (clientIP3Int <= 100) {
                        global.logger.warn('[Proxy_Destination] -> ' + JSON.stringify(_proxy100));
                        return _proxy100
                    } else {
                        global.logger.warn('[Proxy_Destination] -> ' + JSON.stringify(_proxy100p));
                        return _proxy100p
                    }
                }
18 、经分析,当判断条件小于50时,服务器会将该请求转发到IP为()的服务器上【标准格式:111.111.111.111】
192.168.110.111 
19 、请分析,该服务器转发的目标服务器一共有几台【标准格式:9】
3
20 、请分析,受害者通讯录被获取时,其设备的IP地址为【标准格式:111.111.111.111】
192.168.110.252
cd /opt/honglianjingsai/chronusNode/logs,4月24只有 2021-4-24-6-26.log
 
8cea8c5c00ff47129403063257d7975f.png

查看 

1fe33906ff374c0eb33286d8e79b61a7.png

具体 

Proxy:代理服务器

[Proxy_ClientIP]:代理服务器客户端ip

[Proxy_Destination]:中间商代理服务器转发到的服务器ip

[Proxy_RequestHeader]:代理服务器请求头

[2021-04-24 06:29:47.558] [WARN] Chronus - [Proxy_ClientIP] -> 192.168.110.252
[2021-04-24 06:29:47.559] [WARN] Chronus - [Proxy_Destination] -> {"protocol":"http:","host":"192.168.110.113","port":80}
[2021-04-24 06:30:10.451] [WARN] Chronus - [Proxy_RequestHeader] -> {"host":"www.honglian7001.com","connection":"keep-alive","content-length":"43","accept":"text/plain","origin":"file://","x-requested-with":"XMLHttpRequest","user-agent":"Mozilla/5.0 (Linux; An
droid 10; PBCM30 Build/QKQ1.191224.003; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.92 Mobile Safari/537.36 Html5Plus/1.0 (Immersed/32.0)","content-type":"application/x-www-form-urlencoded","accept-encoding":"gzip, deflate","accept-
language":"zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7"}
21 、请分析,受害者的通讯录被窃取之后,经由该服务器转发到了IP为()的服务器上【标准格式:111.111.111.111】

192.168.110.113

见上题图

检材三

通过对检材二的分析,警方进一步掌握并落地到了目标服务器地址,通过对服务器进行证据固定,得到服务器镜像--检材 三,请使用第21题答案对检材三进行解密并分析,回答下列问题:
检材三加挂密码:192.168.110.113-CAB2021
22 、检材三的原始硬盘的SHA256值为:
205C1120874CE0E24ABFB3BB1525ACF330E05111E4AD1D323F3DEE59265306BF
23 、请分析第21题中,所指的服务器的开机密码为:
honglian7001
web1.E01仿真后发现是192.168.110.111,一个反向代理ip对应一个镜像,192.168.110.113应该是web3.E01
805fb3bef7184952aa84e046bf5ef6d1.png

仿真后没有出现密码,直接重置了,密码从检材四PC机中的xshell中看 

00b7682b8b494511858ace67ced79cb4.png

24 、嫌疑人架设网站使用了宝塔面板,请问面板的登陆用户名为:

hl123

先启动宝塔,bt default查看用户名和密码 

e0db8a6f8f56442cb8046357690c92f5.png

更改网络配置

29fae08641824fd3b7c4ce2cb4e42c91.png

937c4a1640eb44ffb5204f74b8580cfe.png

更改密码

3f5a2e8213a141d3a8376a037ce1b0aa.png

成功登录

fd02a268b606477fb897fd8f1f84a62a.png

25 、请分析用于重置宝塔面板密码的函数名为

set_panel_pwd 

在/www/server/panel/tools.py中

9edce728794a40a387d59d75c25e1679.png

bdf32dd7129842e4b1da1e3a29ed3158.png

对应的set_panel_pwd函数

f05249a6d0c847ff8bd088db30dec345.png
26 、请分析宝塔面板登陆密码的加密方式所使用的哈希算法为
MD5
见上图
27 、请分析宝塔面板对于其默认用户的密码一共执行了几次上题中的哈希算法
3
25题图执行一次,图中public.md5,在tools.py中找到public库来自/www/server/panel/class/public.py
1aa66c30cc3e47e0ac0753c17a07a844.png

public.py代码中执行两次b8516e0539cb40799cfce7fd16f69a72.png

28 、请分析当前宝塔面板密码加密过程中所使用的salt值为【区分大小写】

v87ilhAVumZL 

a1562389e37e4f68970dde317d542f1e.png

29 、请分析该服务器,网站源代码所在的绝对路径为
/www/wwwroot/www.honglian7001
70f9d620f24641259613873d4ea73373.png
30 、请分析,网站所使用的数据库位于IP为()的服务器上(请使用该IP解压检材4,并重构网站)【标准格式:111.111.111.111】

192.168.110.115

42ed63abd88d4ce0963d61ae7dac4d0c.png

31 、请分析,数据库的登陆密码为【区分大小写】

wxrM5GtNXk5k5EPX

和上题一样的位置

32 、请尝试重构该网站,并指出,该网站的后台管理界面的入口为【标准格式:/web】
/admin
dc210a7937914c08a2b5cbce623087f0.png
33 、已该涉案网站代码中对登录用户的密码做了加密处理。请找出加密算法中的salt值【区分大小写】

lshi4AsSUrUOwWV

a463c647cf104b9f8c3147f1ad3fd41d.png

34 、请分析该网站的管理员用户的密码为:
security
重组raid:用FTK挂载检材五的RAID
6efe30647dda4bf8a57e722057fb6ae0.png

用R-Studio进行重组,创建RAID虚拟磁盘后,将挂载的盘拖进去,点击自动检测

5fcf02265b9549b68e2159814833bc46.png

然后创建镜像(逐字节生成),生成虚拟块 RAID 1.dsk

34490e2d8fb54c3e8d10848009b8467d.jpeg

火眼仿真一下,成功

19ab46ab62594a96a07f2d2876fdf55e.png

数据库是192.168.110.115即RAID 1.dsk,网站服务器是192.168.110.113即web3,192.168.110.113/admin

7e8d690882dd43f897b5d8aba687d94e.png

在centos/分区2/www/wwwroot/www.honglian7001/runtime/log/202104/24.log中找到,用户名admin密码security

45b4941468cf41e7afe8bb2166a66795.png

成功登录

7b1d37a846bd4c4b9fdd3539bd980f9c.png

35 、在对后台账号的密码加密处理过程中,后台一共计算几次哈希值
3
跟33题同样的位置
af6b2346d3534d439dde2c4cd3edc263.png
36 、请统计,后台中,一共有多少条设备记录
6002
bb653153e04f407685440e31d6206892.png
37 、请通过后台确认,本案中受害者的手机号码为
18644099137
2021-04-24 06:37+8=2021-04-24 14:37
dbc5761d4fc246ee8848631fca7c97c6.png
38 、请分析,本案中受害者的通讯录一共有多少条记录

34

ef059f77c96c47b09d9f507395244858.png

检材四

通过对检材二和三进行分析,警方通过IP落地,警方掌成功抓获犯罪嫌疑人,现将嫌疑人的PC机和手机进行了取证,分别制作了镜像,请使用第13题的答案对检材四进行解密,并回答下列问题
检材四加挂密码:192.168.110.203-CAB2021
39 、请计算检材四-PC的原始硬盘的SHA256值
E9ABE6C8A51A633F809A3B9FE5CE80574AED133BC165B5E1B93109901BB94C2B
40 、请分析,检材四-PC的Bitlocker加密分区的解密密钥为
511126-518936-161612-135234-698357-082929-144705-622578
919d099433f3452198cb5d8ec306106b.png
41 、请分析,检材四-PC的开机密码为
12306
在手机的备忘录里
7038fe771706429482ab0319ce26781d.png
42 、经分析发现,检材四-PC是嫌疑人用于管理服务器的设备,其主要通过哪个浏览器控制网站后
Chrome浏览器
94afad37240b4aa99420a12f9121c12c.png

43 、请计算PC检材中用户目录下的zip文件的sha256值

0DD2C00C8C6DBDEA123373F91A3234D2F07D958355F6CD7126E397E12E8ADBB3 

8989401b42934dedb20acd162503221f.png

44 、请分析检材四-phone,该手机的IMEI号为
868668043754436、868668044204431
72fc853c9f2d4b77b0f4c49ddd58f9da.png
45 、请分析检材四-phone,嫌疑人和本案受害者是通过什么软件开始接触的【标准格式:支付宝】

伊对

嫌疑人创建了两个伊对的账号,两个都联系了受害人金先生,真离谱,广撒网啊

9075e96cbea1412398f7f4d5cea1e012.png

46 、请分析检材四-phone,受害者下载恶意APK安装包的地址为
https://cowtransfer.com/s/a6b28b4818904c
274bb639cbf5475ab314dc9e0ed21913.png
47 、请分析检材四-phone,受害者的微信内部ID号为
wxid_4drzfboq0hk322
48 、请分析检材四-phone,嫌疑人用于敲诈本案受害者的QQ账号为
1649840939
0e038b92369448288e4e10b4762525a0.png
49 、请综合分析,嫌疑人用于管理敲诈对象的容器文件的SHA256值为
9c4be29eb5661e6edd88a364ecc6ef004c15d61b08bd7dd0a393340180f15608
我的赚钱工具里面是虚拟机,解压密码是12306
e7420393867041aeb9564bf179c9c23e.png
50 、请综合分析嫌疑人检材,另外一受害者“郭先生”的手机号码为
1526668888
在虚拟机里搜索郭先生,发现只找到最近浏览里面生成的快捷方式,属性里面显示都是在X盘,桌面上还有veracrypt,最近浏览里面还有一个key.rar,结合49题的容器文件,得出结论,小白鼠是容器,key.rar是密钥文件,加挂即可
5ecd91795d0e4049856a5ba07227d75e.png
51 、通过嫌疑人检材,其中记录了几位受害者的信息
5
5677692df1aa4c1b9fd432aedec70305.png
52 、请使用第11题的密码解压“金先生转账.zip”文件,并对压缩包中的文件计算SHA256值
cd62a83690a53e5b441838bc55ab83be92ff5ed26ec646d43911f119c15df510
4fa45ba777ba4cc9b0b5570363506b52.png
53 、请综合分析,受害者一共被嫌疑人敲诈了多少钱(转账截图被隐藏在多个地方)
6600

微信2000

1edf58b82b7c49349bea512470fd233b.png

伊对1000

301c25113baa400aae14c9ecf1cd9bd7.png

虚拟机里的金先生转账2000 

07e28d662d4645f6bf746ede8af4c1bb.png

QQ600d14fe5dfde8248b0b5ccd2d33599a742.png

 说还有一张账单在数据库里没找到

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值