基于逻辑漏洞文件上传绕过的ctf

题目的网址:https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=1&id=4768&page=1


  1. 打开页面就出现弹窗说需要登录xctf-bug(绕过)
  2. 我首先的思路就是会不会有弱口令,或者是存在sql注入,使用sqlmap进行扫描,没有发现注入点xctf-bug(绕过)
  3. 只能先注册一下账号,进入查看一下网页内容,存在一个admin才有权限的manage页面,一个查看登录用户信息的页面,改密码界面,登出xctf-bug(绕过)
  4. 使用burp截断person页面发现cookie中的两个md5值,进行在线解密之后发现user的md5值格式为uid:用户名,而且不存在其他验证,那我们是不是可以使用admin的md5尝试绕过xctf-bug(绕过)xctf-bug(绕过)
  5. 将1:admin进行MD5加密得到4b9987ccafacb8d8fc08d22bbca797baxctf-bug(绕过)
  6. 在repeater中修改url和cookie就可以得到admin的信息,在登录页面就有找回密码,直接找回admin的密码xctf-bug(绕过)
  7. 此时我们是以管理员的饿权限登录进来的,打开manage界面,发现提示ip不对,这里是不是会存在一个x-Forwarded-for验证xctf-bug(绕过)xctf-bug(绕过)
  8. 成功打开manage页面,但是页面上并没有flag,但是可以看到一段注释,这个网站上存在一个页面管理系统,那可不可能就是上传页面呢,使用edit,dir,list,upload,delete尝试是否存在xctf-bug(绕过)
  9. 打开页面,存在提示难道只是图片吗?xctf-bug(绕过)
  10. 当我们上传一张图片的时候会提示这并不是我想要的,当我们上传php的时候会提示这不是一张图片,那到底我们要上传什么东西呢?使用burp截断修改提交请求
  11. 上传一个php文件的时候会提示这不是图片,那我们就修改Content-Type属性为image/jpeg,并且将后缀改为php5。然后就会提示这不是一个真的php文件,在文件中写入<?php @eval($_POST['chopper']);?>就会提示文件中存在什么东西显示这个是php,应该是检测到关键字<?php,那什么东西可以不使用这个几个关键字但是能执行php代码。<script language="php">phpinfo()</script>就可以,最后拿到flagxctf-bug(绕过)

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-22
  • 2022-12-23
  • 2021-04-26
猜你喜欢
  • 2021-11-27
  • 2021-07-20
  • 2022-12-23
  • 2021-04-15
  • 2021-06-14
  • 2022-12-23
  • 2021-09-04
相关资源
相似解决方案