问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何设置内核对象的访问控制列表

发布网友 发布时间:2022-04-12 12:43

我来回答

2个回答

懂视网 时间:2022-04-12 17:05

一、ACL在应用时遵循的规则: 1.按顺序比较 列表 的每一行 2.按顺序比较ACL的各行,直到找到匹配的一行,一旦数据包匹配上ACL的某一 行,将遵照规定行事,不在进行后续比较(意味著 列表 应按使用频率来排列) 3. 在每个ACL的最后一行隐含了“deny”语句。 4.

一、ACL在应用时遵循的规则:

1.按顺序比较列表的每一行

2.按顺序比较ACL的各行,直到找到匹配的一行,一旦数据包匹配上ACL的某一  
   行,将遵照规定行事,不在进行后续比较(意味著列表应按使用频率来排列)

3. 在每个ACL的最后一行隐含了“deny”语句。

4.把ACL应用到端口的命令:

A.R1#ip access-group 10 in

B.R1#access-list 10 in(在vty模式下的acl应用默认就只针对telnet)

二、ACL的两大类型:

1.standard ACL:只使用源IP地址作为条件(放在离目的的最近的接口out)

R1#access-list 10 deny 192.168.0.128 0.0.0.127

注:每个块的大小必须从0或一个快大小的倍数开始

2.extend ACL:条件可以是3层的协议、4层的端口号以及源、目标IP地址(放在
离源地址最近的接口in)

3.domain ACL:以上两种的不同表示,但功能是一样的

注:每接口、每协议、每方向只能分配一个ACL

只有domain ACL可以从列表中删除一行或者在列表中插入一行

三、ACL的各种应用:

1、交换机端口ACL:只支持第2层物理层接口,并且只能把它们应用在接口的
入口列表上,只能使用命名访问控制列表

2、ACL可用于虚拟局域网的流量控制,这需要ACL应用到中继端口

3、对于基于IP和MAC的ACL,单独的接口上,只能应用其中的一个,后者会覆
盖前者

eg:S1#mac access-list extended Blocksales

S1#deny any host 000d.29bd.4b85

S1#permit any any

S1#interface fa 0/1

S1#mac access-group Blocksales in

4、锁和钥匙(动态ACL)?

5、自反ACL?

6、基于时间的ACL:

eg:R1#time-range worktime

R1#periodic weekend 09:00 to 18:00

R1#exit

R1#time-range freetime

R1#periodic weekend 18:00 to 22:00

R1#exit

R1#ip access-list extended time

R1#deny tcp any any eq www time-range worktime

R1#permit tcp any any time-range freetime

R1#interface fa0/0

R1#ip access-group time in

R1#exit

注释:R1#ip access-list extended time

R1#remark leash the action of internet on worktime

R1#deny tcp any any eq www time-range worktime

午夜游

热心网友 时间:2022-04-12 14:13

这个你可以参考两本资料,一本是windows internasl ,一本是windows安全编程(目前有中文版了) ,这两本书详细描述了内核对象的访问控制。然后,下面是一个win2000上的例子,虽然代码老了,但是思路还是有的:实例是创建一个在Windows2000下不会被杀死的计事本程序 

void Test()
{
printf("本程序将创建一个不可被杀死的记事本!\n");
PSID pEveryoneSID        = NULL; // everyone群组SID
PSID pAdminSID           = NULL; // 本机系统管理员群组SID
EXPLICIT_ACCESS           ea[3]; // ACE内容
PACL pProcessACL         = NULL; // 进程的DACL
PSECURITY_DESCRIPTOR pSD = NULL; // 进程的SD
SECURITY_ATTRIBUTES   saProcess; // 进程SA
DWORD dwRet;
// 以下创建SID
// S-1-1-0
SID_IDENTIFIER_AUTHORITY SIDAuthWorld = SECURITY_WORLD_SID_AUTHORITY;
SID_IDENTIFIER_AUTHORITY SIDAuthNT = SECURITY_NT_AUTHORITY;
if (!AllocateAndInitializeSid(&SIDAuthWorld, 1, SECURITY_WORLD_RID,
0, 0, 0, 0, 0, 0, 0, &pEveryoneSID))
{
printf("AllocateAndInitializeSid failed! EveryoneSID\n");
goto Err;
}
// S-1-5-32-0x220
if (!AllocateAndInitializeSid(&SIDAuthNT, 1, SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS, 0, 0, 0, 0, 0, 0, &pAdminSID))
{
printf("AllocateAndInitializeSid failed! AdminSID\n");
goto Err;
}
// S-1-5-32-0x1F4
PSID pAdminuUserSID;
if (!AllocateAndInitializeSid(&SIDAuthNT, 1, SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_USER_RID_ADMIN, 0, 0, 0, 0, 0, 0, &pAdminuUserSID))
{
printf("AllocateAndInitializeSid failed! pAdminuUserSID\n");
goto Err;
}
// 填充外部访问组
ZeroMemory(&ea, 2 * sizeof(EXPLICIT_ACCESS));
// S-1-1-0,禁止关闭进程和修改参数
ea[0].grfAccessPermissions = PROCESS_TERMINATE|PROCESS_SET_INFORMATION;
ea[0].grfAccessMode = GRANT_ACCESS;
ea[0].grfInheritance= NO_INHERITANCE;
ea[0].Trustee.TrusteeForm = TRUSTEE_IS_SID;
ea[0].Trustee.TrusteeType = TRUSTEE_IS_WELL_KNOWN_GROUP;
ea[0].Trustee.ptstrName  = (LPTSTR) pEveryoneSID;
// S-1-5-32-0x220,禁止关闭进程和修改参数
ea[1].grfAccessPermissions = PROCESS_TERMINATE|PROCESS_SET_INFORMATION;
ea[1].grfAccessMode = GRANT_ACCESS;
ea[1].grfInheritance= NO_INHERITANCE;
ea[1].Trustee.TrusteeForm = TRUSTEE_IS_SID;
ea[1].Trustee.TrusteeType = TRUSTEE_IS_GROUP;
ea[1].Trustee.ptstrName  = (LPTSTR) pAdminSID;
// S-1-5-32-0x1F4,禁止关闭进程和修改参数
ea[2].grfAccessPermissions = PROCESS_TERMINATE|PROCESS_SET_INFORMATION;
ea[2].grfAccessMode = GRANT_ACCESS;
ea[2].grfInheritance= NO_INHERITANCE;
ea[2].Trustee.TrusteeForm = TRUSTEE_IS_SID;
ea[2].Trustee.TrusteeType = TRUSTEE_IS_USER;
ea[2].Trustee.ptstrName  = (LPTSTR) pAdminuUserSID;
// 创建并填充ACL
dwRet = SetEntriesInAcl(3, ea, NULL, &pProcessACL);
if (dwRet != ERROR_SUCCESS)
{
printf("SetEntriesInAcl failed!\nCode = %d", dwRet);
goto CleanUp;
}
// 创建并初始化SD
pSD = (PSECURITY_DESCRIPTOR) LocalAlloc(LPTR, 
SECURITY_DESCRIPTOR_MIN_LENGTH); 
if (pSD == NULL)

printf( "LocalAlloc failed!\n");
goto Err; 

if (!InitializeSecurityDescriptor(pSD, SECURITY_DESCRIPTOR_REVISION)) 
{  
printf( "InitializeSecurityDescriptor failed!\n");
goto Err;
}
// 添加ACL到SD中去
if (!SetSecurityDescriptorDacl(pSD,
        TRUE,     // fDaclPresent flag   
        pProcessACL, 
        FALSE))   // not a default DACL 
{  
printf( "SetSecurityDescriptorDacl failed!");
goto Err;
}
// 设置SA
saProcess.nLength = sizeof(SECURITY_ATTRIBUTES);
saProcess.lpSecurityDescriptor = pSD;
saProcess.bInheritHandle = FALSE;
// 运行进程并等待其正常结束
PROCESS_INFORMATION ProcessInfo;
STARTUPINFO StartupInfo;
ZeroMemory(&StartupInfo, sizeof(StartupInfo));
StartupInfo.cb = sizeof(StartupInfo);
if (CreateProcess("c:\\winnt\\notepad.exe", NULL, 
&saProcess, NULL, FALSE, 0, NULL,
NULL, &StartupInfo, &ProcessInfo))
{
WaitForSingleObject(ProcessInfo.hProcess, INFINITE);
CloseHandle(ProcessInfo.hThread);
CloseHandle(ProcessInfo.hProcess);
}  
else
{
printf("CreateProcess failed!\n");
goto Err;
}
// Clean up
CleanUp:
printf("Exiting...\n");
if (pEveryoneSID != NULL)
{
FreeSid(pEveryoneSID);
}
if (pAdminSID != NULL)
{
FreeSid(pAdminSID);
}
if (pProcessACL != NULL)
{
LocalFree(pProcessACL);
}
if (pSD != NULL)
{
LocalFree(pSD);
}
printf("Success!\n");
return;
// Error process
Err:
DWORD dwErr;
dwErr = GetLastError();
printf("Code = %d \n", dwErr);
goto CleanUp;
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
哪个牌子复印机好 复印店用什么型号的复印机好 开复印店需要什么设备 家用打印复印机哪个好 如何分辨鞋底是不是空心格子底? Ubuntu10.04下安装Oracle11g 超市监控多少钱 超市防盗器要多少钱 超市防盗系统多少钱 智能存放柜管理系统 48小时核酸检测结果在哪里查询-48小时核酸检测怎么看结果 五棵松体育馆的长是多少宽是多少高是多少 奥运会篮球比赛的地方 五棵松体育场有多少排呢 五棵松球馆的长 宽 高是多少 远大洁净新风机多久清洗一次? 五棵松体育馆的具体资料 国际合作高校相对有哪些优势? 022年北京冬奥会场馆之一首都体育馆修建于哪一年? 2022年北京冬奥会场馆之一首都体育馆修建于哪一年? 想换新风系统,有什么推荐吗? 北京体育大学 哪个场馆有新风系统 鸡味虾的制作方法 海鲜焖锅怎么做? 闪电部队充值什么好? 听<闪电部队在前进>是不是失去正义感了? 海鲜焖锅怎么做如何做好吃 有什么游戏可以像闪电部队一样的fps多人游戏,不要全民*战这样的弱智游戏,近地轨道防御3的多人对战 ios游戏 闪电部队 如何修改钻石? flex也可以 已越狱. 求大神指教 100分重谢0.0 请问!我现在在玩苹果版的游戏闪电部队,现在平板想去越狱闪电部队还会存档吗!还是越狱完后要重新下载玩 闪电部队咋登录我4399游戏盒下载的手机版的额说在手机设置连接咋连接 跪求闪电部队(ios)gm全角色账号.QQ或邮箱,谢谢 快手星评分多少天更新一次? 快手星评分多少天更新一次 微信怎么变更个人实名制信息 纸枪的折法大全打子弹 豇豆腐竹小炒肉怎么做 对你而言,最好的下饭菜是什么? 私房小炒肉沫豆角自热炒饭15分钟可以吃吗? 大刀豆应该怎么做才好吃 焖面一般用什么样的菜比较合适, 在思科三层交换机上怎麽用访问控制列表限制一个VLAN访问另一个VLAN(具体命令最好给出) 对于一个成年人来说,每天做多长时间的无氧运动算合适? 新手求教,每次无氧训练的时间最好是多久 以增肌为目的的健身先做有氧运动还是无氧运动,每种做多久合适? 无氧运动一次做多久最健康 每天晚上都做40分钟无氧运动 要多少天才能有效果 一天运动多久最好?有氧和无氧运动时间该如何分配? 居中实点怎么打? 减脂期无氧和有氧各做多长时间比较好? 无氧运动一次做多久能减肥 无氧运动需要做多久?然后隔多久再做有氧运动,时间分配怎么分?