From db7504812baffb6d3ab17b550c0fb362f12caf8f Mon Sep 17 00:00:00 2001 From: yoloyyh <1764163852@qq.com> Date: Fri, 24 May 2024 11:32:26 +0800 Subject: [PATCH 1/2] fix get attach status overlay --- .../src/main/java/com/security/smithloader/SmithAgent.java | 3 ++- rasp/librasp/src/jvm.rs | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/rasp/jvm/JVMAgent/src/main/java/com/security/smithloader/SmithAgent.java b/rasp/jvm/JVMAgent/src/main/java/com/security/smithloader/SmithAgent.java index 228613851..92752393b 100644 --- a/rasp/jvm/JVMAgent/src/main/java/com/security/smithloader/SmithAgent.java +++ b/rasp/jvm/JVMAgent/src/main/java/com/security/smithloader/SmithAgent.java @@ -244,8 +244,9 @@ public String call() throws Exception { SmithAgentLogger.logger.warning(proberPath + " loading fail!"); } else { - System.setProperty("smith.rasp", probeVersion+"-"+checksumStr); System.setProperty("smith.status", "attach"); + System.setProperty("smith.rasp", probeVersion+"-"+checksumStr); + System.setProperty("rasp.probe", "smith"); } } diff --git a/rasp/librasp/src/jvm.rs b/rasp/librasp/src/jvm.rs index 39cca1909..0af0f44da 100644 --- a/rasp/librasp/src/jvm.rs +++ b/rasp/librasp/src/jvm.rs @@ -4,7 +4,8 @@ use log::*; use regex::Regex; use std::process::Command; use std::fs; - +use std::thread; +use std::time::Duration; use crate::async_command::run_async_process; use crate::process::ProcessInfo; use crate::runtime::{ProbeCopy, ProbeState, ProbeStateInspect}; @@ -71,7 +72,7 @@ pub fn java_attach(pid: i32) -> Result { if err.len() != 0 { info!("{}", &err); } - //thread::sleep(Duration::from_millis(100)); + std::thread::sleep(Duration::from_millis(500)); match check_result(pid, "attach") { Ok(_) => { return Ok(true); From caa63bf0a6e1fc8f0f5693df0504687bbba96997 Mon Sep 17 00:00:00 2001 From: yoloyyh <1764163852@qq.com> Date: Fri, 24 May 2024 12:05:59 +0800 Subject: [PATCH 2/2] fix update version jattach not found --- rasp/librasp/src/manager.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rasp/librasp/src/manager.rs b/rasp/librasp/src/manager.rs index ee3a9a4c2..d7cb7ba3a 100644 --- a/rasp/librasp/src/manager.rs +++ b/rasp/librasp/src/manager.rs @@ -352,8 +352,9 @@ impl RASPManager { diff_ns = value; if diff_ns { let to = format!("{}{}",root_dir.clone(), settings::RASP_JAVA_AGENT_BIN()); + self.copy_file_from_to_dest(settings::RASP_JAVA_JATTACH_BIN(), root_dir.clone()); self.copy_file_from_to_dest(settings::RASP_JAVA_AGENT_BIN(), root_dir.clone()); - info!("copy from SmithAgent.jar to {}", to.clone()); + info!("copy from jattach/SmithAgent.jar to {}", to.clone()); } } Err(e) => {