首页 > 其他分享 >攻防世界-baigeiRSA2

攻防世界-baigeiRSA2

时间:2024-12-06 20:10:56浏览次数:3  
标签:攻防 phi baigeiRSA2 世界 RSA 解密 素数 加密算法 ps

⭕ 考察内容

1、非标准RSA加密算法
2、逆元求解
3、因式分解(yafu)

一、题目

给出一串代码,大概看一眼是类似RSA的加密算法,但是其n的选取并非2个素数的乘积,而是5个素数的乘积,所以并不是标准的RSA加密。

再看一眼文件,发现给出了n和e

二、解题

1、因数分解

由于n仅有96位,所以尝试使用yafu进行因式分解

得到了5个素数

2、仔细阅读代码

顺便学习一下语法,发现加密算法是类似RSA的非标准加密算法

while True:
    ##这是定义n为一个数组并且使用循环重复调用getPrime()来生成5个元素
    ps = [number.getPrime(size) for _ in range(n)]
    ##使用set()把列表转化为集合来进行去重,也就是保证列表中没有相同的素数
    if len(set(ps)) == n:
        break
##这是一段reduce()和lambda表达式联用的代码,功能在于实现求取ps中所有元素的乘积并赋值给n
n = reduce(lambda x, y: x*y, ps)
  • reduce()函数
  • lambda表达式联用

参考链接

3、编写解密脚本

查了一下,解密算法与RSA解密类似,只是phi要变为多个(素数-1)的乘积,再利用e和phi求解逆元d即可,最后解密即可

三、脚本代码与答案

from Crypto.Util.number import long_to_bytes,bytes_to_long,inverse

c = 144009221781172353636339988896910912047726260759108847257566019412382083853598735817869933202168
n = 175797137276517400024170861198192089021253920489351812147043687817076482376379806063372376015921
e = 65537
p1 = 9401433281508038261
p2 = 11855687732085186571
p3 = 13716847112310466417
p4 = 11215197893925590897
p5 = 10252499084912054759

phi = (p1-1)*(p2-1)*(p3-1)*(p4-1)*(p5-1)
d = inverse(e, phi)
m = pow(c, d, n)

print(long_to_bytes(m))

HSCTF{@Tv0_br3ad5_c1ip_cHe3se_!@}

标签:攻防,phi,baigeiRSA2,世界,RSA,解密,素数,加密算法,ps
From: https://www.cnblogs.com/wyuu101/p/18591375

相关文章

  • 20222419 2021-2022-2 《网络与系统攻防技术》实验八实验报告
    1.实验内容(1)Web前端HTML能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。(2)Web前端javascipt理解JavaScript的基本功能,理解DOM。在(1)的基础上,编写JavaScript验证用户名、密码的规则。在用户点击登陆按钮后回显“欢迎+输入的用户名”......
  • 20222418 2024-2025-1 《网络与系统攻防技术》实验五实验报告
    1.实验内容(1)从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取如下信息:DNS注册人及联系方式该域名对应IP地址IP地址注册人及联系方式IP地址所在国家、城市和具体地理位置PS:使用whois、dig、nslookup、traceroute、以及各类在线和离线工具进行搜集信......
  • 20222411 2024-2025-2 《网络与系统攻防技术》实验七实验报告
    1.实验内容1.1实践内容(1)简单应用SET工具建立冒名网站(2)ettercapDNSspoof(3)结合应用两种技术,用DNSspoof引导特定访问到冒名网站。1.2本周学习内容(1)ARP欺骗(ARPSpoofing)发送伪造ARP消息,对特定IP所对应的MAC地址进行假冒欺骗,从而达到恶意目的(2)ARP欺骗技术的应用场景利用......
  • 20222323 2024-2025-1 《网络与系统攻防技术》实验八实验报告
    1.实验内容(1)Web前端HTML能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。(2)Web前端javascipt在(1)的基础上,编写JavaScript验证用户名、密码的规则。在用户点击登陆按钮后回显“欢迎+输入的用户名”尝试注入攻击:利用回显用户名注入HTML及......
  • 20222321 2024-2025-1 《网络与系统攻防技术》实验七实验报告
    1.实验内容本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有(1)简单应用SET工具建立冒名网站(2)ettercapDNSspoof(3)结合应用两种技术,用DNSspoof引导特定访问到冒名网站。2.实验过程(1)简单应用SET工具建立冒名网站攻击机IP:192.168.58.160......
  • 20222416 2024-2025-1 《网络与系统攻防技术》实验七实验报告
    1.实验内容1.1本周学习内容SocialEngineerToolkit(SET)是一个开源的社会工程学攻击工具包,旨在模拟和执行多种社会工程学攻击,例如钓鱼、恶意软件传播和其他形式的社会工程学攻击。SET由DavidKennedy(也被称为"ReL1K")开发,主要用于测试网络安全防御的有效性,并提供有关防御漏洞的......
  • 20222417 2024-2025-1 《网络与系统攻防技术》实验八实验报告
    1.实验内容1.1本周学习内容回顾本周学习了关于Web安全基础/前后端的知识,同时还学习了SQL注入攻击的原理以及XSS脚本攻击。1.2实验要求(1)Web前端HTML能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。(2)Web前端javascipt理解JavaScri......
  • 20222302 2024-2025-1 《网络与系统攻防技术》实验七实验报告
    1.实验内容本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法。具体实践有(1)简单应用SET工具建立冒名网站(2)ettercapDNSspoof(3)结合应用两种技术,用DNSspoof引导特定访问到冒名网站。2.实验过程2.1简单应用SET工具建立冒名网站2.1.1开启并配置Apach......
  • 20222320 2024-2025-1 《网络与系统攻防技术》实验八实验报告
    目录目录目录1.实验目标2.实验内容3.实验过程3.1Web前端HTML3.2Web前端javascipt3.3Web后端MySQL基础3.4Web后端PHP3.5最简单的SQL注入,XSS攻击测试3.6安装WebGoat平台,并完成SQL注入、XSS、CSRF攻击4.问题及解决方案5.学习感悟、思考等参考资料1.实验目标(1)Web前端HTML......
  • 2024.12.5——攻防世界xff_referer
    知识点:XFFreferer一、知识点详情1.XFF(1)介绍X-Forwarded-For(简称XFF)是一个HTTP请求头部字段,它用于表示HTTP请求的客户端IP地址,尤其是当请求通过一个中介代理或负载均衡器时。该字段的值通常是一个逗号分隔的IP地址列表,其中第一个IP地址是最初连接到中介代理或......