home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_2484 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  2.8 KB  |  49 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. import win32security
  5. import win32api
  6. import win32con
  7. import win32process
  8. new_privs = ((win32security.LookupPrivilegeValue('', win32security.SE_SECURITY_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_TCB_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_SHUTDOWN_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_RESTORE_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_TAKE_OWNERSHIP_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_CREATE_PERMANENT_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_ENABLE_DELEGATION_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_CHANGE_NOTIFY_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_DEBUG_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_PROF_SINGLE_PROCESS_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_SYSTEM_PROFILE_NAME), win32con.SE_PRIVILEGE_ENABLED), (win32security.LookupPrivilegeValue('', win32security.SE_LOCK_MEMORY_NAME), win32con.SE_PRIVILEGE_ENABLED))
  9. all_info = win32security.OWNER_SECURITY_INFORMATION | win32security.GROUP_SECURITY_INFORMATION | win32security.DACL_SECURITY_INFORMATION | win32security.SACL_SECURITY_INFORMATION
  10. pid = win32api.GetCurrentProcessId()
  11. ph = win32api.OpenProcess(win32con.PROCESS_ALL_ACCESS, 0, pid)
  12. th = win32security.OpenProcessToken(ph, win32security.TOKEN_ALL_ACCESS)
  13. old_privs = win32security.AdjustTokenPrivileges(th, 0, new_privs)
  14. my_sid = win32security.GetTokenInformation(th, win32security.TokenUser)[0]
  15. pwr_sid = win32security.LookupAccountName('', 'Power Users')[0]
  16. ph = win32api.OpenProcess(win32con.PROCESS_ALL_ACCESS | win32con.ACCESS_SYSTEM_SECURITY, 0, pid)
  17. sd = win32security.GetSecurityInfo(ph, win32security.SE_KERNEL_OBJECT, all_info)
  18. dacl = sd.GetSecurityDescriptorDacl()
  19. if dacl is None:
  20.     dacl = win32security.ACL()
  21.  
  22. sacl = sd.GetSecurityDescriptorSacl()
  23. if sacl is None:
  24.     sacl = win32security.ACL()
  25.  
  26. dacl_ace_cnt = dacl.GetAceCount()
  27. sacl_ace_cnt = sacl.GetAceCount()
  28. dacl.AddAccessAllowedAce(dacl.GetAclRevision(), win32con.ACCESS_SYSTEM_SECURITY | win32con.WRITE_DAC, my_sid)
  29. sacl.AddAuditAccessAce(sacl.GetAclRevision(), win32con.GENERIC_ALL, my_sid, 1, 1)
  30. win32security.SetSecurityInfo(ph, win32security.SE_KERNEL_OBJECT, all_info, pwr_sid, pwr_sid, dacl, sacl)
  31. new_sd = win32security.GetSecurityInfo(ph, win32security.SE_KERNEL_OBJECT, all_info)
  32. if new_sd.GetSecurityDescriptorDacl().GetAceCount() != dacl_ace_cnt + 1:
  33.     print 'New dacl doesnt contain extra ace ????'
  34.  
  35. if new_sd.GetSecurityDescriptorSacl().GetAceCount() != sacl_ace_cnt + 1:
  36.     print 'New Sacl doesnt contain extra ace ????'
  37.  
  38. if win32security.LookupAccountSid('', new_sd.GetSecurityDescriptorOwner())[0] != 'Power Users':
  39.     print 'Owner not successfully set to Power Users !!!!!'
  40.  
  41. if win32security.LookupAccountSid('', new_sd.GetSecurityDescriptorGroup())[0] != 'Power Users':
  42.     print 'Group not successfully set to Power Users !!!!!'
  43.  
  44. win32security.SetSecurityInfo(ph, win32security.SE_KERNEL_OBJECT, win32security.SACL_SECURITY_INFORMATION, None, None, None, None)
  45. new_sd_1 = win32security.GetSecurityInfo(ph, win32security.SE_KERNEL_OBJECT, win32security.SACL_SECURITY_INFORMATION)
  46. if new_sd_1.GetSecurityDescriptorSacl() is not None:
  47.     print 'Unable to set Sacl to NULL !!!!!!!!'
  48.  
  49.