我收到一个错误报告,我的程序使用的外部DLL(SDL_Mixer,如果它有帮助)中的某些音乐播放代码中的某些功能正在提升EPrivilege.DLL是用C语言编写的,因此我无法通过MadExcept从中获取有用的堆栈跟踪信息,并且问题在我的最终无法重现.只是为了让事情变得更糟,我甚至不知道EPrivilege是什么.
我从来没有看到它出现在我自己的代码中,在网上提供的信息很少,而且有什么是矛盾的.(一种解释说,如果你试图用一个有限的帐户做一些需要不可用的权限的东西,操作系统会提出它,另一个解释说如果你试图执行一个高于你的权限级别的指令,它会由CPU引发.)
有没有人对导致EPrivilege的原因有权威的解释?并没有任何人有任何想法如何能够通过音乐播放代码,一台Windows 7 64位机器上的下一个非管理员帐户提出,但没有运行相同的代码时,可以提出我的下一个非Windows 7的64位计算机-admin帐号?
我有一个Android服务试图绑定到服务器套接字端口24.因为它是特权端口,它失败了绑定异常.我想知道我需要做些什么来使这个工作.我看到这个论坛有几次被问过,但没有解决方案.
此服务在Android上运行的设备上运行.我们为设备构建了android平台.我们拥有所需的一切控制权.
阅读intel x86手册和其他资源,我不明白DPL(描述符权限级别)和RPL(请求权限级别)之间的区别.为什么两者都有必要?非常感谢
我真的很困惑:在我的Windows 2008r2中,我有一个Windows服务,实际上它是一个以SYSTEM用户身份运行的java进程.现在,我将Jstack原始用于该服务.但它发生错误:
insufficient memory or insufficient privilege to attach
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用Jstack的选项-F,它可以很好地工作.我查看了jdk的源代码,它使用了一个BugSpotAgent类来完成上面的操作.
我想知道我无法原始使用Jstack的根本原因,是SYSTEM用户权限问题吗?我也尝试使用PsExec.exe(一个工具)来原始运行我的Jstack(这意味着我将使用SYSTEM用户运行Jstack),但它仍然无法工作.
你能帮助我吗?
感谢和问候!
我听说过特权级别,环,特权指令,非特权指令,用户模式,内核模式,用户空间,内核空间.
用户进程将以低权限运行,其中OS进程更高,我也听说过负责一般保护的CPL寄存器.CPU也只知道CPL,并确定哪个页面指令属于哪个基础.
我想知道谁/什么最初决定了流程的权限级别?
当确定进程将以低或高权限级别运行时?在编译时?在装货?
什么告诉当前程序将以特定权限级别运行?段寄存器?叙?装载机?
(请原谅我的无知 - 我不是经验丰富的Oracle用户.)
我正在尝试使用DBMS_METADATA.GET_DDL函数(与ALL_OBJECTS或其他类似的函数)来获取特定模式中所有表的DDL.当我这样做(对于所有对象或单个特定对象)时,我得到一个ORA-31603错误(在模式"SCHEMA"中找不到类型TABLE的"对象"FOO").
我认为这意味着我登录的用户没有必要的权限来读取GET_DDL所需的元数据.这需要什么特权?登录时是否有办法确认当前用户是否拥有此权限?
谢谢!背风处
我注意到普通用户可以在没有 sudo 的情况下更改自己的密码。但据我所知,更改密码必须编写只能由 root 访问的 /etc/shadow 文件。
怎么会这样??
即使在seteuid之后,也无法在python中删除root priv.一个bug?
编辑摘要:我忘了放弃gid.但是,接受的答案可能对你有所帮助.
你好.我不能在我的linux上删除python 3.2中的root权限.实际上,即使在seteuid(1000)之后,它也可以读取root拥有的400模式文件.euid肯定会设置为1000!
我发现在空的os.fork()调用之后,正确拒绝了特权访问.(但它只在父母身上.孩子仍然可以非法阅读.)这是python中的错误,还是linux?
请尝试下面的代码.注释掉底部的三行中的一行,并以root身份运行.
先谢谢.
#!/usr/bin/python3
# Python seteuid pitfall example.
# Run this __as__ the root.
# Here, access to root-owned files /etc/sudoers and /etc/group- are tried.
# Simple access to them *succeeds* even after seteuid(1000) which should fail.
# Three functions, stillRoot(), forkCase() and workAround() are defined.
# The first two seem wrong. In the last one, access fails, as desired.
# ***Comment out*** one of three lines at the bottom before execution.
# …
Run Code Online (Sandbox Code Playgroud) 我正在尝试了解有关intel x86架构的一些细节.我还没有真正理解调用门机制,但没有它,为了访问不符合代码段,它的DPL必须等于CPL.
我明白在DPL <CPL的情况下这很重要,但为什么在DPL> CPL的情况下禁止它?我的意思是如果我们想要保持相同的权限级别,CPL可以在跳转后保持不变,如果我们想降低我们的权限,我们可以使用RPL.
在保护模式下在 x86 上运行的自定义操作系统中,除了执行特权指令并查看它是否崩溃之外,有没有办法获得当前的特权级别?
例如,寄存器CR0
包含PE
位,指示我们是在实模式还是保护模式下运行,并且可以使用汇编代码轻松检索。
特权级别有什么等价的吗?
在英特尔架构软件开发者手册提到,EFLAGS
寄存器包含两个IOPL
相关的I / O特权级别位。这与当前权限级别 (CPL) 相同吗?
我刚刚了解到,默认情况下,Oracle不会向新用户授予"创建会话"权限.没问题,我可以自己做.
无论如何,我很好奇:为什么我想要没有"创建会话"权限的Oracle用户?它可以用于什么?必须有一些非显而易见的用途.我的第一个想法是运行数据库作业,但AFAIK他们需要这个权限,以及......