Magisk General Support / Discussion

Search This thread


Senior Member
Last edited:
  • Like
Reactions: J.Michael


Senior Member
Hello folks,
I'm using the latest canary build of Magisk (23016) and am facing a CTS profile mismatch leading to me failing safetynet checks. I have zygisk on, I am using universal safetynet fix 2.2.1, magiskhide props config 6.1.2 configured to pixel 6 pro props with force basic key attestation enabled, and shamiko instead of the denylist. I also have xprivacylua installed on lsposed and even with disabling google play services tracking I still fail. Any idea what I could be doing wrong and how to fix it? Thanks

Edit: A temporary fix I found was resetting my props to default and spoofing them for certain apps like google photos using lsposed.
See, I am using pixel 6 pro props but not on a pixel 6 pro. That may be part of the issue, but my device doesn't even have props in magiskhide props config, and others on my device bypass with pixel 6 pro props.
I'm using a xiaomi redmi note 10 pro (sweet) on arrowos 12. A temporary fix I found was resetting my props to default and spoofing them for certain apps like google photos using lsposed.
How are you settling props in MHPC?

USNF includes everything you need unless ArrowOS doesn't spoof certified itself... If it does, you can disable MHPC altogether; you don't need Force basic key attestation either, and this uses basic model prop mismatch trick which can cause issues... Sounds like it's a prop change that's triggering Compatibility Test Suite (CTS) profile match failure anyway.

Only if ArrowOS doesn't spoof certified itself use MHPC to set a certified fingerprint; that's probably what those you report are 'using pixel 6 pro props to pass CTS profile match' are doing in reality; ONLY a passing certified fingerprint needs configuring for CTS pass in addition to USNF changes. 🙂 PW


Senior Member
Feb 18, 2019
Latest Shamiko:

Translation: zh-CN-en

Alpha will remove magiskhide once all popular Riru modules have released zygisk version and magisk stable version has officially released zygisk.‌‌

👀 PW
no changes from my side, the hiding feature is still not perfect.

furthermore, they have removed some "module notification" (i.e. number of impacted processess or denylist enabled, etc..etc..)


Senior Member
Feb 18, 2019
Ok, seems this may be an issue with ROM / kernel allowing leaks... (Hades is synonymous with DEATH, after all. 😉)...

Out of interest, I'm guessing you only get L3 security level for DRM Widevine in both of these Sammy devices?

So you are correct re. isolated process detection in SkyGo app. Specifically it detects the Digital Rights Management related VGDRM Helper service.

Nb. This service can.simply be blocked (working for a number of TV apps incl SkyGo):
- Download AppManager
- Open and check Services tab for your app, and block the VGDRM Helper service (click on the crossed circle icon) and click 'apply rules' in top (3 dot) menu.
- Thanks to @Longhorn87 for this solution! 👍

Again, some later commit has likely stopped the leaks detected while using MagiskHide / Hades... Of course we won't see the effect in Canary even if commit is in common as there's no Magiskhide...

No idea why Shamiko solution fails per ROM either, except that it's effectiveness / mileage does seem to vary greatly accross devices / OSs... Some configurations untested / unaccounted for?

I'd be interested to see your Momo results for Hades ROM with Alpha / MagiskHide / SkyGo working, and w/ Alpha / Zygisk / Shamiko / SkyGo detecting... 😛 PW
here you are.


Anyway, I knew and successfully tested the Longhorn's advice but I would have preferred a cleaner environment (and 1 app less in the system) !
  • Like
Reactions: pndwal


Senior Member
Oct 10, 2016
furthermore, they have removed some "module notification"
Yeah, unfortunately that useful info is removed now

Yuko Yoshida only thinks she has won now (これで勝ったと思うなよ)



  • Shamiko.jpg
    88.5 KB · Views: 53
  • Haha
Reactions: pndwal


Senior Member
Feb 18, 2019
Shamiko successfully hides root from Sky Go on LOS 17.1, even with MOMO status below. As said before, unfortunately it does not work on Hades ROM

  • Like
Reactions: pndwal


Senior Member
Apr 13, 2014


  • IMG_20220114_1.jpg
    390.4 KB · Views: 100
  • IMG_20220114_2.jpg
    400.6 KB · Views: 101
Last edited:


Senior Member
Oct 10, 2016
i presume you meant the reverse. at least this is how i see it. btw, you also seem to have got the hack working. (y)
I did it pretty easy, unzipped Shamiko 1.2 and 1.3 and compared the scripts. Difference is in two lines

So I basically copied over that script from 1.2 into the /data/adb/modules Shamiko folder and rebooted.
Seems the Engineer did some more adaptations (like translation of Shamiko sayings/phrases), but mine was a 1-2 minute work
  • Like
Reactions: Eng.Raman and m0han

Top Liked Posts

  • There are no posts matching your filters.
  • 7
    Latest Shamiko:

    Shamiko v0.5.0


    • Better hiding Zygisk
    "... Momo enjoys helping Shamiko become stronger in all aspects despite Shamiko's goal of defeating her..."

    👍 PW

    Latest Official TJW debug Canary Magisk:​

    Magisk (cc79a96f) (24307)​

    • [App] Update libsu with 100% new I/O layer
    • [MagiskInit] Mock enforce file with regular file to prevent possible race condition
    • Switch normal NDK with ONDK, preparing the toolchain to introduce Rust

    Diffs to v24.3​

    • [MagiskInit] Update 2SI implementation, significantly increase device compatibility (e.g. Sony Xperia devices)
    • [MagiskInit] Introduce new sepolicy injection mechanism
    • [MagiskInit] Support Oculus Go
    • [App] [MagiskSU] Properly support apps using shared UID
    • [MagiskSU] Fix a possible crash in magiskd
    • [Zygisk] Fix function hooking on devices running Android 12 with old kernels
    • [BusyBox] Add workaround for devices running old kernels

    👍 PW
    Looks like major libsu release is now imminent; most fixes are now merged.

    Should see major stability improvements in Magisk and root app implementation... Should see new commits for Magisk proper again soon too!

    John has made some major libsu changes (see libsu GitHub).

    Here are extra comments on vvb2060 fixes from her TG (Chinese translated....

    👀 PW
    libsu 5.0.0 is out!



    Check the updated Javadoc and the example app for details on how to use the remote file system in the new nio module.

    New Features​

    • Introduce a new module: nio
      • Includes file system implementations for local and remote processes
      • New FileSystemManager class to access either local or remote file system implementations
      • New ExtendedFile class to extend functionality of the old Java File API
    • [core] New API Shell.isAppGrantedRoot() returns a nullable Boolean:
      • true if a root shell has been created
      • false if it has been determined that root access is impossible to get
      • null if the library has not, or could not determine the current root grant state. Future invocations of this method may return a non-null value if the library gained more information during shell creation.
    • [core] New API Shell.Builder.setContext(context): allow the developer to explicitly provide a Context object
    • [io] SuFile is updated to also extend ExtendedFile, which adds some new features and APIs


    • Version 5.0.0 will be the final release of the busybox module. If you cannot remove the usage of the module, you can pin the busybox module to version 5.0.0, as it is updated to be fully self contained, making it guaranteed to work with future libsu versions.
    • Usage of SuFile/SuFileOutputStream/SuFileInputStream/SuRandomAccessFile is discouraged. Although these APIs will remain for the foreseeable future, please migrate to use RootService + the nio module for all root I/O operations.
    • Shell.rootAccess() is deprecated. Please switch to use the more accurate Shell.isAppGrantedRoot() API

    John Wu, 2h

    Major libsu update 5.0.0!

    Introduces a new module "nio" to perform I/O operations through root services, moving away from the error prone, inefficient shell command backed I/O the library used to provide.

    It's already using splice under-the-hood. There is already some Linux magic!

    New readme etc. Read how you can Attach Debugger to Android Process in Root Services and more!


    ... Back to regular Magisk programming... PW
    Latest Official TJW debug Canary Magisk:

    Magisk (985249c3) (24309)​

    Pixel 6 Android 13 Beta 2 support is here!

    • [App] Support requesting root from non app process
    • [App] Fix deadlocking a background thread on non-root devices
    • [MagiskInit] Support GKIs with no ramdisk (Pixel 6 Android 13)

    Diffs to v24.3​

    • [MagiskInit] Update 2SI implementation, significantly increase device compatibility (e.g. Sony Xperia devices)
    • [MagiskInit] Introduce new sepolicy injection mechanism
    • [MagiskInit] Support Oculus Go
    • [MagiskInit] Support GKIs with no ramdisk (Pixel 6 Android 13)
    • [App] [MagiskSU] Properly support apps using shared UID
    • [MagiskSU] Fix a possible crash in magiskd
    • [Zygisk] Fix function hooking on devices running Android 12 with old kernels
    • [BusyBox] Add workaround for devices running old kernels

    👍 PW
    Yep, trying to install/run 24308. unfortunately I don't recall the version I had running prior to the factory reset
    Confirms my theory...

    I was asking about wipe type as this issue occurs when root is lost... It may occur with root if app cannot detect it too, eg you installed Magisk app, ran Hide the Magisk app function, subsequently updated the app or manually installed another and it didn't detect / remove the hidden (obfuscated) one and subsequently you have a case of DCAS* which results in Magisk Installed = N/A

    [*Dual Conflicting App Syndrome]

    Since you indicated you had rooted boot image and factory reset (?) only, root loss does seem unlikely, but could be explained by DCAS if you did in fact play with Hide the Magisk app, or actually flashed images since factory reset, or even ran Magisk in-app Uninstall before doing f reset / wipe...

    However If my deductions are correct you seem to have this issue:
    Magisk app ANR on non-root devices #5787

    Fix is already merged but not built yet:
    0ac19e3 Fix app running without root

    I mentioned this here:

    If you think I'm right, until next Canary release you can either 1) locate and uninstall conflicting hidden app ('System' or whatever you renamed it) in device settings, apps [if this accounts for Canary app not finding root], then 24308 should work, or 2) install either this test build: (extract from artifacts), 24306 or earlier Canary, or 24.3 Stable [if hroot has really been lost / boot image restored etc], then use working Magisk App to do initial patching again...

    Hope I'm on the money...

    🤠 PW
  • 1077
    This is the place for general support and discussion regarding "Public Releases", which includes both stable and beta releases.
    All information, including troubleshoot guides and notes, are in the Announcement Thread
    Hello, I haven't given much support on XDA lately. It can be resulted from
    • University started and I have limited free time. In fact, I mostly develop during midnight
    • I live in Taiwan, which has large time zone differences between my European/American contributors/testers, which usually forces me to stay up late at night to discuss/test stuffs.
    • The new version is about to come, I don't want to spend effort on supporting old releases
    The planned update is delayed again and again, to some point I think I'll shed some light about what has been happening lately, also along with some announcements.

    New Forum!
    As you might have already discovered, Magisk got its own subforum on XDA! Many thanks to all the support you gave me, and much more information/features/support is about to come!
    **For developers supporting all the devices that are not using standard Android boot format, feel free to create threads in this section (actually, PLEASE do so) for your favorite devices after v7 is out. As I currently know, Asus devices require signing the boot image before flashing, and is model dependant; Sony devices seems to use ELF kernel that is unpatchable, or some has two ramdisks (inner + outer), both requires different workarounds; LG bootloader locked devices has to manually "BUMP" the boot image after flashing Magisk..... and there may be lots of other crazy boot image formats that haven't come up to my attention yet.
    It is impossible for me to support all these non-standard boot images, and I hope the community can collaborate to make Magisk running across all the devices. Overall, community collaboration is what XDA about :D

    The Pixel Phone
    Some of you might already know this news, that the next Pixel Phone right around the corner seems like it does not have ramdisk in boot image, which pretty much wrecked Magisk in all ways. However, it pretty much doomed root itself too. Kernel modifications is inevitable IMO, so I'll try to migrate my scripts to C programs that could possibly be included into the kernel itself. Note that I'm not familiar with linux kernel, I'm not even sure if my idea and concept is correct or not. But once the device is available, I think developers will find a way to bypass all the difficulties, and I'll do my best to learn things ;)

    Current Progress
    In the past month, I've spent quite some time learning SELinux, so that I can avoid using SuperSU's sepolicy patches. Thanks to the helps and tips from @phhusson and @Chainfire, I finally have a much clearer understanding of how SELinux works. The Magisk core parts (the scripts, boot image patches, new features, more supports) are actually done some time ago. What is causing all the delays is the Magisk Manager.
    To be completely honest, although I can code in Java without much issues, Magisk Manager is actually my first Android application, I had to reach out for assistance, and fortunately awesome developers like @DVDandroid and @digitalhigh contributed a lot, which makes the current Manager awesome.
    After the repo system and module management is mostly done, I was about to do some adjustments and release, but what we really done is decided to add another feature: auto-unroot with per-app settings. I decided to wait for it to be finished, and then do my adjustments. Due to reasons that'll be mentioned later, this feature will likely not be available for the next release (should come in future updates)

    Safety Net Disaster
    Those who are using Magisk for Safety Net bypass purposes must have known that Google recently updated the detection method of my Systemless Xposed. I still have no idea what Safety Net is detecting, so currently I cannot fix it on my side (also because I'm busy working on the next update). However, suhide developed by @Chainfire is able to hide Xposed and worked fine.
    However, only my Systemless Xposed v86.2, which is based on SuperSU's su.d, is supported using that method. v86.2 and v86.5 (latest, Magisk based) have nearly identical binaries, and the only difference is the path where the binaries are stored.
    I'm still not sure what's the real issue for it not being supported, I just hope it is not done intentionally.

    Due to the fact that my Safety Net bypass is not 100% perfect now, I do not want to spend any more time waiting for auto-unroot to be polished. What I'm doing now is finishing up all the things I'd like to change in Magisk Manager (it has been a while since I last contributed to Manager, my fellow developers are doing all the heavy job), which might take a little more time, after that, packed with tons of information to be announced in Magisk Section, I'll release the long awaited update.

    Hope this lengthy post gives you the idea of the whole situation, and again thanks for all your support!!
    Ah, some Chainfire bashing, I hope it is not too late for me to exercise additional villainy.

    First, let me make clear I have nothing against @topjohnwu, nor against Magisk. Magisk is an interesting project and it certainly displays @topjohnwu ingenuity and persistence. I don't doubt we will see more interesting things from his hands.


    What has happened here is not all that dark and complicated, from either end. I returned from holidays, and someone pointed me at Magisk. My first thought: interesting!

    Among other things, the thread lists some issues with SuperSU, which in combination with the phrase The developer also requests users to not bug Chainfire with compatibility requests for SuperSU with Magisk from the portal article, raised my left eyebrow by nigh half an inch. The popular systemless xposed mod is apparently now based on it, and apparently it now no longer works with SuperSU, and apparently I'm not supposed to fix that, nor any of the other found issues. I found that a bit weird. So yes, I have told @topjohnwu that I was a bit surprised he was posting about issues with SuperSU without notifying me about them (I can't fix or help fix issues I'm not aware of, after all).

    He's also spreading a modified version of the SuperSU package, which is not all that uncommon, nor necessarily a problem. I have not looked into what he modified, I only ran a few quick tests on one of my devices, and found some commonly used commands run as root to be broken. I have informed him of this as well.

    It appears the tool of choice for Magisk is phh's Superuser, because of some of the mentioned issues with SuperSU. That's fine by itself, but fixing issues in that superuser by incorporating SuperSU's binaries into it is a somewhat questionable practise. After all, SuperSU is a commercial closed-source package that helps pay for my dinner, and superuser is a direct competitor. I have informed him that I was surprised he did this without asking for permission. I have expressed similar surprise on him spreading a modified version of LiveBoot (which helps pay for a snack now and then).
    @topjohnwu has also stated that Magisk's scripts are largely influenced by mine (I have not checked). Scripts based on mine are used all over the place on XDA, some people have crafted amazing things based on them, I have never made an issue of this (otherwise I would have just made them binaries). But yes, I have also stated to him that I don't think it's very nice to base something on one program, and then using that to (almost exclusively) push something directly competing with that program.

    tl;dr Towards @topjohnwu, I have:
    - expressed surprise he has issues getting Magisk to work with SuperSU, and has chosen not to inform me about those
    - expressed surprise he is using SuperSU binaries in a competing superuser without permission
    - expressed surprise he is posting a modified LiveBoot without permission
    - informed him of issues with the modified SuperSU he has posted
    - let him know I thought it wasn't very nice to be applying my scripts to benefit seemingly exclusively that same competing superuser

    To be crystal clear:
    - I have not asked for an apology
    - I have not asked for Magisk to be abandoned, neither the root hiding nor systemless module parts, and certainly not systemless xposed
    - I have not made an issue of any of this anywhere, until this post
    - I have not even specifically asked for anything to be taken down (though obviously in my opinion the other superuser package mixed with SuperSU's binaries, as well as the LiveBoot package, should go)
    - I have not reported this thread to XDA moderators for copyright violations or otherwise

    While my conversation with @topjohnwu may not win any awards for being friendly (though it may win some for brevity), I think all things considered my response has been rather mild. To be perfectly honest, until the apology post, I thought this was over with already. I think the apology post was triggered because I haven't replied to his last PM for a while - I was in the zone, it happens.

    To emphasize again, I have nothing against @topjohnwu, Magisk, or systemless xposed, and it is certainly not my goal to see any of them go. If it can be made to work together with SuperSU, great.

    I get it though: you think of something, you want to see if you can make it work, you finally get it to work, you publish it, it takes off - enthusiasm gets the better of you. Maybe in the rush some mistakes are made. That doesn't mean you have to just drop it and run. None of my stuff would make it past 0.1 if I stopped at the first big mistake :)

    Aside from said being in the zone coding, I usually regret actually responding to these sort of things the day after, which has made me hesitant to reply. Surprise me.
    Thread temporarily closed so everyone sees this.

    The flood of "SafetyNet isn't working for me either!" posts are not helpful, at all. Please refrain from posting further, it will be looked into. Please do not forget that not passing SafetyNet is 100% NORMAL AND INTENDED when you have an unlocked booloader or running custom firmware. These are workarounds and they will be worked around in turn.

    The Flash
    Forum Moderator

    EDIT: Thread is reopened... I will be cleaning any SafetyNet posts for a while to keep the thread clean for real issues.
    Hello everyone!

    I am aware that Google has updated Safety Net that makes Magisk itself a no go for Android Pay. In fact, I witnessed the change live while I am developing the new magiskhide, which should hide all Magisk modules and Magisk installed root.

    Google is serious about Safety Net now, clearly hunting down all possibility to run Xposed with Safety Net passed. I spend quite some time examining the new security measures last midnight, and fortunately it seems that it is possible to run Magisk and root along with Safety Net if no Xposed is running. I'm glad I removed the old root toggle at the right time lol, that is no longer feasible with the latest detection.

    So stay tuned for the next update, it will come with bug fixes, along with the new magiskhide to bypass that Safety Net.

    Google, how will a few systemless mods do any harm :p:p