当前位置:首页 >CTF > 正文内容

GACTF_解题思路

CTF七星6个月前 (09-01)

赛后总结:

题目很好,就是不会做.仰望大佬ing.写完wp就好好学习.

战队缺少pwn,crypto.

python特别好用,全程都是python解题.


Minecraft_Redstone_Music

这道题是雪殇解出来的, 属实强.

雪殇:战队大佬这次GACTF的主力,拿下这道题的三血.下面是wp:


算了,直接去他网站看吧,就这样.

链接:原文地址

对了,记得回来啊...


v字仇杀那个题的misc部分:

image.png

这次比赛呢, 最不甘心的还是这个题.

怎么说呢, 可能有些队伍解出来二维码了,然后就和我一样不甘心了..

原题下载地址:

https://share.weiyun.com/N2oJkACx

首先应该都能拿到gif.以及gif弄出来的一个带密码的压缩包.(misc常规操作)

常规思路就是,gif帧分离.

嗯, 我分离了,分离了3584张,总共两个多G.

然后仔细看gif就会发现,有个黑点在动.盲猜这个点的每一帧,组成一个二维码.

然后就写个脚本,对每一张图片的像素相加,最后得到二维码.

我分离的文件命名是IMG00000.bmp,IMG00001.bmp这样的...

代码:

image.png

代码就,将就看吧,反正跑出来了个图:

image.png

然后,打开QQ,扫到这句话:

image.png

得到密码了, 然后解压那个带密码的文件:

image.png

至此,misc部分结束了.为哈?请把文件名倒过来看看.

这个文件的所有都是倒序过来的,需要还原文件,也算是misc的一部分

不过我已经放弃了,战队师傅还没学到armpwn(疯狂暗示柠檬师傅, mz1师傅,棂星师傅 )

可能也不是pwn, 不过无所谓了, 坐等其他师傅的wp就完事.


密码学噪音那个题(what_r_the_noise)

image.png

hhh,既然截屏了,就放出来吧,解法非预期,流氓解法,hhhh

这个题一出来就被秒了,看到噪音想到的是香浓定理.其实好像并不是.

他是差分隐私(Differential Privacy),为什么要贴英文?因为这个英文有点特殊,下面会用到...

具体是啥呢?就是对数据进行一定范围内的混淆,达到加密效果:

image.png


image.png

题目已经给出了epsilon(隐私保护预算)和sensitivity(敏感度)

emm...具体的直接百度这些关键词就好.

好了,说这么多没用的,我直接放我的解题过程了

看了下原理,既然是取邻近集,那直接取平均好了...

nc连上, 获取50+个2选项的数组

image.png

然后,现成的数组, 直接算一波这50+个数组的平均值,

然后平均值的int型转成对应的ASCII,得到一个类似flag的东西:

image.png

代码就不贴了,主要是写的太狼狈了

然后盲猜flag:

gactf{xou_know_much_bboux_}

想到上面那个英文单词了吗?对,没错,就是上面那个单词,放最后:

gactf{xou_know_much_bboux_differential_privacy}

然后,中文联想, xou很知道什么什么差分隐私.

再换一下数组内容,再求平均,就能猜到flag了:

you_know_much_about_differential_privacy

也是运气好,比完赛再用正常方式解一下...


密码学_square(没做完)

这个题,看代码挺简单,做起来头大,我还差最后一步...先看我的解题思路吧:

nc连上,要求md5验证,大概就是,

求一个五位的字符串 和给出的字符串拼接的 md5值的 前五位 等于后面给出的字符串

这个简单,写个爆破脚本:

image.png

菜鸡一枚,没开发经验,代码都是现学现写的,这种代码的最大优点就是,能看懂...

然后接着就是一个方程,要求出满足方程的x,y:

x**2 = (1**2+2**2+3**2+...+y**2)/y

这个也简单,化简方程为:

x**2 = (y+1)(2y+1)/6

得到符合的x,y = 1 , 1

输上去...还要接着算...

下载附件看看吧:

image.png

通过阅读代码,发现, 他需要求出100个这样的xy...

我直接原地无了...

可能是算方程的姿势不对,导致100个解就求出来4个,下面是我解方程的脚本:

image.png

脚本能用,不用试了,真要跑出来100个解,得等个几个月吧...

主要是这个求解的过程的小数判断不好做.

换种思路就能准确判断出是否为整数,大可不必先开根再判断.

这个先放放,如果解出来100个解,那么最终的脚本就是这样的:

image.png

代码现学的,大佬们轻点骂,开学了就好好学编程...

测试运行是成功的..就差解方程惹...

x = [1, 195, 37829, 7338631 ,1]

y = [1, 337, 65521, 12710881,1]

image.png


最后感谢大佬看完wp解题思路,现在贴上邀请函:

七星Team诚邀你的加入,让你在比赛的路上不再孤单.

QQ交流群/战队群:

image.png

qixingbit.com|QQ:320406741

相关文章

RsaCtfTool的安装与使用详解

RsaCtfTool的安装与使用详解

这个工具是做rsa的时候用的,下面介绍他的安装过程及使用方法写的时候遇到很多坑,这里一次性填好操作系统: kali. 因为方便,kali自带了m4.环境:python3, py2测试没成功...先创建...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。