攻防世界-Crypto-新手练习区-Normal_RSA

Normal_RSA

题目来源: PCTF
题目描述: 你和小鱼走啊走走啊走,走到下一个题目一看你又一愣,怎么还是一个数学题啊 小鱼又一笑,hhhh数学在密码学里面很重要的!现在知道吃亏了吧!你哼一声不服气,我知道数学 很重要了!但是工具也很重要的,你看我拿工具把他解出来!你打开电脑折腾了一会还真的把答案 做了出来,小鱼有些吃惊,向你投过来一个赞叹的目光
攻防世界网址: https://adworld.xctf.org.cn/

------------------------------------------------------------进军CTF圈初体验------------------------------------------------------------

1.所给线索:

2.打开flag.enc:【乱码】
在这里插入图片描述

3.打开pubkey.pem:【得知存放的是公钥】
在这里插入图片描述

4.既然给出了公钥,首先需要找到私钥。
方法如下:
方法①:Kali Linux中使用openssl从pubkey.pem(公钥)中提取参数
参数中:
Exponent:代表e
Modulus:代表n

在这里插入图片描述

方法②:使用在线公钥解析工具(工具网址:http://ctf.ssleye.com/pub_asys.html)
在这里插入图片描述

e=65537
n=87924348264132406875276140514499937145050893665602592992418171647042491658461
5.对n使用在线质因数分解,可以得到p和q
在线质因数分解网址:http://factordb.com/
现在所知参数如下:
e=65537
p=275127860351348928173285174381581152299
q=319576316814478949870590164193048041239
6.用rsatool生成私钥文件:private.pem
kali中安装rsatool,并将flag.enc放入文件夹中
rsatool安装步骤:
git clone https://github.com/ius/rsatool.git//有网络的前提下,若无网络可在本机下载传到kali中
cd /tool/rsatool-master //进入目录(每个人的目录有差异)
python setup.py install

在这里插入图片描述

7.用private.pem解密flag.enc
在这里插入图片描述

此题参考链接:https://blog.csdn.net/hippotomons/article/details/102672851
此题所遇到的问题:
①ModuleNotFoundError: No module named ‘gmpy2’
没有名为‘gmpy2’的模块
解决方法:
kali安装gmpy2需要的依赖库 gmp mpfr mpc
apt-get install libgmp-dev libmpfr-dev libmpc-dev // gmp 库,mpfr 库,mpc 库安装
apt-get install python3-pip //pip安装
pip install gmpy2 //gmpy安装
参考链接:https://blog.csdn.net/weixin_45679095/article/details/108718702
②此时已安装成功,但是运行python3 rsatool.py -f PEM -o private.pem -p xxx -q xxx -e 65537 这条命令还是报错:
在这里插入图片描述

于是我将rsatool.py中的gmpy全部替换成了gmpy2
操作如下:
vim rsatool.py
按Esc shift+; 输入%s/gmpy/gmpy2/g(将全篇的gmpy都替换成gmpy2)
最后终于不报错了,此题历时2天,期间还报了一些其他的错误,不太记得了,印象最深刻的就是这两个错误。


有其他问题可以留言或者私聊,我跟你们一起解决~
有师傅提意见或者招徒也可扣我~当然,如果不介意我只是个CTF小新的话……


道阻且长,行则将至。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值