2个版本
0.1.1 | 2023年4月13日 |
---|---|
0.1.0 | 2023年4月13日 |
#553 in Unix APIs
每月 21 次下载
10KB
prompt-of-power
一个用于在提升能力时更改shell提示符的小工具。
传统上,Unix shell对普通用户显示$
提示符,对root(UID 0)显示#
提示符。在现代Linux系统中,即使不是UID 0,也可以使用能力来提升权限。其中一些能力给予的权限与root一样危险(实际上,CAP_SETUID
允许你成为root)。然而,大多数shell不会表明你有这些提升的权限,所以你会在犯下危险错误之前没有警告。
用法
对于bash
,你可以在PS1
中将$
替换为$(prompt-of-power)
来使用prompt-of-power
。
例如
$ PATH=$PATH:~/.cargo/bin
$ PS1='$(prompt-of-power) '
$
如果你是UID 0,这将显示#
提示符
$ sudo -s
# id -au
0
#
如果你是没有任何提升能力的普通用户,它将显示正常的$
提示符
$ id -au
1000
$ capsh --print | grep IAB
Current IAB:
$
如果你是普通(非UID 0)用户,但具有任何提升能力,它将显示$#
提示符
$ id -au
1000
$ unshare -Uc --keep-caps
$# id -au
1000
$# capsh --print | grep IAB
Current IAB: ^cap_chown,^cap_dac_override,^cap_dac_read_search,^cap_fowner,^cap_fsetid,^cap_kill,^cap_setgid,^cap_setuid,^cap_setpcap,^cap_linux_immutable,^cap_net_bind_service,^cap_net_broadcast,^cap_net_admin,^cap_net_raw,^cap_ipc_lock,^cap_ipc_owner,^cap_sys_module,^cap_sys_rawio,^cap_sys_chroot,^cap_sys_ptrace,^cap_sys_pacct,^cap_sys_admin,^cap_sys_boot,^cap_sys_nice,^cap_sys_resource,^cap_sys_time,^cap_sys_tty_config,^cap_mknod,^cap_lease,^cap_audit_write,^cap_audit_control,^cap_setfcap,^cap_mac_override,^cap_mac_admin,^cap_syslog,^cap_wake_alarm,^cap_block_suspend,^cap_audit_read,^cap_perfmon,^cap_bpf,^cap_checkpoint_restore
依赖项
~310KB