Ferib Posted May 26, 2022 Posted May 26, 2022 Hello, would it be possible to have a Lua wrapper for `pthread_create` so we can create threads on the fly using the GG Lua API? I think more advanced people would greatly appreciate this as this would make GG more competitive against Frida, thanks. 2
MrKendom Posted May 29, 2022 Posted May 29, 2022 `pthread_create` is only on C++ / C Language , Lua has `coroutines` it does the same thing as threads , but Enyby has removed them for no reason maybe because they're useless in Game Guardian. 1
Ferib Posted June 6, 2022 Author Posted June 6, 2022 On 5/30/2022 at 1:02 AM, MrKendom said: `pthread_create` is only on C++ / C Language , Lua has `coroutines` it does the same thing as threads , but Enyby has removed them for no reason maybe because they're useless in Game Guardian. the pthread_create is indeed a native thing, what I meant is that I would like a Lua wrapper API to invoke the pthread_create so that I can spawn a thread on my injected assembly instructions. Lua coroutines are overrated btw 2
redalfil1 Posted August 6, 2022 Posted August 6, 2022 Um, yes, I think so! People were able to run Midnight Wild perfectly fine on the RS-97. I'll cross-post this in that subreddit, too. Thanks for the reminder.
redalfil1 Posted August 6, 2022 Posted August 6, 2022 Um, yes, I think so! People were able to run Midnight Wild perfectly fine on the RS-97. I'll cross-post this in that subreddit, too. Thanks for the reminder. tutuapp 9apps showbox
darklinux Posted August 9, 2022 Posted August 9, 2022 On 5/29/2022 at 4:02 PM, MrKendom said: `pthread_create` is only on C++ / C Language , Lua has `coroutines` it does the same thing as threads , but Enyby has removed them for no reason maybe because they're useless in Game Guardian. GG supports web requests via makeRequest, multi threading would help a lot when making multiple requests.
Ferib Posted August 9, 2022 Author Posted August 9, 2022 22 minutes ago, darklinux said: GG supports web requests via makeRequest, multi threading would help a lot when making multiple requests. Again I am not talking about multi-threading in the Lua side, just want to create a new thread on a asm function. Currently got around it by hooking a function and writing a small code cave to invoke thread creation.
darklinux Posted August 9, 2022 Posted August 9, 2022 (edited) 1 hour ago, Ferib said: Again I am not talking about multi-threading in the Lua side, just want to create a new thread on a asm function. Currently got around it by hooking a function and writing a small code cave to invoke thread creation. Ah, in that case I have a feeling GG will not support native threads. I do want to release a small shellcode lib for native functions. I have "LoadLibrary" working, next is CreateThread, VirtualProtect and so on. Should be easy to do with little asm. Edited August 9, 2022 by darklinux
HorridModz Posted November 18, 2022 Posted November 18, 2022 On 6/6/2022 at 7:27 AM, Ferib said: the pthread_create is indeed a native thing, what I meant is that I would like a Lua wrapper API to invoke the pthread_create so that I can spawn a thread on my injected assembly instructions. Lua coroutines are overrated btw This would be useful, but I believe gameguardian specifically does not want us to run our own code because of security. That's why lua scripts are sandboxed and have certain functionality, eg: file access, limited / entirely removed. Adding an option to inject assembly code would be begging for someone to come along and make a malicious script. Personally, I am in support of this. But AFAIK the gameguardian admins aren't.
Ferib Posted November 20, 2022 Author Posted November 20, 2022 On 11/18/2022 at 3:54 AM, HorridModz said: Adding an option to inject assembly code would be begging for someone to come along and make a malicious script. Personally, I am in support of this. But AFAIK the gameguardian admins aren't. You are such a joke, we can just write bytes into memory and have them executed by hooking a hot code path. Might as well hook the GG daemon and executed arbitrary code. -1
HorridModz Posted November 25, 2022 Posted November 25, 2022 On 11/20/2022 at 9:38 AM, Ferib said: You are such a joke, we can just write bytes into memory and have them executed by hooking a hot code path. Might as well hook the GG daemon and executed arbitrary code. Yes, I know this is possible and I've done it myself. But my theory for why this functionality is not included is that Enyby does not want it to be easy. It's impossible to prevent this from happening because you can use hooking, but it's more difficult when it's not baked into gameguardian. Also, please be respectful. The moderators on this site are very sensitive, and this post could easily get you a warning (which would give you a warning point that showed on your profile forever and reminded people you weren't a very nice guy).
CmP Posted November 26, 2022 Posted November 26, 2022 On 11/20/2022 at 4:38 PM, Ferib said: Might as well hook the GG daemon and executed arbitrary code. How to "hook the GG daemon" from script for GG? Or what is this supposed to mean? Where in a process that is selected in GG would there be anything related to GG daemon? As for executing arbitrary code, the approach from your previous sentence already allows that, but of course code can only be executed in context of the process that is selected in GG. So what does GG daemon have to do with this?
Ferib Posted November 28, 2022 Author Posted November 28, 2022 On 11/26/2022 at 2:16 AM, CmP said: How to "hook the GG daemon" from script for GG? Or what is this supposed to mean? Where in a process that is selected in GG would there be anything related to GG daemon? As for executing arbitrary code, the approach from your previous sentence already allows that, but of course code can only be executed in context of the process that is selected in GG. So what does GG daemon have to do with this? the GG daemon process is just an example, can be any process On 11/25/2022 at 5:00 PM, HorridModz said: Yes, I know this is possible and I've done it myself. But my theory for why this functionality is not included is that Enyby does not want it to be easy. It's impossible to prevent this from happening because you can use hooking, but it's more difficult when it's not baked into gameguardian. Your theory doesn't make much sense to me. All I requested was the use of `pthread_create` which you argue would allow code execution which can be achieved in different ways, no matter how dIfFiCuLt that is. But that is okay man, the reason we don't have it has to do with the fundamentals of Android.
CmP Posted November 28, 2022 Posted November 28, 2022 3 hours ago, Ferib said: the GG daemon process is just an example, can be any process This example doesn't make sense. Only memory of selected process can be modified. Scripts have no control over which process is selected. So the question remains, what does GG daemon have to do with this? 1
HorridModz Posted November 28, 2022 Posted November 28, 2022 10 hours ago, Ferib said: the GG daemon process is just an example, can be any process Your theory doesn't make much sense to me. All I requested was the use of `pthread_create` which you argue would allow code execution which can be achieved in different ways, no matter how dIfFiCuLt that is. But that is okay man, the reason we don't have it has to do with the fundamentals of Android. pthread_create is a feature of c++. Gameguardian does not encourage the use of running arbitrary c++. Why would they add to a feature when the feature is unwanted in the first place? 6 hours ago, CmP said: This example doesn't make sense. Only memory of selected process can be modified. Scripts have no control over which process is selected. So the question remains, what does GG daemon have to do with this? I think @Feribjust doesn't want to admit he made a bad example. He's doesn't want to admit he made a mistake, so there's no point arguing about it. 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now