首页
社区
课程
招聘
[原创] CTF2017 第10题 海风月影cm 破解过程
发表于: 2017-6-20 21:21 6720

[原创] CTF2017 第10题 海风月影cm 破解过程

2017-6-20 21:21
6720

序言:

        本题对于初学者的度在于准确识别算法流程,对RSA算法的深入理解和推理要求。


一、查壳,pe格式,64位无壳,初步运行看界面命令提示符,了解作品

二、分析算法流程

//动态跟一下流程:

//整理算法,这是典型的RSA算法,作者给出D、N,要求e为素数,限制了e的长度,并且要求q>=p,防止多解,要求攻击者找到e和p


三、算法破解

㈠、尝试分解N,短时间内搞不定,换种思路
㈡、先找到e——筛选6位质数e,首先根据k被整除、e与M的互质,筛选出可能的公钥e,再用D解密RSA,用e加密RSA,进一步找到准确e,极大提高速度

㈢、根据D的条件找到M

㈣、已知p、q为素数,q >= p,已知n,上文也已经求出 M

㈤、整理答案


四、总结



[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 1
支持
分享
最新回复 (6)
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
2017-6-29 01:19
0
雪    币: 0
活跃值: (250)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
2017-6-29 07:27
0
雪    币: 116
活跃值: (210)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
高!
2017-10-10 15:04
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
2、(e  *  D  -  1)  /  N  =  5B03DB-->M略比N小,所以k需要从(5B03DB  +  1)开始穷举,满足被  e*D-1  整除的最小K即可,秒出K:5B03DC
这一句没看懂,K值的最小值是根据什么原理得出的?
2017-10-20 23:32
0
雪    币: 1355
活跃值: (339)
能力值: ( LV13,RANK:920 )
在线值:
发帖
回帖
粉丝
6



wx_心隐草

2、(e * D - 1) / N = 5B03DB-->M略比N小,所以k需要从(5B03DB + 1)开始穷举,满足被 e*D-1 整除的最小K即可,秒出K:5B03DC
这一句没看懂,K ...
M  =  (p-1)*(q-1)
N  =  p*q
两者相差很小,推理(e*D-1)/N与(e*D-1)/M结果极为接近,由此可以推测相邻最小满足公式的就是k值。你也可以对表达式展开求极限看看。
2017-10-20 23:51
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢!
2017-11-2 13:01
0
游客
登录 | 注册 方可回帖
返回
//