x += bin(diff)[2:].zfill(n \* 2)
else:
x += '0' \* n \* 2
i = 0
flag = ''
while i < len(x):
if int(x[i:i + 8], 2):
flag += chr(int(x[i:i + 8], 2))
i += 8
print(flag)
if name == ‘__main__’:
b64_stego_decode()
>
> `NSSCTF{fazhazhenhaoting}`
>
>
>
### [GXYCTF 2019]佛系青年


**图片放入`010` 发现存在伪加密`09`改为`00`**


**在线与禅论佛:<https://ctf.bugku.com/tool/todousharp>**

>
> `NSSCTF{w0_fo_ci_Be1}`
>
>
>
### [GXYCTF 2019]gakki
**考点:字频统计**
得到一张图片 binwalk -e 分离 然后使用ARCHPR爆破得到密码:8864
发现一段很长的字符串 想到了字频统计统计里面字符的次数 然后排序 上脚本。

-*- coding:utf-8 -*-
#Author: mochu7
alphabet = “abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()_± =\{\}[]”
strings = open(‘./flag.txt’).read()
result = {}
for i in alphabet:
counts = strings.count(i)
i = ‘{0}’.format(i)
result[i] = counts
res = sorted(result.items(),key=lambda item:item[1],reverse=True)
for data in res:
print(data)
for i in res:
flag = str(i[0])
print(flag[0],end=“”)

>
> `NSSCTF{gaki_IsMyw1fe}`
>
>
>
### [suctf 2019]签到题
**在线`Base64`转图片:<https://tool.jisuapi.com/base642pic.html>**

>
> `NSSCTF{fffffffffT4nk}`
>
>
>
### [安洵杯 2019]吹着贝斯扫二维码
**发现很多文件没后缀放入`010`发现都是`jpg`文件 `ren` 批量加后缀 `ren * *.jpg` 我只能说很神奇!!**



**别忘了把`flag.jpg`改回`zip` 因为这个命令是改全部的 找个脚本拼一下 不然要累死你**
import os
from PIL import Image
#目录路径
dir_name = r"./"
#获取目录下文件名列表
dir_list = os.listdir(‘./’)
#print(dir_list)
#从列表中依次读取文件
for file in dir_list:
if ‘.jpg’ in file:
f=open(file ,‘rb’)
n1 = str(f.read())
n2 = n1[-3:]
#经过测试发现这里要读取最后3个字节,因为最后还有一个多余的字节,不知道是不是转字符串的原因导致在末尾多了一个字符
#print(file) #输出文件内容
#print(n2)
f.close() #先关闭文件才能重命名,否则会报文件被占用
错误
os.rename(file,n2+‘.jpg’) #重命名文件
**`85->64->85->13->16->32` 扫码得到的信息 `base`全家桶呗 直接随波一下**
**最终密码为:`ThisIsSecret!233` 打开压缩包 `ok`得到`flag。`**

>
> `NSSCTF{Qr_Is_MeAn1nGfuL}`
>
>
>
### [watevrCTF 2019]Evil Cuteness
**直接`binwalk -e` 分离 打开就是`flag` 送分题**



>
> `NSSCTF{7h475_4c7u4lly_r34lly_cu73_7h0u6h}`
>
>
>
### [RoarCTF 2019]黄金6年
**`mp4`文件 直接`010`看其实里面有二维码肉眼可以看 就是麻烦**

**在线`Base64`:<https://base64.us/>**

**发现是`rar`特征 直接脚本转为`rar`文件 然后是加密的**
import base64
code=“UmFyIRoHAQAzkrXlCgEFBgAFAQGAgADh7ek5VQIDPLAABKEAIEvsUpGAAwAIZmxhZy50eHQwAQADDx43HyOdLMGWfCE9WEsBZprAJQoBSVlWkJNS9TP5du2kyJ275JzsNo29BnSZCgMC3h+UFV9p1QEfJkBPPR6MrYwXmsMCMz67DN/k5u1NYw9ga53a83/B/t2G9FkG/IITuR+9gIvr/LEdd1ZRAwUEAA==”
r=base64.b64decode(code)
test_file=open(“test.rar”,“wb”)
test_file.write®
test_file.close()

**密码爆破了没结果 这里学习个新工具Kinovea将二维码全部提取 `QR`扫
以此类推最后拼接:`iwantplayctf`**

>
> `NSSCTF{CTF-from-RuMen-to-RuYuan}`
>
>
>
### [EIS 2019]misc1

**乱码使用`word`打开 初始编码会让你选择 这里不要使用默认 选其他可以看到`flag`。**

>
> `NSSCTF{0a07c11e46af753fd24d40023f0fdce1}`
>
>
>
### [GWCTF 2019]huyao (频域盲水印)
**考点:频域盲水印**
pip install opencv-python #安装库
coding=utf-8
import cv2
import numpy as np
import random
import os
from argparse import ArgumentParser
ALPHA = 5
def build_parser():
parser = ArgumentParser()
parser.add_argument(‘–original’, dest=‘ori’, required=True)
parser.add_argument(‘–image’, dest=‘img’, required=True)
parser.add_argument(‘–result’, dest=‘res’, required=True)
parser.add_argument(‘–alpha’, dest=‘alpha’, default=ALPHA)
return parser
def main():
parser = build_parser()
options = parser.parse_args()
ori = options.ori
img = options.img
res = options.res
alpha = options.alpha
if not os.path.isfile(ori):
parser.error(“original image %s does not exist.” % ori)
if not os.path.isfile(img):
parser.error(“image %s does not exist.” % img)
decode(ori, img, res, alpha)
def decode(ori_path, img_path, res_path, alpha):
ori = cv2.imread(ori_path)
img = cv2.imread(img_path)
ori_f = np.fft.fft2(ori)
img_f = np.fft.fft2(img)
height, width = ori.shape[0], ori.shape[1]
watermark = (ori_f - img_f) / alpha
watermark = np.real(watermark)
res = np.zeros(watermark.shape)
random.seed(height + width)
x = range(height / 2)
y = range(width)
random.shuffle(x)
random.shuffle(y)
for i in range(height / 2):
for j in range(width):
res[x[i]][y[j]] = watermark[i][j]
cv2.imwrite(res_path, res, [int(cv2.IMWRITE_JPEG_QUALITY), 100])
if name == ‘__main__’:
main()
python3 BlindWaterMarkplus.py --original --image --result
**`original` 是输入原图, `image`是之后跟的是加入了水印的图, `result`是保存水印图片。**
**Github:<https://github.com/kindred-adds/BlindWaterMarkplus>**

>
> `NSSCTF{BWM_1s_c00l}`
>
>
>
### [HBNIS 2019]Doc是什么鬼
**放入`010` 看到`xml`格式 修改后缀`zip` 打开`Flag.xml`即是`flag`**


>
> `NSSCTF{k42bP8khgqMZpCON}`
>
>
>