BaseCTF week3 (web&misc 部分)wp

BaseCTF week3 (web&misc 部分)wp

BaseCTF week3

杂项

[Week3] 白丝上的flag

描述:某出题人赠送大家flag时遭遇了信号干扰, 幸好我们在不知名小网站找到了写入flag前的图片, 尝试还原信息吧!

提示:flag是单色

附件:

在这里插入图片描述
#task.py from PIL import Image from random import randint import sys def ez_add(a,b,c,d): global iv h = (a+b+c+d+iv) % 256 e = b f = c g = d iv = (b+c+d+iv) % 256 return e,f,g,h def confuse(data): r,g,b,a = data for _ in range(8): r,g,b,a = ez_add(r,g,b,a) return r,g,b,a def confuse_image(flag): global iv iv = flag.getpixel((1,1))[0] img = Image.new('RGBA', (flag.width, flag.height)) for w in range(img.width): for h in range(img.height): img.putpixel((w, h), confuse(flag.getpixel((w,h)))) return img if __name__ == '__main__': iv = 0 flag = Image.open("./de_image.png") img = confuse_image(flag) img.save("en_image.png") 

解密思路:

  1. 逆向 confuse 函数: 由于 confuse 函数是对像素进行简单的加法运算,我们可以通过逆向运算来解密。
  2. 单色图像特点: 单色图像的每个像素的 RGB 值都相同,我们可以利用这个特点来简化解密过程。

脚本:

from PIL import Image def ez_sub(h, e, f, g): global iv a = (h - e - f - g - iv) % 256 iv = (e + f + g + iv) % 256 return a def unconfuse(data): r, g, b, a = data for _ in range(8): r = ez_sub(r, g, b, a) return r, g, b, a def unconfuse_image(img): global iv iv = img.getpixel((1, 1))[0] flag = Image.new('RGBA', (img.width, img.height)) for w in range(img.width): for h in range(img.height): flag.putpixel((w, h), unconfuse(img.getpixel((w, h)))) return flag if __name__ == '__main__': iv = 0 img = Image.open("en_image.png") flag = unconfuse_image(img) flag.save("de_image_decrypted.png") 

得到de_image_decrypted.png,使用Stegsolve.jar查看red plane 0发现flag

在这里插入图片描述
BaseCTF{there_1s_the_flag@} 
[Week3] 纯鹿人

附件:

在这里插入图片描述
cGFzc3dvcmTvvJppa3VuaWt1bg== base64解码 password???ikunikun 

这里我一开始的思路就是将文档中的表情包保存下来使用WinHex打开,并没用什么发现,然后搜索发现可能是使用jphs,但是最后发现不行

在这里插入图片描述

没用思路就暂时放弃了

后面就是在群里看见有人讨论上周[Week2]哇!珍德食泥鸭的另一种解法

于是我试着将文档改为zip后缀,发现

在这里插入图片描述

将其丢尽WinHex编辑器中得到

在这里插入图片描述

使用foremost进行分离得到一个新的zip文件,密码为ikunikun,即可得到flag

CTF-MISC隐写总结_ctf mp4隐写-ZEEKLOG博客

[Week3] 我要吃火腿!

附件:

在这里插入图片描述
#我要吃火腿!.txt ~呜嗷嗷嗷嗷呜啊嗷呜~呜嗷呜呜~嗷~嗷啊嗷啊呜嗷嗷嗷呜~嗷~呜嗷嗷~~嗷嗷嗷呜啊呜啊~呜嗷呜呜~嗷呜啊啊嗷啊呜嗷呜~呜~嗷~呜嗷~~啊嗷嗷嗷呜啊呜啊啊呜嗷呜呜~嗷嗷嗷啊嗷啊呜嗷呜~~~嗷~呜呜嗷呜~嗷嗷嗷呜呜~嗷啊呜嗷呜呜~嗷~~啊嗷啊呜嗷嗷~嗷~嗷~呜呜嗷~嗷嗷嗷嗷呜呜嗷啊~呜嗷呜呜~嗷嗷嗷啊嗷啊呜嗷嗷啊呜~嗷~呜呜呜~~嗷嗷嗷呜啊呜啊嗷呜嗷呜呜~呜啊~啊嗷啊呜~~啊啊~嗷~呜呜嗷呜呜嗷嗷嗷呜啊嗷~嗷呜嗷呜呜~嗷嗷~啊嗷啊呜嗷嗷嗷嗷~嗷~呜嗷嗷啊~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜~嗷呜啊啊嗷啊呜嗷呜嗷嗷~嗷~呜呜呜嗷~嗷嗷嗷呜啊呜嗷~呜嗷呜呜~呜~嗷啊嗷啊呜嗷呜~~~嗷~呜嗷~~啊嗷嗷嗷呜啊嗷啊呜呜嗷呜呜~嗷嗷嗷啊嗷啊呜嗷嗷呜~~嗷~呜呜嗷呜嗷嗷嗷嗷呜呜嗷~嗷呜嗷呜呜啊呜嗷呜啊嗷啊呜啊啊呜呜~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜呜嗷呜~嗷嗷嗷呜啊嗷呜嗷呜嗷呜呜~嗷呜嗷啊嗷啊呜~~啊啊~嗷~呜呜嗷嗷呜嗷嗷嗷呜啊呜~嗷呜嗷呜呜~呜啊~啊嗷啊呜嗷嗷嗷嗷~嗷~呜呜呜嗷啊嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊呜呜嗷啊嗷啊呜~嗷啊~~嗷~呜嗷~啊啊嗷嗷嗷呜呜呜嗷~呜嗷呜呜~呜~~啊嗷啊呜~呜~~~嗷~呜嗷呜呜~嗷嗷嗷呜呜嗷~~呜嗷呜呜啊嗷呜~啊嗷啊呜~呜啊~~嗷~呜呜呜呜~嗷嗷嗷呜呜呜啊呜呜嗷呜呜啊呜啊嗷啊嗷啊呜~嗷呜~~嗷~呜嗷嗷~~嗷嗷嗷呜呜呜嗷~呜嗷呜呜~呜~~啊嗷啊呜~呜嗷呜~嗷~呜嗷啊嗷~嗷嗷嗷呜呜~嗷嗷呜嗷呜呜呜啊嗷呜啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜啊啊呜呜~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜呜呜呜啊嗷嗷嗷呜啊嗷~嗷呜嗷呜呜~呜啊~啊嗷啊呜嗷嗷嗷~~嗷~呜嗷嗷~~嗷嗷嗷呜啊嗷嗷啊呜嗷呜呜~呜呜~啊嗷啊呜嗷嗷嗷嗷~嗷~呜呜嗷~呜嗷嗷嗷呜呜嗷啊~呜嗷呜呜~嗷嗷嗷啊嗷啊呜嗷嗷啊呜~嗷~呜呜呜~~嗷嗷嗷呜啊呜啊嗷呜嗷呜呜~呜啊~啊嗷啊呜~~啊啊~嗷~呜呜嗷呜呜嗷嗷嗷呜啊嗷~嗷呜嗷呜呜~嗷嗷~啊嗷啊呜嗷嗷嗷嗷~嗷~呜嗷嗷啊~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷~啊啊嗷啊呜嗷呜~呜~嗷~呜呜嗷嗷呜嗷嗷嗷呜呜嗷啊啊呜嗷呜呜啊嗷嗷嗷啊嗷啊呜~嗷啊~~嗷~呜呜嗷嗷嗷嗷嗷嗷呜啊呜呜啊呜嗷呜呜啊嗷呜~啊嗷啊呜嗷嗷嗷呜~嗷~呜嗷呜啊呜嗷嗷嗷呜嗷啊~呜呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜~嗷啊~啊嗷啊呜嗷嗷~嗷~嗷~呜呜呜嗷~嗷嗷嗷呜啊嗷呜嗷呜嗷呜呜啊嗷呜~啊嗷啊呜~呜啊嗷~嗷~呜嗷嗷~~嗷嗷嗷呜啊嗷呜呜呜嗷呜呜~呜嗷嗷啊嗷啊呜嗷呜~~~嗷~呜呜嗷呜嗷嗷嗷嗷呜啊嗷呜嗷呜嗷呜呜~呜啊呜啊嗷啊呜嗷呜~呜~嗷~呜呜嗷嗷嗷嗷嗷嗷呜啊呜~嗷呜嗷呜呜啊嗷~~啊嗷啊呜嗷嗷嗷呜~嗷~呜嗷嗷~呜嗷嗷嗷呜啊呜呜呜呜嗷呜呜~嗷~嗷啊嗷啊呜嗷嗷~嗷~嗷~呜呜嗷嗷~嗷嗷嗷呜呜嗷啊~呜嗷呜呜啊嗷嗷嗷啊嗷啊呜~嗷呜嗷~嗷~呜~啊啊呜嗷嗷嗷呜嗷啊~呜呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜~嗷~呜啊嗷啊呜嗷嗷啊啊~嗷~呜呜呜嗷呜嗷嗷嗷呜呜嗷嗷~呜嗷呜呜~嗷嗷嗷啊嗷啊呜~嗷啊~~嗷~呜呜嗷啊嗷嗷嗷嗷呜啊嗷嗷呜呜嗷呜呜啊嗷呜~啊嗷啊呜嗷呜~呜~嗷~呜呜嗷嗷嗷嗷嗷嗷呜啊嗷嗷呜呜嗷呜呜~嗷~啊啊嗷啊呜嗷嗷嗷嗷~嗷~呜嗷嗷呜~嗷嗷嗷呜啊嗷~~呜嗷呜呜~嗷~嗷啊嗷啊呜嗷嗷啊呜~嗷~呜嗷嗷呜~嗷嗷嗷呜啊嗷呜~呜嗷呜呜~嗷啊嗷啊嗷啊呜嗷呜~~~嗷~呜呜嗷嗷嗷嗷嗷嗷呜呜嗷~嗷呜嗷呜呜啊嗷嗷嗷啊嗷啊呜~呜呜呜~嗷~呜~啊啊呜嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜啊嗷呜~呜嗷呜呜~嗷啊嗷啊嗷啊呜嗷呜~~~嗷~呜呜嗷嗷嗷嗷嗷嗷呜呜~~啊呜嗷呜呜~嗷嗷嗷啊嗷啊呜~~啊嗷~嗷~呜嗷嗷~~嗷嗷嗷呜呜~嗷呜呜嗷呜呜啊呜呜嗷啊嗷啊呜~嗷啊~~嗷~呜呜嗷呜~嗷嗷嗷呜啊嗷呜嗷呜嗷呜呜~嗷呜嗷啊嗷啊呜~~啊啊~嗷~呜呜嗷嗷呜嗷嗷嗷呜啊呜~嗷呜嗷呜呜~呜啊~啊嗷啊呜嗷嗷嗷嗷~嗷~呜呜呜嗷啊嗷嗷嗷呜呜~~啊呜嗷呜呜~嗷嗷嗷啊嗷啊呜~嗷啊~~嗷~呜嗷嗷呜嗷嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊呜啊啊啊嗷啊呜~~啊嗷~嗷~呜~啊啊呜嗷嗷嗷呜嗷啊~呜呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜~呜~啊啊嗷啊呜嗷嗷呜嗷~嗷~呜呜呜嗷~嗷嗷嗷呜啊嗷啊~呜嗷呜呜啊嗷呜~啊嗷啊呜嗷嗷啊啊~嗷~呜呜呜~~嗷嗷嗷呜啊嗷啊嗷呜嗷呜呜~嗷呜呜啊嗷啊呜~嗷嗷~~嗷~呜呜嗷~啊嗷嗷嗷呜啊呜啊嗷呜嗷呜呜~呜啊~啊嗷啊呜嗷呜啊~~嗷~呜呜呜呜嗷嗷嗷嗷呜啊呜呜~呜嗷呜呜啊~呜啊啊嗷啊呜嗷嗷嗷呜~嗷~呜呜嗷啊嗷嗷嗷嗷呜啊嗷~~呜嗷呜呜~嗷~嗷啊嗷啊呜~嗷呜~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷啊啊呜嗷呜呜~呜~啊啊嗷啊呜嗷嗷~呜~嗷~呜嗷嗷呜啊嗷嗷嗷呜呜嗷~嗷呜嗷呜呜啊嗷呜~啊嗷啊呜嗷嗷~嗷~嗷~呜呜呜嗷啊嗷嗷嗷呜呜嗷嗷~呜嗷呜呜~嗷~呜啊嗷啊呜~呜呜呜~嗷~呜~啊啊呜嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜呜嗷嗷~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷啊~~嗷~呜嗷嗷~~嗷嗷嗷呜啊嗷啊呜呜嗷呜呜啊嗷呜呜啊嗷啊呜嗷呜嗷啊~嗷~呜呜呜嗷呜嗷嗷嗷呜啊嗷~嗷呜嗷呜呜~呜啊~啊嗷啊呜嗷嗷嗷嗷~嗷~呜嗷嗷呜~嗷嗷嗷呜啊嗷呜~呜嗷呜呜~嗷啊嗷啊嗷啊呜嗷呜~~~嗷~呜呜嗷嗷嗷嗷嗷嗷呜呜嗷~嗷呜嗷呜呜呜啊嗷呜啊嗷啊呜啊啊呜呜~嗷~呜呜呜呜~嗷嗷嗷呜啊嗷嗷啊呜嗷呜呜~呜啊呜啊嗷啊呜~~啊啊~嗷~呜呜呜呜啊嗷嗷嗷呜啊嗷~嗷呜嗷呜呜~呜啊~啊嗷啊呜嗷嗷嗷~~嗷~呜嗷~~啊嗷嗷嗷呜啊嗷啊~呜嗷呜呜~嗷啊嗷啊嗷啊呜嗷嗷啊嗷~嗷~呜嗷嗷呜~嗷嗷嗷呜呜嗷啊啊呜嗷呜呜啊啊~~啊嗷啊呜嗷嗷~嗷~嗷~呜呜嗷~嗷嗷嗷嗷呜啊嗷嗷啊呜嗷呜呜~呜啊呜啊嗷啊呜嗷嗷呜~~嗷~呜嗷嗷~呜嗷嗷嗷呜啊嗷~呜呜嗷呜呜~呜呜~啊嗷啊呜嗷嗷嗷啊~嗷~呜嗷嗷呜啊嗷嗷嗷呜呜嗷~~呜嗷呜呜啊嗷呜~啊嗷啊呜~嗷嗷啊~嗷~呜嗷啊呜~嗷嗷嗷呜啊嗷呜嗷呜嗷呜呜~嗷呜嗷啊嗷啊呜~嗷啊呜~嗷~呜呜嗷啊呜嗷嗷嗷呜啊呜嗷~呜嗷呜呜~嗷~啊啊嗷啊呜~嗷嗷啊~嗷~呜嗷嗷啊嗷啊 

解码网站:兽音译者在线编码解码 - 兽音翻译咆哮体加密解密 (iiilab.com)

def xor_with_ham(input_file, output_file): ham_bytes = [0x48, 0x61, 0x6D] with open(input_file, 'rb') as f: data = bytearray(f.read()) for i in range(len(data)): data[i] ^= ham_bytes[i % 3] with open(output_file, 'wb') as f: f.write(data) xor_with_ham('Hamorl.jpg', 'Ham.jpg') 

解密脚本

def xor_with_ham_decrypt(input_file, output_file): ham_bytes = [0x48, 0x61, 0x6D] with open(input_file, 'rb') as f: data = bytearray(f.read()) for i in range(len(data)): data[i] ^= ham_bytes[i % 3] with open(output_file, 'wb') as f: f.write(data) # 使用函数解密 xor_with_ham_decrypt('Ham.jpg', 'Hamorl.jpg') 

得到Hamorl.jpg

不过还是损坏的,修改文件头为ffd8ffe1保存即可

在这里插入图片描述
在这里插入图片描述

到这里就不会了,试了很大

Read more

OpenClaw 集成 GitHub Copilot 指南

OpenClaw 集成 GitHub Copilot 指南

OpenClaw 集成 GitHub Copilot 指南 本文档介绍如何将 GitHub Copilot 作为模型提供商集成到 OpenClaw 中,实现通过 GitHub 账户调用 Copilot 模型能力。 目录 * 什么是 OpenClaw * 什么是 GitHub Copilot * 前提条件 * 安装 OpenClaw * 两种集成方式 * 方式一:内置 GitHub Copilot 提供商(推荐) * 方式二:Copilot Proxy 插件 * 设置默认模型 * 配置文件示例 * 模型管理 * 常见问题排查 * 参考资料 什么是 OpenClaw OpenClaw 是一个开源的 AI 助手平台,提供自托管的 AI 网关(

彻底解决 Codex / Copilot 修改中文乱码【含自动化解决方案】

彻底解决 Codex / Copilot 修改中文乱码【含自动化解决方案】

引言 在使用 GitHub Copilot 或 OpenAI Codex 自动重构代码时,你是否遇到过这样的尴尬:AI 生成的代码逻辑完美,但原本注释里的中文却变成了 我爱中文 这样的乱码?有时候这种字符甚至会污染正确的代码,带来巨大的稳定性隐患。 一、 问题核心:被忽视的“终端中转” 乱码的根源不在于 AI 的大脑,也不在于编辑器的显示,而在于执行链路的编码不一致。 Copilot/Codex 在执行某些修改任务(如:重构整个文件或批量替换)时,往往会通过终端调用系统指令。由于 Windows 终端(PowerShell/CMD)默认使用 GBK 编码,它在处理 AI 传来的 UTF-8 字节时会发生“误读”,导致写入文件的内容从源头上就损坏了。

Whisper-large-v3语音识别效果实测:准确率惊人

Whisper-large-v3语音识别效果实测:准确率惊人 1. 开场就见真章:一段法语+中文混音,它居然全听懂了 你有没有试过录一段话,里面夹着英文单词、中文短句,还带点方言口音?结果转文字软件直接“懵圈”,要么乱码,要么硬生生把“我明天去shānghǎi”写成“我明天去shanghai”——连拼音都懒得改。 这次我们没用测试集,也没跑标准WER,而是直接打开这个镜像,上传了6段真实场景音频:跨国会议录音、粤普混合采访、带背景音乐的播客片段、语速飞快的日语新闻、印度英语客服对话,还有最狠的一段——5秒内切换德语/西班牙语/中文三语的AI语音助手测试样例。 结果呢? 全部识别成功,语言自动检测零出错,中英混杂句子标点基本完整,连“微信”“支付宝”这种专有名词都原样保留,没写成“WeChat”或“Alipay”。 这不是宣传稿,是我们在RTX 4090 D上实打实跑出来的结果。本文不讲参数、不画架构图,

飞书机器人集成还能更便宜?Seedance 2.0 2.0.3版新增Serverless适配器,TCO直降58%,现在不升级就亏了

第一章:Seedance 2.0 飞书机器人集成开发教程 低成本方案 Seedance 2.0 是一款轻量级开源工作流编排引擎,支持通过 Webhook 快速对接飞书机器人实现事件驱动的自动化通知与交互。本方案聚焦零服务器成本部署,全程依托飞书开放平台能力与 Vercel 边缘函数完成消息路由,无需自建后端服务。 创建飞书自定义机器人 * 登录飞书管理后台 → 进入「应用管理」→ 「创建应用」→ 选择「自建应用」 * 在「机器人」模块启用并获取 Webhook 地址(形如 https://open.feishu.cn/open-apis/bot/v2/hook/xxx) * 记录 app_id 与 app_secret,后续用于签名验证 部署无服务器接收端 使用 Vercel