misc学习

一.知识点

1.BMP文件

BMP文件主要有四部分组成,位图头位图信息调色板位图数据

bmp文件头(bmp file header):提供文件的格式、大小等信息

位图信息头(bitmap information):提供图像数据的尺寸、位平面数、压缩方式、颜色索引等信息调色板(color palette):可选,如使用索引来表示图像,调色板就是索引与其对应的颜色的映射表位图数据(bitmap data):就是图像数据

#关于存储

在BMP文件中,如果一个数据需要用几个字节来表示的话,那么该数据的存放字节顺序为“低地址村存放低位数据,高地址存放高位数据”。如数据0x1756在内存中的存储顺序为:

     

                                

  

这种存储方式称为小端方式(little endian) , 与之相反的是大端方式(big endian)。

2.crc碰撞脚本

Misc中的有一类题目是要求我们知道加密后的rar文件中的内容。但是rar文件密码我们不知道,直接爆破密码也不是很现实。
但是当文件的大小比较小,或者字符数量较少时,就可以根据crc校验码来爆破出rar内部文件的内容。

这种类型的rar,flag由flag_0~flag_5组成。rar文件是有密码的,无法直接打开这些文件。

可以看到最后一列是对应文件的CRC校验码。并且每个文件只有4字节,所以可以看作每个crc校验码都对应了唯一的文件。

因此考虑CRC碰撞。

CRC碰撞原理就是构造一个和源文件等长的字符串,然后再对其进行CRC校验,比较校验码是否相同即可。

脚本如下:

import binascii
import string
 
dic=string.printable #打印出字符表
crc1=0x7DE0AB32
crc2=0xB1441D53
crc3=0x49BD11F5
crc4=0xB42F1DFA
crc5=0x8163F43E
crc6=0x1FC8FEE5
 
for i in dic:
    for j in dic:
        for n in dic:
            for m in dic:
                s=i+j+n+m
                if(crc1==(binascii.crc32(s) & 0xffffffff)):
                    text1=s
                if (crc2 == (binascii.crc32(s) & 0xffffffff)):
                    text2=s
                if (crc3 == (binascii.crc32(s) & 0xffffffff)):
                    text3=s
                if (crc4 == (binascii.crc32(s) & 0xffffffff)):
                    text4=s
                if (crc5 == (binascii.crc32(s) & 0xffffffff)):
                    text5=s
                if (crc6 == (binascii.crc32(s) & 0xffffffff)):
                    text6=s
print text1+text2+text3+text4+text5+text6

 

二.实例

ctfshow

misc29

跟上一题一样 把所有高度改为FF00  有一帧画面是有flag 截得即可得出

misc30

题目提示:正确的宽度是950。

修改宽度即可

misc31

题目提示:高度是正确的,但正确的宽度是多少呢。

首先我们要看图片文件大小是多少(通过010查看结尾位置在0x76f47,然后加上1,初始位置是0) 转成十进制(487256) 之后减去文件头(56) 除以字节(RGB每个像素由3个字节表示) 除以高度(150) 即可得到正确的宽度(1082)

buuctf

另外一个世界


首先看图片,没什么可用的信息,注意到图片转为文档最后有一串二进制代码,将其在随波逐流里转化一下,分八个一转,十进制拼接,得出flag(每个尝试一下得出十进制)

 zip

打开文件后,发现很多zip文件,联想到crc碰撞脚本尝试,出来了base64编码,解码后发现存在文件,根据文件末尾得知是rar文件,接着把文件头加上使文件完整,即可得出flag(flag并不在文件里面,而是在注释中。)

参考资料:

http://t.csdnimg.cn/VrG5k

http://t.csdnimg.cn/3WswZ

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/584648.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[C++][算法基础]整数划分(统计动态规划)

一个正整数 𝑛 可以表示成若干个正整数之和,形如:𝑛𝑛1𝑛2…𝑛𝑘,其中 𝑛1≥𝑛2≥…≥𝑛𝑘,𝑘≥1。 我们将这…

SDB2F5 1.5A,高达28V输出1.2MHz升压转换器芯片IC

一般说明 该SDB2F5是一个恒定的频率,5针SOT23电流模式升压转换器,低功耗应用。SDB2F5交换机位于1.2MHz,并允许使用高度小于或等于2mm的微小、低成本电容器和电感器。内部软启动的结果在小浪涌电流和延长电池寿命。 该SDB2F5操作从一个…

【15-聚类分析入门:使用Scikit-learn进行K-means聚类】

文章目录 前言K-means聚类的原理Scikit-learn中的K-means实现安装与导入生成模拟数据应用K-means聚类可视化聚类结果选择K的值总结前言 聚类分析是一种无监督学习方法,用于将数据集中的样本分组成若干个簇(cluster)。K-means是最广泛使用的聚类算法之一,其核心思想是将数据点…

爱普生RX8111CE工厂流水线控制模块实现超长待机

经过多年的高速发展,我国已基本实现工业机械化,但距离工业自动化还有很大差距。随着机器人、工业自动化趋势愈演愈烈,未来发展前景日趋明朗。工厂流水线的要求也日益增加,其中包括对计件、计时等定量的要求,还有对设备…

【算法每日一练】

蛮有意思的的一道题,最后要判断能否成为一种1~n的全排列,我最这样做的: 整个数组先排序一下。假设遍历到了i,那就判断前面b和r的个数,但是有想到了后面可能还会对前面的结果产生影响,所以就抛弃了这个想法…

Now in Android 4月份更新速览

Now in Android 4月份更新速览 1. 引言 Android 15 Beta的发布标志着Android生态系统的新一轮更新。这次更新旨在提升用户体验和开发效率,让我们一起来了解其中的重要内容。 2. Android 15 Beta介绍 Android 15 Beta带来了一系列新功能,其中包括默认边…

JAVA同城服务美容美发到店服务上门服务系统源码微信小程序+微信公众号+H5+APP

随着科技的飞速发展,互联网和移动互联网已经渗透到我们生活的方方面面,同城服务美容美发到店服务上门服务系统应运而生,为整个行业带来了巨大的变革和无限的可能。该系统的重要性和优势不言而喻,对于行业发展和用户需求的影响深远…

文件系统学习

软连接:可以跨不同的磁盘块,创建出不同的inode节点 应连接:相同的inode节点,不同的文件名字记录在父亲节点目录中 分区(fdisk),格式化(mkfs),挂载(mount),大于2T分区(parted&#…

Go常用的标准库——fmt,time

一.fmt fmt包实现了类似C语言printf和scanf的格式化I/O。主要分为向外输出内容和获取输入内容两大部分。 1.1 向外输出 标准库fmt提供了以下几种输出相关函数。 Print Print系列函数会将内容输出到系统的标准输出,区别在于Print函数直接输出内容,没有换…

【数据结构】二叉树-堆

一、树概念及结构 1.1树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限节点组成的一个具有层次的关系的集合。 注意:子树不能相交 节点的度:一个节点含有的子树个数称为该节点的度;A为6&#x…

Elasticsearch 索引的分片和副本是什么意思,如何扩展分片

文章目录 前言Elasticsearch 索引的分片和副本是什么意思,如何扩展分片示例:1. 设置 5个分片,每个分片一个副本的命令2. 将5个分片扩展到10个分片 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊&…

LabVIEW航空发动机主轴承试验器数据采集与监测

LabVIEW航空发动机主轴承试验器数据采集与监测 随着航空技术的迅速发展,对航空发动机性能的测试与监测提出了更高的要求。传统的数据采集与监测方法已难以满足当前高精度和高可靠性的需求,特别是在主轴承试验方面。基于LabVIEW的航空发动机主轴承试验器…

Linux|awk 特殊模式“BEGIN 和 END”

引言 在本文[1],我们将介绍Awk的更多特性,特别是两个特殊的模式:BEGIN和END。 这些独特的功能在我们努力扩展和深入探索构建复杂Awk操作的多种方法时,将大有裨益。 实例 让我们从Awk系列的开篇回顾开始,回想一下&#…

指纹浏览器:网络安全与隐私的新工具

在互联网时代,隐私和网络安全成为人们越来越关注的话题。随着数字化的发展,个人信息的泄露和在线追踪的问题愈发严峻。在这个背景下,"指纹浏览器"作为一种新型工具,开始受到关注。撸空投需要了解指纹浏览器。本文将深入…

【启明智显技术分享】关于RS485自动收发电路的问题整理

*【编者按】*随着信息技术的飞速发展,芯片作为现代电子设备的核心组成部分,其应用领域的拓展与性能的提升都成为了业界关注的焦点。在芯片应用过程中,各位小伙伴可能会遇到各种各样的问题。“RS485自动收发电路”作为芯片应用中的一项关键技术…

Prometheus+Grafana多方位监控

PrometheusGrafana多方位监控 契机 ⚙ 最近发现火山引擎有托管的Prometheus,可是当前是邀测阶段。并且发现火山云的ECS是自带开机自启的exporter的。刚好需要搭建一套服务器监控,所以研究了一套Prometheus监控,包含linux主机监控nginx监控es监控rabbitM…

Python俄罗斯方块

文章目录 游戏实现思路1. 游戏元素的定义2. 游戏区域和状态的定义3. 游戏逻辑的实现4. 游戏界面的绘制5. 游戏事件的处理6. 游戏循环7. 完整实现代码 游戏实现思路 这个游戏的实现思路主要分为以下几个步骤: 1. 游戏元素的定义 Brick类:表示游戏中的砖…

CSS样式特异性5层次详解

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合…

云端芳华、运维之美

今天,在我们享受互联网服务带来的便利与高效的同时,有一群人默默地在幕后为我们提供支持,他们就是云端运维人员。 值此五一国际劳动节来临之际,我们要真诚感谢他们辛勤的劳动和奉献!

基于ssm+vue开放式教学评价管理系统【ppt·代码·文档报告】

项目演示视频 项目名称:开放式教学评价管理系统 系统介绍:本系统是通过java的SSM框架来实现的,前端采用vue框架进行实现 管理员通过登录进入到系统操作界面,结合需求可以对个人信息进行在线修改维护,也可结合需求进行…