【BJDCTF 2nd—MISC/Crypto】做题+复现记录
Crypto
老文盲了
在线汉字转拼音
bì jí dì dà kuò hào zhè jiù shì fǔ lài gē zhí jiē jiāo lè bā dà kuò hào 大 括 号
好好读一下
BJD{这就是flag直接提交吧}
但这是不对,群里又放提示是汉字,所以应该就是对照汉字
BJD{淛匶襫黼瀬鎶軄鶛驕鳓哵}
cat_flag
一张动态图,没有隐藏什么东西,那就从图片入手,发现只有两种模式,猜测是二进制(0/1)
鸡腿比较像1就定义为1
灵能精通
猪圈密码的一种变种,圣堂武士密码
对应即可得出flag
燕言燕语
base16解出
中间有一个空格,所以大概率不是凯撒、栅栏解密,题目和描述反复强调燕子,更类似一种密钥,而古典密码中能用到密钥的就是维吉尼亚密码了
出题师傅比较暴躁,web中也有ㄟ( ▔, ▔ )ㄏ
Y1nglish
这么长还这么乱,一看就是替换密码,直接扔在线网站
得出
BJD{pyth0n_Brut3_f0rc3_oR_quipquip_AI_Cr4cy}
你以为这就结束了,这答案是个错的,还得看上面的话(我没看出来)
BJD{pyth0n_Brut3_f0rc3_oR_quipquip_AI_Cr4ck}
看了WP可是因为 worying at a bany,应该是 working at a bank,还有 networy,应该是 network,y 要改成 k;而且应该和暴力破解是同类型的词,所以改成 Cr4ck
rsa0
nc 连接一下
最基础的RSA,直接上脚本:
十六进制转字符串即可
这里需要注意用//
,用/
一直没做出来
rsa1
这道题每次请求,发现只有e和c发现变化了,而其他两个都没变化,符号共模攻击,直接写脚本
#1
# e=10700399
w=137133932958603728728725046196542358351080718720950350277731136301898598905576262779114997353930285515311235031852033461363934174706999854663030546861803323925014069053926660622367340752314741449235645602975093995253028757636666273136355212610283249478658435857552575383020339034146095349657442500268855265082
s=-546313749843970898211165949484055741175962166901821704849049416429468381082331944581431325393436422009230224451257415555459795196211509396710107942898892
# c=9005844280611611003939802049248579911507353214742656527224477530776080556258918168836196959807051586462156082361542268721765780606661970644646222551194594883523502619075930398858949901579742615209365440393663420462609712141011529660399891410426998226993650570530288042522812316244333700422572340250942094026
# #2
# e=14686843
# p^2+q^2=137133932958603728728725046196542358351080718720950350277731136301898598905576262779114997353930285515311235031852033461363934174706999854663030546861803323925014069053926660622367340752314741449235645602975093995253028757636666273136355212610283249478658435857552575383020339034146095349657442500268855265082
# p-q=-546313749843970898211165949484055741175962166901821704849049416429468381082331944581431325393436422009230224451257415555459795196211509396710107942898892
# c=54841467486794676047290947419206161259893783413570632404084809670615498519182251175653291935638965800885812317147878618012877072340498084810459076090702932658910870170684683938928493809866855131146783605433117458932155689052988950652067081715233961084868966794147539218384384956973160961955638703704302088519# a^2+b^2 =(a-b)^2 +2ab
# p^2+q^2 =(p-q)^2+2pq
#w = p^2+q^2
#s = p-q
n = (w-pow(s,2))//2from libnum import n2s,s2n
from gmpy2 import invert
from Crypto.Util import number
def egcd(a, b):if a == 0:return (b, 0, 1)else:g, y, x = egcd(b % a, a)return (g, x - (b // a) * y, y)def main():w=137133932958603728728725046196542358351080718720950350277731136301898598905576262779114997353930285515311235031852033461363934174706999854663030546861803323925014069053926660622367340752314741449235645602975093995253028757636666273136355212610283249478658435857552575383020339034146095349657442500268855265082s=-546313749843970898211165949484055741175962166901821704849049416429468381082331944581431325393436422009230224451257415555459795196211509396710107942898892n = (w-pow(s,2))//2c1 = 9005844280611611003939802049248579911507353214742656527224477530776080556258918168836196959807051586462156082361542268721765780606661970644646222551194594883523502619075930398858949901579742615209365440393663420462609712141011529660399891410426998226993650570530288042522812316244333700422572340250942094026c2 = 54841467486794676047290947419206161259893783413570632404084809670615498519182251175653291935638965800885812317147878618012877072340498084810459076090702932658910870170684683938928493809866855131146783605433117458932155689052988950652067081715233961084868966794147539218384384956973160961955638703704302088519e1 = 10700399e2 = 14686843s = egcd(e1, e2)s1 = s[1]s2 = s[2]if s1<0:s1 = - s1c1 = invert(c1, n)elif s2<0:s2 = - s2c2 = invert(c2, n)m = pow(c1,s1,n)*pow(c2,s2,n) % nprint (hex(m))print(number.long_to_bytes(m))if __name__ == '__main__':main()
注意使用除号使用//
,否则会报错
MISC
Real_EasyBaBa
得出一个图片,无法binwalk直接拖出来东西,就手动去改下
之前是FF FF,改成zip的开头 50 4B 03 04
然后将这一段保存成zip文件
得一个二维码,支付宝扫一下发现:
od -vtx1 ./draw.png | head -56 | tail -28
没有其他图片了,就还拿这张图片命名为draw.png,试试这段命令
这里一度不知道思路了,完全不知道该怎么弄了,看了WP才知道这里把00替换成两个空格就行了
EasyBaBa
一个图片这么大,里面肯定有东西
binwalk无法提取,用另一个工具foremost或者直接将图片后缀改成zip都可以
得到一张图片
发现是AVI格式,更改后缀名
钉钉。。。
视频会弹出一些图片,直接Pr查看,将四张图片截取出来,用工具扫一下即可
1 agin_l
2 ove_Y
3 BJD{im
4 1ng}
组合一下就可以了
圣火昭昭
查看图片属性发现
在线解新佛曰
使用key的隐写,有F5、steghide、outguess等
这里题目提示了开局一张图,flag全靠猜,猜测可能是outguess隐写
outguess -k "gemlove" -r 1.jpg hidden.txt
得到隐藏信息,打开即可获得flag
TARGZ
各种查看,到最后试了一下压缩包的名字即是密码,一层层解得累死,直接写脚本即可
在linux下允许后,直接运行
rm *.tar.gz
删除多余文件,得到flag
看了官方的WP,可以借鉴下师傅的师傅
#www.gem-love.com
#decompress.py
import os
import filetype
import timewhile 1:aa = os.popen('ls')filename = aa.read().replace('decompress.py','').replace('\n', '')a = filename.replace('.tar.gz', '')kind = filetype.guess(filename)if kind.extension is 'zip':os.system("mv {} {}.zip|unzip -P {} {}.zip".format(filename, a, a, a))os.system("rm *.zip")time.sleep(0.1)else:print('解压完成')break
如果又哪些地方不明白的,百度一下就可以了,这里不做过多解释了
Python中的zipfile模块使用详解
小姐姐
这个题一开始没发现什么线索,后来才发现flag就隐藏在16进制当中,直接010 editor打开查询
BJD
即可得出flag
最简单的misc
一开始是伪加密,直接7Z打开就行
差PNG头,补上
89 50 4E 47 0D 0A 1A 0A 是PNG头部署名域,表示这是一个PNG图片
修改好之后即可
A_Beautiful_Picture
010 editor打开改宽高即可
Imagin - 开场曲
这么多提示,师傅真好
这到题做的最开心,百度查到直接玩了20分钟,真的好玩,哈哈哈哈,不过真的是我脑洞太小了,一开始以为是视频隐写之类的,网上找各种工具,看了WP才知道是对应的键位即可。。。。
根据键位-音节对应关系解出答案
BJD{MIKUTAP3313313}
学到了
完结撒花!!!
【BJDCTF 2nd—MISC/Crypto】做题+复现记录相关推荐
- 【BJDCTF 2nd—Web】做题+复现记录
fake google 随便输入然后查看源代码发现 ssti,应该是服务器模板注入,查了一个payload直接就可以查到flag {{().__class__.__bases__[0].__subcl ...
- 【MRCTF—Web】做题+复现记录
套娃 --伪协议.加密.Bypass 查看源码发现这一串代码, substr_count() 函数计算子串在字符串中出现的次数 $_SERVER['QUERY_STRING'] 例如: http:// ...
- BUUCTF做题Upload-Labs记录pass-11~pass-20
BUUCTF做题Upload-Labs记录pass-11~pass-20 -- 上一篇:BUUCTF做题Upload-Labs记录pass-01~pass-10 -- pass-11 白名单上传:'j ...
- [buuctf]crypto刷题学习记录(1-22)
目录 一.MD5 二.Url编码 三.看我回旋踢 四.一眼就解密 五.摩丝 六.[BJDCTF 2nd]签到-y1ng 七.[BJDCTF 2nd]password 八.变异凯撒 九.Quoted-p ...
- 【2020数模F奖】 美赛C题参赛感受及做题思路记录【编程手的角度,含大量代码及参考链接】
目录 写在前面的话 题目分析 [数据清洗] [NLTK] [第一题] [第2题e问] [词云]---wordcloud包 [TF-IDF算法] [第2题a.b.c问]需要先对评论数值化 [Textbl ...
- 省赛前的做题计划记录
NOEXCUSES\large NO \ \ \ \ EXCUSESNO EXCUSES plan 复习&学习 计算几何 半平面交 凸包 动态凸包 旋转卡壳 欧几里得距离转换 DP 斜率 ...
- NOI前的做题计划记录
plan 模拟赛题解 要学&&复习的知识点 李超树 生成函数基础应用 LCT进阶 线段树进阶 四边形不等式 SAM进阶运用 border 分块进阶 树套树进阶 模拟费用流 支配树 wq ...
- CTF之crypto做题总结
前言 这几天做了几道十分简单的签到题和密码题,今天来总结一下. 一.签到 先来说两道签到题.看到下面这道签到题,人家直接把flag给我们了,我们直接提交这个flag就可以了. 接下来这道签到题也是同样 ...
- BUUCTF之“cmcc_pwnme2”做题简单记录
这题还好,值得注意的是IDA里头函数栏里面的函数名字需要多注意其意思,说不定就 是提示的信息. from pwn import *p = remote('node4.buuoj.cn',25488) ...
最新文章
- 同事问我,SQL 语句明明命中了索引,为什么执行很慢?
- Chrome好用的插件
- 无法使用JDK 8卸载JavaFX SceneBuilder 1.0
- python 输入数字变成密码_如何在python中检查数字的“密码”
- 前端异步编程之Promise和async的用法
- 如何用短信完成XSS?
- Java项目架构演进和SpringCloud总结
- 【Flink】FLink 如果watermark水印时间超出今天会是什么问题呢
- Tensorflow卷积神经网络识别MINST手写数字
- 20190925:(经典算法系列)河内之塔
- java程序实验总结_Java实验报告一及作业总结二
- vc2005运行库彻底卸载_Visual C ++ AIO(vc运行库安装卸载工具)2019.05.21 最新版 下载 - 51下载网...
- linux 无线投屏windows,无线投屏器投屏与大屏幕系统无关
- PropertyUtils.copyProperties 属性值复制失败
- 中小型企业网络构建(思科)
- 单片机交通灯c语言实验报告,模拟交通灯单片机实验报告.doc
- 百旺信云计算机中心,百旺信云数据中心机房介绍
- STM32F407单片机移植ADS1115驱动程序
- Java_定义一个圆类,提供输出面积和周长的方法,定义一个测试类使用
- stm32 U盘升级 bootloader程序 基于stm32f407 将升级包下载到U盘中,插入到设备中,完成对主程序的升级
热门文章
- 五十四、快速上手uniapp
- 十九、抓包利器Charles的使用
- 四十四、Python中的statsmodels模块
- 多篇顶会论文看DRO (Distributionally Robust Optimization) 最新进展
- biu~ 你的智能语音客服已免费一键生成!
- 直播 | 清华大学王晨阳:轻量级Top-K推荐框架及相关论文介绍
- ACL 2020 | 基于多级排序学习的层次化实体标注
- CVPR 2019 | 旷视研究院提出极轻量级年龄估计模型C3AE
- ECCV 2018论文解读 | DeepVS:基于深度学习的视频显著性方法
- 基于PCA方法的ORL人脸识别及Python代码实现