首页 > 其他分享 >“百度杯”CTF比赛 九月场-123

“百度杯”CTF比赛 九月场-123

时间:2024-04-18 20:12:16浏览次数:16  
标签:文件 用户名 一下 CTF 123 user php paylaod 百度

“百度杯”CTF比赛 九月场

123

题目类型:web

题目描述:12341234,然后就解开了,打开靶机是一个会员登陆界面:

解题方法:先查看一下网页源码:

这里说用户信息都在user.php里面,然后我们访问一下user.php:

发现并没有任何信息

扫描一下它的目录文件看一下:

扫出了一个user.php和view.php,但是访问user.php没有反应,想到user.php存放用户信息的应该会有备份文件,所以我们访问user.php.bak看一下:

果然这里存在文件泄露,找到了user.php的备份文件,用记事本打开看一下:

里面存放了大量的用户名,想到前面网页源码的给出的提示,登陆名为用户名,密码为对应的用户名加上他的出生年份,这里就需要用bp来抓包进行爆破出它的登陆的用户名和密码:

这里将抓到的包发送到攻击器,注意下面添加攻击点的时候,要在password那里添加两个,因为要爆破出的密码是用户名+出生年份,攻击方式要选择Cluster bomb,因为这里需要多个paylaod集来进行攻击

第一个payload集将user.php.bak文件里面的内容导进去,paylaod方式选择列表的方式

第二个paylaod集,paylaod方式选择Copy other paylaod方式,然后下面就有一个选项框,让你选择copy的paylaod集,这里我们选择cope第一个用户名的paylaod,因为密码是由用户名+出生年份构造的

第三个payload集是年份,选择的paylaod方式是Number数字方式,开始从1980-到2000年,step步长为1

开始攻击:

得到两个长度特殊的,查看一下:

登陆成功,说明这两个用户名和密码是正确的,我们登陆一下看看

登陆成功了,但是没有任何显示,查看一下网页源码:

发现注释里面是个文件上传的代码,用F12在查看器里面把注释符号去掉看一下:

去掉注释符号,就得到一个文件上传的界面,我们随便上传一个文件,然后用bp抓包看一下:

我们上传一个.png文件看一下:

文件名不合法,再换成jpg和gif也是返回文件名不合法

我们上传一个.php文件看一下:

发现不行,只能写成.png.php看一下:

这里说不能包含php,就感觉这里可能不是真正的文件上传,并不是传马连菜刀,是要构造合法文件名上传到服务器成为可执行文件就可以,但是这里php被过滤了

最后上网查了一下如何绕过php,发现php还有许多别名:php3,php4,php5,pht,phtml,phps,这些都快被解析成php

逐一尝试,发现pht可以绕过,然后得到一个view.php,这里刚好对应了开头扫描目录扫出来的view.php

我们访问view.php:

得到一个file?想到可能是文件读取或者文件包含,猜测是?file=传参,我们随便输入一个?file=1看一下:

得到一个flag字符,我们构造?file=flag看一下:

还是一样,说明flag被过滤了,我们用双写来试试可不可以绕过去:

?file=flflagag

成功,拿到flag

flag{06628453-d67a-410f-84d8-becf9dcab5e1}

总结:这是一道出的比较好的web题,包含了文件泄露,爆破,文件上传绕过,传参关键字绕过包含的内容还是比较多,特别是它的爆破攻击点那里要在password那里添加两个攻击点,以及F12在查看器里面删除注释符号,上传php被过滤如何用其他别名来绕过以达到解析php的效果,和最后flag的关键字绕过,真是一道出的比较好的web题

标签:文件,用户名,一下,CTF,123,user,php,paylaod,百度
From: https://www.cnblogs.com/xyweiwen/p/18144304

相关文章

  • 记录一次CTF解题PHP反序列
    攻防世界的一个php反序列化题unserialize3PHP反序列化序列化通俗来讲就是将对象转化为可以传输的字符串,反序列化就是把那串可以传输的字符串再变回对象。<?phpclasschybate{var$test='123456';}$cless1=newchybate;//序列化$cless1_ser=serialize($cle......
  • 123123
    #include<stdio.h>#include<stdint.h>#pragmapack(push,1)typedefstruct{   struct{      uint16_tmon:8;            //月      uint16_tyear:8;         //以2000年为基准   };   struct{      uint1......
  • ADV7123驱动VGA显示色条
    VGA显示色条-基于ADV7123用ADV7123代替权电阻网络,执行数模转换,差别在于rgb都变成8位,显示的色彩更多。控制端口多了3个:像素时钟,复合同步信号(不用就置0),消隐信号。     相对权电阻网络的代码,主要有4处修改:一是端口声明加上新增的3个信号;二是设定复用模式的同步信号为0;三......
  • 123
    #include<stdio.h>#include<stdint.h>#pragmapack(push,2)typedefunion{uint16_tall;struct{uint16_ttime_set1:2;uint16_ttime_set2:2;uint16_ttime_set3:2;uint16_ttime_set4:2;......
  • 新手大白话 UUCTF 2022 新生赛ezpop 字符串逃逸
    今天做个字符串逃逸的题目,这个题还挺不错的,不多bb直接看源码。点击查看代码<?php//flaginflag.phperror_reporting(0);classUUCTF{public$name,$key,$basedata,$ob;function__construct($str){$this->name=$str;}function__wakeup(){......
  • 新手大白话 [LitCTF 2023]刷题记录1
    我Flag呢直接看源码PHP是世界上最好的语言!进入页面查看源码发现为RCE漏洞。直接system('cat/flag');点击Runcode导弹迷踪js源码问题,f12点开调试器查看game.js代码点击查看代码varMessages={START:{title:getLevelString,text:......
  • htbctf wp
    htbctfwpCrypto[VeryEasy]Dynastic凯撒变体source.pyfromsecretimportFLAGfromrandomimportrandintdefto_identity_map(a):returnord(a)-0x41deffrom_identity_map(a):returnchr(a%26+0x41)defencrypt(m):c=''f......
  • 百度地图 腾讯地图 互转
    //百度坐标转换成腾讯坐标convert2TecentMap(lng,lat){if(lng==''&&lat==''){return{lng:'',lat:''}}varx_pi=3.14159265358979324*3000.0/180.0varx=l......
  • 新手大白话 FSCTF 2023刷题记录1
    [FSCTF2023]源码!启动!进入页面ctrl+u查看源码得到flagwebshell是啥捏进入页面,发现给出源码笨办法,一个一个找出表情代表啥,最后发现为命令执行函数passthru,而passthru出现在了漏洞点eval处,也就是RCE漏洞,而且进一步查看发现没有过滤,直接打它:细狗2.0进入页面随意输入试试,......
  • 用Visual Studio编写自动化测试百度网站的程序
    摘要使用VisualStudio2022,基于Selenium.WebDriver创建项目,模拟用户登入网站,进一步下单和修改收货地址。VisualStudio新建解决方案引入Selenium.WebDriver编写自动访问百度搜索的代码因为搜索网站只有一个输入条件嘛。第一版代码网址改为百度百度的输入框input......