Python os.setreuid() Examples
The following are 30
code examples of os.setreuid().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
os
, or try the search function
.
Example #1
Source File: test_process.py From python-for-android with Apache License 2.0 | 6 votes |
def test_mockPTYSetUidInParent(self): """ Try creating a PTY process with setting its uid, in the parent path: it should switch to root before fork, then restore initial uid/gids. """ self.mockos.child = False cmd = '/mock/ouch' d = defer.Deferred() p = TrivialProcessProtocol(d) oldPTYProcess = process.PTYProcess try: process.PTYProcess = DumbPTYProcess reactor.spawnProcess(p, cmd, ['ouch'], env=None, usePTY=True, uid=8080) finally: process.PTYProcess = oldPTYProcess self.assertEquals(self.mockos.actions, [('setuid', 0), ('setgid', 0), ('fork', False), ('setregid', 1235, 1234), ('setreuid', 1237, 1236), 'waitpid'])
Example #2
Source File: uid.py From mock with GNU General Public License v2.0 | 5 votes |
def dropPrivsForever(self): self._elevatePrivs() os.setregid(self.unprivGid, self.unprivGid) os.setreuid(self.unprivUid, self.unprivUid)
Example #3
Source File: test_os.py From CTFCrackTools with GNU General Public License v3.0 | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #4
Source File: test_os.py From CTFCrackTools with GNU General Public License v3.0 | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(os.error, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #5
Source File: test_os.py From CTFCrackTools-V2 with GNU General Public License v3.0 | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #6
Source File: test_os.py From CTFCrackTools-V2 with GNU General Public License v3.0 | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(os.error, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #7
Source File: test_os.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #8
Source File: test_os.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(OSError, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #9
Source File: test_process.py From python-for-android with Apache License 2.0 | 5 votes |
def test_mockErrorInForkRestoreUID(self): """ If C{os.fork} raises an exception and a UID change has been made, the previous UID and GID are restored. """ self.mockos.raiseFork = OSError(errno.EAGAIN, None) protocol = TrivialProcessProtocol(None) self.assertRaises(OSError, reactor.spawnProcess, protocol, None, uid=8080) self.assertEqual(self.mockos.actions, [('setuid', 0), ('setgid', 0), ("fork", False), ('setregid', 1235, 1234), ('setreuid', 1237, 1236)])
Example #10
Source File: test_process.py From python-for-android with Apache License 2.0 | 5 votes |
def test_mockSetUidInParent(self): """ Try creating a process with setting its uid, in the parent path: it should switch to root before fork, then restore initial uid/gids. """ self.mockos.child = False cmd = '/mock/ouch' d = defer.Deferred() p = TrivialProcessProtocol(d) reactor.spawnProcess(p, cmd, ['ouch'], env=None, usePTY=False, uid=8080) self.assertEquals(self.mockos.actions, [('setuid', 0), ('setgid', 0), ('fork', False), ('setregid', 1235, 1234), ('setreuid', 1237, 1236), 'waitpid'])
Example #11
Source File: test_process.py From python-for-android with Apache License 2.0 | 5 votes |
def setreuid(self, val1, val2): """ Override C{os.setreuid}. Save the action. """ self.actions.append(('setreuid', val1, val2))
Example #12
Source File: test_binaries.py From reconbf with Apache License 2.0 | 5 votes |
def _safe_child(to_exec, q, uid, gid): try: os.setgroups([]) os.setregid(gid, gid) os.setreuid(uid, uid) res = subprocess.check_output(to_exec, stderr=open(os.devnull, 'w')) q.put(res) except Exception as e: q.put(e)
Example #13
Source File: test_os.py From gcblue with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #14
Source File: test_os.py From gcblue with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(os.error, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #15
Source File: test_os.py From ironpython2 with Apache License 2.0 | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(os.error, os.setreuid, 0, 0) self.assertRaises(TypeError, os.setreuid, 'not an int', 0) self.assertRaises(TypeError, os.setreuid, 0, 'not an int') self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #16
Source File: test_process.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def setreuid(self, val1, val2): """ Override C{os.setreuid}. Save the action. """ self.actions.append(('setreuid', val1, val2))
Example #17
Source File: test_os.py From ironpython2 with Apache License 2.0 | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #18
Source File: test_os.py From BinderFilter with MIT License | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(os.error, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #19
Source File: test_os.py From BinderFilter with MIT License | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #20
Source File: test_os.py From oss-ftp with MIT License | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(os.error, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #21
Source File: test_os.py From oss-ftp with MIT License | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #22
Source File: util.py From mock with GNU General Public License v2.0 | 5 votes |
def condDropPrivs(uid, gid): if gid is not None: os.setregid(gid, gid) if uid is not None: os.setreuid(uid, uid)
Example #23
Source File: server.py From poet with MIT License | 5 votes |
def drop_privs(): try: new_uid = int(os.getenv('SUDO_UID')) new_gid = int(os.getenv('SUDO_GID')) except TypeError: # they were running directly from a root user and didn't have # sudo env variables print """[!] WARNING: Couldn't drop privileges! To avoid this error, run from a non-root user. You may also use sudo, from a non-root user. Continue? (y/n)""", if raw_input().lower()[0] == 'y': return die() debug.info('Dropping privileges to uid: {}, gid: {}'.format(new_uid, new_gid)) # drop group before user, because otherwise you're not privileged enough # to drop group os.setgroups([]) os.setregid(new_gid, new_gid) os.setreuid(new_uid, new_uid) # check to make sure we can't re-escalate try: os.seteuid(0) print '[!] WARNING: Failed to drop privileges! Continue? (y/n)', if raw_input().lower()[0] != 'y': die() except OSError: return
Example #24
Source File: test_os.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(OSError, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #25
Source File: test_os.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #26
Source File: test_process.py From learn_python3_spider with MIT License | 5 votes |
def setreuid(self, val1, val2): """ Override C{os.setreuid}. Save the action. """ self.actions.append(('setreuid', val1, val2))
Example #27
Source File: test_os.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_setreuid(self): if os.getuid() != 0: self.assertRaises(OSError, os.setreuid, 0, 0) self.assertRaises(OverflowError, os.setreuid, 1<<32, 0) self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
Example #28
Source File: test_os.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_setreuid_neg1(self): # Needs to accept -1. We run this in a subprocess to avoid # altering the test runner's process state (issue8045). subprocess.check_call([ sys.executable, '-c', 'import os,sys;os.setreuid(-1,-1);sys.exit(0)'])
Example #29
Source File: manager.py From pmatic with GNU General Public License v2.0 | 4 votes |
def daemonize(self, user=0, group=0): # do the UNIX double-fork magic, see Stevens' "Advanced # Programming in the UNIX Environment" for details (ISBN 0201563177) try: pid = os.fork() if pid > 0: # exit first parent sys.exit(0) except OSError as e: sys.stderr.write("Fork failed (#1): %d (%s)\n" % (e.errno, e.strerror)) sys.exit(1) # decouple from parent environment # chdir -> don't prevent unmounting... os.chdir("/") # Create new process group with the process as leader os.setsid() # Set user/group depending on params if group: os.setregid(getgrnam(group)[2], getgrnam(group)[2]) if user: os.setreuid(getpwnam(user)[2], getpwnam(user)[2]) # do second fork try: pid = os.fork() if pid > 0: sys.exit(0) except OSError as e: sys.stderr.write("Fork failed (#2): %d (%s)\n" % (e.errno, e.strerror)) sys.exit(1) sys.stdout.flush() sys.stderr.flush() si = os.open("/dev/null", os.O_RDONLY) so = os.open("/dev/null", os.O_WRONLY) os.dup2(si, 0) os.dup2(so, 1) os.dup2(so, 2) os.close(si) os.close(so) self.logger.debug("Daemonized with PID %d.", os.getpid())
Example #30
Source File: mamaji.py From procszoo with GNU General Public License v3.0 | 4 votes |
def change_users_and_groups(mamaji_data): current_users = mamaji_data['current_users'] current_groups = mamaji_data['current_groups'] pending_users = mamaji_data['pending_users'] pending_groups = mamaji_data['pending_groups'] groups = mamaji_data['supplementary_groups'] if groups: os.setgroups(groups) group_types = [k for k in ['rgid', 'egid', 'sgid'] if pending_groups[k] is not None] group_types_len = len(group_types) if group_types_len == 3: setresgid(pending_groups['rgid'], pending_groups['egid'], pending_groups['sgid']) elif group_types_len == 2: if 'rgid' in group_types and 'egid' in group_types: os.setregid(pending_groups['rgid'], pending_groups['egid']) elif group_types_len == 1: if 'egid' in group_types: os.setegid(pending_groups['egid']) user_types = [k for k in ['ruid', 'euid', 'suid'] if pending_users[k] is not None] user_types_len = len(user_types) if user_types_len == 3: setresuid(pending_users['ruid'], pending_users['euid'], pending_users['suid']) elif user_types_len == 2: if 'ruid' in user_types and 'euid' in user_types: os.setreuid(pending_users['ruid'], pending_users['euid']) elif user_types_len == 1: if 'euid' in user_types: os.seteuid(pending_users['euid']) if pending_groups['gid'] is not None: os.setgid(pending_groups['gid']) if pending_users['uid'] is not None: os.setuid(pending_users['uid'])