题目链接

https://buuoj.cn/challenges#[QCTF2018]X-man-Keyword

注意:在Github里有题目描述,而BUUCTF平台上没有提示。

Welcome to QCTFhint1:把给出的keyword放到前面试试hint2:一种把关键词提前的置换

解题过程


题目是张图片:


”lovekfc“应该是和hint2里提到的关键词。用binwalk分析,没有什么东西。在stegsolve里也没有发现异常。在kali用lsb.py试试:

python2 lsb.py extract attachment.png attachment.txt lovekfc


查看attachment.txt文件,得到密文:

PVSF{vVckHejqBOVX9C1c13GFfkHJrjIQeMwf}

根据“hint1:把给出的keyword放到前面试试”的提示,从26个英文字母里把 “lovekfc”提出来放到前面做密钥。

lovekfcabdghijmnpqrstuwxyz

然后根据密钥替换密文中的字母解密(应该是Nihilist加密),这步用脚本来实现:

# -*- coding:utf-8 -*-
import stringciphertext = 'PVSF{vVckHejqBOVX9C1c13GFfkHJrjIQeMwf}'
secretkey = 'lovekfcabdghijmnpqrstuwxyz'
plaintext = ''for letter in ciphertext:if letter in string.ascii_lowercase:index = secretkey.lower().index(letter)plaintext += string.ascii_lowercase[index]continueif letter in string.ascii_uppercase:index = secretkey.upper().index(letter)plaintext += string.ascii_uppercase[index]continueplaintext += letterprint(plaintext)

运行结果:

QCTF{cCgeLdnrIBCX9G1g13KFfeLNsnMRdOwf}

小结

知识点:lsb隐写、Nihilist加解密。

[QCTF2018]X-man-Keyword相关推荐

  1. 解决方案:__init__() got an unexpected keyword argument ‘kill_previous‘

    @[TOC](init() got an unexpected keyword argument 'kill_previous'解决方案) 在SublineText更新后,想通Ctrl+B运行Pyth ...

  2. warnings.warn(f“Pass {args_msg} as keyword args. From version

    warnings.warn(f"Pass {args_msg} as keyword args. From version FutureWarning: Pass threshold=18 ...

  3. to_excel() got an unexpected keyword argument ‘sheetname‘

    TypeError: to_excel() got an unexpected keyword argument 'sheetname' pandas写excel报错,将参数sheetname='xx ...

  4. Swift标识符和keyword

    不论什么一种计算机语言都离不开标识符和keyword,下面我们将具体介绍Swift标识符和keyword. 标示符 标识符就是给变量.常量.方法.函数.枚举.结构体.类.协议等指定的名字.构成标识符的 ...

  5. RobotFrameWork(五)控制流之if语句——Run Keyword If

    2019独角兽企业重金招聘Python工程师标准>>> 5.1 语句简介 robotframework中的if语句是使用关键字Run Keyword If来代替的 Run Keywo ...

  6. MNE-Python : TypeError: today() takes no keyword arguments

    运行代码 在使用MNE读取gdf文件时 import mne %matplotlib inline# Mention the file path to the dataset path = " ...

  7. C++转义字符 amp; keyword

    转义字符: 换行符 \n   水平制表符\t 纵向制表符 \v 退格符 \b 回车符 \r   进纸符 \f 报警(响铃)符 \a 反斜线 \\ 疑问号 \? 单引號 \' 双引號 \"   ...

  8. TypeError: __init__() got an unexpected keyword argument #34serialized_options #34

    TypeError: __init__() got an unexpected keyword argument 'serialized_options' TypeError: __init__() ...

  9. __call__() got an unexpected keyword argument 'partition_info'

    __call__() got an unexpected keyword argument 'partition_info' 解决办法:将tensorflow降级为1.8.0,解决问题.

  10. reduce_sum() got an unexpected keyword argument 'keep_dims'

    reduce_sum() got an unexpected keyword argument 'keep_dims' 2.0.0版本出的问题: 解决: normalize = tf.compat.v ...

最新文章

  1. Sql Injection 注入攻击
  2. CH - 4901 关押罪犯(二分图判定+二分/并查集)
  3. Windows安装Redis(转!)
  4. 一个sql生成hive日期维度表
  5. HTML学习笔记--HTML的语法【1】
  6. Bootstrap3 列表元素的样式
  7. Fast Intro To Java Programming (2)
  8. 系统镜像ISO写入U盘
  9. 初学树莓派——(六)树莓派安装OpenCV及USB摄像头配置
  10. 51单片机用三种方法实现流水灯(超详细)
  11. 差点被祭天!狂欢618,且看研发人如何绝地求生
  12. 前端,后端,前台,后台到底应该怎么理解。
  13. cesium.js 设置缩放最大最小限制
  14. 热更新原理及实践注意
  15. noip2015day1
  16. onu光功率多少是正常_ONU的接收光功率、发送光功率分别是多少?
  17. 工作不要太拼命,领导不会感动的!
  18. D-Link的DIR-655无线网络firmware升级(一)
  19. MathWorks官方MATLAB/Simulink基础入门视频教程 笔记(Simulink基础)
  20. RGBA 转 RGB

热门文章

  1. Markdown 常用数学符号和公式
  2. C语言if语句实现成绩划分
  3. ubuntu设置桌面和锁屏背景
  4. 如何查看网页字体大小
  5. 5个高清图片素材网站,免费可商用,不用担心侵权
  6. 北京大学公开课-影片赏析
  7. VBA学习练习-将多个单元格内容合并
  8. oracle分区详解
  9. 他 25 岁进贝尔实验室,32 岁创建信息论,40 岁办达特茅斯会议 | 人物志
  10. DNS区域(ZONE)相关概念