From abdd2c4a0a583a298f164c483d883d8499eec1d0 Mon Sep 17 00:00:00 2001 From: Ex-Origin <2462148389@qq.com> Date: Tue, 1 Jan 2019 02:03:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E7=94=B1Base64?= =?UTF-8?q?=E4=BA=A7=E7=94=9F=E7=9A=84+=E5=AD=97=E7=AC=A6=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E8=BF=9B=E8=A1=8Curl=E7=BC=96=E7=A0=81=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/ms509/util/Shell.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/com/ms509/util/Shell.java b/src/com/ms509/util/Shell.java index b1954a0..b31954e 100644 --- a/src/com/ms509/util/Shell.java +++ b/src/com/ms509/util/Shell.java @@ -188,7 +188,12 @@ private String[] execute_php(String command) { // TODO Auto-generated catch block e.printStackTrace(); } - tmp = (new BASE64Encoder().encode(z12)).toString() + "&"+Safe.PARAM2+"=" + (new BASE64Encoder().encode(z22)).toString(); + + //这里要进行一些url编码,否则执行echo ';' > t.php时就会产生+和换行,导致目标端解析base64失败 + String change = (new BASE64Encoder().encode(z22)).toString(); + change = change.replace("+","%2b").replace("\n",""); + + tmp = (new BASE64Encoder().encode(z12)).toString() + "&"+Safe.PARAM2+"=" + change; params = Common.makeParams(Safe.PHP_MAKE, Safe.PHP_SHELL, tmp); String[] index_datas = Common.send(url, params, code).split("\t"); String result = null;