Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 删除了不删除权限的功能 我已经建立了一个C++二进制,并在代码上称为“代码> StCAP CAPNETNETRAW,CAPUSETPCAP+PE ,授予 NETSRAW < /COD>和 SETHPCAP能力。我已经通过成功创建一个套接字(AF\u PACKET,SOCK\u RAW,…)验证了二进制文件中存在这些功能。如果不调用setcap,socket函数将返回权限错误_Linux_Linux Capabilities - Fatal编程技术网

Linux 删除了不删除权限的功能 我已经建立了一个C++二进制,并在代码上称为“代码> StCAP CAPNETNETRAW,CAPUSETPCAP+PE ,授予 NETSRAW < /COD>和 SETHPCAP能力。我已经通过成功创建一个套接字(AF\u PACKET,SOCK\u RAW,…)验证了二进制文件中存在这些功能。如果不调用setcap,socket函数将返回权限错误

Linux 删除了不删除权限的功能 我已经建立了一个C++二进制,并在代码上称为“代码> StCAP CAPNETNETRAW,CAPUSETPCAP+PE ,授予 NETSRAW < /COD>和 SETHPCAP能力。我已经通过成功创建一个套接字(AF\u PACKET,SOCK\u RAW,…)验证了二进制文件中存在这些功能。如果不调用setcap,socket函数将返回权限错误,linux,linux-capabilities,Linux,Linux Capabilities,出于安全原因,我想在获得套接字后放弃NET\u RAW功能。这就是为什么我还设置了set\u PCAP功能,这样我就可以调用prctl(PR\u CAPBSET\u DROP,CAP\u NET\u RAW,…)。进行此调用后,prctl(PR\u CAPBSET\u READ,CAP\u NET\u RAW,…)表示我不再具有NET\u RAW权限。但是,我仍然可以成功地调用socket(…,SOCK\u RAW…)!即使我关闭了现有的原始套接字,我以后仍然可以创建一个新的套接字 是否需要执行

出于安全原因,我想在获得套接字后放弃
NET\u RAW
功能。这就是为什么我还设置了
set\u PCAP
功能,这样我就可以调用
prctl(PR\u CAPBSET\u DROP,CAP\u NET\u RAW,…)
。进行此调用后,
prctl(PR\u CAPBSET\u READ,CAP\u NET\u RAW,…)
表示我不再具有
NET\u RAW
权限。但是,我仍然可以成功地调用
socket(…,SOCK\u RAW…)
!即使我关闭了现有的原始套接字,我以后仍然可以创建一个新的套接字


是否需要执行其他操作来删除进程的权限以创建新的原始套接字?

只有当程序调用exec*()时,才会参考bset。如果不这样做,则需要从允许的和有效的集合中删除位以丢失此权限。只有当程序调用exec*()时,才会参考bset。如果不这样做,则需要从允许和有效的集合中删除位,以丢失此权限。