Magisk General Support / Discussion

Search This thread

mermaidkiller

Senior Member
Jul 25, 2011
184
13
I use Termux. Sometimes I need a root shell, so I granted root permanently to Termux, so I can use 'sudo bash' in Termux. But, as there is no password prompt, this is actually a security flaw. So I wanted to revoke root access and grant root access only on demand, when I really need it.

Revocation succeeded, but I can only grant root access permanently and not temporarily. The latter only happens when I grant root access to an app for the very first time.
 

J.Michael

Senior Member
Jan 20, 2018
703
497
Samsung Galaxy Tab A series
I use Termux. Sometimes I need a root shell, so I granted root permanently to Termux, so I can use 'sudo bash' in Termux. But, as there is no password prompt, this is actually a security flaw. So I wanted to revoke root access and grant root access only on demand, when I really need it.

Revocation succeeded, but I can only grant root access permanently and not temporarily. The latter only happens when I grant root access to an app for the very first time.
Where does your "sudo" command come from?

I use Jack Palevich's Terminal Emulator. When I installed Magisk, I got an "su", but no "sudo". I defined an alias sudo='su -c' that works most of the time.

I told you all this so I could tell you: when I use "su", there's a pop-up asking me to grant permission. I always OK 10 minutes. I don't remember choosing my Superuser manager.
 

Didgeridoohan

Senior Moderator / Dev Committee / Dev Relations
Staff member
May 31, 2012
11,654
12,456
Gothenburg
Google Nexus 4
Nexus 6
I use Termux. Sometimes I need a root shell, so I granted root permanently to Termux, so I can use 'sudo bash' in Termux. But, as there is no password prompt, this is actually a security flaw. So I wanted to revoke root access and grant root access only on demand, when I really need it.

Revocation succeeded, but I can only grant root access permanently and not temporarily. The latter only happens when I grant root access to an app for the very first time.
Can't reproduce. If I revoke superuser access for Termux and then run su I can pick "forever", "once" or one of the set time periods.
 

pndwal

Senior Member
Jun 23, 2016
2,407
1,700
Sydney
Xiaomi Redmi Note 7

mermaidkiller

Senior Member
Jul 25, 2011
184
13
Can't reproduce. If I revoke superuser access for Termux and then run su I can pick "forever", "once" or one of the set time periods.
Now it worked:
Rather than turning off the switch on the right (which I did), I click long on 'Termux and click on 'Revoke' (on the right). Then it asks me for confirmation.
When I subsequently do a 'su' from Termux, the grant access prompt indeed appears.
So now it works.
 
  • Like
Reactions: ipdev and J.Michael

DiamondJohn

Recognized Contributor
  • Aug 31, 2013
    5,230
    4,852
    Sydney
    I use Termux. Sometimes I need a root shell, so I granted root permanently to Termux, so I can use 'sudo bash' in Termux. But, as there is no password prompt, this is actually a security flaw. So I wanted to revoke root access and grant root access only on demand, when I really need it.

    Revocation succeeded, but I can only grant root access permanently and not temporarily. The latter only happens when I grant root access to an app for the very first time.

    Where does your "sudo" command come from?

    I use Jack Palevich's Terminal Emulator. When I installed Magisk, I got an "su", but no "sudo". I defined an alias sudo='su -c' that works most of the time.

    I told you all this so I could tell you: when I use "su", there's a pop-up asking me to grant permission. I always OK 10 minutes. I don't remember choosing my Superuser manager.
    Just a guess as I never use Termux. I to use a standard android shell. And sudo is not supported. Its su in an android shell.

    As for asking for a password, thats how linux works NOT android. This is android. If anything whatever termux is, thats what would need to wrap a password request. But again, this is android NOT linux.
     
    Last edited:

    73sydney

    Senior Member
    Jul 21, 2018
    1,543
    1,252
    Sydney
    Google Pixel 2 XL
    @pndwal

    I haz made my first Magisk related issue, lets see how quickly it gets closed :) :)

    Born out of testing 4 ROMS this week is this "issue" was driving me nuts

    https://github.com/topjohnwu/Magisk/issues/4333

    Its not entirely out of bone idle laziness, but having to switch back after each module install was starting to get on my nerves :)

    I dont hover around github enough to know if its been mentioned before
     
    • Like
    Reactions: pndwal and ipdev

    pndwal

    Senior Member
    Jun 23, 2016
    2,407
    1,700
    Sydney
    Xiaomi Redmi Note 7
    @pndwal

    I haz made my first Magisk related issue, lets see how quickly it gets closed :) :)

    Born out of testing 4 ROMS this week is this "issue" was driving me nuts

    https://github.com/topjohnwu/Magisk/issues/4333

    Its not entirely out of bone idle laziness, but having to switch back after each module install was starting to get on my nerves :)

    I dont hover around github enough to know if its been mentioned before
    Was about to say I think It'll be considered, but see it's more than that already. 👍

    Re. idle laziness, I agree with John that Open Source is great!
    John Wu, ?

    I love the fact that despite being lazy, haven't worked on Magisk for almost a week, quite a few people start creating PRs to fix some regressions, burning down a lot of issues

    Gotta say,
    Open source sure is quite a nice thing! Maybe I should be lazy more often in the future /jk 😛
    Could be no coincidence that Chris is on it though; what's with you compulsive testers / gluttons for punishment? 😜 PW

    https://qablog.practitest.com/should-all-testers-have-ocd/ PW
     
    Last edited:

    ipdev

    Recognized Contributor
  • Feb 14, 2016
    1,370
    1
    1,540
    Google Nexus 10
    Nexus 7 (2013)

    pndwal

    Senior Member
    Jun 23, 2016
    2,407
    1,700
    Sydney
    Xiaomi Redmi Note 7
    It is just good testing. ;)
    Does it work.
    • No - Try to fix it.
    • Yes - Find a way to break it.

    The next step is figuring out why it doesn't work on one device when it works on the rest.
    This is the difficult step.

    Cheers. :cowboy:
    Quite.

    I had my tongue firmly in my cheek when I said that, but fully appreciate testing efforts / methods / benefits to all of us, yours included!

    FWIW, I don't think it's bone idleness or lazy to work for an easier testing setup either. After all, John happily accepted @vvb2060's Auto close issues bot. 😬

    ... But then, he IS lazy... Said so himself! 😜

    Incidentally, I hope I speak for most of us here in saying that we do this largely to entertain ourselves (for fun). Of course, offering help to one another and educating ourselves is the main aim, but I hope we can have a bit of fun in these forums from time to time without being taken too seriously...

    I make this comment after just having had a post w/ link to Monty Python's original 'I don't like Spam' sketch (along with others that inspired Python programming code) removed from 'Spam Users' thread. This, to me, is a real irony. 🙃 PW
     
    Last edited:
    • Like
    Reactions: 73sydney and ipdev

    pndwal

    Senior Member
    Jun 23, 2016
    2,407
    1,700
    Sydney
    Xiaomi Redmi Note 7
    I don't like SPAM!

    I still haven't figured out why some of the Python's bad sketches became so popular.

    :unsure:
    But you HAVE figured it out. It's precisely BECAUSE they're so bad!... And nerds / geeks do still have a sense of humour (of sorts 😉), at least when they take a break. 😁

    But what would I know? I have a real job 😜 n just do this for kicks... Better ask likes of Guido van Rossum...

    My response in that thread has survived till now, and was appreciated by one XDA mod with a sense of humour / history. (He liked the original sketch links in less than 30 secs, and commented they are 'finally, some worthwhile spam', but his posts were expunged also). Something there may give a clue:
    https://forum.xda-developers.com/t/spam-users.306366/post-84980987

    EDIT: Too late: Other mod removed it. 🙁
    Thread:
    https://forum.xda-developers.com/t/spam-users.306366/

    My post was a bit too dry. :p

    Sometimes I just need to remember to look on the bright side of life. ;)
    ALWAYS!
    PS.
    Sorry all for the OT.
    Re. OT: As the man with the wooden leg said, it's a matter of a pinion.

    Eg. ONLY Download official Magisk from JOHN Wu's official GitHub! There are some 3300 other Magisk forks on GitHub alone. Some of these are DIRTY!

    Surely, the need to beware of a Dirty Fork is very much ON Topic! ... Here's a subtle reminder:
    😜 PW
     
    Last edited:
    • Like
    Reactions: 73sydney

    pndwal

    Senior Member
    Jun 23, 2016
    2,407
    1,700
    Sydney
    Xiaomi Redmi Note 7
    Latest Debug (Canary)
    Changelog and Release Notes:

    Magisk (6b34ec3a) (22105)​

    • [MagiskHide] Some changes that prevents zygote deadlock
    • [General] Update BusyBox to use proper libc
    • [App] Fix issues when patching ODIN tar files when the app is hidden

    Diffs to v22.1​

    • [App] Update snet extension. This fixes SafetyNet API errors.
    • [App] Fix a bug in the stub app that causes APK installation to fail
    • [App] Hide annoying errors in logs when hidden as stub
    • [App] Fix issues when patching ODIN tar files when the app is hidden
    • [General] Remove all pre Android 5.0 support
    • [General] Update BusyBox to use proper libc
    • [MagiskPolicy] Remove unnecessary sepolicy rules
    • [General] Fix a C++ bug that causes undefined behavior
    • [MagiskHide] Update package and process name validation logic
    • [MagiskHide] Some changes that prevents zygote deadlock
    https://github.com/topjohnwu/magisk-files/tree/9d8ae9c501f3975a9a548a5d2dff440d9ce9b8a2

    Don't you just love Mondays!

    Flashed fine on RN8T, SafetyNet, modules fine incl. Viper!

    Nb. Fix for image patching on Samsung devices.

    Thanks to John and colaborators! 👍 PW
     
    Last edited:

    73sydney

    Senior Member
    Jul 21, 2018
    1,543
    1,252
    Sydney
    Google Pixel 2 XL
    Was about to say I think It'll be considered, but see it's more than that already. 👍

    Re. idle laziness, I agree with John that Open Source is great!

    Could be no coincidence that Chris is on it though; what's with you compulsive testers / gluttons for punishment? 😜 PW

    https://qablog.practitest.com/should-all-testers-have-ocd/ PW
    Awww, i expected some sort of witty comeback after which id have to remind you that i "know where you get your coffee in the morning" :)

    But no....

    So disappointed :)

    And yes, it was nice to have my issue greenlit by @osm0sis, its amazing what you can get through the gatekeepers ...all it takes apparently is a cogent argument or report....who knew? :)
     

    JustinChase

    Senior Member
    Jan 31, 2007
    345
    44
    I think I remember seeing something a while back that Magisk manager merged with the App, but I still have both when I open Magisk. This is fine, but whenever I update the App, the Manager immediately shows an update to the same version, so I think maybe they are both not necessary any more.

    Also, whenever Magisk tells me (via notification) there is an update, when I click download, it does, but the resultant file gives an error when I click on it, so I have to update from within the App itself.

    Is there anything I should do at this point to consolidate, or is this just how it works now.

    thanks for the help/guidance
     

    J.Michael

    Senior Member
    Jan 20, 2018
    703
    497
    Samsung Galaxy Tab A series
    I think I remember seeing something a while back that Magisk manager merged with the App, but I still have both when I open Magisk. This is fine, but whenever I update the App, the Manager immediately shows an update to the same version, so I think maybe they are both not necessary any more.

    Also, whenever Magisk tells me (via notification) there is an update, when I click download, it does, but the resultant file gives an error when I click on it, so I have to update from within the App itself.

    Is there anything I should do at this point to consolidate, or is this just how it works now.

    thanks for the help/guidance
    I am having trouble understanding what you are reporting.

    There used to be an .apk file used to install Magisk Manager on a device. It was just an Android app. There was also a .zip that could be flashed using TWRP to inject Magisk into various parts (partitions) of your system. And a .zip that could be flashed using TWRP to undo the changes to the partitions.

    The "merger" was of these files: Now you download a magisk.apk. Use it in Android, and it installs the Magisk Manager app. Rename it to .zip and you can use it in TWRP to install Magisk. Further rename it to "uninstall.zip" and you can use it in TWRP to uninstall Magisk (the real guts of Magisk, not the Magisk Manager app -- that's just an Android app, you uninstall it like any other app).

    When you run the Magisk Manager app and it talks about the Manager, it's talking about itself.

    Go through your Android Apps drawer and make sure that you do not have more than one Magisk by any name.

    Someone else will have to help with the "update Magisk" problem.
     
    • Like
    Reactions: pndwal

    pndwal

    Senior Member
    Jun 23, 2016
    2,407
    1,700
    Sydney
    Xiaomi Redmi Note 7
    I think I remember seeing something a while back that Magisk manager merged with the App, but I still have both when I open Magisk. This is fine, but whenever I update the App, the Manager immediately shows an update to the same version, so I think maybe they are both not necessary any more.
    Still 2 components, no longer released separately but both still needed and both require updating.

    New single package delivery explained by John in Release Notes:
    https://topjohnwu.github.io/Magisk/...agisk-manager-is-deadlong-live-the-magisk-app
    Also, whenever Magisk tells me (via notification) there is an update, when I click download, it does, but the resultant file gives an error when I click on it, so I have to update from within the App itself.

    Is there anything I should do at this point to consolidate, or is this just how it works now.

    thanks for the help/guidance
    If working from within App, seems all is as it should be with Magisk. May be a general issue with package installer (settings / other) on device. What is the error? PW
     

    Top Liked Posts

    • There are no posts matching your filters.
    • 8
      That is the most wrong statement. If Google didn't has no issues with having root, there would not magsikhide. Just that statement alone conflicts with itself. MagiskHide hides root... Google has a problem with hiding root and not root, then why hide it? Why is there basic attention and cts profile check? Now a hardware check? Root, on Android is what they don't want, or else there would be no need for a modified kernel, we would all have root like on Linux desktop... Any terminal on desktop has root instantly, Android doesn't.. They did pretty damn good job of taking something away they wanted to have all along right? Wow.
      This whole discussion took a bit of a turn, and I'm not gonna get further into that. But, you might want to reread what I said again: "Google has no interest in preventing root". That statement doesn't say anything on how Google think about root in security terms (and I'm talking about the Google security team here, which John now is a part of).

      We're talking about different things, I believe...

      You're talking about the security aspect, which Google cracks down on (since generally, rooting a device compromises the systems security), and I'm talking about just being able to root your device regardless of if SafetyNet triggers or not.

      If they wanted to, Google could make it so much harder (impossible?) to root your Android device... From statements I've seen from Google security team members, that's not on their agenda. But of course, beefing up the security on Android in general might have the unfortunate side effect of accomplishing the same thing.
      8
      From what John has said on Reddit and behind the scenes, recanting on some made statements, he can not touch magisk at all not speak on it anymore.
      Most here are aware of that quote, and as has been pointed out, it was private, he didn't 'say it on Reddit', it was only part of a much longer communication and the 'leak' was not appreciated, but my guess is that many colaborators will be in the loop.
      Since he does own the repositories for magisk so we could see them just disappear. He can't push an update which only he can do, so it's either fork it and go that route, which he knows all the ins and outs of magisk and now works for Google(2+2 says he will spilling the beans on the background to block it), I believe they have him on a gag because conflict of interest with magisk sidestepping their security system.
      I don't think G needs him to spill the beans on 'blocking' Magisk; they're quite aware of how it works. It's source is open, after all...

      But if you meant blocking attestation spoofing / bypassing (MagiskHide, some modules, and other), they already know how to make this foolproof. It does require compliant hardware to implement however, and it seems that when some target percentage of devices have launched with tee, a switch will be flipped, and spoofing attestation, and hence MagiskHide at least outside of userspace (ie bootloader Unlocked / verified boot, will become impossible for practical purposes for most users.

      MagiskHide will still be able to hide root from apps within userspace, but these can still check secure boot status through tee attestation, and will likely report 'root/jailbreak' but actually mean 'insecure boot environment'.

      Expect the pool of those still able to hide bootloader status to be reduced, for practical purposes, to those running custom OSs with inbuilt spoofing or Magisk on devices with launch version < or = to Android 7 (last version without requisite keymaster 3) overnight. (Nb. Hardware-backed Keystore began to be hardened from Android 6)
      https://source.android.com/security/keystore

      Hardware TEE of course, stands for Trusted Execution Environment, and it is not just implemented by Google.

      It actually facilities security in RISC, IBM, AMD, Intel, Apple, as well as Qualcomm, MediaTek, Samsung and Huawei SOCs running various systems. Here's an article focussing on ARM implementation:
      https://embeddedbits.org/introduction-to-trusted-execution-environment-tee-arm-trustzone/

      Interestingly, it states:
      TEE is not the solution to all of our security problems. It is just another layer to make it harder to exploit a vulnerability in the operating system. But nothing is 100% secure.
      You can't work for somewhere and have an ap they completely bypasses their OS without a amjor conflict of interest.
      Well, it doesn't bypass it; it gives superuser access as well as ways to overlay mods on an OS, and both things are certainly allowed by design if bootloader is unlocked.

      There are ways to prevent such unlocking, but Google doesn't do that. That's not to say they don't know how however. That would be laughable; It is their system (both open source Android framework and proprietary apps). They simply leave that to OEMs to implement, and, of course, a number take such measures.
      https://support.google.com/accounts/answer/9211246?hl=en
      Google doesn't even want you using a "modified system" to access your Google account. Google has major issue with root.
      They NEVER said that.

      They have protected their proprietary apps by forbidding bundling GApps with custom ROMs, originally ordering Steve Kondik to 'cease and desist' bundling with CyanogenMod, but offered an olive branch in quick succession when he assumed project was dead, allowing individual users to sideload the same, and sites like OpenGApps to host them.

      They have also expressly stated they DON'T oppose either root or custom ROMs, even recently. Eg from Tech Lead for Android hardware-backed security subsystems:
      Shawn Willden, May 19

      The Platform Security team has never been opposed to modding/rooting (and most of us are firm believers in users' right to own their devices), but remains firmly focused on maximizing security for the 99.99% of users who don't. Root weakens the security model.
      www.twitter.com/shawnwillden/status/1394665579076743175

      In line with the above, they state clearly that if you choose to mod your device, "you lose some of the security protection provided by Google", and they do have recommendations, including "Use a different device for important accounts & sensitive data"
      https://support.google.com/accounts...s-with-modified-rooted-android-versions?hl=en

      Also, rather than prevent their own proprietary apps from running in custom modded systems, they allow these to appear on PlayStore and be used freely. Very few are restricted at all, unless for good (security, corporate partners requirements etc) reason. GPay comes to mind here.

      They could, of course, prevent this (especially when HKA is fully functional), simply by requiring PlayProtect Certified Device, but so far they have PURPOSELY allowed custom modders even with uncertified (Chinese etc) devices to add their devices to their online White List that allows them to run the very GApps (without spoofing) that they were prevented from using w/ stock ROMs.

      This sets an example to others (wish likes of Maccas would wake up), but SafetyNet API and PlayProtect certification are available for apps / code deemed a security risk... Of course, SafetyNet Implementation can be abused, but Google's stance is that the code's author has the right to be informed about the execution environments status and make such decisions.

      Interestingly, it seems not only that Google is unopposed to custom ROMs, but they are not averse to the idea of certifying these / issuing appropriate signing keys so bootloader can be locked to allow full SafetyNet pass (with no spoofing), and GApps can be included legitimately. Of course, this solution evidently precludes root.

      The spiritual successor of CyanogenMod, LineageOS, is in a good position to get such an agreement as they already take pains not to 'subvert Google's security model', never bundling GApps, pre-root, signature spoofing (MicroG would come unstuck here 😉) or any other spoofing mods or techniques. Note this conversation between Shawn and Luca Stefani ('Director for LineageAndroid & Developer'):
      www.twitter.com/shawnwillden/status/1238161446200127488

      That ones been a while (time of initial Google Hardware Key Attestation testing), but I hope we see more on the front. 😛

      In short, Google is against subverting their security model, which includes SafetyNet implementation which ALLOWS code to run in insecure environments (even with superuser privileges) WITHOUT subverting it, by making TEE attestation results available to interested parties. Hardware TEE just ensures that the attestation is accurate... And Google didn't invent it either!

      Here's a bit I posted re. mainstream influence on Google's decision to implement Hardware backed attestation for for verified boot and Trusted Execution Environment:
      https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-83280363

      I don't want to take sides in this; only to give perspective. There's certainly room for many viewpoints. Take what John said on the subject just 4 months ago:
      https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84398495

      ... I wonder what he's thinking now! 😜 PW
      8
      there is no access via terminal

      i installed my fave module, debloat, but of course cant access it...they were serious about the lite part :)

      As for the install of lite...i installed the apk and patched a boot img, had no errors

      v4a/vanced youtube doesnt work either, now i really want to die :)

      going to bed finally, in disgust
      Installation of modules works in Magisk Lite but with some additional tricks:

      1) When you install a module from Magisk Lite app, it creates its folder in:
      /data/adb/modules_update

      When you reboot, Lite will not read that folder and the module(s) will not really be installed/updated (instead, they would be next time when you boot to Stable/Beta/Canary/Alpha, because they do read from /data/adb/modules_update)

      Hence:
      - Install one or more modules you need
      - Use MiXplorer (or another root explorer), or terminal and mv command, or rename it by TWRP:
      /data/adb/modules_update
      to:
      /data/adb/lite_modules_update
      -Reboot, Magisk Lite will properly finish installation of your modules and you will find them in:
      /data/adb/lite_modules

      2) MHPC: I successfully installed but in terminal it doesn't recognize the props command.
      Something is wrong with the path

      You can still use MHPC by invoking instead:
      /system/xbin/props

      3) Similarly for BusyBox NDK. It was installed to /system/xbin

      Indeed, you can list all its commands by:
      ls /system/xbin

      4) I have successfully installed Vanced YouTube root (latest v16.16.38) as a module:

      No ads, background playing, all ok

      5) Smali patcher - Safe Screenhot Mode (allowing to screenshot from apps otherwise not allowing the screenshots)

      E.g., I can make screenshots from Chrome Incognito window

      6) If your debloater uses terminal and installs to /system/xbin, you should be able to exploit as explained above for MHPC and BB

      However, I use my own Systemless Debloater that does not use command line interface (terminal):

      and I have successfully debloated all the same 32 system apps as I do with Magisk Stable/Canary/Alpha

      7) I have manually copied hosts folder from:
      /data/adb/modules/
      to:
      /data/adb/lite_modules/

      and got the adblocking work.
      However, Adaway does not know for that folder and if you update/change anything in AdAway, it will write to its regular modules/hosts folder (but you can always copy again the same folder or just its etc/hosts file)

      9) I didn't try with Viper4Android (I'm already back to Magisk Beta with 'regular' modules) but I believe the installation should work the same way I always install it to Stable/Canary:

      And Lite should similarly work for other modules


      I have some issues with MixPlorer though in Magisk Lite (although I completely uninstalled and reinstalled MiXplorer):

      9) MiXploree was granted root and it works but AFTERWARDS Magisk Lite app shows that Magisk is not installed and I simply have to reboot to get Lite properly working again

      10) MiXplorer can only see the stock content in /system/xbin, i e. without props and BusyBox commands (btw, ls from terminal works fine)

      Same for all other folders being overlaid by Magisk systemless mounting - MiXplorer always shows their stock content while terminal su commands work with the Magisk overlaid content


      But altogether, it would be possible to live with Magisk Lite - even the modules work


      Edit:
      I have Magisk apps Canary, Alpha and Lite downloaded and renamed like:
      Magisk-Lite-7717f0a6(23001).apk

      I have also my boot.ing patched by Magisk Canary, Alpha and Lite and renamed like:
      boot-Magisk_Alpha_23001-xiaomi.eu_multi_HMK20MI9T_21.5.20_v12-11.img

      When I want to switch, I simply install the right Magisk apk, flash the corresponding img from TWRP (or Fastboot) and reboot

      When going from Stable/Canary to Aplha/Lite (or vice versa), that previous Magisk app must be uninstalled because of different signatures

      When installing the Alpha or Lite apk I was asked by Play Protect to send the report - I ignored and upon rebooting with Magisk and MagiskHide properly back on, Play Protect was always ok
      7
      Is this a bug or a feature?
      Feature, and has been like that since very early in Magisk's history. Magic mounting files and folders to the root of /system, that doesn't previously exist there, can cause all kinds of weird issues.
      7
      FWIW, as there is no news of updated Magisk from John Wu, I'm now running Alpha Magisk and Magisk App from dev @vvb2060 (Nangong Xueshan).

      Seems his App maintains connection to standard Stable / Beta / Canary channels from topjohnwu, but adds his Alpha (Bleeding edge) channel:
      https://github.com/vvb2060/magisk_files/tree/alpha

      Click View code, Download / install app-release.apk 👍

      Screenshot_2021-05-29-17-24-43-651_com.topjohnwu.magisk.jpg


      No problems running this Alpha so far. 👍

      - Nb. Unhide Magisk App if changing to this. Conflict with hidden Apps are still occurring.

      Alpha adds new / experimental commits. Some of these already have pull requests in John's Magisk GitHub.

      Nb. John Wu recently changed his description of debug Canary builds from 'Bleeding Edge' to 'Cutting Edge'...

      WARNING

      If you move to Nangong Xueshan's Alpha, my advice is to consider yourself on the Bleeding Edge again... and to understand what this means!

      Changelog for Alpha, next post. PW
    • 1050
      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
      156
      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.

      Conclusion
      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!!
      121
      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.
      76
      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.
      75
      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