0xGame 2023

week1

signin

baby_php

先是md5弱比较绕过,两个的md5值都为0即可,然后传入的c要三个条件:

  • 不是数字(添加其他字符绕过)
  • 不等于1024(添加小数绕过)
  • 取整等于1024(整数部分等于1024即可)

然后就是文件包含,通过php伪协议读取flag。

hello_http

repo_leak

目录扫描,发现了.git泄露,用工具GitHack失败,利用 Git_Extract 拿到目录:

ping

首先将前端限制删除,然后通过提示找到/api.php?source

后面测试了一下,空格用${IFS}是可以的,不知道最开始做的时候为什么不行。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
" " -> %09 ${IFS}
";" -> %0a
常用管道符(windows):
“|”:直接执行后面的语句。如:ping 127.0.0.1|whoami

“||”:如果前面执行的语句出错泽执行后面的语句,前面的语句智能为假 如:ping 2 || whoami

“&”:如果前面的语句为假则直接执行后面的语句,前面的语句可真可假 如 ping 127.0.0.1&whoami

“&&”:如果前面的语句为假则直接出错,也不执行后面的语句,前面的语句只能为真。例如:ping 127.0.0.1&&whoami
(Linux):
“;”:执行完前面的语句再执行后面的 例如:ping 127.0.0.1;whoami

“|”:显示后面语句的执行结果 例如:ping 127.0.0.1|whoami

“||”:当前面的语句只能怪出错时,执行后面的语句,例如:ping 1||whoami

“&”:如果当前面的语句为假则直接执行后面的语句,前面的语句可真可假。例如:ping 127.0.0.1&whoami

“&&”:如果前面的语句为假则直接出错,也不执行后面的,前面的语句只能为真 例如:ping 127.0.0.1&&whoami

week2