From 50d469cc45b1f851ea79c8e4125d1e6198afacd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=B8=BE=E7=91=B6=E7=B6=BE=E8=88=9E?= <62001729+PisLuanyao@users.noreply.github.com> Date: Sat, 9 Dec 2023 18:41:53 +0800 Subject: [PATCH 1/3] `Clover.cpp`: NoxAppPlayer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 夜神模拟器里的鸡脚so --- xposed/src/main/cpp/clover.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/xposed/src/main/cpp/clover.cpp b/xposed/src/main/cpp/clover.cpp index d2f91d3..b57fcf8 100644 --- a/xposed/src/main/cpp/clover.cpp +++ b/xposed/src/main/cpp/clover.cpp @@ -71,6 +71,7 @@ int fake_system_property_get(const char *name, char *value) { || strstr(value, "unknown") || strstr(value, "emulator") || strstr(value, "vbox") + || strstr(value, "nox") //部分NoxAppPlayer || strstr(value, "genymotion") || strstr(value, "goldfish")) { strcpy(value, "qcom"); @@ -99,6 +100,14 @@ FILE* fake_fopen(const char *filename, const char *mode) { if (strstr(filename, "libndk.so")) { LOGI("[Shamrock] bypass emu detection"); return nullptr; + } + if (strstr(filename, "libnoxd.so")) { //NoxAppPlayer + LOGI("[Shamrock] bypass emu detection"); + return nullptr; + } + if (strstr(filename, "libnoxspeedup.so")) { //NoxAppPlayer + LOGI("[Shamrock] bypass emu detection"); + return nullptr; } if (strstr(filename, "libdobby.so")) { LOGI("[Shamrock] bypass dobby detection"); From 48b1b40e1c37326c30904ebd52dcb7a30460bab7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=B8=BE=E7=91=B6=E7=B6=BE=E8=88=9E?= <62001729+PisLuanyao@users.noreply.github.com> Date: Sat, 9 Dec 2023 18:56:00 +0800 Subject: [PATCH 2/3] `Clover.cpp`: NoxAppPlayer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 也许是无效的? --- xposed/src/main/cpp/clover.cpp | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/xposed/src/main/cpp/clover.cpp b/xposed/src/main/cpp/clover.cpp index b57fcf8..6ff3210 100644 --- a/xposed/src/main/cpp/clover.cpp +++ b/xposed/src/main/cpp/clover.cpp @@ -101,11 +101,27 @@ FILE* fake_fopen(const char *filename, const char *mode) { LOGI("[Shamrock] bypass emu detection"); return nullptr; } - if (strstr(filename, "libnoxd.so")) { //NoxAppPlayer + if (strstr(filename, "libnoxd.so")) { //NoxAppPlayer LOGI("[Shamrock] bypass emu detection"); return nullptr; } - if (strstr(filename, "libnoxspeedup.so")) { //NoxAppPlayer + if (strstr(filename, "libnoxspeedup.so")) { //NoxAppPlayer + LOGI("[Shamrock] bypass emu detection"); + return nullptr; + } + if (strstr(filename, "nox-prop")) { //NoxAppPlayer (Useless?) + LOGI("[Shamrock] bypass emu detection"); + return nullptr; + } + if (strstr(filename, "nox-vbox-sf")) { //NoxAppPlayer (Useless?) + LOGI("[Shamrock] bypass emu detection"); + return nullptr; + } + if (strstr(filename, "noxd")) { //NoxAppPlayer (Useless?) + LOGI("[Shamrock] bypass emu detection"); + return nullptr; + } + if (strstr(filename, "noxspeedup")) { //NoxAppPlayer (Useless?) LOGI("[Shamrock] bypass emu detection"); return nullptr; } From cd19426d1b235df3f34f681a7b1997ff686dfe36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=B8=BE=E7=91=B6=E7=B6=BE=E8=88=9E?= <62001729+PisLuanyao@users.noreply.github.com> Date: Sat, 9 Dec 2023 19:14:22 +0800 Subject: [PATCH 3/3] `Clover.cpp`: NoxAppPlayer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 稍微动了一下,方便看,希望没搞错 --- xposed/src/main/cpp/clover.cpp | 47 ++++++++++++---------------------- 1 file changed, 16 insertions(+), 31 deletions(-) diff --git a/xposed/src/main/cpp/clover.cpp b/xposed/src/main/cpp/clover.cpp index 6ff3210..abee4b8 100644 --- a/xposed/src/main/cpp/clover.cpp +++ b/xposed/src/main/cpp/clover.cpp @@ -93,38 +93,23 @@ FILE* fake_fopen(const char *filename, const char *mode) { return nullptr; } - if (strstr(filename, "libhoudini.so")) { - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "libndk.so")) { - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "libnoxd.so")) { //NoxAppPlayer - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "libnoxspeedup.so")) { //NoxAppPlayer - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "nox-prop")) { //NoxAppPlayer (Useless?) - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "nox-vbox-sf")) { //NoxAppPlayer (Useless?) - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "noxd")) { //NoxAppPlayer (Useless?) - LOGI("[Shamrock] bypass emu detection"); - return nullptr; - } - if (strstr(filename, "noxspeedup")) { //NoxAppPlayer (Useless?) - LOGI("[Shamrock] bypass emu detection"); - return nullptr; + const char* emuSpecFile[] = { + "libhoudini.so", + "libndk.so", + "libnoxd.so", //NoxAppPlayer + "libnoxspeedup.so", //NoxAppPlayer + "nox-prop", //NoxAppPlayer (MayUseless?) + "nox-vbox-sf", //NoxAppPlayer (MayUseless?) + "noxd", //NoxAppPlayer (MayUseless?) + "noxspeedup", //NoxAppPlayer (MayUseless?) + }; + for (const char* keyword : emuSpecFile) { + if (strstr(filename, keyword)) { + LOGI("[Shamrock] bypass emu detection"); + return nullptr; + } } + if (strstr(filename, "libdobby.so")) { LOGI("[Shamrock] bypass dobby detection"); return nullptr;