Skip to content

Allow to apply NoHello independently of Magisk denylist #80

@llsant

Description

@llsant

Hi.

NoHello uses the root manager (Magisk, APatch, etc) denylist to know which apps to apply the unmounting rules to. This is a problem because there aren't that many Zygisk implementations and many of them block everything on the denylist including NoHello. That entails that the unmounts become all-or-nothing instead of following MRS rules. For instance, let's say an app tries to detect the su binary, but also, you want to apply MitmProxy module (which mounts a MITM TLS certificate in the system store).

If you use Magisk/APatch+ReZygisk, when you add the target app to the denylist so that NoHello applies MRS to it, ReZygisk detects that and applies its own unconfigurable "enforce denylist"-like feature. Everything is unmounted and modules are disabled for that app. So yes, the app doesn't detect the su binary but the MITM Magisk module doesn't work anymore even if you write NoHello MRS rules to avoid unmounting it.

To be fair, this is partially a problem on ReZygisk's side. But Zygisk Next is not open source anymore, fortunately Magisk's internal Zygisk allows not to use the "enforce denylist" feature, but not everybody uses Magisk.

So the ideal and most flexible solution would be:

NoHello: By default, keep operating as always for compatibility. But allow users to create a /data/adb/nohello/customdenylist or something like that, whose effect should be to ignore the root manager's denylist and instead apply MRS rules to listed packages inside that file.

ReZygisk: They should allow not to enforce denylist. That way, root stuff could be unmounted by NoHello but other modules would remain. I'll probably open an issue for them too.

Have a nice day.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions