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

aapr密码读取工具_MYSQl任意文件读取

土拨鼠先生

MYSQl任意文件读取

39aca7278651b4834b61c273097f32c2.png

实现原理:

攻击者搭建一个伪造的mysql服务器,当有用户去连接上这个伪造的服务器时。

攻击者就可以任意读取受害者的文件内容。

主要是因为LOAD DATA INFILE这个语法

作用是读取一个文件的内容并且放到一个表中。

load datalocalinfile"/home/data.csv"intotableTestTable;

读取客户端文件,

漏洞利用:

漏洞利用的相关工具及源码已在github,先亮出地址:https://github.com/allyshka/Rogue-MySql-Server

1.在python2运行脚本文件roguemysqlserver.py

41f0efed3f3ddaf08c6877bb3207b176.png

在roguemysqlserver.py文件中filelist 为读取受害者的文件地址。

7016aca6cf4ca7ce211a3fde39e34efb.png

运行py脚本文件。

a6b241004f3855fa071ae17594ee844e.png

2.受害者来连接攻击者伪造的mysql服务器,这里使用虚拟机开了一台centos为受害者来连接。

e77c4c3e81d6c1c4140679b3f7b3c404.png

由于我们搭建的mysql为欺骗受害者访问,所有这里采用账号密码都为root。

3.受害者在连接的时候文件已经被读取到我们的本地文件mysql.log中

3cc6ca37b6cd8b482ffa43ee585e6844.png

下面为受害机器centos中的内容:

2e8f191fca2fcbcb96dde3b169635c06.png

可以看到受害者centos的/etc/passwd的内容都被读取到了攻击者的mysql.log文件中。

应用场景:

1.配合网站的重装漏洞进行利用读取服务器的任意文件。

2.数据迁移等需要连接外部数据的功能点

3.搭建在蜜罐上读取攻击者的信息。

漏洞修复:

禁掉load读取文件

使用加密链接ssl-mode=VERIFY_IDENTITY

参考文章

https://y4er.com/post/mysql-read-client-file/

可扫描下面二维码加入知识星球继续学习WEB安全知识:

76be86fe990720291f2c959630350e5b.png

ca041cce3684aec6616aeac3ebc0404c.png

专注于普及网络安全知识。团队已出版《Web安全攻防:渗透测试实战指南》,《内网安全攻防:渗透测试实战指南》,目前在编Python渗透测试,JAVA代码审计和二进制逆向方面的书籍。团队公众号定期分享关于CTF靶场、内网渗透、APT方面技术干货,从零开始、以实战落地为主,致力于做一个实用的干货分享型公众号。

官方网站:http://www.ms08067.com

相关文章:

  • python列表添加元组_如何在python语言将元组添加到列表中并显示
  • python3.5安装包_Python3.5安装
  • zookeeper 客户端配置_ZooKeeper的三种典型应用场景
  • mysql2003错误如何解决_Excel常见的8种错误类型如何解决?这篇1500字文章带你详细解读...
  • 如何安装python3.6_python3.6.4如何安装到树莓派3代
  • python对于会计核算_利用Python处理东方财富企业财务数据
  • python绘制折线图保存_利用python向excel文件写数据并绘制折线图
  • linux nginx vue_【Devops】Linux服务器上搭建持续集成环境及实战体验
  • 广州python工程师工资怎么样_没有编程基础,该如何成为月薪2万的Python工程师?...
  • c判断字符串是不是数字_C语言字符串与整数之间的转换,小白必会知识
  • 箭头函数转化为普通函数_理解 JavaScript 箭头函数
  • python抖音涨粉代码_python制作抖音代码舞
  • python中pow_pow在python中指的是什么意思
  • 80端口被占用 nt kernel iis_IIS维护分享
  • 对多用户分时系统最重要_新建网站如何做网络推广?最有效方法是什么?
  • 自己简单写的 事件订阅机制
  • canvas绘制圆角头像
  • Docker入门(二) - Dockerfile
  • k8s 面向应用开发者的基础命令
  • Leetcode 27 Remove Element
  • Linux下的乱码问题
  • Rancher-k8s加速安装文档
  • Unix命令
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • 浮现式设计
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 阿里云API、SDK和CLI应用实践方案
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • #14vue3生成表单并跳转到外部地址的方式
  • #Ubuntu(修改root信息)
  • #单片机(TB6600驱动42步进电机)
  • #我与Java虚拟机的故事#连载17:我的Java技术水平有了一个本质的提升
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (42)STM32——LCD显示屏实验笔记
  • (done) 两个矩阵 “相似” 是什么意思?
  • (二)JAVA使用POI操作excel
  • (二)Linux——Linux常用指令
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (转)fock函数详解
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转)Scala的“=”符号简介
  • (转)拼包函数及网络封包的异常处理(含代码)
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • *p++,*(p++),*++p,(*p)++区别?
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET下的多线程编程—1-线程机制概述
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...
  • //解决validator验证插件多个name相同只验证第一的问题
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法
  • @Resource和@Autowired的区别
  • [ 隧道技术 ] 反弹shell的集中常见方式(四)python反弹shell
  • [ArcPy百科]第三节: Geometry信息中的空间参考解析