From 3952cd45232deafca88892d93235da39151f12a2 Mon Sep 17 00:00:00 2001 From: 4ra1n <2023503307@qq.com> Date: Sat, 3 Aug 2024 00:54:00 +0800 Subject: [PATCH] =?UTF-8?q?[BUG]=20=E4=BF=AE=E5=A4=8D=20`NATIVE`=20?= =?UTF-8?q?=E7=9A=84=20`malloc`=20=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.MD | 1 + native/start_windows.c | 4 ++-- src/main/resources/libdecrypter.dll | Bin 14848 -> 15360 bytes src/main/resources/libencryptor.dll | Bin 12288 -> 12800 bytes 4 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 4ff4429..940d02d 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -9,6 +9,7 @@ - [功能] 字符串替换时处理反射字符串类名 - [功能] 添加对泛型 `signature` 的处理 - [优化] 优化 `builtin` 黑名单解析和注释 +- [BUG] 修复 `NATIVE` 的 `malloc` 错误 - [BUG] 修复没有添加目录到 `JAR ENTRY` 的问题 - [BUG] 花指令混淆部分遇到类加载报错解决 - [BUG] 修复 `MANIFEST.MF` 没有完全修改的问题 diff --git a/native/start_windows.c b/native/start_windows.c index 5050a7e..1df5f8a 100644 --- a/native/start_windows.c +++ b/native/start_windows.c @@ -187,11 +187,11 @@ JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *vm, char *options, void *reserved) { } // SET PACKAGE_NAME - PACKAGE_NAME = (char *) malloc(strlen((char *) v1)); + PACKAGE_NAME = (char *) malloc(strlen((char *) v1) + 1); strcpy(PACKAGE_NAME, (char *) v1); // SET KEY - KEY = (unsigned char *) malloc(16); + KEY = (unsigned char *) malloc(strlen((char *) v2) + 1); strcpy((char *) KEY, (char *) v2); jvmtiEnv *jvmti; diff --git a/src/main/resources/libdecrypter.dll b/src/main/resources/libdecrypter.dll index dc22237126284abebaf1911032dd4191af6466a1..c01ee8362d7ec069b140c0ebaba4fcd60c4e242e 100644 GIT binary patch literal 15360 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 literal 14848 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 diff --git a/src/main/resources/libencryptor.dll b/src/main/resources/libencryptor.dll index 0f325bad8131c70ae4ba920cf781633c50cf57a1..d0b5a96710f4707df58b3a31fa1aed24560df776 100644 GIT binary patch literal 12800 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 G2mS-V^-7}v literal 12288 zcmeHN3v?6LnZB|lTYg1?SYSxf430>h5*uMTiHUKLuoOmA4vK9afr2b#8I;&nTVnE>{r;H| z*rYk_**!gH9~rp!f8PK8_rLf4_m0L5Yj!a`W6Xde%Z&8_(&JR>KU3)#yXMA2*RZGZ zPtNJn`A*Jh-V{l4@kDH6BG|!&g3)M9;5LN0L@LTfqMUnq6W0-I4ObQy7uYn@)r+@2 z6klI*Yqo5;`3tvh2K_>rwIZp&X%*WPXsPH_;7o4UfnVvnQW-P>;C`Cgx`Q{L5YWXvm`dgZLv}e32K2ed2_)ZW?1Q@n>G~1!*_Z4xh0W&LL2IJ%F?vlj=&pKmEZ{2xhAS zJqd1yVDyrX4CkUdUi`UN{IS~AL0YW5ct*CKy^%4qMbC>Pe6QQK8b;qn_wd6!jY)q% zV;KD-aWci<1CU+?%a!q5{95|gdHTZx6M8;0Ok?nO_nW_zQ1q7?e7)bYNz?;Owmefn zSZ1lo^&D*z;%x$1L`b~Ne50ET-u<30BzeU@^7DT0t^MVL(|qFd%Q7Xke8y+1k=DW6 zhR_?l_%5FwGI+%c{Jh_JYu|ftCNB>3)r|35+ii<35cM2V)m8cw%JsDC*$tp`pM#yA*=}hV6W& z+2)j7DpgICTXKN9GM*xghjcP#;=YFo6Ni>%iZ1)#Y;a1SgKU>8{k(}!52Cc&{5o^@ zFFufEpD5TmdGSeG7kYM!SUNsYjWSKIcoH-0>)mGKu+o%i?m`aXX%&4@U5<_uk_QWd z-+tsV7;pt#>s{*t>({LvJaOU#pE2Hx)JUlE(1e=!-e#M{hj5kpKypnhSMli!c3!;1 zX9U~ogBTf;t?%4Gy_}H_$+GNm9OZij8|M>;c=0E^Xp*fzA#wVMJ+NNsCu`q);NBeb z0hfN@oT>0I2%Y&rzJgOVFnB^7=qVVGOg&3<;=q7p85k|?S(4MUOrLd-@BIw<*KV^= zhowA?+b!xmj?<#c;1iFEv&F3jF=6s#)^OteMZ3fiPiFVQEq8o#;Ji^B*1tILszHC; zamtk`%5j`>>kqrc5tld&Aqjq_|FPp#y&}>d_NK>lseWFh{t$Buk6FO9p+8Tr&eiKO zC@!tw#S8wXdm9lVghxEaJ6`5%&pv3~X}Iy$oa$*8M+~~^vL3^YygWGe#{OeHdHX-; zS*qKAsAp-;{^xp@V)wntr+=&4X}DwOMnlh1Lyzr_s@JRfdB?@T`Zf2hUA+#yAo%4C zqN@hxz2Yf}PLe*F1BADnoNzXIM0oa+EB)F8Lg2c{5Q$U5wJyJo^ z*3DxqW#I<~ENyQO$Z|?I$PXN~jQ$<+lj>{tX<=ddyiO>mYDW4UoltPaUuiQ|=a^Ai z3Sd6auZ+Qq6oj#iVgs-SWRtHBC?uV~+I$N%-w3^HC4zy4{uc77dGe?t52{)dXy#!fV`2L|QgUgH-bkeV<|B{E#P zZaO)gxL`i!L%tPxhKnkS{iUo3c5n%oUqhE&W%3fDDz*)yp+4|*~w9t;r*1rKFTYD68_)xxq z(Z1r=^77ngiKpcB^o5#(AfWdcKzF~8caYZN$y>1KXOv?dd(Zt)@LHapY5mJRY5I>3_9xh z3STV#?#93i$9!zQ3uYV zemZMg5JTCzf+QI0LO$JUtAPhT+(1M~eWG%Av19s(8K)SP(<$~D8z)hABcy`05lGC+5QVGgW(EsrVXFB40b068Lnu6umT*%GTM6Qyv^q9*b-}V#NaO z=NAxefdqJ_fm3M{(H;&AWYu#V?*Q)bSa`<(e-MW&9$3E#gyTwAyxBc~=%>g9tQ4Mq zdj#ZqA~Eyp2H|2kEh-D2u3Jpgp30T255b8mnHXn(@qc^@4dl7&A;8+q6#o+R=pT?( zaW8lkxMD|o@okE`$tJx4Ux4JG51c&IhxD&dMu6vpdC@SJQZA2!Wz5Le4htoY{&C*? z{o*HJDD_($YSe1KZtQK^2h=vHw#}0cAP$k>HR?WHDgq`Y)+boz$o4Bm9c(7F(OzH z$ z=qgP$`{o@sKYecrpFUj5>ra`VcIEP!qAp*i=osHyV)NFX5=zBoMZVgBM1i=(q#y9r z_9t+wK3qQb3g!<76Rnhz^i~^tkgx)*%Ur-5Wto-^sxjJmR(b)Ub(}_A3U|Dm%HzLa zeTh<-63T2GUjT>gJS!M>oK6)UUrM8UE9Z_Lb%~)LB#c{_`SEgR)DI78Hb!~rhX*indHP}3b zr(nk*UZRs4FJDEewS2nxX}qAzbH^9UW`4-{k04kVV|D$xIwq9YwdCe7VNP9~z-;6G zOYh-Y#XVr-@peZ4Fk17zfn-=XdC+oa_;+i^x7|!` z!x6Vg7Z*d;4fCPb@{tnN9gU6ql*StHhAY?YL#dlgm!w^G-Uh%5L)iN#{Ixt z7Y8|^COymz8NUY7s0bbb)(5Q-_f2QqwP#Xz@qs1Vxkcwv#p&WsNS(bmL;+}$%jrHW z;4+;)VhIc?M;{WPqko~X6&g4~2IaXwz%O$0+^3ZKn@YW3sozoR3rhVfr5;i0^Gf}! zQh!gWA49!gHwe3wUFo^hgB(aw%(7sIZrnl%f1W#OCfxAybi&O-4vSi2JK^IC3 z$IQw!54HjweElqx*R+T@m z(NAh{mj<_KFzZU}5?Y+m_#H*IpYRq-q z+++b*p2o)IjdyZO?rZjN^~>EJu6g-#u8CjX*sSV*+H>EXnySKZ`Fvcn$Cb6MDxvl} zRlmnINVoIJkCTG%S9nZXe^;9>U7-3?uEDG2O0xbC^RLI~a{TFeq2C|&4oUTW~qi+^R0LuYifnY6Oz~d;hpgSK$#!rxM zAjg}&EVaHSD&dEEw*!v$qOe(@Z!an#A}(t^D26qrt%cM_!ORB(d(SbQ}nu~@R}99o~b-VZx?vuI{2r3!@}IMcKD;x zw#~72p`#Tv%}+JvN#k$by0vu!hQ~MrNf}>42-&%G z%JEObPlg56CRWgx8>hC|M(p39_bZf+GHQu$j=(RXJgm_&@B;h>k(Co&2s$gzpPkEQ zSDV@F#Ef$#@oQViF8S+%&L>M5`+L|SsQA#BgU=$l7;hdkV+`i1!niJ9$MQEoZZa@a z!VuTD(H$Nc7v=yZ}kCmX0k}6AF zXEh>bhnQ8@$8t$Wi9;?csLGA2{=k=NBQsAgj8hEAe|oY|rPP|v3&IjuuO!cwO`zLR z;wUu7T?AP;8cJ-53$a9HYkNCe7Tg>Rbc6%Z1;Iph;QnAD5Zlm}N``_^2;9H9Lx=?G z@h1bGY@>kIoGkTW-DjV#W4(9T89O(Lw-aam6X4ZAmVN#OJVtq7lHM`!`bcjQudxn# z;Cd%MXV#-5sGi2Oc@B&2a@q{DAE=Q1vUkvt?l6iV{^ez3atTQOFSHi zMB8G4)^Jit#I^+5BT0d=yU0Q^3~Xh6rPz(c0-;z(M=ToH+!jwnqCy+aHuMt_gm9vR-EjpEgxO*iNQO5B+9K@` z253E&GBl62MK-1qSd_s;BKANanAo@(KN6@dBf<8_*2|)BbaNyTi*|&g@V9!3Ml2fc zj0gcCxS>7FSQ!h1JHw%r5DrWc%s_vn$5=2Pspv>nJP?UiU|bcO!ohe&`+|xE724RZ zk|TtX*kpyP9aRFnikKsigfAR4q@qDq^XH)UJ5k(;qi+Z9$ z0`oUPl9iE!kP5c1h{7!#MQ4mFqUuDpdOAblIH}*Q1dp*tj7?$TBgLP}SsE7VQ;7s3 zQriaAJ!;oM?+BI)c#< zMuAacQO*0Xb#E)1KZ)DCDG?5~g2{Axc+#{bDTF(k5g=C*0|*nwZq>OXNt!NI*%#T6 z2qw1FW5p%ecD)x%NS*v99~LSPbLke;7ZQK}6WWD^fr|}+-&rzkW*pJE||5NxU z*Kw!Yek#k^U;VSWoN{=M;w0U8lt&@|RQ}H@d<_2=M!>=@-^J)o_9eUm!t98UB|8?J&Y!-*vB6?J6`D(z)=6&G;aA|a7V z3SQh5|3YgHwH;a}apy`zge{644$q=Q_;V@r5^nV;BAapaZwx0d3nz;`%5@En_`;jR z?OZ$6b!EY%H@Z3Y*>IwaOGR8Ey2sR&wFTRg;j+6H&A)7WYU9iHCuw}B_eJxk__}ER zyf{Nrq|X>aG=U3(wh Y%k8V#=iJBd^Y2@|4@w_D|K}p`pQ;$2c>n+a