问题标签 [suid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - osquery suid_bin 用于列出所有系统 suid 位集
我必须使用 osquery 列出我的服务器上的所有 suid 集,我假设 suid_bin 应该给我所有 suid 集,但它似乎遗漏了其中一些。我这样使用它:
但是,例如,如果我对 /usr 进行手动检查,我有一些不在我之前的结果中。要手动检查特定文件夹,我使用以下请求:
你能告诉我我在这里做错了什么吗?我现在正在学习 osquery,所以我对它的请求不满意......
linux - 为什么许多 Linux 发行版使用 setuid 而不是功能?
capabilities(7)
是一种不将所有 root 权限授予进程的好方法,并且可以使用 AFAIK 代替setuid(2)
. 根据这个和许多其他人,
“不幸的是,仍然有许多二进制文件
setuid
设置了位,而应该将它们替换为capabilities
。”
举个简单的例子,在 Ubuntu 上,
如您所知,在文件上设置 suid/guid 会将有效用户 ID 更改为 root。因此,如果启用 suid 的程序存在缺陷,则非特权用户可以突破并成为与 root 用户等效的用户。
我的问题是为什么许多 Linux 发行版仍然使用setuid
方法,而capabilities
可以使用设置来代替安全问题?
node.js - 无法在 win10 ubuntu 子系统上运行电子
我有一个电子项目的回购,我之前可以在 ubuntu 子系统中运行,我现在在一台新电脑上并且遇到了问题。我已经运行了 npm i,但是当我运行时,electron .
我得到了这个错误:
所以我跑了
和
然后再次运行 npm start ,得到:
我做了错误要求的事情,但仍然得到错误?我尝试删除我的 node_modules,使用 npm i 重新安装,运行 apt-get update,全局安装电子,但仍然出现此错误
c - 使用 SUID 以 root 身份运行程序
不要告诉我这是重复的,因为我已经阅读了诸如如何以 root 身份执行命令之类的问题,但我无法让它为我工作。
这是我的 C 程序whoami.c
:
这正是我所做的:
我认为s
执行位中的 意味着无论谁启动这个程序,它都会以 root 身份运行,所以我的问题是为什么这不起作用?
如果这样做是不可能的,我怎么能让任何用户以 root 身份运行特定程序?
linux - SUID find -exec TCP 连接不是 root
假设/usr/bin/systemctl和/usr/bin/find具有4755 (SUID) 权限,并且有一个服务root.service通过 tcp 连接执行交互式 shell:
如果root.service作为非 root 用户执行(作为服务),则创建的交互式 shell 的用户将是 root。
但如果执行的命令是(也作为非 root 用户):
创建的交互式 shell 的用户将与执行命令的非 root 用户相同。
另一方面,如果我以非 root 用户身份执行:
它将返回root。
在这两种情况下,我都假设有一个 TCP 连接在侦听指定的 IP 和端口。
我缺少一些关于find -exec功能的东西。
¿ 为什么会有这种差异?
ubuntu - 错误:找到了 SUID 沙箱帮助程序二进制文件,但未正确配置
很抱歉只是粘贴了一个错误代码,但我不知道还有什么可以尝试的。我查看了这个网站上的所有指南,但没有什么能完全符合我的问题。我在 Windows 10 上为项目“Zettlr”使用 ubuntu 子系统。这是我在运行 'yarn start' 时得到的错误代码
我正在尝试运行它,但它希望我更改访问权限和所有权。chmod 没有效果(我知道这是由于 windows 存储系统造成的),但我不知道如何让这个程序正确运行。我也跑过chown。根据我的统计检查,该文件的 chmod 模式是 777,因此无论如何它都应该可以访问。任何人都可以指导我找到这个指南,或者解释我能做什么?
linux - suid 在 docker 容器内不被尊重
我在 DockerFile 中下载了 sudo
运行 yum -y update &&
yum -y install which sudo
我已经设置了 suid 位
运行 chown root:root /usr/bin/sudo 运行 chmod 4755 /usr/bin/sudo
在容器中,我看到很多设置了 suid 位的二进制文件
root@89f28b09dee0 go]# ls -la /usr/bin/* | grep rwsr
-rwsr-xr-x 1 根 73888 2019 年 8 月 9 日 /usr/bin/chage
-rwsr-xr-x 1 根 78408 2019 年 8 月 9 日 /usr/bin/gpasswd
-rwsr-xr-x 1 root root 44264 2019 年 8 月 9 日 /usr/bin/mount
-rwsr-xr-x 1 根 41936 2019 年 8 月 9 日 /usr/bin/newgrp
-rwsr-xr-x 1 根 27856 2019 年 8 月 9 日 /usr/bin/passwd
-rwsr-xr-x 1 root root 32128 2019 年 8 月 9 日 /usr/bin/su
-rwsr-xr-x 1 根 147320 2019 年 8 月 9 日 /usr/bin/sudo
-rwsr-xr-x 1 root root 31984 2019 年 8 月 9 日 /usr/bin/umount
作为基础映像一部分的其他二进制文件可以无视
[test@89f28b09dee0 go]$ passwd 更改用户 test 的密码。更改密码进行测试。(当前)UNIX 密码:
但是 sudo 失败了
sudo sudo:有效的 uid 不是 0,/usr/bin/sudo 是在设置了“nosuid”选项的文件系统上还是在没有 root 权限的 NFS 文件系统上?[test@89f28b09dee0 去]$
互联网上的大多数搜索都说这可能是因为文件系统权限,但其他二进制文件在设置了 suid 位的同一位置工作正常。
linux - 【Linux二进制SUID和cap_setuid的区别】
“我不明白linux中二进制的SUID和cap_setuid之间的区别。那么,SUID和setuid之间的区别”
c - setuid 和 setgid wotking 仅使用 0(root),我希望它可以为其他用户工作
我正在尝试编写一个以用户 smith 权限运行 /bin/bash 的程序,
我试过这个:
我使用这些命令来设置所有者、组和权限
命令后的权限:
并且没有用,我尝试使用root作为下一个:
我使用相同的命令来获取权限等等,但是我没有使用 smith,而是编写了 root 并且我工作了,当我运行它时,我以 root 身份获得了一个 shell。
那么我怎么能用 smith 用户来做呢?
linux - SUID时如何通过base64二进制提升权限
我正在尝试一个 CTF,在那里我发现 base64 二进制文件是 SUID。我也检查了 linpeas,它说它很脆弱。我尝试使用以下步骤来提升权限:
1.创建一个名为exploit的文件并在其中放入以下代码。''' chmod +s /bin/sh '''
2.现在我用 base64 ''' cat exploit|base64 ''' 编码它导致 Y2htb2QgK3MgL2Jpbi9zaAo=
3.然后我使用下面的代码来执行它。
'''base64 -d <<< Y2htb2QgK3MgL2Jpbi9zaAo= |sh''' 它说不允许操作
我尝试将漏洞利用脚本更改为 '''/bin/bash -p''' 和 ''' #!/bin/sh /bin/bash -p '''
但它只是给了我一个普通的 bash shell。谁能解释为什么base64是一个SUID并且易受攻击而不提供root shell以及如何获得root shell?(对不起,如果我做错了什么……我只是一个学习者:)