feat: support fumadocs

This commit is contained in:
ReaJason
2025-12-05 11:07:24 +08:00
parent 38ad19c7ea
commit 69910ec187
140 changed files with 4788 additions and 1438 deletions
+39
View File
@@ -0,0 +1,39 @@
{
"about": "About",
"basicInfo": "BasicInfo",
"byPassJavaModule": "Bypass JavaModule",
"cancel": "Cancel",
"copyLabelSuccess": "Copy {{label}} successfully",
"copySuccess": "Copy successfully",
"debug": "Debug Mode",
"download": "Downlaod",
"encryptor": "Encryptor",
"feedback": "Feedback",
"generateResult": "Generate Result",
"generator": "Generator",
"headerName": "HeaderName",
"headerValue": "HeaderValue",
"implementationClass": "ImplementationClass",
"loading": "Loading...",
"mainConfig.title": "Main Config",
"MemShellGenerator": "MemShellGenerator",
"optional": "(Optional)",
"packerConfig.title": "Package Config",
"packerMethod": "Package Method",
"paramName": "ParamName",
"placeholders.input": "Please input",
"placeholders.select": "Please select",
"ProbeShellGenerator": "ProbeShellGenerator",
"quickUsage.title": "Quick Usage",
"server": "Server",
"serverVersion": "Server Version",
"shrink": "Shrink",
"staticInitialize": "StaticInitialize",
"toast.generateError": "Generation failed, {{error}}",
"toast.generateSuccess": "Generation successful",
"urlPattern": "URL Pattern",
"usage": "Usage",
"version.updateAvailable": "Update Available",
"version.updateAvailableTooltip": "Click to Open Github Release Page ( v{{currentVersion}} -> v{{latestVersion}})",
"shellTool": "Shell Tool"
}
+39
View File
@@ -0,0 +1,39 @@
{
"about": "关于",
"basicInfo": "基本信息",
"byPassJavaModule": "绕过 Java 模块限制",
"cancel": "取消",
"copyLabelSuccess": "复制 {{label}} 成功",
"copySuccess": "复制成功",
"debug": "调试模式",
"download": "下载",
"encryptor": "加密器",
"feedback": "反馈",
"generateResult": "生成结果",
"generator": "生成器",
"headerName": "请求头名称",
"headerValue": "请求头值",
"implementationClass": "实现类",
"loading": "加载中...",
"mainConfig.title": "核心配置",
"MemShellGenerator": "内存马生成器",
"optional": "(可选)",
"packerConfig.title": "打包配置",
"packerMethod": "打包方式",
"paramName": "参数名称",
"placeholders.input": "请输入",
"placeholders.select": "请选择",
"ProbeShellGenerator": "探测马生成器",
"quickUsage.title": "快速使用",
"server": "服务类型",
"serverVersion": "服务版本",
"shrink": "缩小字节码",
"staticInitialize": "静态初始化",
"toast.generateError": "生成失败,{{error}}",
"toast.generateSuccess": "生成成功",
"urlPattern": "请求路径",
"usage": "使用指南",
"version.updateAvailable": "有可用升级",
"version.updateAvailableTooltip": "点击前往 GitHub Release ( v{{currentVersion}} -> v{{latestVersion}})",
"shellTool": "内存马工具"
}
+62
View File
@@ -0,0 +1,62 @@
import i18n from "i18next";
import { initReactI18next } from "react-i18next";
import commonEN from "@/i18n/common/en.json";
import commonZH from "@/i18n/common/zh-CN.json";
import memshellEN from "@/i18n/memshell/en.json";
import memshellZH from "@/i18n/memshell/zh-CN.json";
import probeshellEN from "@/i18n/probeshell/en.json";
import probeshellZH from "@/i18n/probeshell/zh-CN.json";
const getStoredLanguage = () => {
if (typeof window === "undefined") {
return "zh-CN";
}
const storedLang = localStorage.getItem("i18nextLng");
if (storedLang && ["en", "zh-CN"].includes(storedLang)) {
return storedLang;
}
const browserLang = navigator.language.split("-")[0];
return ["en", "zh-CN"].includes(browserLang) ? browserLang : "zh-CN";
};
const fallbackLng = "zh-CN";
export const ns = [
"default",
"common",
"memshell",
"probeshell",
"errors",
] as const;
export const defaultNS = "default" as const;
const resources = {
"zh-CN": {
common: commonZH,
memshell: memshellZH,
probeshell: probeshellZH,
},
en: {
common: commonEN,
memshell: memshellEN,
probeshell: probeshellEN,
},
};
i18n.use(initReactI18next).init({
ns,
defaultNS,
resources,
lng: getStoredLanguage(),
fallbackLng,
interpolation: {
escapeValue: false,
},
});
i18n.on("languageChanged", (lng) => {
if (typeof window !== "undefined") {
localStorage.setItem("i18nextLng", lng);
}
});
export default i18n;
+61
View File
@@ -0,0 +1,61 @@
{
"basicInfo.classInfo": "ShellClass",
"basicInfo.serverInfo": "TargetServer",
"basicInfo.toolInfo": "ShellTool",
"buttons.generate": "Generate Shell",
"classNameOptions": "ClassNameOptions",
"injectorClass": "InjectorClass",
"mainConfig.injectorClassName": "Injector ClassName",
"mainConfig.randomClassName": "Random Class Name",
"mainConfig.shellClassName": "Shell ClassName",
"mainConfig.shellMountType": "Shell Mount Type",
"mainConfig.shellTool": "ShellTool",
"quickUsage.step1": "Select Target Server",
"quickUsage.step2": "Select Shell Tool, Godzilla, Behinder, etc.",
"quickUsage.step3": "Select Shell Mount Type, Filter, Listener, etc.",
"quickUsage.step4": "Select Packing Method",
"quickUsage.step5": "Click Generate Shell",
"shellClass": "ShellClass",
"shellNotWork.step1": "1. Try to enable the debug mode, regenerate the memory shell and inject it, check the console or log",
"shellNotWork.step2": "2. If an exception stack trace is displayed, or no exception is seen, please take a screenshot of the current generation interface and the exception log, and describe the target environment as much as possible for feedback",
"shellNotWork.title": "Shell Not Work ?",
"shellToolConfig.antSword.pass": "Shell pwd",
"shellToolConfig.behinder": "Behinder",
"shellToolConfig.behinder.header": "Custom Header",
"shellToolConfig.behinder.pass": "Pass",
"shellToolConfig.behinderDefaultEncryptType": "Default",
"shellToolConfig.behinderEncryptType": "Encrypt Type",
"shellToolConfig.behinderScriptType": "Script Type",
"shellToolConfig.command": "Command",
"shellToolConfig.godzilla": "Godzilla",
"shellToolConfig.godzilla.encryptor": "Encryptor",
"shellToolConfig.godzilla.header": "Request Config -> Request Header",
"shellToolConfig.godzilla.key": "Key",
"shellToolConfig.godzilla.pass": "Pass",
"shellToolConfig.godzilla.payload": "Payload",
"shellToolConfig.httpHeader": "HTTP -> HTTP HEADERS",
"shellToolConfig.neoreGeorgHeader": "Custom Header",
"shellToolConfig.neoreGeorgKey": "Connection Key",
"shellToolConfig.suo5Header": "AdvanceConfiguration -> Request Header",
"tips.classNameParseFailed": "Failed to parse class name, please verify the Base64 data",
"tips.agent-move-to-target": "Move MemShellAgent.jar and jattach to target host",
"tips.agent-move-to-target1": "Move MemShellAgent.jar to target host",
"tips.controllerUrlPattern": "ControllerHandler type requires a specific URL Pattern, e.g., /hello_controller",
"tips.customShellClass": "Custom shell class is required, base64 or classfile",
"tips.download-jattach": "Download the Jattach tool",
"tips.execute-command": "Execute the command to inject: /path/to/jattach pid load instrument false /path/to/agent.jar",
"tips.execute-command1": "Execute the command to inject: java -jar /path/to/agent.jar pid",
"tips.get-pid": "Get the process pid of the target jvm (use jps or ps)",
"tips.handlerUrlPattern": "HandlerMethod/HandlerFunction type requires a specific URL Pattern, e.g., /hello_handler",
"tips.serverVersion": "serverVersion is required",
"tips.servletUrlPattern": "Servlet type requires a specific URL Pattern, e.g., /hello_servlet",
"tips.shellBytesEmpty": "Shell bytes is empty, please generate shell first",
"tips.shellToolNotSelected": "Please select a shell tool type first",
"tips.specificUrlPattern": "URL Pattern must be specified, e.g., /hello",
"tips.targetServerNotFound": "Target server not found?",
"tips.targetServerRequest": "Request",
"tips.try-to-use-shell": "Try to use the memory shell",
"tips.download-jar": "Download the jar file and upload it to the public network server, so that it can be accessed through the http link to download",
"tips.load-jar-with-scriptenginemanager": "Load the jar file with javax.script.ScriptEngineManager to implement injection",
"tips.trigger-injector-class-loading": "Trigger the injector class loading with RCE vulnerability"
}
+61
View File
@@ -0,0 +1,61 @@
{
"basicInfo.classInfo": "内存马类信息",
"basicInfo.serverInfo": "目标服务信息",
"basicInfo.toolInfo": "内存马工具信息",
"buttons.generate": "生成内存马",
"injectorClass": "注入器",
"shellClass": "内存马",
"classNameOptions": "类名配置项",
"mainConfig.injectorClassName": "注入器类名",
"mainConfig.randomClassName": "随机类名",
"mainConfig.shellClassName": "内存马类名",
"mainConfig.shellMountType": "内存马挂载类型",
"mainConfig.shellTool": "内存马功能",
"quickUsage.step1": "选择目标服务",
"quickUsage.step2": "选择内存马功能,Godzilla、Behinder 或者其他",
"quickUsage.step3": "选择内存马挂载类型,Filter、Listener 或者其他",
"quickUsage.step4": "选择打包方式",
"quickUsage.step5": "点击生成内存马",
"shellNotWork.step1": "1. 尝试开启调试模式,重新生成并注入,查看控制台或日志",
"shellNotWork.step2": "2. 如果出现异常堆栈信息,或未见异常,请截图当前生成界面以及异常日志,并尽可能描述目标环境进行反馈",
"shellNotWork.title": "利用失败?",
"shellToolConfig.antSword.pass": "连接密码",
"shellToolConfig.behinder": "冰蝎",
"shellToolConfig.behinder.header": "自定义请求头",
"shellToolConfig.behinder.pass": "连接密码",
"shellToolConfig.behinderDefaultEncryptType": "默认",
"shellToolConfig.behinderEncryptType": "加密类型",
"shellToolConfig.behinderScriptType": "脚本类型",
"shellToolConfig.command": "命令回显",
"shellToolConfig.godzilla": "哥斯拉",
"shellToolConfig.godzilla.encryptor": "加密器",
"shellToolConfig.godzilla.header": "请求配置 -> 请求头",
"shellToolConfig.godzilla.key": "密钥",
"shellToolConfig.godzilla.pass": "密码",
"shellToolConfig.godzilla.payload": "有效载荷",
"shellToolConfig.httpHeader": "请求信息 -> HTTP HEADERS",
"shellToolConfig.neoreGeorgHeader": "自定义请求头",
"shellToolConfig.neoreGeorgKey": "连接密钥",
"shellToolConfig.suo5Header": "高级配置 -> 请求头",
"tips.agent-move-to-target": "将 MemShellAgent.jar 和 jattach 移到到目标服务磁盘上",
"tips.classNameParseFailed": "无法解析类名,请检查 Base64 内容",
"tips.agent-move-to-target1": "将 MemShellAgent.jar 移到到目标服务磁盘上",
"tips.controllerUrlPattern": "ControllerHandler 类型的需要填写具体的 URL Pattern,例如 /hello_controller",
"tips.customShellClass": "请输入自定义内存马类,base64 或类文件",
"tips.download-jattach": "下载 Jattach 工具",
"tips.execute-command": "执行命令进行注入:/path/to/jattach pid load instrument false /path/to/agent.jar",
"tips.execute-command1": "执行命令进行注入:java -jar /path/to/agent.jar pid",
"tips.get-pid": "获取目标 jvm 的进程 pid(使用 jps 或 ps",
"tips.handlerUrlPattern": "HandlerMethod/HandlerFunction 类型的需要填写具体的 URL Pattern,例如 /hello_handler",
"tips.serverVersion": "当前挂载类型必须指定 serverVersion",
"tips.servletUrlPattern": "Servlet 类型的需要填写具体的 URL Pattern,例如 /hello_servlet",
"tips.shellBytesEmpty": "内存马字节码为空,无法下载,请先生成内存马",
"tips.shellToolNotSelected": "请先选择内存马工具类型",
"tips.specificUrlPattern": "必须指定 URL Pattern,例如 /hello",
"tips.targetServerNotFound": "找不到目标服务?",
"tips.targetServerRequest": "请求适配",
"tips.try-to-use-shell": "尝试利用内存马",
"tips.download-jar": "下载 jar 包并上传至公网服务器,使其能通过 http 链接访问下载",
"tips.load-jar-with-scriptenginemanager": "通过 RCE 漏洞使用 javax.script.ScriptEngineManager 加载 jar 包实现注入",
"tips.trigger-injector-class-loading": "通过 RCE 漏洞触发注入器类加载"
}
+19
View File
@@ -0,0 +1,19 @@
{
"buttons.generate": "Generate Shell",
"dnslog.host": "DNSLog Host",
"probeContent": "ProbeContent",
"probeContent.bytecode": "Bytecode",
"probeContent.script": "ScriptEngine",
"probeContent.command": "Command",
"probeContent.jdk": "JDK",
"probeContent.server": "Server",
"probeMethod": "ProbeMethod",
"quickUsage.step1": "Select Probe Method, DNSLog, Response, etc.",
"quickUsage.step2": "Select Probe Content, JDK, Server, etc.",
"quickUsage.step3": "Click Generate Shell",
"shellClassName": "ShellClassName",
"sleepSeconds": "SleepTime (seconds)",
"sleepServer": "SleepServer",
"tips.dnslog.host.required": "DNSLog host required",
"tips.response.reqParamName.required": "ParamName required"
}
+19
View File
@@ -0,0 +1,19 @@
{
"buttons.generate": "生成探测马",
"dnslog.host": "DNSLog 地址",
"probeContent": "探测内容",
"probeContent.bytecode": "字节码执行",
"probeContent.script": "脚本引擎执行",
"probeContent.command": "命令执行",
"probeContent.jdk": "JDK 信息",
"probeContent.server": "服务类型",
"probeMethod": "探测方法",
"quickUsage.step1": "选择探测方法,DNSLog、Response 或者其他",
"quickUsage.step2": "选择探测内容,JDK、服务类型 或者其他",
"quickUsage.step3": "点击生成探测马",
"shellClassName": "探测马类名",
"sleepSeconds": "延迟时间(秒)",
"sleepServer": "探测服务",
"tips.dnslog.host.required": "DNSLog 地址必填",
"tips.response.reqParamName.required": "参数名称必填"
}