mirror of
https://github.com/ReaJason/MemShellParty.git
synced 2026-09-21 22:50:42 +08:00
feat: support simple obfuscation (#13)
This commit is contained in:
Binary file not shown.
+7
-7
@@ -15,7 +15,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@biomejs/biome": "1.9.4",
|
||||
"@tanstack/router-plugin": "^1.114.29",
|
||||
"@tanstack/router-plugin": "^1.114.30",
|
||||
"@types/node": "^22.13.14",
|
||||
"@types/react": "^19.0.12",
|
||||
"@types/react-copy-to-clipboard": "^5.0.7",
|
||||
@@ -42,22 +42,22 @@
|
||||
"@radix-ui/react-tabs": "^1.1.3",
|
||||
"@radix-ui/react-tooltip": "^1.1.8",
|
||||
"@tailwindcss/vite": "^4.0.17",
|
||||
"@tanstack/react-query": "^5.69.0",
|
||||
"@tanstack/react-query": "^5.70.0",
|
||||
"@tanstack/react-router": "^1.114.29",
|
||||
"@tanstack/router-devtools": "^1.114.29",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"i18next": "^24.2.3",
|
||||
"lucide-react": "^0.484.0",
|
||||
"react": "^19.0.0",
|
||||
"lucide-react": "^0.485.0",
|
||||
"react": "^19.1.0",
|
||||
"react-copy-to-clipboard": "^5.1.0",
|
||||
"react-dom": "^19.0.0",
|
||||
"react-hook-form": "^7.54.2",
|
||||
"react-dom": "^19.1.0",
|
||||
"react-hook-form": "^7.55.0",
|
||||
"react-i18next": "^15.4.1",
|
||||
"react-syntax-highlighter": "^15.6.1",
|
||||
"sonner": "^2.0.2",
|
||||
"tailwind-merge": "^3.0.2",
|
||||
"tailwind-scrollbar": "^4.0.1",
|
||||
"tailwind-scrollbar": "^4.0.2",
|
||||
"tailwindcss-animate": "^1.0.7",
|
||||
"zod": "^3.24.2"
|
||||
},
|
||||
|
||||
@@ -287,6 +287,18 @@ export function MainConfigCard({
|
||||
</FormItem>
|
||||
)}
|
||||
/>
|
||||
<FormField
|
||||
control={form.control}
|
||||
name="obfuscate"
|
||||
render={({ field }) => (
|
||||
<FormItem className="flex items-center space-x-2 space-y-0">
|
||||
<FormControl>
|
||||
<Switch id="obfuscate" checked={field.value} onCheckedChange={field.onChange} />
|
||||
</FormControl>
|
||||
<Label htmlFor="obfuscate">{t("mainConfig.obfuscate")}</Label>
|
||||
</FormItem>
|
||||
)}
|
||||
/>
|
||||
</div>
|
||||
</CardContent>
|
||||
</Card>
|
||||
|
||||
@@ -37,7 +37,8 @@
|
||||
"shellMountType": "Shell Mount Type",
|
||||
"shellTool": "Shell Tool",
|
||||
"shrink": "Shrink Bytecode",
|
||||
"urlPattern": "URL Pattern"
|
||||
"urlPattern": "URL Pattern",
|
||||
"obfuscate": "Obfuscate"
|
||||
},
|
||||
"optional": "(Optional)",
|
||||
"packageConfig": {
|
||||
@@ -130,7 +131,8 @@
|
||||
"targetServerRequest": "Request",
|
||||
"try-to-use-shell": "Try to use the memory shell",
|
||||
"waitingForGeneration": "// Waiting for generation...",
|
||||
"customShellClass": "Custom shell class is required, base64 or classfile"
|
||||
"customShellClass": "Custom shell class is required, base64 or classfile",
|
||||
"neoreGeorgObfuscate": "Do not support obfuscate for NeoreGeorg"
|
||||
},
|
||||
"version": {
|
||||
"updateAvailable": "Update Available",
|
||||
|
||||
@@ -37,7 +37,8 @@
|
||||
"shellMountType": "内存马挂载类型",
|
||||
"shellTool": "内存马功能",
|
||||
"shrink": "缩小字节码",
|
||||
"urlPattern": "请求路径"
|
||||
"urlPattern": "请求路径",
|
||||
"obfuscate": "代码混淆"
|
||||
},
|
||||
"optional": "(可选)",
|
||||
"packageConfig": {
|
||||
@@ -130,7 +131,8 @@
|
||||
"targetServerRequest": "请求适配",
|
||||
"try-to-use-shell": "尝试利用内存马",
|
||||
"waitingForGeneration": "// 等待填写参数生成中...",
|
||||
"customShellClass": "请输入自定义内存马类,base64 或类文件"
|
||||
"customShellClass": "请输入自定义内存马类,base64 或类文件",
|
||||
"neoreGeorgObfuscate": "NeoreGeorg 目前不支持代码混淆"
|
||||
},
|
||||
"version": {
|
||||
"updateAvailable": "有可用升级",
|
||||
|
||||
@@ -87,6 +87,11 @@ function IndexComponent() {
|
||||
toast.warning(t("tips.customShellClass"));
|
||||
return false;
|
||||
}
|
||||
|
||||
if (values.obfuscate && values.shellTool === ShellToolType.NeoreGeorg) {
|
||||
toast.warning(t("tips.neoreGeorgObfuscate"));
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ export const formSchema = z.object({
|
||||
injectorClassName: z.optional(z.string()),
|
||||
packingMethod: z.string().min(1),
|
||||
shrink: z.optional(z.boolean()),
|
||||
obfuscate: z.optional(z.boolean()),
|
||||
shellClassBase64: z.optional(z.string()),
|
||||
});
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ export function transformToPostData(formValue: FormSchema) {
|
||||
targetJreVersion: formValue.targetJdkVersion,
|
||||
byPassJavaModule: formValue.bypassJavaModule,
|
||||
shrink: formValue.shrink,
|
||||
obfuscate: formValue.obfuscate,
|
||||
};
|
||||
const shellToolConfig: ShellToolConfig = {
|
||||
shellClassName: formValue.shellClassName,
|
||||
|
||||
Reference in New Issue
Block a user