예제 #1
0
        private void ShowProcessSecurity(ProcessTokenEntry process)
        {
            var viewer = new SecurityDescriptorViewerForm($"{process.Name}:{process.ProcessId}",
                                                          process.ProcessSecurity, NtType.GetTypeByType <NtProcess>(), false);

            viewer.ShowDialog(this);
        }
예제 #2
0
 private void showServiceSecurityToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (listViewServices.SelectedItems.Count > 0)
     {
         if (listViewServices.SelectedItems[0].Tag is ServiceTokenEntry service)
         {
             if (service.Service.SecurityDescriptor != null)
             {
                 var viewer = new SecurityDescriptorViewerForm(service.Service.Name,
                                                               service.Service.SecurityDescriptor, NtType.GetTypeByName(ServiceUtils.SERVICE_NT_TYPE_NAME, false), false);
                 viewer.ShowDialog(this);
             }
         }
     }
 }
예제 #3
0
 private void showThreadSecurityToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (listViewThreads.SelectedItems.Count > 0)
     {
         if (listViewThreads.SelectedItems[0].Tag is ThreadTokenEntry thread)
         {
             if (thread.ThreadSecurity != null)
             {
                 var viewer = new SecurityDescriptorViewerForm($"{thread.Name}:{thread.ProcessId}.{thread.ThreadId}",
                                                               thread.ThreadSecurity, NtType.GetTypeByType <NtThread>(), false);
                 viewer.ShowDialog(this);
             }
         }
     }
 }