2022蓝帽杯初赛-forensics

不务正业web手,java看累了,来打取证😋😋😋

 [蓝帽杯 2022 初赛]之Misc篇(NSSCTF)刷题记录(复现)_[蓝帽杯 2022 初赛]domainhacker-CSDN博客

MISC类

domainhacker

第一个打了忘截图了,直接用用上面链接wp的hhh....

拿到一个pcapng文件,wireshark打开直接读,找到最后有个获取1.rar的东西,binwalk -e直接导出来,(也可以提取分组字节流)发现有密码,分析传参部分:

substr隔了两个字符,从第三个字符选取:

base64解码拿到解压密码:

输入SecretPassw0rds解压,获得log文件,ctrl+F搜NTLM交了:

domainhacker2

附件已经给了一个rar,同理能拿到解压密码:

输入解压用工具一把梭:

python secretsdump.py -system /home/eddiemurphy/桌面/SYSTEM -ntds /home/eddiemurphy/桌面/ntds.dit -security /home/eddiemurphy/桌 面/SECURITY  LOCAL -history

也可以导出来,直接搜administrator:

找到此处,得到上一次修改后的administrator密码:

07ab403ab740c1540c378b0f5aaa4087

包上flag{}交了:

flag{07ab403ab740c1540c378b0f5aaa4087}

 

计算机取证系列

计算机取证_1

限定了只能尝试交三次呃呃,害怕....

volatility直接梭:

python2 vol.py -f /home/eddiemurphy/桌面/1.dmp imageinfo
python2 vol.py -f /home/eddiemurphy/桌面/1.dmp --profile=Win7SP1x64 mimikatz

故开机密码&flag:

anxinqi

计算机取证_2

python2 vol.py -f /home/eddiemurphy/桌面/1.dmp --profile=Win7SP1x64 pslist 

找到MagnetRAMCapture这个进程,这个软件是专门用来制作内存镜像的工具。

2192

计算机取证_3

PTF一把梭:

获得未解密版镜像:

把这个dd镜像文件再拿去AccessData FTK Imager梭,选Image那个选项添加进去:

导出这个ppt和pass.txt,再拿到PTF里去跑,添加字典一把梭。

passware kit forensic使用-CSDN博客

学会用字典爆破一下就出了:

计算机取证_4

书接上回,新建文本文档.txt 疑似是 TrueCrypt。使用 Passware Kit Forensic 破解 TrueCrypt ,但是 Passware Kit Forensic 直接将 TrueCrypt 的密码移除了,dd文件通用。

再把这个新建文本文档.txt从FTK里导出来,PTF梭:

但是这个txt直接打不开,会一直转....

binwalk+foremost分出一个zip文件,用ARCHPR开爆:

pass.txt找不到:

直接爆破:(用的纯数字,设一下字符长度啥的,一定要匹配六位,不然一直报错...)

开压缩包直接交了:

手机取证系列

手机取证_1

(好大的附件呃呃...后面才知道送了个盘古石阅读器给你hhh)

点这个exe,发现盘古石阅读器直接开了,那我们就搜:

导出来查看分辨率:

360×360

手机取证_2

直接搜姜总,查找消息记录交了:

SF1142358694796

程序分析系列

程序分析_1

jadx一把梭:

exec.azj.kny.d.c

程序分析_2

minmtta.hemjcbm.ahibyws.MainActivity

程序分析_3

程序分析_4

搜安全:

猜测为a类:

a

网站取证系列

网站取证_1

肉眼找估计难找,直接开火绒扫毒。

但是我运气比较好,一下就找到了hhhh:

lanmaobei666

网站取证_2

database.php里找到加密函数,跟踪一下:

因为我本机装的php7,这个函数已经被弃用了,所以这里vscode也给我划了斜杠。

直接网上跑,记得调到php5:

PHP Sandbox - Execute PHP code online through your browser (onlinephp.io)

KBLT123

网站取证_4

sql文件里截取下来:

注意汇率:

显然可看出收款人id在付款人id之前。

查看张宝和王子豪的id:

网站中有解密代码,我们可以魔改一下代码,让其接收我们的密文传参并返回解密后的金额。

起一个http服务把下面的php挂上去就行。

客户端提取相关数据并向服务端发送请求,接收返回的数据并计算总金额:

import requests

#提取的日期对应的汇率

dir = {'2022-04-02': 0.04,

        '2022-04-03': 0.06,

        '2022-04-04': 0.05,

        '2022-04-05': 0.07,

        '2022-04-06': 0.10,

        '2022-04-07': 0.15,

        '2022-04-08': 0.17,

        '2022-04-09': 0.23,

        '2022-04-10': 0.22,

        '2022-04-11': 0.25,

        '2022-04-12': 0.29,

        '2022-04-13': 0.20,

        '2022-04-14': 0.28,

        '2022-04-15': 0.33,

        '2022-04-16': 0.35,

        '2022-04-17': 0.35,

        '2022-04-18': 0.37}

with open("bak.sql","r",encoding="utf-8") as fr:

    read = fr.readlines()

    count = 0

    total = 0

    url = "http://127.0.0.1:1415/calc.php"

    for v in read:

        #匹配目标数据

        if v.find("5, 3") != -1:

           #排除不在dir中的日期的汇款

            if v.split(", ")[4].split(" ")[0][1:] in dir:

                #向服务器发送请求,参数是数据库中加密的金额数据

                r = requests.get(url,params={"a":v.split(", ")[7][1:-4].encode('utf-8')})

                #汇率

                hui = dir[v.split(", ")[4].split(" ")[0][1:]]

                content = r.content.decode('utf-8')

                #计算总金额

                total += int(content) * hui

    print(total)

    #total=15758353.76

服务端处理客户端发来的加密数据,解密后传回给客户端:

//calc.php
<?php

//接收参数,返回解密后的金额

$data = $_REQUEST["a"];

function decrypt($data, $key = 'jyzg123456')

{

    header('Content-type:text/html;charset=utf-8');

    $key = md5($key);

    $x = 0;

    $data = base64_decode($data);

    $len = mb_strlen($data);

    $l = mb_strlen($key);

    $char = '';

    $str = '';

    for ($i = 0; $i < $len; $i++) {

        if ($x == $l) {

            $x = 0;

        }

        $char .= mb_substr($key, $x, 1);

        $x++;

    }

    for ($i = 0; $i < $len; $i++) {

        if (ord(mb_substr($data, $i, 1)) < ord(mb_substr($char, $i, 1))) {

            $str .= chr((ord(mb_substr($data, $i, 1)) + 256) - ord(mb_substr($char, $i, 1)));

        } else {

            $str .= chr(ord(mb_substr($data, $i, 1)) - ord(mb_substr($char, $i, 1)));

        }

    }

    return $str;

}

echo decrypt($data,$key = 'jyzg123456');

?>

15758353.76

参考:2022蓝帽杯初赛wp(取证) - WXjzc - 博客园 (cnblogs.com)

posted @ 2024-03-08 19:02  Eddie_Murphy  阅读(29)  评论(0编辑  收藏  举报