2023羊城杯RE部分】的更多相关文章

bigrsa 题目: from Crypto.Util.number import * from flag import * n1 = 10383529640908175186077053551474658681539589842726033432568031364836913266105784068082329551223694895337089556841972133117083455781254146830929881949726774689281458380642302716738282…
肝了好久,没爆破出来,就很难受,就差这题没写了,其他三题感觉挺简单的,这题其实也不是很难,我感觉是在考算法. 在输入之前有个smc的函数,先动调,attach上去,ida打开那个关键函数. 代码逻辑还是很清晰的,坑的地方就是在最后一个异或那里,题目已经给出了最后一个字符是0xC4了,这样我以为可以倒着求,发现写完算法,缺了十几位, 我反复的验证,发现有多解,但是当时凌晨2点多了,我脑子也坏了,没想到是深搜,当时在ipad上演算了一下,发现有多解,相当于分叉,今天看了表哥的,wp 才想起来,就是一…
比赛感受 题目质量挺不错的,不知道题目会不会上buu有机会复现一下,躺了个三等奖,发下队伍的wp Team BinX from GZHU web Checkin_Go 源码下载下来发现是go语言写的 首先需要登录,用户名密码任意填,用户名不能是admin,爆破md5,这个简单 之后审代码,存在个溢出的问题,但是只能admin能add操作,应该思路就是获得admin身份然后溢出 admin伪造:因为math/rand的问题,是伪随机数,这样本地写个gin的web服务,同样的方式生成session,…
[网鼎杯2020]you_raise_me_up 目录 [网鼎杯2020]you_raise_me_up 题目 分析 解法一:sage discrete_log()使用示例 补充 解法二:python discrete_log()使用示例 总结 题目 #!/usr/bin/env python # -*- coding: utf-8 -*- from Crypto.Util.number import * import random n = 2 ** 512 m = random.randint…
前言 之前看到星盟Q群里面的消息,Freedom师傅在B站直播关于虚拟pwn入门的公开课,然后就去听了一波,感觉受益匪浅.之前一直以为虚拟pwn是超级复杂的东西,今年打比赛也遇到了好几次,一直无从下手.所以借着公开课学到的内容,复现了去年国赛虚拟pwn的那道题.这里写一篇博客记录下来,当作自己博客园的第一篇技术博文吧!主要是为了水周五的分享会 漏洞分析 就像Freedom师傅所说的,虚拟pwn的难点不是在于漏洞的利用,而是在于漏洞的分析,在于逆向分析能力.首先说明一点,这里我是直接在网上搜到了一…
DP泄露 选了三道与RSA的dp泄露有关的题,dp泄露算是比较有辨识度的题型. 目录 DP泄露 原理 ctfshow funnyrsa3 分析 解答 BUUCTF RSA2 分析 解答 [羊城杯 2020]Power 分析 解答 原理 题目会给出n,c,e,dp,首先这个dp并不是单纯的d*p: \[dp≡dmod(p-1) \] 根据这个式子继续推导: \[dp*e≡d*emod(p-1) \] \[d*e=k(p-1)+dp*e \] 又根据rsa的定义,我们可以得到d*e=1modφ(n)…
维纳攻击 wiener attack 目录 维纳攻击 wiener attack 攻击条件 使用原理 十三届全国大学生网络安全竞赛 bd 分析 解答 [羊城杯 2020]rrrrrsa (wiener attack) 分析 解答 攻击条件 e过大或过小. 在e过大或过小的情况下,可使用算法从e中快速推断出d的值. 模数,其中 若 时,给定公钥,且 其中 那么可以有效地得到私钥 这里与我们常见的RSA加密不同的是使用了而非,两者差了个整数,其实是差不多的. 使用原理 wiener attack 是…
Re baby_xor 加密逻辑如上,密文动态调试,然后 Shift+E 导出密文[这样避免了手动获取] # encoding=utf-8 enc=[ 0x12, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x3A,…
日期求星期问题(java)-蓝桥杯 1:基姆拉尔森计算公式(计算星期) 公式: int week = (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7; 此处y,m,d指代年月日:week代表星期:week= 0---6  对应:星期一到星期日 也可以 int week = (d+1+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7; 则week代表星期:week= 0---6  对应:星期日到星期六 注意注意注意:使用之前1.2月要看作上一年的13…
本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 大家好,我是小彭. 前天刚举办 2023 年力扣杯个人 SOLO 赛,昨天周赛就出了一场 Easy - Easy - Medium - Medium 的水场,不得不说 LeetCode 是懂礼数的 . 接下来,请你跟着小彭的思路,一步步将问题做难,再将问题做简单. 往期回顾:LeetCode 单周赛 341 · 难度上来了,图论的问题好多啊! LeetCode 周赛 342 概览 Q1. 计算列车到站时间…