backslashxx
4a37422af5
kernel/sucompat: sync to KSU pr #2506
...
kernel: sucompat: sucompat toggle support for non-kp
This is done like how vfs_read_hook, input_hook and execve_hook is disabled.
While this is not exactly the same thing, this CAN achieve the same results.
The complete disabling of all KernelSU hooks.
While this is likely unneeded, It keeps feature parity to non-kprobe builds.
adapted from upstream:
kernel: Allow to re-enable sucompat - https://github.com/tiann/KernelSU/commit/4593ae81c78998dffbc81291eac15726a273a538
Rejected: https://github.com/tiann/KernelSU/pull/2506
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
kernel: sucompat: fix compile issue on kprobe builds, unused variable
2025-05-18 03:23:12 +06:00
5ec1cff
35c98aee76
Fix off-by-one when iterating dir ( #2530 )
...
Fix https://github.com/tiann/KernelSU/issues/2528
2025-04-02 14:09:44 +06:00
Wang Han
dfea38e0f2
Skip staging package when searching manager ( #2511 )
2025-04-02 14:09:22 +06:00
Wang Han
1c9705fdd0
Set KSU_APP_PROFILE_VER for shell ( #2481 )
...
This reverts commit bd24044ec3 .
2025-03-10 22:16:22 +06:00
AlexLiuDev233
f369297be9
kernel: fix sometimes sucompat can not toggle by manager ( #2484 )
...
When the manager is already running, if other programs / kernel toggle
the sucompat enable status,
The manager "Disable SU Compat" toggle button can not work, kmesg print
"cmd enable su but no need to change."
I think we should still return reply_ok when the syscall value is
consistent with the kernel, which would fix the issue.
2025-03-10 22:16:03 +06:00
backslashxx
7218a504c9
kernel: ksud: add ksu_handle_execve_ksud ( #217 )
...
adapted from sys_execve_handler_pre()
upstream, https://github.com/tiann/KernelSU/commit/2027ac3
this completes the puzzle where all hooks are on syscalls
ksu_handle_execve_ksud
- sets argv to __argv, dunno what this is for, I just copied.
- creates dummy struct `filename_in` to store filename in `filename_in.name`
- strncpy filename to path, assign path to .name
- simply a shim for ksu_handle_execveat_ksud
usage: `ksu_handle_execve_ksud(filename, argv);` on sys_execve
tested on 4.14, 6.1
Tested-by: selfmusing <mirandamehek@gmail.com >
Tested-by: Adam W. Willis <return.of.octobot@gmail.com >
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
Co-authored-by: Another Guy <25584417+anotherjin@users.noreply.github.com >
2025-03-09 14:33:26 +06:00
rifsxd
7a08683c74
kernel: remove unnecessary umount calls for configuration directories (evil modifications)
2025-02-25 19:48:20 +06:00
rifsxd
487e7d0012
kernel: simplify umount calls for configuration files
2025-02-25 15:37:12 +06:00
Wang Han
0038ba6566
Fix reference count leak in nuke_ext4_sysfs() ( #2467 )
...
We need to call path_put() to decrease the refcount.
2025-02-24 02:48:39 +06:00
rifsxd
e8c080ba09
src: adapt git links to KernelSU-Next org
2025-02-24 02:18:02 +06:00
Rifat Azad
785d8143fb
kernel: remove KSU_WITH_KPROBES definition since it's already defined by Kconfig
2025-02-24 01:29:28 +06:00
backslashxx
cd0031e8a5
kernel: expose variables used by manual hooks always
2025-02-23 22:58:00 +06:00
backslashxx
15371bb1d6
kernel: add non-kprobe support for sucompat disable/enable
...
I have no idea if this is needed or any useful for manual fs hooks users.
Upstream, this is likely to, well, simply disable hooking of those functions,
to remove and mitigate timing issues as some detection methods can actually
differentiate these.
This is done like how vfs_read_hook, input_hook and execve_hook is disabled.
While this is not exactly the same thing, this *CAN* achieve the same results.
The complete disabling of all KernelSU hooks.
While this is probably not so useful for us, honestly, I have no idea for shit
what I am doing, but lets still port it for the sake of feature parity.
cherry pick from:
kernel: backport support for sucompat disable/enable
https://github.com/backslashxx/KernelSU/commit/20ffabb
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
2025-02-23 22:11:50 +06:00
backslashxx
097451d578
kernel: guard functionality that requires kprobes
...
Since upstream is now making kprobes a requirement, we adapt this tree to still allow
building with manual hooks in an easier way. Furthermore, this also allows a user to
build with manual hooks even with kprobes enabled.
Offending commit:
kernel: remove unused CONFIG guard becuase GKI kernel enable kprobe by default
upstream: https://github.com/tiann/KernelSU/commit/500ff9b
Other changes:
ksud.c, stop_input_hook(), short-circuit redundant logic left by this change.
cherry pick from: https://github.com/backslashxx/KernelSU/commit/a3d3e93
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
2025-02-23 21:00:59 +06:00
weishu
85866848ea
kernel: Allow to re-enable sucompat
2025-02-23 20:37:34 +06:00
weishu
bb6c20339c
kernel: add support for disable sucompat
2025-02-23 20:05:55 +06:00
Wang Han
a89985f33e
Allow toggling unmount setting for all apps ( #2450 )
...
This fixes https://github.com/tiann/KernelSU/issues/2416 .
2025-02-22 04:48:44 +06:00
rifsxd
42896dfab1
kernel: add umount calls for pixelify gphotos spoof configs and lsposed dex2oat bin
2025-02-22 04:40:28 +06:00
weishu
74171a2930
kernel: unregister sysfs for module's ext4 image
2025-02-21 17:02:33 +06:00
rifsxd
a2fcd157a2
Revert "kernel: do not umount modules by default"
...
This reverts commit bbb05b292a .
2025-02-14 21:32:43 +06:00
rifsxd
bbb05b292a
kernel: do not umount modules by default
2025-02-14 19:45:19 +06:00
rifsxd
5435992911
kernel: KernelSU-Next version fallback set to 11998
2025-02-06 17:58:00 +06:00
backslashxx
ae36e2085c
kernel: handle optional backports ( #99 )
...
Cherry pick from https://github.com/backslashxx/KernelSU/commit/8bb9518060b06152b99f11465e20febc45359d3c https://github.com/backslashxx/KernelSU/commit/a4a7db7f40556287bfe53b65e998283c06363dd9
Backporting is cool, but not everyone has the skills for it.
This commit does NOT make it required, but it will allow compiler
to use whats in-kernel if it exists.
The following are backportable:
- kernel_read / kernel_write
< 4.14, backport chain, tested on 4.9
https://github.com/torvalds/linux/commit/e13ec939e96b13e664bb6cee361cc976a0ee621a
https://github.com/torvalds/linux/commit/bdd1d2d3d251c65b74ac4493e08db18971c09240
https://github.com/torvalds/linux/commit/c41fbad015dabb0a40ecca50c3ff5658eb6471ff
https://github.com/torvalds/linux/commit/ac452acae1caa1a451142a30b4e1ea09cfac4410
- strncpy_from_user_nofault
for 5.4, apply: https://github.com/torvalds/linux/commit/bd88bb5d4007949be7154deae7cef7173c751a95
for 4.x, apply: https://github.com/xiaomi-sdm678/android_kernel_xiaomi_mojito/commit/424e21f3b01ddaeb86cef7efd3f519a7e342fb67
for any failures, just SKIP THIS or check dependency chain of, https://github.com/gregkh/linux/commit/3d7081822f7f9eab867d9bcc8fd635208ec438e0
this got backported to v4.4.236, v4.9.236, v4.14.197, v4.19.144
- hint, `curl $url.patch | git am`
Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
2025-01-28 14:53:35 +06:00
5ec1cff
87fc6b2784
kernel: clear securebits
...
fix adb shell cannot escape to root after https://github.com/tiann/KernelSU/pull/2381
2025-01-27 20:05:54 +06:00
Wang Han
a05b790da6
Avoid unnecessarily overriding capabilities ( #2381 )
...
Previously all capabilities were overridden with 0xffffffffffffffff,
which is
not what normal processes have. This causes PR_CAPBSET_DROP prctl
fail because it is dropping invalid caps. Fix it.
This fixes
https://gitlab.com/kalilinux/nethunter/apps/kali-nethunter-app/-/issues/378 .
Co-Authored-By: 5ec1cff <56485584+5ec1cff@users.noreply.github.com >
Co-authored-by: 5ec1cff <56485584+5ec1cff@users.noreply.github.com >
2025-01-25 20:54:06 +06:00
Rifat Azad
14624ea966
kernel: dynamic get_cred_rcu patch for appropriate atomic function and apply patch accordingly
2025-01-17 15:34:34 +06:00
Rifat Azad
6f6dd29306
kernel: auto backport get_cred_rcu
2025-01-16 19:42:38 +06:00
rsuntk
0ada4ee5d4
kernel: improve get_cred_rcu guard
...
Signed-off-by: rsuntk <rissu.ntk@gmail.com >
2025-01-16 14:32:04 +06:00
rsuntk
3b045f6c16
kernel: Add entries
...
Signed-off-by: rsuntk <rissu.ntk@gmail.com >
2025-01-16 14:31:31 +06:00
rsuntk
95584df023
kernel: Add fallback if user didn't implement 'get_cred_rcu'
...
https://github.com/tiann/KernelSU/pull/2320
Signed-off-by: rsuntk <rissu.ntk@gmail.com >
2025-01-16 14:26:52 +06:00
SsageParuders
b18c39e911
Improve seccomp disable && Add locking to protect cred modifications in escape_to_root ( #2320 )
...
- When disabling Seccomp, ensure that current->sighand->siglock is held
during the operation.
- Locking to ensure safe access and modification of the `cred` structure
within the `escape_to_root` function.
---
I think this issue described in #2236 may have been caused by concurrent
read-write access without proper locking.
---------
Signed-off-by: SsageParuders<qinqingqing1025@gmail.com >
Signed-off-by: SsageParuders <qinqingqing1025@gmail.com >"
2025-01-16 14:18:26 +06:00
ExtremeXT
72739facc8
kernel: expose allowlist workaround as Kconfig option
...
Useful for situations where the SU allowlist is not kept after a reboot.
As per upstream this is only used for < 4.10 and Huawei HiSilicon devices.
but theres user reports having issues even on 4.14/4.19 samsung kernels.
Expose this option so users affected can opt-in.
Discussion:
tiann#1249
tiann#1346
References:
tiann@f57d351
tiann@b61cb30
Credits to respective authors:
rhjdvsgsgks
ExtremeXT
2025-01-07 04:59:09 +06:00
rifsxd
5982cdb61d
source: minor cleanup
2025-01-01 21:19:50 +06:00
rifsxd
7ea1579bce
kernel: try umount /system/etc/hosts & /system_ext
2024-12-31 11:14:39 +06:00
rifsxd
4a07ce7d0b
kernel: removed KSU (official) v2 signature size/hash
2024-12-31 11:02:34 +06:00
Loukious
a5f12ffe96
fix: reset ambient capabilities to resolve D-Bus permission issues
2024-12-27 22:39:38 +06:00
Rifat Azad
79d4f99cf4
kernel: small adjustment
2024-12-24 23:31:25 +06:00
Rifat Azad
af5496de80
kernel: auto backport path_umount and can_umount
2024-12-24 08:25:46 +06:00
Rifat Azad
8fbddc959a
Revert "kernel: added susfs v1.5.3"
...
This reverts commit bdf81c0880 .
2024-12-24 08:21:10 +06:00
Rifat Azad
bdf81c0880
kernel: added susfs v1.5.3
2024-12-24 07:34:30 +06:00
Rifat Azad
1f58c7bf12
kernel: KSU_NEXT v2 signature size/hash added
2024-12-24 06:59:24 +06:00
Rifat Azad
1a84f69f5c
Revert "[1.0] Drop Non-GKI Support ( #1483 )"
...
This reverts commit 97d70b40fc .
2024-12-24 06:54:08 +06:00
Rifat Azad
8d2b017c96
kernel: sync with upstream
2024-12-24 06:53:54 +06:00
Rifat Azad
3fd1cf6329
kernel: rename KernelSU -> KernelSU-Next
2024-12-21 02:12:29 +06:00
Rifat Azad
a17ef5634f
setup: rename KernelSU -> KernelSU-Next
2024-12-21 02:07:51 +06:00
Rifat Azad
9911795aa3
setup: fixed set-up script
2024-12-18 22:55:30 +06:00
Rifat Azad
868db22b8d
setup: changed repo link
2024-12-18 21:55:25 +06:00
Rifat Azad
fd1f829db6
kernel: auto backport path_umount to fs/namespace.c at build time
2024-12-18 21:34:04 +06:00
Rifat Azad
629d878558
kernel: New KSU_NEXT size/hash
2024-12-18 18:03:25 +06:00
rifsxd
57bffb5e7c
kernel: fix missing endif in Makefile
2024-12-18 02:26:09 +06:00