MISC-多彩
时间:2022-07-23
本文章向大家介绍MISC-多彩,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
生平第一次这么认真看口红色号谁能想到是因为一道MISC题呢,吐了这个弱智题目,如今的网站根本没有当时题目上的那些色号,亏我还去淘宝京东都问了一遍,最后才想起来去找快照做,口区
正文开始
打开图片,是这个鬼东西
文件内容中并没有隐藏什么玩意,最后发现是LSB隐写
是真的,真的,真的,真的不知道YSL到底是个什么玩意,先保存出来文件先,保存的时候发现PK(504B)的文件头,这个是ZIP文件来的
保存后,将文件拖入 HxD
,将文件头部以及尾部多余的信息删除
但是在删除后,往往都会报错,什么压缩包损坏或者是不可预料的文件末端
这个时候点击上方工具,点击修复压缩包
在你指定的目录,就会生成一个修复好的压缩包了
打开压缩包发现是要密码的,猜猜看压缩包密码是什么
压缩包密码其实就是题目图片中所有YSL这个牌子对应的口红色号,转换为二进制后,将其转为字符串
但是很不巧的是,YSL官网更新了后,写脚本执行后的效果是这样的
有很多的色号是对应不上的,所以我用这个网站
https://web.archive.org/web/20200117091530/http://www.baidu.com/
找到了18年的YSL网站,但是直接用python好像访问不到,所以我另存为了网页,放到了自己的web服务器上,接着爬自己
代码:
import requests
import re
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')
headers = {'User-agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36'}
RGB=["bc0b28","d04179","d47a6f","c2696f","eb8262","cf1a77","c0083e","bc0b28","bc0b28","d13274","6a1319","bc0b28","bc0b28","d4121d","d75b59","dd8885","ce0a4a","d4121d","7e453a","d75b59","dd8885"]
#url="https://www.yslbeautyus.com/on/demandware.store/Sites-ysl-us-Site/en_US/Product-Variation?pid=194YSL"
url='http://localhost/t.html'
html=requests.get(url=url,headers=headers)
YSL={}
p=r'YSL_color=(.*?)%20'
p2=r'background-color: #(.*?)"'
a=re.findall(p,html.text)
b=re.findall(p2,html.text)
pstr=""
for i in range(42):
YSL[b[i]]=a[i]
for i in RGB:
try:
print(i+": "+YSL[i.upper()])
pstr+=str(bin(int(YSL[i.upper()]))[2:])
except:
print(i+": 222")
pstr+=str(bin(222)[2:])
print("password: "+pstr)
要说明的一点是,我当时执行后,发现还有一个色号这个文件里没有,所以我自己去查了一下,发现是 222
是,方便我写入脚本进行转换,我直接将222补进去了
执行成功后,就获得了一串二进制,把这串二进制拖去转字符串就好了
我一开始还以为前面的问号也是,后来发现只有白学家是,输入密码后就有flag了
- mac下使用github
- CSS3新特性应用之结构与布局
- 程序猿的日常——Java基础之equals与hashCode
- 贾康:智能金融需在发展和规范中掌握理性权衡点
- Objective-C: 字符串NSString与NSMutableString
- 2017年最后一篇推送,仍然与技术有关盘点深度学习论文年度之“最”
- 【垂直居中高级篇】你不知道的垂直居中方式
- 第一个APP:IOS做简单运算的计算器
- 进程、线程、应用程序之间的关系
- CSS3新特性应用之用户体验
- 瑞波币正式超越Uber和比特币现金,市值突破590亿美元
- 程序猿的日常——JVM内存模型与垃圾回收
- 第一个只出现一次的字符
- 在字符串中删除特定的字符
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Effective Java中构建器Builder的理解
- Java的位运算符详解实例。
- 用一个测试类简化排序算法时间复杂度的研究
- R语言之可视化(33)绘制差异基因分析统计图
- Java transient不被持久化的原因
- 举一个有趣的例子,让你轻松搞懂JVM内存管理
- gulp的使用
- SpringBoot中 使用[info]日志级别打印mybatis sql语句
- Spring Boot 使用策略模式指定Service实现类
- 55. Vue webpack的基本使用
- ajax无刷新页面切换,历史记录后退前进解决方案
- 一起来学演化计算-SBX模拟二进制交叉算子和DE差分进化算子
- 通过与C++程序对比,彻底搞清楚JAVA的对象拷贝
- Spring - application.yml 数字读取错误、eg: 000001
- Swagger2 UI 提示"请确保swagger资源接口正确"解决办法