>> ")
shares = []
for i in range(0x40):
p.sendline(str(i))
data = p.recvuntil(">>> ").replace(" ", "").replace("\n", "").replace(">>>", "")
shares.append((bytes_to_long((str(i)).encode()), int(data)))
print(long_to_bytes(recover_secret(shares)))Really Smart Acronym
给了加密的源码,及 nc 域名 端口 ,这题是LSB Oracle Attack
从源码可以看到是 RSA,并且已知密文,输入明文对应的密文,输入密文对应的二进制明文最后一位
print("Flag:", pow(bytes_to_long(flag), key.e, key.n))print(pow(m, key.e, key.n))
print(bin(pow(c, key.d, key.n))[-1])
这里使用的是 pycrypto 库,一般它生成的 e 为 65537
在 python 中有一个特性,-1 % x = x-1 这里输入 -1 就可以获得 n 的值
剩下的就是 RSA 中的 LSB Oracle Attack 了。
用户知道 RSA 中的公钥 N,e 以及密文 c 并且可以任意构造密文 c1,返回它解密后 m1 的末尾某些位的性质。可以通过多次构造 c1 来把明文 m 缩小在某一个范围内。
因为 c = (m^e) mod N 构造 c1 = (2^e)*c mod N = (2m)^e mod N 对应的 c1 解密之后为 m1 = 2m mod N
数论中有个定理,c = 偶数 a mod 奇数 b,若 c 为奇数,则 a>b,若 c 为偶数,则 ab,结合上面的内容就可以缩小 m 的范围了
from Crypto.Util.number import *from Crypto.PublicKey import RSA
from pwn import *
p = remote("challenges1.hexionteam.com", 5000)
p.recvuntil("Flag: ")
c = int(p.recvuntil("\nO", drop=True))
e = 0x10001
p.recvuntil("=> ", drop=True)
p.sendline("-1")
n = int(p.recvuntil("Alot of unhelpful decrypts:", drop=True)) + 1
p.recvuntil("> ")
_max = n
_min = 0
i = 1
try:
while i = 1024:
p.sendline(str(c * pow(2 ** i, e, n)))
a = p.recvuntil("\n> ", drop=True)
if b"0" == a:
# even
_max = (_max + _min) // 2
else:
# odd
_min = (_max + _min) // 2
i += 1
except:
pass
print(long_to_bytes(_max))
# misc
Mirage
f12 可以发现一个 url https://mirage.hexionteam.com/assets/hexfont.ttf 这是一个字体文件
看到字体文件就想到了 FontForge
下载 ttf 后使用 FontForge 可以找到对应的编码表
Hmmm
附件是一个二进制文件,file 命令查看一下发现是 ELF
执行了一下看看
然后试着 cat 一下
over,查了一下其他的 wp
查看 ELF 文件的所有信息 readelf -a ./hmmm 发现里面有个段 .note.f14g
显示 note 段信息 readelf -n ./hmmm 发现 .note.f14g 这个段是被破坏的
考虑 hexdump objdump -j .note.f14g -s hmmm
可以读到 flag,直接写脚本
from pwn import ELF
section = ELF('./hmmm').get_section_by_name('.note.f14g').data()
print(''.join([chr(_) for _ in section if _ != 0]))
Treturn v}{x+=comp(strtonum("0x"$2));y+=comp(strtonum("0x"$3))}$1=="01"{print x,y}' 2.txt > 3.txt
最后用 Gnuplot 画出来,得到一个镜像图片,在 3D 画图 里面就可以翻转了
CTF实验室
CTF从入门到实践-CTF一站式学习平台-合天网安实验室
声明:笔者初衷用于分享与普及网络知识,若读者因此作出任何危害网络安全行为后果自负,与合天智汇及原作者无关!
渗透测试训练营
掌握渗透测试岗位9大核心知识体系,提升自身岗位竞争力
40+实战训练及考核,提升动手操作能力
胜任渗透测试工程师岗位功能能力
还木有评论哦,快来抢沙发吧~