MISC - 第12天(pyc反编译、图片宽高复原、Ziperello暴力破解工具)

news2025/2/4 7:03:50

前言

  • 各位师傅大家好,我是qmx_07,今天继续讲解MISC的相关知识
    请添加图片描述

喵喵喵

在这里插入图片描述

  • 附件信息:
    在这里插入图片描述
  • 尝试了常规的binwalk,foremost扫描是否有隐藏文件、均失败
    在这里插入图片描述
  • 在stegsolve工具发现 Red plan 0、 Blue plan 0、 Green plan 0 有问题,怀疑是LSB隐写
    在这里插入图片描述
  • Data Extract 选项卡选择 LSB 、BGR选项,保存为png图片
    在这里插入图片描述
  • png图片显示损坏,扔到hxd检索信息
    在这里插入图片描述
  • png图片文件头异常,尝试删除字段,保存
    在这里插入图片描述
  • 图片是半张二维码截图,可能是图片宽高异常
  • 使用github开源项目 CTF计算图片高度
    在这里插入图片描述
  • 将计算好高度的图片,重新生成
    在这里插入图片描述
  • 使用QR research工具扫描二维码,得到网盘链接
    在这里插入图片描述
  • 猜测可能是NTFS 数据流,使用ntfsstreamseditor工具
    在这里插入图片描述
  • 扫描后 发现pyc文件,尝试反编译
  • pyc反编译网站
#!/usr/bin/env python
# visit https://tool.lu/pyc/ for more information
# Version: Python 2.7

import base64

def encode():
    flag = '*************'
    ciphertext = []
    for i in range(len(flag)):
        s = chr(i ^ ord(flag[i])) //异或ascii码操作
        if i % 2 == 0:
            s = ord(s) + 10 
        else:
            s = ord(s) - 10
        ciphertext.append(str(s)) //添加到ciphertest列表
    
    return ciphertext[::-1]//翻转

ciphertext = [
    '96',
    '65',
    '93',
    '123',
    '91',
    '97',
    '22',
    '93',
    '70',
    '102',
    '94',
    '132',
    '46',
    '112',
    '64',
    '97',
    '88',
    '80',
    '82',
    '137',
    '90',
    '109',
    '99',
    '112']

  • 编写脚本
test =  ['96',
    '65',
    '93',
    '123',
    '91',
    '97',
    '22',
    '93',
    '70',
    '102',
    '94',
    '132',
    '46',
    '112',
    '64',
    '97',
    '88',
    '80',
    '82',
    '137',
    '90',
    '109',
    '99',
    '112']
test = test[::-1]
flag = ''

for i in range(len(test)):
    if i % 2 == 0:
        s = int(test[i]) - 10
    else:
        s = int(test[i]) + 10

    s = s ^ i
    flag += chr(s)
print(flag)

  • 将翻转的ciphertext变为正序,第二次异或等于数据本身,再添加到列表里
    在这里插入图片描述
    flag{Y@e_Cl3veR_C1Ever!}

小易的U盘

在这里插入图片描述

  • 附件信息:
    在这里插入图片描述
    在这里插入图片描述
  • 使用binwalk工具拆分文件
  • INF 文件是 “设备信息文件“”,在 Windows 操作系统中用于安装和配置硬件设备驱动程序、软件组件以及系统服务等
    在这里插入图片描述
  • inf文件显示副本32,使用notepad++打开搜索flag相关信息
    在这里插入图片描述
    flag{29a0vkrlek3eu10ue89yug9y4r0wdu10}

[WUSTCTF2020]爬

在这里插入图片描述

  • 附件信息:
    在这里插入图片描述
    在这里插入图片描述
  • 在hxd中,可以看到头文件是pdf格式,尝试更改后缀
    在这里插入图片描述
  • 显示被图片覆盖,pdf没办法修改文件,尝试转成docx
    在这里插入图片描述
  • 移开图片之后,发现一段十六进制数据
    ocr识别
    十六进制转文本网址
    在这里插入图片描述

wctf2020{th1s_1s_@_pdf_and_y0u_can_use_phot0sh0p}

[RoarCTF2019]黄金6年

在这里插入图片描述

  • 附件信息:
    在这里插入图片描述

  • 一段mp4文件
    在这里插入图片描述

  • 在hxd中发现一段base64编码
    在这里插入图片描述

  • 这段base64编码,疑似是一段rar文件

import base64
code = "UmFyIRoHAQAzkrXlCgEFBgAFAQGAgADh7ek5VQIDPLAABKEAIEvsUpGAAwAIZmxhZy50eHQwAQADDx43HyOdLMGWfCE9WEsBZprAJQoBSVlWkJNS9TP5du2kyJ275JzsNo29BnSZCgMC3h+UFV9p1QEfJkBPPR6MrYwXmsMCMz67DN/k5u1NYw9ga53a83/B/t2G9FkG/IITuR+9gIvr/LEdd1ZRAwUEAA=="
base64_code = base64.b64decode(code)
file = open("flag.rar","wb")
file.write(base64_code)
file.close
  • 将base64解码,以二进制写入文件,保存为.rar后缀
    在这里插入图片描述
  • 里面有一个flag文件,但是有密码,暴力破解失败,尝试静帧观看mp4文件
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 陆续放到QR research检索二维码,数据是:iwantplayctf
    在这里插入图片描述
    flag{CTF-from-RuMen-to-RuYuan}

[WUSTCTF2020]alison_likes_jojo

在这里插入图片描述

  • 附件信息:
    在这里插入图片描述
  • 由于boki文件比较大,放到hxd查看
    在这里插入图片描述
  • 发现PK压缩包字段
    在这里插入图片描述
  • 更改后缀后,发现需要密码,尝试使用Ziperello暴力破解
    在这里插入图片描述
  • 密码是:888866
    在这里插入图片描述
  • 疑似base64加密
    在这里插入图片描述
  • 数据经过多次base64加密,多解码几次
  • killerqueen 可能是key密钥,使用outguess对jljy.jpg进行隐写检索
    在这里插入图片描述

在这里插入图片描述
flag{pretty_girl_alison_likes_jojo}

总结

  • 介绍了pyc反编译、图片宽高复原、Ziperello暴力破解工具

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ISO IEC 18004 2015 PDF 文字版下载

ISO_IEC_18004_2015_en-US - 道客巴巴 (doc88.com)https://www.doc88.com/p-67816330893254.html

CPython Internals English PDF 下载地址分享

CPython Internals Your Guide to the Python 3 Interpreter.pdf官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘123云盘为您提供CPython Internals Your Guide to the Python 3 Interpreter.pdf最新版正式版官方版绿色版下载,CPython Internals Your Guide to the Pytho…

【图论】树剖(上):重链剖分

一、前置知识清单 深度优先搜索DFS 点我复习图的存储 复习链接敬请期待树状数组 点我复习 二、树剖简介 树剖(树链剖分),是一种把树划分成链的算法,该算法分为重链剖分和长链剖分。 本文仅讨论重链剖分,长链剖分目前…

基于SpringBoot的学习资源共享平台

运行环境: jdk8tomcat9mysqlIntelliJ IDEAmavennodejs 设计选用前后端分离的单体架构方式 后端:SpringBootMybatis-PluslogbackElasticsearchRedisMySQLJwtsmtp阿里云OSS 前端:WebPackVueJsAnt Designaxios 主要模块:反馈管理、资源管理、…

Django学习笔记二:数据库操作详解

Django框架提供了一个功能强大的ORM(对象关系映射)系统,使得开发者可以使用Python代码来操作数据库,而无需编写复杂的SQL语句。以下是Django数据库操作的一些基本概念和方法: 模型定义 在Django中,模型是…

大模型基础:基本概念、Prompt、RAG、Agent及多模态

随着大模型的迅猛发展,LLM 作为人工智能的核心力量,正以前所未有的方式重塑着我们的生活、学习和工作。无论是智能语音助手、自动驾驶汽车,还是智能决策系统,大模型都是幕后英雄,让这些看似不可思议的事情变为可能。本…

Spring源码-AOP具体源码

1.类ProxyFactory 核心方法:getProxy 1.DefaultAopProxyFactory#createAopProxy 判断使用JDK还是CGLIB动态代理的代码如下: Override public AopProxy createAopProxy(AdvisedSupport config) throws AopConfigException {// 如果ProxyFactory的isOp…

北京市大兴区启动乐享生活 寻味大兴 美食嘉年华 系列促销费活动

北京市大兴区启动乐享生活 寻味大兴 系列促销费活动 区商务局副局长 兰莉 致开幕辞 区餐饮行业协会会长 董志明 介绍活动内容 2024年9月30日,由大兴区商务局主办、大兴区餐饮行业协会承办,并得到高米店街道和大兴绿地缤纷城大力支持的“乐享生活 寻味大…

快速排序的非递归实现:借助栈实现、借助队列实现

目录 用栈实现快速排序 1.用栈实现非递归快速排序的思路步骤 1.1.思路步骤 2.用栈实现非递归快速排序的代码 3.用栈实现非递归快速排序的整个工程 3.1.QuickSortNonR.h 3.2.QuickSortNonR.c 3.3.Stack.h 3.4.Stack.c 用队列实现非递归快速排序 1.用队列实现非递归快…

进程概念 | 进程状态 | 进程优先级

进程的基本概念 课本概念:程序的一个执行实例,正在执行的程序等。核心观点:担当分配系统资源(cpu时间、内存)的实体。 资源占用 它占用系统资源向CPU时间,内存等不同进程的资源是相互隔离的,确…

Linux中swap分区

swap 分区的创建方法演示: 方法1:fdisk (首先查看 fdisk /dev/sda 中 swapID。由于 Linux 的 fdisk 默认会将分区的 ID 设置为 Linux 的文件系统,所以需要设置一下 systemID) 解决方法 重启或者执行命令 第二个交换分…

主机可以ping通linux虚拟机但linux虚拟机无法ping通主机的解决办法

出现这个问题一般是由于物理主机的防火墙挡住了ping包,可以试试看把主机的防火墙关闭看看 如果可以ping通的话那么试试看添加规则将虚拟机ip添加进去 高级设置,入站规则,新建规则 下列ip地址添加虚拟机的ip地址(使用桥接网络&…

修改Anaconda虚拟环境默认安装路径(Linux系统)

文章目录 修改Anaconda虚拟环境默认安装路径(Linux系统)1.方法一:使用--prefix参数2.方法二:配置conda环境的默认安装位置 修改Anaconda虚拟环境默认安装路径(Linux系统) 1.方法一:使用--prefix参数 在创建虚拟环境时,使用--pre…

Vue3 中Ref的最佳实践

在vue3中如果我们需要获取一个响应式的变量,可以使用ref来定义一个变量。 const name ref( "" );name.value "test" 定义好后,就可以实现修改状态,更新UI的效果了。 在这个基础上,本文主要讨论跨组件时如何…

基于STM32的智能风扇控制系统设计

引言 本项目将基于STM32微控制器设计一个智能风扇控制系统,通过温度传感器实时检测环境温度,并根据预设的温度范围自动调节风扇的转速。该系统展示了STM32的PWM输出、传感器接口以及自动控制应用的实现。 环境准备 1. 硬件设备 STM32F103C8T6 开发板…

Python 语言学习——应用1.1 数字图像处理(第一节,颜色)

目录 1.基础知识 2.实战演示 1.基础知识: 1.图像的表示. 函数表示:图像是二维信号,定义为二维函数f(x,y),其中,x、y是空间坐标,f(x,y)是点(x,y)的幅值。拓展看,视频,又称动态图像…

SOMEIP_ETS_166: SD_TestFieldUINT8

测试目的: 验证DUT能够通过Getter和Setter方法正确地发送和接收TestFieldUINT8字段的值。 描述 本测试用例旨在确保DUT的ETS能够响应Tester的请求,正确地使用Getter方法获取TestFieldUINT8的值,以及使用Setter方法设置新的值。 测试拓扑&…

QGIS中怎么加载数据(如矢量shp与栅格数据)

最近有不少初学者来问我qgis里怎么加载数据 这个与arcgis中的操作其实也是类似的,也是通过软件的里面+号就行了 下面是我对这个问题的解决思路: 一种是直接把图层文件拖进去,但是这种方法很有局限性,下面我还说明一…

JavaWeb的小结02

第2章-第2节 一、知识点 HttpServletRequest请求对象、HttpServletResponse响应对象、响应内容类型Content-Type、请求转发、重定向、ServletContext对象。 二、目标 深刻理解HttpServletRequest对象的作用。 深刻理解HttpServletResponse对象的作用。 掌握HttpServletRequ…

什么是请求转发?

请求转发 解释 请求转发,将前端发送的请求转发到别的资源 别的资源是指: servlet,页面 即: 请求转发,可以将请求转发值另外一个servlet;也可以是将请求转发至页面 1、 请求转发演示 1.1 请求转发跳转页面 实战: 之前注册练习,修改: 实现注册完跳转到登录页面 1.2 请求转发…