ShirkNeko
88135d8363
Attempt to refactor and migrate inode_permission, bprm_check_security, and task_alloc entirely to syscall_hook_manager
2025-11-09 02:52:46 +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
weishu
46b9f5fb4b
kernel: fix put_task if alloc failed.
2025-11-08 21:44:04 +08:00
ShirkNeko
413e9ab8a9
kernel: Resolved compatibility issues with su when using manual hooks
2025-11-08 20:52:29 +08:00
ShirkNeko
c3644da85b
assets: Bump KPM version to 0.12.1
2025-11-08 20:05:59 +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
7479c0b81b
kernel: Fix build
2025-11-08 19:54:20 +08:00
ShirkNeko
0381d12be2
kernel: Resolve implicit declaration conflicts
2025-11-08 19:47:03 +08:00
Wang Han
4425c88d5a
Fix missing unlock on error path
2025-11-08 19:41:11 +08:00
weishu
7828c5c107
kernel: fix save allowlist
2025-11-08 19:40:16 +08:00
ShirkNeko
76046c84cd
kernel: remove unused kernel_compat
...
Co-authored-by: weishu <twsxtd@gmail.com >
2025-11-08 19:39:41 +08:00
weishu
623dd15cbf
kernel: Use real_parent to avoid interference from ptrace.
2025-11-08 19:30:55 +08:00
ShirkNeko
ab13ed5c16
kernel: remove unused wrapper for
...
Co-authored-by: weishu <twsxtd@gmail.com >
2025-11-08 19:30:44 +08:00
weishu
e171ca15cb
kernel: remove ksu_compat_{open,read,write} because we're in the right context now
...
Co-authored-by: weishu <twsxtd@gmail.com >
2025-11-08 19:28:25 +08:00
ShirkNeko
4fc369a059
kernel: remove workqueue for allowlist
...
Co-authored-by: weishu <twsxtd@gmail.com >
2025-11-08 19:18:20 +08:00
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
ShirkNeko
3badbcd4bc
assets: Bump KPM version to 0.13.0
2025-11-08 18:38:53 +08:00
technotic
1b5b235bd9
add include for crc32.h in sulog.h (for dedup_calc_hash) ( #548 )
...
Co-authored-by: technotic <pixie@technotic.us >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-08 18:12:38 +08:00
AlexLiuDev233
fdf5e7104e
refactor: kpm: memory management migrate to sukisu side ( #539 )
...
* refactor: kpm: memory management migrate to sukisu side
* fix: build warning in some gki2 device
fix stack frame size warning (maybe) in gki2 device, specialy in ShirkNeko's device
* chore: use pr_info instead of printk
* feat: check the validity of pointers sent from user space
Sometimes, ksud or other root processes might request a kpm ioctl,
but data incorrectly, such as invalid pointer,
which cause the kernel to crash.
If the request is made by ksud at boot time, the situation is even worse,
as it can cause the system to enter the boot loop.
Therefore, I believe we need to check pointer integrity in kernel space to fix this problem.
---------
Co-authored-by: Saksham <typeflu@gmail.com >
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com >
2025-11-08 18:11:29 +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
AlexLiuDev233
704f7cba32
kernel: core_hook: disable seccomp in 5.10.2- for allowed uids ( #545 )
...
* kernel: core_hook: disable seccomp in 5.10.2- for allowed uids
we dont have those new fancy things upstream has
lets just do original thing where we disable seccomp
* Update kernel/core_hook.c
* fmt
---------
Co-authored-by: backslashxx <118538522+backslashxx@users.noreply.github.com >
Co-authored-by: Saksham <saksham.mac@icloud.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-08 12:46:25 +08:00
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
6c9bf69718
fix build
2025-11-08 11:37:07 +08:00
Ylarod
776bcc4d5d
rename to proxy_file
2025-11-08 11:36:15 +08:00
ShirkNeko
bf5cb885b5
kernel: remove devpts hook
2025-11-08 11:28:23 +08:00
Wang Han
a533a490bd
Use force_sig(SIGKILL) to kill process
2025-11-08 01:34:44 +08:00
Shadichy
c6d9f76c7b
kernel: Refactor selinux/selinux.c ( #2881 )
...
Signed-off-by: shadichy <shadichy@blisslabs.org >
Co-authored-by: Wang Han <416810799@qq.com >
2025-11-08 01:34:23 +08:00
Wang Han
66032391af
Switch kretprobe to heap ( #2880 )
...
Co-authored-by: Ylarod <me@ylarod.cn >
2025-11-07 18:39:53 +08:00
Wang Han
da0e16bd26
Replace mutex with spinlock for tracepoint registration ( #2882 )
2025-11-07 18:37:12 +08:00
ShirkNeko
53d763cdf9
manager: Implement editable and removable mount points for LKM
2025-11-07 15:37:04 +08:00
ShirkNeko
9ebddde0d5
kernel: Avoid calling umount whilst holding a spinlock.
2025-11-07 14:23:58 +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
9b209765c4
kernel: Implementing editable, removable mount points
2025-11-07 12:16:42 +08:00
ShirkNeko
d7c101e244
kernel: Fix compilation
2025-11-07 11:33:02 +08:00
Ylarod
a32f89403b
ci: update build
2025-11-07 11:12:21 +08:00
ShirkNeko
2cd673d776
manager: fix where the option displays "Temporary enable" after device reboot
...
Co-authored-by: YuKongA <70465933+YuKongA@users.noreply.github.com >
2025-11-07 11:08:27 +08:00
Ylarod
14fea6f8a3
build: remove -Wno-implicit-function-declaration
2025-11-07 11:02:48 +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
ShirkNeko
f86c71efc5
Compilation fix
2025-11-06 23:26:55 +08:00
Ylarod
06018a2f03
revert: still using workqueue for allowlist
2025-11-06 23:05:29 +08:00
Ylarod
a2193841d5
skip init_features in safe mode
2025-11-06 23:03:43 +08:00
Ylarod
1324a7f54e
fix: enhanced security register
2025-11-06 23:02:27 +08:00
Ylarod
5df9431a22
kill pgrp in enhanced security
2025-11-06 23:01:59 +08:00
Ylarod
e54989e51a
add mutex for sucompat mark
2025-11-06 23:01:45 +08:00
Ylarod
cf50be122e
fix: sucompat ( #2874 )
...
Co-authored-by: Wang Han <416810799@qq.com >
2025-11-06 23:01:28 +08:00
ShirkNeko
7f9048724f
fix
2025-11-06 22:57:13 +08:00