Phrack--CTF 整理
Base64?
与其说是Base64其实是Base32 + Hex解码
1 |
|
关于USS Lab
说白了就是只是这个实验室的名字
veryeasy
使用基本命令获取flag
好吧虽然说基本命令 strings我已经在之前就知道了。
可是在加上一个grep呢。
1 | >>>strings file | grep "PCTF" |
段子
程序猿的圈子里有个非常著名的段子:手持两把锟斤拷,口中疾呼烫烫烫。
请提交其中“锟斤拷”的十六进制编码。(大写
这个题目我用了两种解法,也算是又找了一次知识
1.我去百度了~~~
2.又一次认识到了python的使用方法。
1 | >>>'PCTF{%s}' % '锟斤拷'.encode('hex').upper() |
手贱
美丽的实验室
这题有两种解法
1.stegsolve打开,第二个frame里就是答案
2.0x7011处有第二张图,binwalk没扫出来,搜ffd9可以找到。winhex挖出来
我最开始使用的是第二种做法 今天第一次发现有第一种方法可以做。
veryeasyRSA
多亏了这题 因为是第一次真正接触RSA 这算我的一个入门题了吧。
已知RSA公钥生成参数:
p = 3487583947589437589237958723892346254777
q = 8767867843568934765983476584376578389
e = 65537
求d =
请提交PCTF{d}
有 p,q,d 那么求e那简单多了。
0x01 首先给我自己的做法。我比较傻用的暴力的方法
````
p = int(raw_input(“Enter a p: “))
q = int(raw_input(“Enter a q: “))
e = int(raw_input(“Enter a e: “))
t = (p-1)*(q-1)
i=0
while True :
if (1-ti)%e == 0:
break
i-=1
print i
print ‘ok:’ + ‘%d’ % ((1-ti)/e)
1 | **这个代码我优化过了 |
import gmpy2
p = 3487583947589437589237958723892346254777
q = 8767867843568934765983476584376578389
e = 65537
gmpy2.invert(e,(p-1)*(q-1))
mpz(19178568796155560423675975774142829153827883709027717723363077606260717434369L)
1 | ## 神秘文件 |
公倍数
请计算1000000000以内3或5的倍数之和。
如:10以为这样的数有3,5,6,9,和是23
请提交PCTF{你的答案}
编程题
1 | 突然懒得贴了 |
Easy Crackme
很明显的一题逆向题。