hdctf专题

[HDCTF 2023]Normal_Rsa(e,phi不互素)

题目: from Crypto.Util.number import *m=bytes_to_long(b'xxxxxx')p=getPrime(256)q=getPrime(256)e=74n=p*qc=pow(m,e,n)print("p=",p)print("q=",q)print("c=",c)#p= 860535829173863434225671747640404

栈迁移([HDCTF 2023]KEEP ON)

栈迁移 [HDCTF 2023]KEEP ON | NSSCTF 题目给了一个格式化字符串的漏洞,和一个栈溢出漏洞,但是栈溢出的位置有限,只能溢出到返回值的位置,这样构造的ROP链不能完全写入到栈上,需要进行栈迁移: 确定栈迁移的目标位置:输入数组s的首地址,首先利用而格式化字符串泄漏bp寄存器指向的栈上的数据(是函数调用者即vuln的栈低指针),根据该值可以确定与s首地址的偏移x,从而

【PWN · 栈迁移|off-by-one|伪随机|爆破】[HDCTF 2023]Makewish

一道精巧、包含很多要点的题目 一、题目 二、思路浅析 通过ctypes酷通过伪随机数检测,没用srand指定随机种子时,默认srand(1)。 通过puts_name的off-by-one来泄露canary 进入vuln时,发现只能刚好填充到rbp前面,但是会将最后一个字符的下一个字节置为0 ——可以通过off-by-null来覆写main_rbp的低字节为0,而vuln