知识点

换表的base64特点:
1.出现64个字节的字符串(其实应该叫做表)作为数组取值,并且(经常,不是一定)出现“/”和“+”符号
2.=作为补位,体现为对3求余(%3)

Base64 字典表顺序
Ida打开F5找到加密的,点开basekey

解题流程

无壳
一看这个就知道base64的码表肯定被改了,然后拖进ida一看
用ida64打开。



基本都是构造函数和析构函数,其里一个最显眼的是查找一下
base64Encode(&result);,base64 的码表估计就藏在里面

看了这个&unk_489084

方法一:

下面有个码表,一看就是base64 的,好了,上工具
http://web.chacuo.net/netbasex

得到flag{Special_Base64_By_Lich}

方法二:

盲猜是换表的base64,脚本处理。
贴出脚本

import base64
import stringstr1 = "mTyqm7wjODkrNLcWl0eqO8K8gc1BPk1GNLgUpI=="   #str1是要解密的代码
string1 = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0987654321/+"   #string1是改过之后的base64表
string2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
print (base64.b64decode(str1.translate(str.maketrans(string1,string2))))"""
str() 函数将对象转化为适于人阅读的形式。Python maketrans() 方法用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示
转换的目标。
注:两个字符串的长度需相同,为一一对应的关系。
maketrans()方法语法:str.maketrans(intab, outtab)
返回值:返回字符串转换后生成的新字符串。str.maketrans()方法接受一个或两个参数, 返回一个字典(字典的 key 和 value 均用unicode编码)
1.接受两个参数:str.maketrans(str1, str2)
str1, str2均为字符串, 将 str1 和 str2 的元素按次序关系构造成字典, 字典的 key 和 value 均用unicode编码.
intable = "aeiou"
outtable = "12345"
trantab = str.maketrans(intable, outtable)
返回trantab: {97: 49, 101: 50, 105: 51, 111: 52, 117: 53}
2.接受一个参数:str.maketrans(dict1)
dict1 为一个字典, 返回一个字典(字典的 key 和 value 均用unicode编码).
parentheses_table = str.maketrans({"(": None, ")": None})
parentheses_table: {40: None, 41: None}Python translate() 方法根据 maketrans() 方法给出的字符映射转换表转换字符串里的字符。
返回根据 maketrans() 方法给出的字符映射转换表转换后的字符串。
"""


flag{Special_Base64_By_Lich}

BugkuCTF-Reverse题特殊的Base64相关推荐

  1. BugkuCTF-Crypto题一段Base64

    解此题需要下载Converter工具 先Base64解码 再Unescape一下 再16进制ASCII解码一下 再Unescape一下 复制括号里面的参数,再10进制ASCII解码一下 再Html解码 ...

  2. BugkuCTF刷题 pwn

    唉,觉得自己TCL,栈溢出知识点差不多都会了,可是题目做不出来啊啊啊啊!缺少锻炼吧,这两天把BugkuCTF上面的pwn题做一下吧... pwn1 只给了连接 第一次,才50分,想来不会太难,连上去 ...

  3. 20220207-CTF-MISC-第11题--- base64隐写--附带脚本

    攻防世界- MISC新手区–第11题–base64隐写 下载之后解压,是stego.txt 打开stego.txt 显然是base64编码之后的结果,base64解码,我还百度翻译了一下,也没什么发现 ...

  4. BugkuCTF Writeup——Web

    文章目录 web2 计算器 web基础$_GET web基础$_POST *矛盾 web3 域名解析 你必须让他停下 *本地包含 *变量1 web5 头等舱 网站被黑 *管理员系统 web4 flag ...

  5. 攻防世界杂项(misc)--新手练习区(详解十二道题完结,附件做题过程中使用到的各种工具和网站)

    攻防世界杂项(misc)–新手练习区(详解) 第一题:this_is_flag 题目描述:Most flags are in the form flag{xxx}, for example:flag{ ...

  6. Misc 第七篇——base64stego(伪加密,base64隐写)

    题目描述:菜狗经过几天的学习,终于发现了如来十三掌最后一步的精髓 附件给了一个压缩包,伪加密,使用360解压缩成功解压. 解压后是一个文本文件,如下图,使用base64加密的一堆字符串, 单纯使用ba ...

  7. 2.3 (reverse)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一. reverse练习题 1.1 Base64.exe 一. reverse练习题 1.1 Base64.exe 查壳,6 ...

  8. 攻防世界XCTF-MISC入门12题解题报告

    MISC属于CTF中的脑洞题,简直就是信息安全界的脑筋急转弯.你说它渣,它也有亮点,不好评说.这块最亮眼的入门题就属隐写术,出题人骚的狠.但是我感觉未来其中一个重点,就是大数据安全,从海量流量中捕获恶 ...

  9. Day 1 BUUCTF——特殊的 BASE64 1

    选择BUUCTF平台,因为题目丰富.难度低,适合入门. 首先,需要注册一个账号,然后就可以答题了. 第一题 特殊的 BASE64 1 0x1 下载题目附件 0x2 用Exeinfo PE 查壳 发现未 ...

最新文章

  1. 谈谈我对Manacher算法的理解
  2. 查询数据库中的表结构信息
  3. Web前端开发笔记——第三章 CSS语言 第七节 圆角边框、阴影
  4. 比较好的一些 ConcurrentHashMap讲解博客
  5. 服务器型号惠普RX3600,384854-B21 389344-001 146G SAS 15K 3.5寸HP服务器硬盘批发
  6. php html5 案例,35个非常好的HTML5+CSS3实例
  7. qt中如何刷新一下屏幕_感情维护:如何在恋爱关系中分开一下,然后更坚强地回来...
  8. 浅析MyBatis执行器原理
  9. 谷歌浏览器无法登陆百度贴吧
  10. 微信公众号推送模板消息(一):申请微信公众帐号测试号
  11. 抖音算法推荐机制详解(科普向)
  12. 苹果鼠标右键怎么按_iPadOS 鼠标支持详解
  13. 宏观调控利于粮食安全,调控与市场关系需理顺
  14. html用if函数,if函数怎么用的实例
  15. RoboCup GameController安装方法
  16. 码Ubuntu常用命令持续更新
  17. 华为入局商用市场:趋势使然,挑战颇多
  18. STM32F767多通道ADC采集+DMA传输
  19. Pippo已经不能只用超级来形容了
  20. SQL直接计算年龄问题

热门文章

  1. 开放、普惠、高性能-SLS时序存储助力打造企业级全方位监控方案
  2. 阿里云发布第七代云服务器ECS,整机算力提升160%
  3. 在DataWorks标准模式下统计个人账号使用资源情况
  4. 力展物流公司上云 低成本、实例资源使用效率提升
  5. 【从入门到放弃-Java】并发编程-NIO-Channel
  6. 阿里云人脸识别公测使用说明
  7. 什么是 RedCap?一文详解!
  8. K8S精华问答 | 如何监控部署在Docker容器上的应用程序?
  9. 趣挨踢 | 30 个让程序员崩溃的瞬间,笑死我了!
  10. 云漫圈 | 寻找无序数组的第k大元素