首页
社区
课程
招聘
[已解决] [求助]某程序运行时,如果禁用并重新启用任意网卡,程序会阻止了网卡初始化,请教大概是怎么做到的以及反制的思路 100.00雪花
发表于: 2023-3-6 18:11 8055

[已解决] [求助]某程序运行时,如果禁用并重新启用任意网卡,程序会阻止了网卡初始化,请教大概是怎么做到的以及反制的思路 100.00雪花

2023-3-6 18:11
8055

开启程序之前,禁用和启用网卡是正常的。猜测程序为了阻止多开,会通过某个手段阻止网卡初始化。开启程序后,禁用一个未使用的网卡,然后启用,网卡不能正常运行,设备管理器显示如下 设备管理器事件查看器显示如下 设备管理器 关闭程序后,网卡又可以正常禁用和启用


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 92
活跃值: (176)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
难给出具体答案。然而,一种可能的解释是,该程序正在使用低级网络驱动程序或API来控制网卡,并且正在拦截初始化过程以阻止其完成。为了抵消这种行为,一种方法可能是尝试使用程序无法控制的其他网络驱动程序或API,或者修改程序本身以允许网卡初始化正常进行。另一种方法可能是尝试禁用程序或完全从系统中删除它,如果可能的话。
2023-3-24 22:42
0
雪    币: 60
活跃值: (170)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
这应该和网卡没什么关系,提出这个问题可能你没意识到这很可能是程序驱动级保护。你可以在程序运行期间自己看能不能手动加载自己的驱动和用驱动软件查看是否有该程序驱动加载了。如果保护在驱动级,怎么做到的以及反制你需要学习驱动保护的内容自然就明白了。
2023-3-29 16:51
0
雪    币: 1141
活跃值: (251)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
使用Windows SDK中的设备管理接口(Device Management Interface,DMI)可以实现网卡禁止初始 化,具体实现如下:

//```c
#include <windows.h>
#include <devioctl.h>
#include <setupapi.h>
#include <cfgmgr32.h>

/*
//获取特定设备的设备管理控制码
DWORD ICM_GET_CONFIGURATION_INFORMATION(HDEVINFO DeviceInfoSet,
                                          PSP_DEVINFO_DATA DeviceInfoData,
                                          CM_CONFIGURATION_INFORMATION *Configuration)
*/
DWORD DWORD  Get_Interface_State(HDEVINFO DeviceInfoSet, PSP_DEVINFO_DATA DeviceInfoData)
{
        DWORD dwRetVal = 0;
        DWORD dwSize;
        CM_CONFIGURATION_INFORMATION *Configuration;

        dwSize = sizeof(CM_CONFIGURATION_INFORMATION);
        Configuration = (CM_CONFIGURATION_INFORMATION *)malloc(dwSize);
        if (Configuration)
        {
                dwRetVal = CM_Get_Configuration_Information(Configuration);
                if (dwRetVal == CR_SUCCESS)
                {
                        //使用DeviceInfoSet,DeviceInfoData进行操作
                        //如设置网卡禁止初 始 化:
                        if (DeviceInfoSet)
                        {
                                DWORD dwSize = 0;
                                CM_Power_Data PowerData;
                                PowerData.PD_Size = sizeof(CM_Power_Data);
                                dwRetVal = CM_Set_DevInst_Status(DeviceInfoData->DevInst, DICS_DISABLE, 0);
                        }
                }
                free(Configuration);
        }
        return dwRetVal;
}
2023-5-15 10:23
1
雪    币: 1187
活跃值: (410)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
xiaokebnb 使用Windows SDK中的设备管理接口(Device Management Interface,DMI)可以实现网卡禁止初始 化,具体实现如下: //```c #include #in ...
chatgpt给的回答?
2023-5-16 07:37
0
雪    币: 3070
活跃值: (30876)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
这就结束了
2023-5-16 09:42
1
游客
登录 | 注册 方可回帖
返回
//