生于生时 亡于亡刻
98e617f1bd
refactor(ksud): refactor ksud's kpm
...
- remove useless code
- ignore create dir all return
- when kpm file delete failed, return Error
2025-11-16 07:11:16 +08:00
生于生时 亡于亡刻
92a483d222
ksud: Optimise ksud ( #576 )
...
* opt: Optimize printing for result isn't successful
- print chain && backtrace to stderr
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* ci(ksud): add CARGO_TERM_COLOR for build
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* fix(ksud): fix uninstall package name is `me.weishu.kernelsu`
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* fix(ksud): Reverted to a private function for get_kernel_version
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* chore: format code for magic_mount.rs
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* fix: fix rustfmt
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* feat: Move the statement to the correct place && remove allow dead_code
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-15 18:25:17 +08:00
ShirkNeko
906c4bdb01
manager: bump susfs version to 2.0.0
...
- Remove versions below susfs 2.0.0 that are no longer supported.
2025-11-14 21:53:17 +08:00
YuKongA
12fc2e6d5e
userspace: remove vendor_boot selection logic
...
- Only patch it when user actively selects vendor_boot.
2025-11-13 20:36:44 +08:00
ShirkNeko
5ce6c210c4
manager: install: add choose partition support
...
manager: fix KsuCli cmd
userspace: reuse choose_boot_device
- manager: simplify find boot image
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-11 15:16:11 +08:00
ShirkNeko
548258f922
kernel: Rewrite the kernel source code ( #554 )
...
* clean unused header
* on_module_mounted in ksud.c
* refact: use app_profile
* unified hook manager
* add zygote to hook target
* move reboot hook to supercall.c
* refactor: kernel_umount setuid_hook
* update mark rules, add init mark tracker
* remove reboot from check_syscall_fastpath
* update setuid_hook, remove uneeded sucompat enable
* log freely
* kernel: Migrate kprobe hook configuration items
* kernel: fix build
* cli: add ksud debug mark
* Fix rustfmt warning
---------
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: Wang Han <416810799@qq.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-09 01:14:26 +08:00
生于生时 亡于亡刻
7b4b5b431f
fix: fix ksud install error ( #550 )
...
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-08 17:31:58 +05:30
ShirkNeko
18ad2afadb
Reworking fdwrapper
...
Co-authored-by: 5ec1cff <ewtqyqyewtqyqy@gmail.com >
Co-authored-by: 5ec1cff <56485584+5ec1cff@users.noreply.github.com >
Co-authored-by: Ylarod <me@ylarod.cn >
2025-11-08 19:03:14 +08:00
生于生时 亡于亡刻
ed6b2e0a8e
opt: Optimize the kpm && uid_scanner ( #549 )
...
* opt: Optimize the structure of kpm.rs
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* opt: Optimize the uid_scanner startup logic in userspace && code style
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* opt: rename kpm's ioctl
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* opt: rename ksucalls::KsuKpmCmd's arg2..arg5
using
```rust
pub struct KsuKpmCmd {
pub control_code: u64,
pub arg1: u64,
pub arg2: u64,
pub result_code: u64,
}
```
This makes it easier to distinguish parameters.
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-08 13:43:32 +05:30
ShirkNeko
860bdce295
ksud :fmt
2025-11-08 12:41:03 +08:00
生于生时 亡于亡刻
d8a8ef6458
fix: fix self exe path error && opt: Optimize ensure_dir_exists processing ( #541 )
...
* fix: fix self exe path error
* opt: Optimize ensure_dir_exists processing
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-11-08 12:34:22 +08:00
ShirkNeko
d37a78ea2d
fix build & cleanup
2025-11-08 11:48:35 +08:00
Ylarod
776bcc4d5d
rename to proxy_file
2025-11-08 11:36:15 +08:00
ShirkNeko
53d763cdf9
manager: Implement editable and removable mount points for LKM
2025-11-07 15:37:04 +08:00
ShirkNeko
03a164ebb7
kernel: By default, MNT_DETACH is used as the value for the mount point.
2025-11-07 13:37:09 +08:00
ShirkNeko
4769065cfc
ksud: Implementing editable, removable mount points
2025-11-07 13:15:07 +08:00
ShirkNeko
02f1aec6e9
ksud: Fix clippy
2025-11-07 00:11:02 +08:00
5ec1cff
826661dffb
feature: add devpts fd wrapper ( #21 )
...
This feature is intended to resolve devpts problem.
2025-11-06 23:56:53 +08:00
Ylarod
a2193841d5
skip init_features in safe mode
2025-11-06 23:03:43 +08:00
ShirkNeko
3dde6d9a25
manager: some ui changes
...
* Steeing: add enhanced security dropdown
* Settings: allow change module update check
* Settings: allow always enable/disable feat
* misc: update all deps
---------
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-06 22:54:43 +08:00
Ylarod
91312effba
fix sepolicy patch hint ( #2872 )
2025-11-06 12:53:09 +08:00
ShirkNeko
89ce65e8ba
Use a more appropriate minor version number
2025-11-05 16:41:30 +08:00
ShirkNeko
0400b94674
v2.0.0
2025-11-05 15:43:10 +08:00
Ylarod
1cc9fce2c6
rename to managedFeatures
2025-11-04 21:29:11 +08:00
ShirkNeko
7103779a11
ksud: Migrating KPM to ioctl
...
- Fix compatibility manager issues with legacy kernels
Co-authored-by: AlexLiuDev233 <wzylin11@outlook.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-04 00:35:26 +08:00
ShirkNeko
e0bce04e79
ksud: clippy happy & fmt
2025-11-03 12:24:36 +08:00
Ylarod
ab8e966b7f
add check_managed_features to installer.sh
2025-11-03 11:48:03 +08:00
Ylarod
7ece40bb2c
ksud: add managed_feature
2025-11-03 11:47:39 +08:00
Ylarod
02474a5953
update embed ksuinit to v2
2025-11-02 23:49:46 +08:00
Ylarod
8ebe60ca04
update ioctl macro ( #2850 )
2025-11-02 20:15:55 +08:00
ShirkNeko
980613c6a9
ksud: fmt
2025-11-02 20:07:35 +08:00
ShirkNeko
47bcc956a3
fix lot ( #518 )
...
* refact: use feature subsystem
* use 64bit feature
* fix
* add fixme
* add feature max to get_info
* use 32bit feature id
* allow root to get/set feature
* more clean perm_check functions
* fix
* add feature command to ksud
kernel: do not expose perm checker
* fix security_task_fix_setuid_handler_pre
* add android16-6.12 ci
* manager: add kernel_umount switch
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
* manager: Reinstate the LKM selection function
* kernel: add name and print command value
- Optimise sulog log display
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
* fix
* ksud: clippy
---------
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
Co-authored-by: weishu <twsxtd@gmail.com >
2025-11-02 20:01:24 +08:00
ShirkNeko
320e08b8fb
new supercall impl ( #511 )
...
* refactor: replace throne tracker with ksud token
* use snprintf
* refactor: new supercall impl
- Import the sukisu command
* disable seccomp for supercall users
* kernel: fmt clear
* kernel: Enable macro protection for sulog
- Only enabled on kernel versions greater than 5.10.245
* kernel: Refactor kprobe hooks and implement LSM hooks for improved security handling
* debug mode
* kernel: Add functionality to generate and validate authentication tokens for cmd_su
* kernel: Simplified manual SU command processing for code
* kernel: replace renameat hook with fsnotify
* Revert "refactor: replace throne tracker with ksud token"
This reverts commit aa2cbbf9cd .
* kernel: fix compile
* kernel: fix compile below 6.0
* Fix compile err; Add become_manager
* kernel: install fd for manager automaticlly
- extend to import the corresponding command
* manager: new supercall impl
* temp changes for ksud
* ksud: fix compile
* fix wrong opcode
* kernel: fix compile
* kernel: Fixed hook type and KPM status retrieval errors
* kernel: Fixed potential null pointer issue with current->mm in kernel version 5.10
When calling get_full_comm() within system call hooks, current->mm may be null (prctl). A fallback mechanism for current->comm must be added beforehand to prevent null pointer dereferences when accessing mm->arg_start/arg_end.
Signed-off-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
* ksud: fix cargo check
* manager: Fixed an issue where the KSUD release and user-mode scanning switch failed to function correctly.
- kernel: fix spin lock mutual
kernel: Fixed potential null pointer issue with current->mm in kernel version 5.10
When calling get_full_comm() within system call hooks, current->mm may be null (prctl). A fallback mechanism for current->comm must be added beforehand to prevent null pointer dereferences when accessing mm->arg_start/arg_end.
kernel: try introduce like susfs's method to fix prctl delay
* seccomp: allow reboot
* use u32
* update clang-format
* 4 spaces save the world
* ksud: Fix build on macOS
* manager: bump minimal supported kernel.
- When get_hook_type is empty, display “Unknown”.
* Fix ksud build (#2841 )
* try fix ksud
* fix for macos
* remove any
* Fix ksud build, take 3
* try fix allowlist
* bring lsm hook back
* fix: a lot again
* Fix ksud build, take 4 (#2846 )
Remove init_driver_fd function for non-linux/android targets
* manager: Return to the native method via KSUd installation
* Merge with susfs-mian format
---------
Signed-off-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
Co-authored-by: Ylarod <me@ylarod.cn >
Co-authored-by: weishu <twsxtd@gmail.com >
Co-authored-by: AlexLiuDev233 <wzylin11@outlook.com >
Co-authored-by: Wang Han <416810799@qq.com >
2025-11-01 23:30:30 +08:00
由崎黑板
7a338b1b43
Revert "Disable Samsung Activation Verify to solve -45(2000) error during activation on China Mainland Samsung devices ( #446 )" ( #492 )
...
This reverts commit 7ef9230d66 .
2025-10-26 22:22:11 +08:00
ShirkNeko
b5e5be2572
Revert: ksud, kernel: Pick some upstream changes and remove unused functions
...
* Upstream commit:
f130f7572f
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-22 00:09:56 +08:00
ShirkNeko
9c07fa6889
ksud: Fixed compilation errors
2025-10-19 19:00:47 +08:00
Faris
b6e2fa383a
ksud: fix compilation and remove unused imports
...
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-19 18:44:07 +08:00
Ylarod
61f85a029e
ksud, kernel: Pick some upstream changes and remove unused functions
...
* Upstream commit:
f130f7572f
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-19 18:41:30 +08:00
5ec1cff
b1564b77a2
ksud: refine mount
...
- `magic_mount` now takes the tmp_path from its argument
- `.notmpfs` and `.nomount` now behave the same
skip:
ksud: cache tmp path (74ce44de21963fddc83897846eed28eca89d78aa)
Co-authored-by: shatyuka <shatyuka@qq.com >
Signed-off-by: Faris <rsuntk@yukiprjkt.my.id >
2025-10-19 18:39:57 +08:00
Wang Han
cd78c2693a
Don't write newline character to cgroup node ( #2804 )
...
This prevents su hang on oplus devices, maybe related to bad kernel
hooks.
2025-10-16 12:28:36 +08:00
生于生时 亡于亡刻
0a804ba170
feat: Optimize some codes (ksud) ( #465 )
...
* chore: make cargo clippy happy
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
* chore: Optimize import
- Format as a standard import
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
---------
Signed-off-by: Tools-app <localhost.hutao@gmail.com >
2025-10-12 15:48:24 +08:00
由崎黑板
7ef9230d66
Disable Samsung Activation Verify to solve -45(2000) error during activation on China Mainland Samsung devices ( #446 )
2025-10-06 23:02:54 +08:00
ShirkNeko
e78ee720b5
ksud: fmt
2025-10-06 22:44:09 +08:00
ShirkNeko
04b603394a
ksud: Fixed inconsistent parameter passing in kpm_prctl
2025-10-06 22:02:59 +08:00
ShirkNeko
c9c7a5f4e3
manager: Update Repository Naming
2025-10-06 21:08:23 +08:00
ShirkNeko
044b4a2f9c
manager: Simplify kpm management by migrating to the ksud side.
2025-10-06 20:53:18 +08:00
Rifat Azad
9e7aabf3f7
userspace/su: add ndk compatible su from kernelnosu
...
Co-authored-by: nampud <nampud@users.noreply.github.com >
2025-09-28 00:35:26 +08:00
ShirkNeko
bf4e12ce80
ksud: Modified KPM to use the prctl system call instead of external execution.
2025-09-23 20:37:40 +08:00
ShirkNeko
5497c0004d
Revert "ksud: Only start the monitor and load the module when KPM is enabled"
...
This reverts commit 3ed1d9aebc .
2025-09-23 18:40:58 +08:00
ShirkNeko
32baf8d9b0
ksud: Rename the output LKM patch file
2025-09-23 17:22:07 +08:00