攻防世界Misc高手进阶区第一页WriteUp_D-R0s1的博客-程序员秘密

技术标签: ctf  杂项  CTF WriteUp  攻防世界  

0x01 写这篇博客的目的

在上一篇杂项新手进阶区的WriteUp写完以后,自己也觉得起到了一个复习强化的作用。只有把简单的事情做好做精重复做才会熟能生巧,刷题–经验–在经验基础上继续刷题–继续获得经验-----------形成自己的一套风格。同样,本着互联网分享的精神把自己的解题思路和解题步骤都记录下来,方便大家查看,节约时间,提高效率。师傅们有更好的解题思路也欢迎在评论区留言,咱们一起交流,共同进步。

0x02 解题步骤

1.easycap

a.拿到手的是一个流量包
b.Ctrl+F搜索flag,然后右键追踪流就会发现flag

2.Avatar

a.到手是一张照片
b.经过一番属性、winhex等工具查看没有什么异常
c.使用outguess工具可以分离出信息
d.

outguess -r '/root/ctf/a21da602f6674d79b10018930d61a558.jpg'  -t 123.txt

e.本题也就考察outguess工具的使用

3.What-is-this

a.到手是一个没有后缀的文件,首先就要搞清楚这是一个什么文件
b.把它放到kali的虚拟机中就会自动的识别这个是个什么文件
c.放进虚拟机中发现是一个压缩包,然后回到win10中解压,然后又是个没有后缀的文件,同样的方法,最后解压出来是两张差不多的照片
d.看见两张差不多的照片我就习惯先把他放进stegsolve中比较一下
在这里插入图片描述

4.签到题

a.Z2dRQGdRMWZxaDBvaHRqcHRfc3d7Z2ZoZ3MjfQ== base64解密[email protected]_sw{gfhgs#}
b.花括号的位置不对,栅栏解密试试ggqht{ggQht_gsQ10jsf#@fopwh},这是第四栏,括号前面五位应该这就是flag的格式
c.凯撒解密ssctf{ssCtf_seC10ver#@rabit}得到flag

5.Training-Stegano-1

a.notepad++打开直接出现flag
在这里插入图片描述

6.Excaliflag

stegsolve打开出现flag
在这里插入图片描述

7.get-the-key.txt

a.这个直接非常规解法在notepad++打开就能发现
在这里插入图片描述

8.glance-50

这个题目在之前发表过博客

9. 4-2

这个题目是一个词频分析的题目,考点就是词频分析,也是比较基础,但是考虑到CTF竞赛中不让连接外网的情况,想找一个离线的也能解决此类问题的的工具或者方法。还希望师傅们不吝赐教。
这个题目在线解决的话可以再这个网站进行词频分析https://quipqiup.com/

10. misc1

a.一串字符最大的是由0~9和a ~ f,首先想到是十六进制转换
b.常规的十六进制转换不成功
c.把十六进制转换成十进制看一下
这里贴出一个脚本

s = "d4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd"
for i in range(int(len(s)/2)):
   print(int(s[(i*2):(i+1)*2],16))

在这里插入图片描述
d.发现212,232之类的数字,ascii码一共是128位,这个很明显超过了最大限度。把所有二进制减128试一下
e.在这里贴出脚本

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

这个脚本是把十六进制转换为十进制然后减128在把它转化位ascii码
得到结果
在这里插入图片描述

11.embarrass

a.这个题目下载下来是一个流量包,一般来说流量包要放入wireshark中进行流量分析
b.我一般习惯先搜索一下他的字符串,说不定啥时候有神奇的收获
c.在kali中进行字符串的搜索
strings ‘/var/run/vmblock-fuse/blockdir/CAkzoC/misc_02.pcapng’ | grep flag
d.结果
在这里插入图片描述

12.肥宅快乐题

a.这个题目下载到手是一个.swf后缀的文件
b.用到一个特殊的工具,叫做potplayer
c.把这个.swf文件使用这个工具打开
d.根据提示注意对话就好
e.点击这里可以一步一步往下走
在这里插入图片描述
他自己会播放,不用自己打
在这里插入图片描述
在第57帧的时候发现一串base64字符,解密base64即可

13.Cephalopod

a.拿到手是一个流量包,习惯性先把他扔进kali中分析一下字符串
在这里插入图片描述b.发现其中存在flag.png,那么下一步的任务就是先把这个png给分离出来
c.为了查找更加快速,这里我并没有去搜索flag的字符串而是去搜索png的十六进制文件头,89504E47
d.定位到了存在png文件头的数据流,然后追踪一下
在这里插入图片描述e.为了方便提取,把数据流转换成原始数据,这样根据png的文件头就可以比较精确的分离出png
f.把提取出的数据粘贴到winhex中注意以ascii-hex粘贴进去然后保存改后缀为.png就可以了
在这里插入图片描述

14.小小的pdf

a.放入kali中binwalk一下
在这里插入图片描述b.foremost一下,把里面东西分离出来
在这里插入图片描述

15.hit-the-core

a.使用strings 查看一下字符串,找到其中这一段代码
b.看到A L E之类的而且每个字母之间隔了4个字母
在这里插入图片描述
c.写个脚本提取一下

data = 'cvqAeqacLtqazEigwiXobxrCrtuiTzahfFreqc{bnjrKwgk83kgd43j85ePgb_e_rwqr7fvbmHjklo3tews_hmkogooyf0vbnk0ii87Drfgh_n kiwutfb0ghk9ro987k5tfb_hjiouo087ptfcv}'
flag = ''
for i in range(3, len(data), 5):
    flag += data[i]
 
print(flag)

16.pure_color

a.在winhex中没有发现什么收获,在kali中使用binwalk分析一下没有什么东西
b.使用stegsolve得到flag
在这里插入图片描述

17.2-1

a.下载到手是一个图片,然后打开的时候提示图片错误,扔进winhex中查看一下
b.发现文件头是错误的,修改文件头为89 50 (png文件头89504E47)
在这里插入图片描述
c.修改以后也是照片无法打开,然后发现这里
在这里插入图片描述
也就是代表图片的宽度是0
d.先详细解释一下png的文件头:

  • (固定)八个字节89 50 4E 47 0D 0A 1A 0A为png的文件头
  • (固定)四个字节00 00 00 0D(即为十进制的13)代表数据块的长度为13
  • (固定)四个字节49 48 44 52(即为ASCII码的IHDR)是文件头数据块的标示(IDCH)
  • (可变)13位数据块(IHDR)
    • 前四个字节代表该图片的宽
    • 后四个字节代表该图片的高
    • 后五个字节依次为:
      Bit depth、ColorType、Compression method、Filter method、Interlace method
  • (可变)剩余四字节为该png的CRC检验码,由从IDCH到IHDR的十七位字节进行crc计算得到。
    也就是说我们可以通过爆破来得到高度和宽度

e.使用tweakpng这个工具可以直接得到校验码
在这里插入图片描述
f.使用脚本

import struct
import binascii
import os
 
m = open("misc4.png","rb").read()
for i in range(1024):
    c = m[12:16] + struct.pack('>i', i) + m[20:29]
    crc = binascii.crc32(c) & 0xffffffff
    if crc == 0x932f8a6b: #自己根据情况改
        print(i)

得到宽度为709,修改宽度为709得flag

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/CliffordR/article/details/100541301

智能推荐

ListView中Item与Item的子控件点击事件冲突问题解决_chun_soft的博客-程序员秘密

心灵包含人所有的一切有意识、无意识的思想、情感和行为。——《星夜心理书系》1、问题在Android开发时,ListView中点击一个Item,会一并触发其子控件的点击事件。比如Item中的Button、ImageButton等。导致了点击Item被子控件拦截。2、简单解决方案(1)首先在Item的xml文件根元素中加入属性:android:descendantFoc...

独立关节PD控制及其matlab simulink仿真_pd控制律_XieKKK-的博客-程序员秘密

原理机器人控制常采用PD控制和PID控制,其优点是控制律简单,易于实现,无需建模。当忽略重力和外力干扰时,采用独立的PD控制,能满足机器人定点控制的要求。根据欧拉-拉格朗日方程建立n连杆机器人的动力学模型:D(q)q¨+C(q,q˙)q˙+g(q)=τD(q)\ddot q+C(q,\dot q)\dot q+g(q)=\tauD(q)q¨​+C(q,q˙​)q˙​+g(q)=τ其中D代表惯性项,C代表向心力项/哥氏力项,g代表重力项,q代表关节坐标,τ\tauτ代表了系统广义力。PID控制

临时python环境变量设置--PYTHONPATH,避免不同项目无法导入包的问题;日志编写和颜色变换nb_log_python临时设置环境变量_古月哥欠666的博客-程序员秘密

https://github.com/ydf0509/pythonpathdemohttps://blog.csdn.net/qq_49624649/article/details/122102349https://github.com/ydf0509/nb_log

C++ 实现简易 log 日志系统_恋喵大鲤鱼的博客-程序员秘密

1.log日志的作用在软件开发周期中,不管是前台还是后台,系统一般会采用一个持久化的日志系统来记录运行情况。在代码中嵌入log代码信息,主要记录下列信息: (1)记录系统运行异常信息。 (2)记录系统运行状态信息。(3)记录系统运行性能指标。 通过对上述信息分析和诊断,我们能采取正确的手段来提高系统质量和系统性能。由此可见log日志在系统中的重要地位和存在的必要性。

Ubuntu 20.04 创建桌面快捷方式_Nineteener的博客-程序员秘密

Ubuntu下载IDEA后没有自动创建快捷方式IDEA主界面点击Tool,然后Create Desktop Entry…,点击OK就行。。

随便推点

vue使用axios接收流文件_axios接受流_weixin_43869439的博客-程序员秘密

在工作中遇到使用axios接收流文件,遇到了一些问题,整理如下:在调用接口成功后如图所示:现在需要调试下axios.js文件统一拦截// 导出 const headers = response.headers //console.log(headers['content-type']) 将打印的值,也将后台返回的相应头设置成相同的,我的就是'application/oc...

在网页中添加“分享到微信朋友圈”按钮的代码分享_都对DODUI的博客-程序员秘密

受冷笑话精选网站的启发,我们给36氪网站的移动版上加了“分享到微信朋友圈”按钮,在微信的内置浏览器中点击后可以一键分享,而不必点浏览器右上角的功能菜单再选择分享。由于目前微信并没有提供这个按钮的官方支持,很多人问我们这个按钮是如何实现的,其实很简单,我们把我们实现的方法分享给大家,希望对那些想在网页端加这个按钮的人有所帮助。下面是代码(相关参数请自行修改):function WeiXin...

安卓 录屏、截屏_scimence的博客-程序员秘密

录屏工具和源码下载也可扫描二维码,安装录屏工具到手机截屏、录屏 功能快速接入:1、在项目中libs中添加ScreenShot.jar2、在AndroidManifest.xml中添加存储权限和Activity声明<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORA...

mongodb 源码安装_weixin_34318272的博客-程序员秘密

为什么80%的码农都做不了架构师?>>> ...

html中 ul li 横排居中排列_html ul li 横排居中排列_紫色_麦迪的博客-程序员秘密

<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>ul li 横排居中</title> <style type="text/css"> ul { display: flex; flex-flow: row nowrap; justify-cont...

[源码和文档分享]基于Android系统手机通讯录管理软件的设计与开发_qq_38438745的博客-程序员秘密

摘要谷歌在安卓领域投入了大量精力来开发,使得安卓技术得以广泛推广,现安卓移动平台设备在市场上已经得到大量推广及普及。在Android移动终端操作系统的快速发展,Android的各种手机软件也大量增长。当然,在手机终端中,手机通讯录是手机终端必不可少的基础功能,其质量直接影响着用户对手机使用的体验与感觉。手机通讯管理软件不仅仅只是能够简单添加联系人以及联系方...

推荐文章

热门文章

相关标签