拿到一个压缩包

里面有一个加密的压缩包

这个压缩包里面有一个神秘的 代码,先把数值计算出来吧。反正misc的题目总是这个样子,也不是第一天知道了。

那么就先计算一个这个数值吧,

import math
x=2524921
y=(math.pow(x,0.5)*85/5+2)/15-1794
print(y)


算出来是7呀

FLAG IN ((√2524921X85÷5+2)÷15-1794)+NNULLULL,

这个东西理解起来铁定是有二义性的呀。

7+NNULLULL,
7NNULLULL,
都不对

发现这个原来是掩膜爆破

a = dIW
b = sSD
c = adE
d = jVf
e = QW8
f = SA=
g = jBt
h = 5RE
i = tRQ
j = SPA
k = 8DS
l = XiE
m = S8S
n = MkF
o = T9p
p = PS5
q = E/S
r = -sd
s = SQW
t = obW
u = /WS
v = SD9
w = cw=
x = ASD
y = FTa
z = AE7

这个格式有点熟悉,显示替换密码的形式

但是现在就是知道这些 也没有用,因为这也不可能把这个一篇哈利波特全部給替换掉的吧。
知道替换密码的形式,也知道了密文是哈利波特与魔法石??。

那么这张图片可能有别的 用处了。

图片png 分析,什么pngcheck,stegsolve的来一波。

没什么用

用binwalk 测试

没有分离出来有用 的信息

有一件事情想不通,就是在winhex中搜索IDATx,x后面并没有789C.

这个应该是ZLIB的标识才是。

那么岂不是有问题。


使用foremost命令分离,发现输出了两张图片。


亦或?还是直接stegsolve?

盲水印

不是很懂这个东西

所以说图像这个二维的信息还是很复杂的。


虽然是知道它隐写的行为,但是分不清隐写的类型。
而且一般情况下,在互联网环境下,藏在一系列的图像中,我们甚至是不知道隐写的行为。

from blind_watermark import WaterMark'''
# 加水印
bwm1 = WaterMark(password_wm=1, password_img=1)
# 读取原图
bwm1.read_img('C:/Users/brighten/Desktop/output/png/00000000.png')
# 读取水印
bwm1.read_wm('C:/Users/brighten/Desktop/output/png/00000232.png')
# 打上盲水印
bwm1.embed('output/打上水印的图.png')'''bwm1 = WaterMark(password_wm=1, password_img=1)
# 注意需要设定水印的长宽wm_shape
bwm1.extract(filename='C:/Users/brighten/Desktop/output/png/00000000.png', wm_shape=(626, 626), out_wm_name='C:/Users/brighten/Desktop/output/png/00000232.png', )

出事了,解不出来。

在艰难的斗争之后,我发现了盲点。
命令如下

python bwmforpy3.py decode 00000000.png 00000232.png 1.png --oldseed

这个作者就是神
python 3.6 盲水印脚本安装说明

https://blog.csdn.net/qq_50898079/article/details/112060543


依稀可以看出来这个是

in 11.txt


这个哈利波特文章还挺长的。

明显就是字频分析,可能还得先做一个替换在来字频分析。

a = dIW
b = sSD
c = adE
d = jVf
e = QW8
f = SA=
g = jBt
h = 5RE
i = tRQ
j = SPA
k = 8DS
l = XiE
m = S8S
n = MkF
o = T9p
p = PS5
q = E/S
r = -sd
s = SQW
t = obW
u = /WS
v = SD9
w = cw=
x = ASD
y = FTa
z = AE7

大概有40万个字,要是先替换再字频分析,替换完成之后大概翻3倍。 这个字频分析的脚本无论是抄还是写都不是很难的事情。

记得以前抄过一个代码

#!/usr/bin/env python
# -*- coding:utf-8 -*-
alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()_+- ={}[]"
f = open("C://Users//brighten//Desktop//flag.doc", "r")
data = f.read()  # 读文件
result = {d: 0 for d in alphabet}  # alphabet:0 的字典# print("result:"+str(result))def sort_by_value(d):  # 排序函数items = d.items()backitems = [[v[1], v[0]] for v in items]backitems.sort(reverse=True)return [backitems[i][1] for i in range(0, len(backitems))]for d in data:for alpha in alphabet:if d == alpha:result[alpha] = result[alpha] + 1  # 循环,历遍所有字符,计算count放到result中print("items:")
print(result.items())  # 所有字符的出现次数
print(sort_by_value(result))b = sort_by_value(result)b = [str(i) for i in b]
str2 = ''.join(b)
print(str2)

Python 3.7.0 (default, Jun 28 2018, 08:04:48) [MSC v.1912 64 bit (AMD64)]
Type ‘copyright’, ‘credits’ or ‘license’ for more information
IPython 6.5.0 – An enhanced Interactive Python. Type ‘?’ for help.
PyDev console: using IPython 6.5.0
Python 3.7.0 (default, Jun 28 2018, 08:04:48) [MSC v.1912 64 bit (AMD64)] on win32
In[2]: runfile(‘C:/Users/brighten/Desktop/信息安全工具快捷/misc/字频分析.py’, wdir=‘C:/Users/brighten/Desktop/信息安全工具快捷/misc’)
items:
dict_items([(‘a’, 25887), (‘b’, 4980), (‘c’, 6403), (‘d’, 15932), (‘e’, 39628), (‘f’, 6431), (‘g’, 8127), (‘h’, 19535), (‘i’, 19422), (‘j’, 319), (‘k’, 3930), (‘l’, 14385), (‘m’, 6729), (‘n’, 21337), (‘o’, 25809), (‘p’, 4909), (‘q’, 217), (‘r’, 20990), (‘s’, 18870), (‘t’, 27993), (‘u’, 9562), (‘v’, 2716), (‘w’, 7744), (‘x’, 381), (‘y’, 8293), (‘z’, 259), (‘A’, 703), (‘B’, 348), (‘C’, 293), (‘D’, 685), (‘E’, 287), (‘F’, 426), (‘G’, 492), (‘H’, 2996), (‘I’, 1393), (‘J’, 51), (‘K’, 79), (‘L’, 209), (‘M’, 665), (‘N’, 488), (‘O’, 332), (‘P’, 639), (‘Q’, 203), (‘R’, 660), (‘S’, 844), (‘T’, 1055), (‘U’, 193), (‘V’, 192), (‘W’, 653), (‘X’, 2), (‘Y’, 326), (‘Z’, 5), (‘1’, 11), (‘2’, 3), (‘3’, 8), (‘4’, 6), (‘5’, 2), (‘6’, 1), (‘7’, 4), (‘8’, 1), (‘9’, 4), (‘0’, 5), (’!’, 474), (’@’, 0), (’#’, 0), (’KaTeX parse error: Double superscript at position 171: … (']', 0)]) [' '̲, 'e', 't', 'a'…’, ‘#’]
etaonrhisdluygwmfcbpkHv-ITSADMRWPGN!FxBOYjCEzqLQUVKJ)(134Z0972X5*86}{_^][@=+&%$#

[’ ', ‘e’, ‘t’, ‘a’, ‘o’, ‘n’, ‘r’, ‘h’, ‘i’, ‘s’, ‘d’, ‘l’, ‘u’, ‘y’, ‘g’, ‘w’, ‘m’, ‘f’, ‘c’, ‘b’, ‘p’, ‘k’, ‘H’, ‘v’, ‘-’, ‘I’, ‘T’, ‘S’, ‘A’, ‘D’, ‘M’, ‘R’, ‘W’, ‘P’, ‘G’, ‘N’, ‘!’, ‘F’, ‘x’, ‘B’, ‘O’, ‘Y’, ‘j’, ‘C’, ‘E’, ‘z’, ‘q’, ‘L’, ‘Q’, ‘U’, ‘V’, ‘K’, ‘J’, ‘)’, ‘(’, ‘1’, ‘3’, ‘4’, ‘Z’, ‘0’, ‘9’, ‘7’, ‘2’, ‘X’, ‘5’, ‘*’, ‘8’, ‘6’, ‘}’, ‘{’, ‘_’, ‘^’, ‘]’, ‘[’, ‘@’, ‘=’, ‘+’, ‘&’, ‘%’, ‘$’, ‘#’]

排序为

etaonrhisdluygwmfcbpkHv-ITSADMRWPGN!FxBOYjCEzqLQUVKJ)(134Z0972X5*86}{_^][@=+&%$#

a = dIW
b = sSD
c = adE
d = jVf
e = QW8
f = SA=
g = jBt
h = 5RE
i = tRQ
j = SPA
k = 8DS
l = XiE
m = S8S
n = MkF
o = T9p
p = PS5
q = E/S
r = -sd
s = SQW
t = obW
u = /WS
v = SD9
w = cw=
x = ASD
y = FTa
z = AE7

etaonrhisdluygwmf

#!/usr/bin/env python
# -*- coding:utf-8 -*-
'''
将下面的这些放入txt文件points.txt
a = dIW
b = sSD
c = adE
d = jVf
e = QW8
f = SA=
g = jBt
h = 5RE
i = tRQ
j = SPA
k = 8DS
l = XiE
m = S8S
n = MkF
o = T9p
p = PS5
q = E/S
r = -sd
s = SQW
t = obW
u = /WS
v = SD9
w = cw=
x = ASD
y = FTa
z = AE7
'''
z = {}
with  open("./points.txt") as f:for i in f:# print(i)test = i[0]dd = i[4:7]'''print(test)print(dd)'''z[test] = dd
'''
ff = {'a': 'dIW', 'b': 'sSD', 'c': 'adE', 'd': 'jVf', 'e': 'QW8', 'f': 'SA=', 'g': 'jBt', 'h': '5RE', 'i': 'tRQ','j': 'SPA', 'k': '8DS', 'l': 'XiE', 'm': 'S8S', 'n': 'MkF', 'o': 'T9p', 'p': 'PS5', 'q': 'E/S', 'r': '-sd','s': 'SQW', 't': 'obW', 'u': '/WS', 'v': 'SD9', 'w': 'cw=', 'x': 'ASD', 'y': 'FTa', 'z': "AE7"}'''
ss = "etaonrhisdluygw"print(z)
x = []def tihau(s):x.append(z[s])for i in ss:tihau(i)
print(''.join(x))

In[2]: runfile(‘C:/Users/brighten/Desktop/信息安全工具快捷/misc/字符替换脚本.py’,
wdir=‘C:/Users/brighten/Desktop/信息安全工具快捷/misc’) {‘a’: ‘dIW’, ‘b’:
‘sSD’, ‘c’: ‘adE’, ‘d’: ‘jVf’, ‘e’: ‘QW8’, ‘f’: ‘SA=’, ‘g’: ‘jBt’,
‘h’: ‘5RE’, ‘i’: ‘tRQ’, ‘j’: ‘SPA’, ‘k’: ‘8DS’, ‘l’: ‘XiE’, ‘m’:
‘S8S’, ‘n’: ‘MkF’, ‘o’: ‘T9p’, ‘p’: ‘PS5’, ‘q’: ‘E/S’, ‘r’: ‘-sd’,
‘s’: ‘SQW’, ‘t’: ‘obW’, ‘u’: ‘/WS’, ‘v’: ‘SD9’, ‘w’: ‘cw=’, ‘x’:
‘ASD’, ‘y’: ‘FTa’, ‘z’: ‘AE7’}
QW8obWdIWT9pMkF-sd5REtRQSQWjVfXiE/WSFTajBtcw=

QW8obWdIWT9pMkF-sd5REtRQSQWjVfXiE/WSFTajBtcw=

这个明显就是base系列的,看别人的题解,说是这个编码有问题。

再做下去没有意义了。本题就到这里结束。

[安洵杯 2019]easy misc 1相关推荐

  1. BUUCTF msic 专题(115)[安洵杯 2019]easy misc

    下载附件,有三个文件,依次查看 图片中发现了两个IEND证明应该有两张图片拼成了这一张,进行foremost 发现有两张一样的图片,stegsolve查看分离出的图片 很明显的盲水印,用blindwa ...

  2. BUUCTF [安洵杯 2019]easy_serialize_php

    考点: 变量覆盖.反序列化中的对象逃逸 题目地址:BUUCTF在线评测 源码如下: <?php$function = @$_GET['f'];function filter($img){$fil ...

  3. 【BUUCTF】[安洵杯 2019]吹着贝斯扫二维码

    题目链接:[安洵杯 2019]吹着贝斯扫二维码. 下载压缩包解压得到这么一些文件,可以看到一堆未知类型文件和一个flag.zip 老规矩,把这些没有拓展名的文件用010Editor打开,发现都是jpg ...

  4. [安洵杯 2019]吹着贝斯扫二维码

    [安洵杯 2019]吹着贝斯扫二维码 压缩包解压后得到一些无后缀文件,和一个flag.zip 查看flag.zip内容发现尾部有类似base32的数据,先不管去看那些文件(这题其实可以用不到其他文件) ...

  5. BUUCTF:[安洵杯 2019]不是文件上传

    这题和攻防世界XCTF:upload有点像,看似上传却都不是上传是上传图片的文件名注入 参考:安洵杯2019 官方Writeup 获取源码 在网站首页存在一些信息 在gihtub找得到源码 BUU也给 ...

  6. [安洵杯 2019]iamthinking

    /www.zip下载源码审计 通过README可以看到是ThinkPHP6.0. 当前只能访问到/public/index.php, 关于这个框架的index.php [thinkphp6源码分析一 ...

  7. 第二届安洵杯2019部分writeup

    Web easy_web 参数可疑:?img=TXpVek5UTTFNbVUzTURabE5qYz0&cmd= TXpVek5UTTFNbVUzTURabE5qYz0进行两次base64解密, ...

  8. 【安洵杯 2019】easy-web

    涉及内容:base64解码.代码审计.MD5强类型注入.命令注入绕过 打开控制器,查看源代码,可以看到md5 is funny,可知这题应该会出现MD5 其余信息一无所获后,看到网站: 看到img=T ...

  9. [安洵杯 2019]Attack (详细解析)

    (*本文使用工具,均为windows系统,这些工具kali系统自带,有的人不喜欢用kali系统,主页有windows下载资源) 题目链接: https://buuoj.cn/challenges#[% ...

  10. BUUCTF:[安洵杯 2019]吹着贝斯扫二维码

    题目地址:https://buuoj.cn/challenges#[%E5%AE%89%E6%B4%B5%E6%9D%AF%202019]%E5%90%B9%E7%9D%80%E8%B4%9D%E6% ...

最新文章

  1. 小程序点击图片自动播放视频,停止上一个视频播放
  2. Python如何实现24个微信大群万人同步转发直播?
  3. EmbeddedWebBrowser(EmbeddedWB)不显示图片
  4. 【vue插件篇】vue-form-check 表单验证
  5. 姚班学霸蝉联第一,清华再霸榜,湘潭大学表现亮眼,第四届 CCF CCSP落下帷幕...
  6. 第一章 介绍-机器学习老师板书-斯坦福吴恩达教授
  7. 简易ASP文件缓存技术
  8. [转]Vim常用命令速查
  9. postman接口测试和压力测试
  10. mvn项目Quartz简单上手
  11. 利用Math.random做背景图像随机切换【前端开发技能必备系列】
  12. HDOJ 2642 HDU 2642 Stars ACM 2642 IN HDU
  13. 【五级流水线CPU】—— 3. 逻辑、移位与空指令 + 数据冒险RAM解决
  14. JS对象 - Array属性方法汇总
  15. 华工计算机工图答案,华南理工 网络画法几何及工程制图-课程习题集答案
  16. Atlassian与DevOps 系列产品选择方案介绍
  17. 18c新特性——PDB snapshot Carousel 快照轮转
  18. WPF 使用Image控件显示图片
  19. Pandas缺失值inf与nan处理实践
  20. uni-app初学步骤教程:

热门文章

  1. Prometheus Operator 安装
  2. 第九届JAVA大学C组 那天返回省赛 第一题
  3. 红帽linux员工数,红帽企业 Linux Atomic Host 管理
  4. oracle 创建新的表空间,oracle创建表空间新建新用户并受权
  5. SaltStack源码分析之Redis Returner
  6. ZUI框架加上Flex布局构建登录后的主页
  7. kgb压缩_KGB Archiver可能是可用的最佳压缩工具吗? 还是最慢?
  8. 当下的力量实践手册读书笔记(1.28)
  9. 使用libjpeg-turboYUV转JPG
  10. pyautogui在网页内写入excel文件内容