生平第一次这么认真看口红色号谁能想到是因为一道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了