1、 windows dbg权限
管理员权限完全可以关闭系统中运行的任何用户模式下的进程,但是为何无法关闭呢,是因为Windows有一项机制叫“强制完整性控制”,IE保护模式处于低完整性,标准用户进程和管理员以标准用户权限运行时处于中完整性,管理员权限进程有高完整性,SYSTEM权限进程是系统完整性,强制完整性控制要优先于访问控制和安全描述符,所以管理员权限的程序依然不能直接访问服务程序的进程,只有获取了Debug权限,才可以以高完整性访问系统完整性的进程。
可能有人没有听说过强制完整性控制,但想必知道UIPI(用户界面特权隔离)吧,其实UIPI不是根据用户权限来隔离Windows消息的!而是通过强制完整性控制!哈哈,其实以前我也不知道,而且有些资料对于这个UIPI也是知其然但不知其所以然,说的很含糊,误导了很多人。
如何获取Debug特权呢? 首先用OpenProcessToken获取自身的权限令牌,之后用LookupPrivilegeValue查看系统权限的特权值,再用AdjustTokenPrivileges启用debug权限。
具体代码如下
BOOL EnableDebugPrivilege()
{
HANDLE hToken;
LUID Luid;
TOKEN_PRIVILEGES tp;
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))return FALSE;
if (!LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &Luid))
{
CloseHandle(hToken);
return FALSE;
}
tp.PrivilegeCount = 1;
tp.Privileges[0].Luid = Luid;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!AdjustTokenPrivileges(hToken, false, &tp, sizeof(tp), NULL, NULL))
{
CloseHandle(hToken);
return FALSE;
}
CloseHandle(hToken);
return TRUE;
}
cuckoo 调用suricata接口
/home/cuckoo_run/venv/lib/python2.7/site-packages/cuckoo/processing/suricata.py 通过suricata socket的模式 suricatac 进行相互调用。 传送tcpdump捕获的数据包 调用分析过的日志,进行解析为cuckoo自己的模式。
suricata配置: venv/lib64/python2.7/site-packages/cuckoo/compat/config.py
cwd/conf/processing.conf