首页 > 编程语言 >[GUET-CTF2019]虚假的压缩包1附送RSA解密&CRC破解png宽高&异或python脚本

[GUET-CTF2019]虚假的压缩包1附送RSA解密&CRC破解png宽高&异或python脚本

时间:2024-08-19 14:54:58浏览次数:16  
标签:struct crcbp hex 宽高 附送 crc32 import png

解压得到下图两个zip文件,虚假的压缩包、真实的压缩包

使用010editor打开,发现是伪加密,把09改为00即可打开

打开以后,发现是是一个rsa解密题

上python脚本


import gmpy2

def find_pq(n):
    for p in range(2, int(n**0.5) + 1):
        if n % p == 0:
            q = n // p
            return p, q
    return None

def rsa_decrypt(n, e, c):
    p, q = find_pq(n)
    phi_n = (p - 1) * (q - 1)
    d = gmpy2.invert(e, phi_n)
    m = pow(c, d, n)
    return m

n = 33  # 替换为实际的n值
e = 3 # 替换为实际的e值
c = 26  # 替换为实际的密文c值

plaintext = rsa_decrypt(n, e, c)

print("明文m为:", plaintext)


#请注意,上述代码中的 n、e、c 需要根据实际情况进行替换。

脚本运行结果如下

使用010editor打开真实压缩包发现09出现是偶次,是真加密

使用虚假的压缩包的计算结果5去解压失败,使用 答案是5 解压成功

是一张图片和无后缀名文件

图片拖入010editor

不对,这是没有模板Templates,没有提示不方便,去安装jpg模板,Templates > Template Repository' 

Template Repositoryicon-default.png?t=N7T8https://www.sweetscape.com/010editor/repository/templates/ or Script Repository

安装好了使用jpg模板

不对,仔细看下文件头原来是png。改成png模板

上CRC脚本看看真实高宽,为了方便我把图改名为1.png

import os
import binascii
import struct

crcbp = open("1.png", "rb").read()
for i in range(1024):
    for j in range(1024):
        data = crcbp[12:16] + struct.pack('>i', i) + struct.pack('>i', j) + crcbp[24:29]
        crc32 = binascii.crc32(data) & 0xffffffff
        if crc32 == 0x1670bae6:  # 图片特定crc值  1670bae6
            print(i, j)
            print("hex", hex(i), hex(j))

宽0xc6   高0xf2

import os
import binascii
import struct

crcbp = open("1.png", "rb").read()
for i in range(1024):
    for j in range(1024):
        data = crcbp[12:16] + struct.pack('>i', i) + struct.pack('>i', j) + crcbp[24:29]
        crc32 = binascii.crc32(data) & 0xffffffff
        if crc32 == 0x1670bae6:  # 图片特定crc值  1670bae6
            print(i, j)
            print("hex", hex(i), hex(j))

B2改F2

^5 异或5最后一个箱子:亦真亦假是一些字符

上异或脚本

记得不能在有中文的路径运行脚本

生成一个data.docx,开始以为是zip

改字体颜色

                                                FLAG{_th2_7ru8_2iP_}改flag{_th2_7ru8_2iP_} 提交

题目地址 https://buuoj.cn/challenges

标签:struct,crcbp,hex,宽高,附送,crc32,import,png
From: https://blog.csdn.net/weixin_34979095/article/details/141322206

相关文章

  • python-深层遍历文件夹通过Excel某一列匹配文件夹中的图片(png\jpg)+写入Excel+超链
    目录专栏导读库的介绍背景库的安装完整代码总结专栏导读......
  • pdf转png有哪些免费方法?集合6个在线pdf转图片软件,错过就可惜了!
    有时,很多小伙伴们需要将pdf文件转换成png格式,以便更方便地分享、编辑其中的图片、进行网页设计等多种用途。网上有许多工具可以实现pdf转png。那么,选择哪款软件或工具能够确保高质量的在线pdf转图片呢?此外,是否可以将多个pdf页面一次性都转换成图片呢?在本文中,我们将详细介绍6款......
  • jpg和png的区别
    jpg和png是两种常用的图像文件格式,它们在用途、特点以及压缩方法上有所不同:JPEG(JointPhotographicExpertsGroup):用途:适用于照片或含有较多连续色调的内容,如风景、人像等。因为JPEG主要依赖于有损压缩算法,对于复杂细节和颜色渐变处理较好。优点:占用空间较小,适合网络传输和......
  • 【原创软件】第8期:pdf转图片软件FAST_PDF2PNG,可选分辨率快速pdf转图片
    一、背景因为经常处理扫描件,需要将扫描件或者电子书先转为图片进行优化处理。为了省去人工时间,制作了一个软件FAST_PDF2PNG。尽管已经有不少软件可以完成该功能,但是杀鸡焉用牛刀。本工具仅约4M,小巧方便。(优点:速度快,比pdf补丁丁更快,可选分辨率72-1200dpi,含有进度条,多线程处理不卡......
  • Buuctf 弱口令详解附送图片隐写工具cloacked-pixel安装配置使用实列
    下载一个zip压缩包,解压需要密码,使用bandizip,打开看看,发现注释栏有一些隐藏的东西ctl+c复制在粘贴板,再ctl+v黏贴到sunblime文本编辑软件下是摩斯密码,记录下来......-...-..-----..-.---.-...---在线摩斯密码翻译器HELL0FORUM用此作为密码解压压缩包......
  • python由tif影像绘制png图片并制作动图
    笔者最近需要下载一个区域的长时间序列影像,然后将其制作成动图展示其动态变化过程。这其中涉及到两个问题,一是将tif数据绘制成PNG或jpg等格式图片,二是由图片绘制动图GIF。一、由TIF绘制PNG 这里需要用到matplotlib和GDAL两个库来将tif格式图像绘制为PNG图片,如果没有相关包......
  • 【全网独家】libVLC 更改视频宽高比(代码+测试部署)
    libVLC更改视频宽高比介绍libVLC是VLC媒体播放器的核心库,提供了强大的多媒体处理功能。更改视频宽高比(AspectRatio)是指调整视频帧的宽度和高度比例,以适应不同的显示设备或满足特定的播放需求。应用使用场景视频播放器:用户可能需要调整视频的宽高比以适应窗口或全屏......
  • Python 将Word转换为JPG、PNG、SVG图片
    将Word文档以图片形式导出,既能方便信息的分享,也能保护数据安全,避免被二次编辑。文本将介绍如何使用 Spire.DocforPython 库在Python程序中实现Word到图片的批量转换。Python将Word转换为JPG、JPEG、PNG、BMP等图片格式Python将Word文档转换为SVG格式 Python库安装: ......
  • 如何在python中通过requests和opencv加载uint16 png文件
    我正在尝试从URL自动加载图像,然后将其加载到numpy矩阵。为此,我需要使用requests和opencv库。对于像uint8这样编码的标准图像,它以正确的方式工作,并且由于值溢出而损坏了uint16图像。这是我现在正在使用的一个简单的最小代码:importrequestsimportcv2importnumpy......
  • Python cv2库 批量压缩图片jpg、png 脚本
    效果图:(1)压缩前:10.9M   (2)压缩后:1.46M(3)直接上代码,#设置压缩质量0-100,0最差,100最好compression_params=[int(cv2.IMWRITE_JPEG_QUALITY),50]importcv2importosPATH=r'F:\aa_jpg'#压缩该路径下的图片,压缩后会保存到原路径defresizeImage(f......