0x01 this_is_flag

对!!!这就是flag

0x02 ext3

题目提示是Linux光盘,附件下载下来

在linux中挂载mount linux /mnt

找一下flagtrings linux | grep flag,发现在这个路径~root/Desktop/file/O7avZhikgKgbF/flag.txt

ZmxhZ3tzYWpiY2lienNrampjbmJoc2J2Y2pianN6Y3N6Ymt6an0=

Base64 Decode flag{sajbcibzskjjcnbhsbvcjbjszcszbkzj}

0x03 give_you_flag

附件下载下来是一个gif,Stegsolve打开,使用Analyse中的Frame Browser一张一张看,到50张会有一个残缺二维码

二维码缺失的部分是它的3个定位点,想办法补全,扫描得到flag{e7d478cf6b915f50ab1277f78502a2c5}

0x04 pdf

附件是一个pdf,pdf中文字设置成了透明的直接复制出来就好

flag{security_through_obscurity}

0x05 坚持60s

一个Java的游戏,直接解压,用java反编译工具反编译,在文件中可以找到PlaneGameFrame.class中找到flag,再将大括号中base64解码就行了。

0x06 如来十三掌

下载下来时一堆很有佛性汉字,看了看,猜测与佛论禅

得到一串MzkuM3gvMUAwnzuvn3cgozMlMTuvqzAenJchMUAeqzWenzEmLJW9

直接Base64 Decode不行,看题目十三掌,

ROT13解密得到ZmxhZ3tiZHNjamhia3ptbmZyZGhidmNraWpuZHNrdmJramRzYWJ9

再Base64 Decode 得flag{bdscjhbkzmnfrdhbvckijndskvbkjdsab}

0x07 gif

附件解压后,发现一堆黑白照片,一共104张

白色为0,黑色为1得到

01100110011011000110000101100111011110110100011001110101010011100101111101100111011010010100011001111101

二进制转字符串得到fflag{FuN_giF}

0x08 SimpleRAR

下载下来是一个rar压缩包,直接解压只有一个flag.txt文件,但是打开只是提示flag is not here

binwalk分析没有发现,使用winhex打开,发现又secret.png,但是16进制文件头有问题,将7A改成74

重新解压得到一个空白得png文件使用binwalk分析是一个gif,将后缀修改

用Stegsolve打开,使用Analyse中的Frame Browser分离出两个图片以png方式保存,再分别用Stegsolve打开,调整通道可以得到如下图片

将两张图片拼接在一起,并补全定位点,扫描得到flag{yanji4n_bu_we1shi}

0x09 stegano

附件是一个pdf,打开不能看出什么,binwalk和winhex也没有发现什么,使用firefox的开发者工具pdf.js,控制台输入:document.documentElement.textContent

将A转为 . B转为-,得到摩斯密码

-.-. --- -. --. .-. .- - ..- .-.. .- - .. --- -. ... --..-- ..-. .-.. .- --. ---... .---- -. ...- .---- ..... .---- -... .-.. ...-- -- ...-- ..... ..... ....- --. ...--

翻译后CONGRATULATIONS.FLAG:JNV151BL3M3554G3

最后答案为FLAG{JNV151BL3M3554G3}

0x10 掀桌子

题目给了一串字符串

c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2

两个一位,16进制转10进制,然后减去128再转成字符,贴上解密代码

string = "c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2"
flag = ''
for i in range(0,len(string), 2):
   s = "0x" + string[i] + string[i+1]
   flag += chr(int(s, 16) - 128)

0x11 功夫再高也怕菜刀

附件是一个wireshark得文件,使用foremost可以分离出一个有密码的压缩包

使用wireshark打开,分组字节流搜索flag

再追踪TCP流,追踪到di7个的时候,发现有一个666.jpg,

前面也刚好有一大串FFD8FF开头的16进制,可以看出是jpg

写(抄)了一段C#代码,转成jpg

        public static void hexToJPG()
      {
          FileStream fs = new FileStream("E:\\study\\CTF\\test.jpg", FileMode.Create, FileAccess.Write);
          BinaryWriter bw = new BinaryWriter(fs);
          StreamReader sr = new StreamReader("E:\\study\\CTF\\test.txt");
          while (sr.Peek()!=-1)
          {
              string tempStr = sr.ReadToEnd();
              int tlenth = tempStr.Length / 2;
              int pos = 0;
              string[] str = new string[tlenth];
              for (int i = 0; i < tlenth; i++)
              {
                  str[i] = tempStr.Substring(pos, 2);
                  pos = pos + 2;
                  string cc = str[i];
                  byte tempByte = Convert.ToByte(str[i], 16);
                  bw.Write(tempByte);
              }
          }
          fs.Close();
          bw.Close();
          sr.Close();
      }

得到密码后,解压缩压缩包得到flag.txt,打开flag{3OpWdJ-JP6FzK-koCMAK-VkfWBq-75Un2z}

0x12 base64stego

附件压缩包在win中解压有密码,在linux中,直接binwalk -e flag.zip

可以直接得到一个stego.txt文件,原压缩包是未=伪加密,txt文件是一堆字符串

判断是使用的Base64隐写,直接贴上py代码解密,得到flagflag{Base_sixty_four_point_five}

def get_base64_diff_value(s1, s2):
  base64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
  res = 0
  for i in xrange(len(s1)):
      if s1[i] != s2[i]:
          return abs(base64chars.index(s1[i]) - base64chars.index(s2[i]))
  return res
def solve_stego():
  with open('stego.txt', 'rb') as f:
      file_lines = f.readlines()
  bin_str = ''
  for line in file_lines:
      steg_line = line.replace('\n', '')
      norm_line = line.replace('\n', '').decode('base64').encode('base64').replace('\n', '')
      diff = get_base64_diff_value(steg_line, norm_line)
      pads_num = steg_line.count('=')
      if diff:
          bin_str += bin(diff)[2:].zfill(pads_num * 2)
      else:
          bin_str += '0' * pads_num * 2
  res_str = ''
  for i in xrange(0, len(bin_str), 8):
      res_str += chr(int(bin_str[i:i+8], 2))
  print res_str
solve_stego()

0x13 真是太菜了,今天的我也是个卑微的弟弟呢!

攻防世界MISC新手练习的更多相关文章

  1. 攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup

    攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup 题目介绍 题目考点 隐写术 摩斯密码 Writeup 下载附件是PDF文件打开,研究一 ...

  2. 攻防世界 Misc 新手练习区 ext3 bugku Writeup

    攻防世界 Misc 新手练习区 ext3 bugku Writeup 题目介绍 题目考点 WinHex工具的使用 linux磁盘挂载mount命令 Writeup 下载附件拖进winhex分析一下,查 ...

  3. 攻防世界 Misc 新手练习区 gif Writeup

    攻防世界 Misc 新手练习区 gif Writeup 题目介绍 题目考点 仔细联想 字符转换 Writeup 下载附件并打开 104张黑白图 发现是一堆黑色和白色的图片,按某种规律排列,猜想flag ...

  4. 攻防世界 Misc 新手练习区 坚持60s Writeup

    攻防世界 Misc 新手练习区 坚持60s Writeup 题目介绍 题目考点 java反编译 jd-gui 的使用 Writeup 下载附件并打开 kali执行命令 java -jar 9dc125 ...

  5. 攻防世界 Misc 新手练习区 give_you_flag Writeup

    攻防世界 Misc 新手练习区 give_you_flag Writeup 题目介绍 题目考点 gif图片分离 细心的P图 二维码解码 Writeup 下载附件打开,发现是一张gif图片,打开看了一下 ...

  6. 攻防世界 Misc 新手练习区 如来十三掌 Writeup

    攻防世界 Misc 新手练习区 如来十三掌 Writeup 题目介绍 题目考点 佛曰加密.base64.Rot13等加密方法的了解 Writeup 下载并打开附件 联想到佛曰加密,复制内容到 佛曰加密 ...

  7. 攻防世界——Misc新手练习区解题总结<3>(9-10题)

    第九题SimpleRAR: 下载附件后得到一个压缩包打开后得到如下提示 文件头损坏,让我们打开winhex看一下 7a为子块而文件头为74,这里将7a改为74(这里我也不是很清楚,详细大家可以自行去查 ...

  8. 攻防世界——Misc新手练习区解题总结<2>(5-8题)

    第五题gif: 下载附件后,解压得到这样一个文件 几经寻找无果后,发现是不是可以将gif中的黑白图片看做二进制的数字,进而进行解密 最后用二进制转文本得到flag 第六题掀桌子: 看起来是16进制的密 ...

  9. 攻防世界——Misc新手练习区解题总结<1>(1-4题)

    第一题this_if_flag: 第一题就不多说了,题目上就给出了flag复制粘贴就可以了 第二题pdf: 下载附件后,得到如下界面 Ctrl+a全选文字,复制出来看看是什么,粘贴后恰好得到flag ...

随机推荐

  1. intelij idea 常用插件下载

    本文,给大家推荐几款我私藏已久的,自己经常使用的,可以提升代码效率的插件.IDEA插件简介常见的IDEA插件主要有如下几类:常用工具支持Java日常开发需要接触到很多常用的工具,为了便于使用,很多工具 ...

  2. 浅谈JavaScript严格模式(use strict)

    "use strict" 的目的是指定代码在严格条件下执行. 严格模式下你不能使用未声明的变量. 严格模式声明 严格模式通过在脚本或函数的头部添加 "use strict ...

  3. contos7上安装rabbitmq

    #centeros7 安装erlang yum install erlang #启动扩展源 yum install epel-release #下载rabbitmq源文件 wget http://ww ...

  4. Activiti--Activity数据库

    23张表 ACT_RE_资源库流程规划表 act_re_deployment 部署信息表 act_re_model 流程设计模型部署表 act_re_procdef 流程定义数据表 ACT_RU_运行 ...

  5. 【深入学习Redis】Redis内存模型

    前言 Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分. 我们使用Redis时,会接触Redis的5种对象类型(字符串 ...

  6. CF796C Bank Hacking 细节

    思路十分简单,答案只有 3 种可能,但是有一些细节需要额外注意一下. code: #include <bits/stdc++.h> #define N 300002 #define set ...

  7. 2019.7.9 校内测试 T3 15数码问题

    这一次是交流测试?边交流边测试(滑稽 15数码问题 大家应该都玩过这个15数码的游戏吧,就在桌面小具库那里面哦. 一看到这个题就知道要GG,本着能骗点分的原则输出了 t 个无解,本来以为要爆零,没想到 ...

  8. Linux环境下levelDB源码编译与安装

    1.下载源码并编译 git clone https://github.com/google/leveldb.git cd leveldb //编译源码的时候需要安装cmake,并且版本需要大于3.9, ...

  9. HDU 1257 最少拦截系统 ——(LIS)

    想了一下感觉和lis有关,交了果然AC.想不到很好的证明方法,试做证明如下:lis的每一个点都是一个不上升系统中的一员,设其为a[i],那么a[i-1]<a[i]肯定是成立的(lis的性质),夹 ...

  10. slax中改变终端字体

    修改~/.Xresources文件 ! English font      Xterm*faceName: DejaVu Sans Mono=True:size=16 修改颜色: ! colos XT ...