首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从pkexec运行的脚本中获取当前用户名?

从pkexec运行的脚本中获取当前用户名可以通过以下步骤实现:

  1. 使用whoami命令获取当前执行脚本的用户名。whoami命令会返回当前登录用户的用户名。
  2. 在脚本中添加以下代码来获取当前用户名:
代码语言:txt
复制
current_user=$(whoami)
echo "当前用户名:$current_user"

这段代码将使用whoami命令获取当前用户名,并将其存储在current_user变量中。然后,通过echo命令将当前用户名打印出来。

需要注意的是,pkexec是一种用于以root权限执行命令的工具,因此在使用pkexec运行的脚本中,获取的用户名将是root用户的用户名。

关于腾讯云相关产品,腾讯云提供了丰富的云计算服务和解决方案,包括计算、存储、数据库、网络、安全等方面的产品。具体推荐的腾讯云产品和产品介绍链接地址如下:

  1. 云服务器(CVM):提供弹性计算能力,支持多种操作系统和实例类型。了解更多:云服务器产品介绍
  2. 云数据库MySQL版:提供高性能、可扩展的MySQL数据库服务。了解更多:云数据库MySQL版产品介绍
  3. 云存储COS:提供安全可靠、低成本的对象存储服务。了解更多:云存储COS产品介绍
  4. 人工智能平台(AI Lab):提供丰富的人工智能算法和模型,支持图像识别、语音识别、自然语言处理等应用场景。了解更多:人工智能平台产品介绍

请注意,以上仅为腾讯云部分产品的介绍,更多产品和解决方案可在腾讯云官网进行了解。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何获取当前正在执行脚本绝对路径

/bin/bash cd `dirname $0` echo `pwd` 切到/home/zwang/1/2/3/4路径下,运行test.sh后就位于脚本所在目录并输出路径了。...现在我们回头来把这个脚本拆开来理解一下 `` 表示执行引号内命令 $0 表示当前执行脚本文件名 dirname $0 表示获取当前执行脚本路径 这样一来就能明白dirname $0是如何获取当前执行脚本路径了吧...$( ) 和 `` 在这里需要补充$( ) 和 ``不同。 二者都是返回括号命令结果,是用来作命令替换,即先完成引号里命令行,然后将其结果替换出来,再重组成新命令行。...但需要注意两点: 在多层次复合替换,``必须要额外跳脱处理(反斜线) 不是所有的类unix系统都支持$( ),但反引号是肯定支持 举个栗子~ #!.../bin/bash basepath=`cd `dirname $0`; pwd` echo $basepath 出现了报错,这就需要按我上面提到在多层次复合替换,``必须要额外跳脱处理(反斜线

1.7K20

python subprocess运行子进程实时获取输出

起因是这样,c++程序开发后 功能号和指令,校验需要人工去看对照二进制代码,量大还费力, 于是打算利用python 去调用 c++程序去校验指令, 首先要做就是用python 获取c++程序...printf() 或cout 输出; 环境linux python 3.8.x 以下代码实现,获取子程序输出 command='....linux shell指令,如果要用shell 指令如ls 要将false 变成true, 通过指定stderr=subprocess.STDOUT,将子程序标准错误输出重定向到了标准输出,以使我们可以直接标准输出同时获取标准输出和标准错误信息...p.poll() 返回子进程返回值,如果为None 表示 c++子进程还未结束. p.stdout.readline() c++标准输出里获取一行....参考文章1 pythonsubprocess.Popen()使用 参考文章 2 python subprocess运行子进程实时获取输出

10K10

SAR 报告获取平均 CPU 利用率 Bash 脚本

如果超过 28,那么日志文件将放在多个目录,每月一个。 要将覆盖期延长至 28 天,请对 /etc/sysconfig/sysstat 文件做以下更改。...在本文中,我们添加了三个 bash 脚本,它们可以帮助你在一个地方轻松查看每个数据文件平均值。 这些脚本简单明了。出于测试目的,我们仅包括两个性能指标,即 CPU 和内存。...你可以修改脚本其他性能指标以满足你需求。 SAR 报告获取平均 CPU 利用率 Bash 脚本 该 bash 脚本每个数据文件收集 CPU 平均值并将其显示在一个页面上。..." done echo "+----------------------------------------------------------------------------------+" 运行脚本后...2: SAR 报告获取平均内存利用率 Bash 脚本

1.6K10

如何Bash脚本本身获得其所在目录

问: 如何Bash脚本本身获得其所在目录? 我想使用Bash脚本作为另一个应用程序启动器。我想把工作目录改为Bash脚本所在目录,以便我可以对该目录下文件进行操作,像这样: $ ....但是在以相对路径方式去执行脚本时,获取目录信息是相对路径,不能满足其他需要获取绝对路径场景。 如果要获取绝对路径,可以使用如下方法: #!..."$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd) echo $script_dir 其中第3行代码,无论从何处调用它,都将为你提供脚本完整目录路径...测试结果如下: 另外,可以根据第一种方法结合使用 realpath 命令,也可获取脚本所在目录绝对路径: #!.../(点-斜杠),以便在bash运行它 shell脚本对编码和行尾符敏感吗

22720

教你如何快速 Oracle 官方文档获取需要知识

https://docs.oracle.com/en/database/oracle/oracle-database/index.html 如图,以上 7.3.4 到 20c 官方文档均可在线查看...11G 官方文档:https://docs.oracle.com/cd/E11882_01/server.112/e40402/toc.htm 这里以 11g R2 官方文档为例: 今天来说说怎么快速官方文档得到自己需要知识...SQL language Reference ,这个文档包括 Oracle数据库SQL 语句语法( plsql不包含在内)。比如说create table语法、函数、表达式都在这里有描述。...有监听相关疑问可以在这个文档中找到答案。 Backup and Recovery User’s Guide ,文档描述了 rman 各种用法。...具体还没深入了解,但是感觉还是比较先进好用,当 plsql没有办法完成任务时候,可以使用 java存储过程来解决,比如说想要获取主机目录下文件列表。

7.7K00

CVE-2021-4034 Linux Polkit 权限提升漏洞挖掘思路解读

Polkit定义出一系列操作,例如运行 GParted, 并将用户按照群组或用户名进行划分,例如 wheel 群组用户。...:  Pkexec代码第 534 行,整数 n 设置为 1; 第 610 行, argv[1] 越界读取指针路径; 第 639 行,指针 s 被越界写入argv[1] ; 但是从这个越界 argv...最终导致:  Pkexec代码第610行,将要执行程序路径argv[1](即envp[0])中越界读取,并指向“value”; 由于“value”不是以斜线开头,因此进入 629 行if分支...name”存在(在当前工作目录)并且包含一个名为“value”可执行文件,则写入一个指向字符串“name/value”指针越界到 envp[0]; 或者说:如果我们 PATH 是 “PATH=name...这些“不安全”变量通常在调用 main() 函数之前已经被ld.so SUID 程序环境删除。

1.4K90

如何在 .NET 库代码判断当前程序运行在 Debug 下还是 Release 下

如何在 .NET 库代码判断当前程序运行在 Debug 下还是 Release 下 发布于 2018-07-05 11:39...// public static class DebuggingProperties { /// /// 检查当前正在运行主程序是否是在...通常我们调试时候是运行一个入口程序,所以可以考虑使用 Assembly.GetEntryAssembly() 来获取入口程序集。...这可能发生在单元测试、性能测试或者其他非托管程序调用托管代码情况;虽然不是主要场景,却很常见。所以,我们依然需要处理返回 null 情况。 那么如何才能找到我们需要入口程序集呢?...性能 另外,一个编译好程序集是不可能在运行时再去修改 Debug 和 Release 配置,所以第一次获取完毕后就可以缓存下来以便后续使用。

1.6K10

CVE-2021-4034 Linux Polkit 权限提升漏洞分析

()在PATH环境变量搜索程序 如果找到可执行文件,完整路径返回给pkexecmain()函数 在639行,完整路径被越界写入到argv[1]也就是envp[0],这样就覆盖了我们第一个环境变量...更准确地来说的话 如果环境变量被设置为PATH=name,如果目录name存在(如当前工作目录)并且可执行文件被命名为value,那么name/value字符串指针就会被越界写入到envp[0]...execve执行程序 我们问题是如何通过重新引入不安全环境变量来利用这个漏洞,在702行,pkexec完全清除了环境变量,因此可以利用选项比较少 if (clearenv () !...然而,请注意,这个漏洞也可以以不留下痕迹方式利用 构造 Exploit 目前主流Linux系统都受到此漏洞影响,安装一个Ubuntu 20.04,运行pkexec --version可以发现版本是...然后运行.

2.3K90

隐藏超12年漏洞,影响所有主流Linux发行版

这个易于利用漏洞允许任何非特权用户通过在其默认配置利用此漏洞来获得易受攻击主机上完全 root 权限。...Qualys 漏洞和威胁研究主管 Bharat Jogi 指出,pkexec 漏洞为攻击者打开了获取 root 权限大门。...外部威胁角度来看,如果攻击者能够通过另一个漏洞或密码漏洞在系统上站稳脚跟,那么该攻击者就可以通过此漏洞升级到获取完整 root 权限。...漏洞需要对易受攻击机器进行本地认证访问,没有这种认证就不能远程运行。...如果您操作系统没有可用补丁,您可以 pkexec 删除 SUID 位作为临时缓解措施;例如: # chmod 0755 /usr/bin/pkexec 漏洞披露时间表: 2021-11-18:

32620

CVE-2021-4034 pkexec本地提权漏洞

pkexec应用程序是一个setuid工具,提供了一个授权 API, 允许非特权用户根据预定义策略作为特权用户运行命令, 作用有点类似于sudo。...: polkit— 授权管理器 polkitd— polkit 系统守护进程 pkcheck— 检查一个进程是否被授权 pkaction— 获取有关已注册操作详细信息 pkexec— 以另一个用户身份执行命令...pkttyagent— 文本认证助手 数组溢出 ​ 首先要知道当我们在bash调用一个程序时候即使我们没有输入任何参数在argv也会有一个默认参数argv[0]表示当前程序所在路径.../pwnkit.so这个环境变量, 所以我们只要让pkexec使用g_printerr打印错误信息即可达到我们目的: 加载当前目录下pwnkit.so文件 因为pkexec具有suid权限, 所以就可以让我们...gconv-modules指定字符集(指定加载.so文件在这里设置) "GIO_USE_VFS=", //运行pkexec必须设置

69420

预警:Linux-Polkit-权限提升CVE-2021-4034

2022年1月25号,国外安全团队发布安全公告称,在 polkit pkexec 程序中发现了一个本地权限提升漏洞。...pkexec 应用程序是一个 setuid 工具,旨在允许非特权用户根据预定义策略以特权用户身份运行命令。由于当前版本 pkexec 无法正确处理调用参数计数,并最终会尝试将环境变量作为命令执行。...攻击者可以通过控制环境变量,从而诱导 pkexec 执行任意代码。利用成功后,可导致非特权用户获得管理员权限。...目前默认安装Ubuntu、Debian、Fedora 和 CentOS等主流Linux版本均受该漏洞影响。...截止到通告发布日,已发现针对该漏洞利用脚本和分析披露,建议受影响用户,尽快更新Polkit到安全版本; 二、漏洞复现 参考连接: https://blog.qualys.com/vulnerabilities-threat-research

1.6K120

CVE-2021-4034 polkit(pkexec)提权漏洞复现

一.漏洞简述: polkit是一个授权管理器,其系统架构由授权和身份验证代理组成,pkexec是其中polkit其中一个工具,他作用有点类似于sudo,允许用户以另一个用户身份执行命令 polkit...polkit 权限被实现为系统守护进程 polkitd (8),它本身没有什么特权,因为它以 polkitd系统用户身份运行。机制、主体和认证代理使用系统消息总线与授权机构进行通信。...pkaction— 获取有关已注册操作详细信息 pkexec— 以另一个用户身份执行命令 pkttyagent— 文本认证助手 polkit-architecture.png 二.影响版本: 1...char *argv[ ] 表示命令行参数字符串数组,用来存放指向字符串参数指针数组,每个元素指向一个参数。 envp 存放当前程序运行环境参数 int argc表示命令行字串个数。.../polkit/polkit/-/blob/0.120/src/programs/pkexec.c 漏洞点逻辑:执行pkexec时,指定了恶意envp[0],那么可以写入一个环境变量到目标进程空间中

14.5K182
领券