上网行为管理agent(开源产品deskvideosys代理)

接上一篇终端上网行为管理开源框架己经介绍的服务器端开源代码,其实同时还开源了agent端的代码,agent使用的是vc++,能运行在windows7以上操作系统上,目前代码还不是太多,主要是收集了pc端的程序运行信息,我给大家大致解读下,具体的源码地 址为boxiaojishu/windata (github.com)

代码中先是实现了一个公共读取windows操作系统的硬件信息

bool getDevcieInfo(char* cmd, list<string>& resultList) {
    char buffer[BUFFER_SIZE];
    bool ret = false;
    FILE* pipe = _popen(cmd, "r"); //打开管道,并执行命令
    if (!pipe)
    return ret;
    const char* name[20] = { "UUID","ProcessorId","SerialNumber" };
    int len0 = strlen(name[0]), len1 = strlen(name[1]), len2 = strlen(name[2]);
    bool isOk = false;
    while (!feof(pipe))
    {
    if (fgets(buffer, BUFFER_SIZE, pipe))
    {
    if (strncmp(name[0], buffer, len0) == 0
    || strncmp(name[1], buffer, len1) == 0
    || strncmp(name[2], buffer, len2) == 0) // 能够正确获取信息
    {
    isOk = true;
    continue;
    }
    if (isOk == false
    || strcmp("\r\n", buffer) == 0) //去掉windows无用的空行
    {
    continue;
    }
    ret = true;
    resultList.push_back(string(buffer));
    }
    }
    _pclose(pipe); // 关闭管道
    return ret;
}

接着实现了一个读取主板UUID信息,如果主板UUID不存在,使用CPUID、BIOS序列号、硬盘序列号生成机器指纹

代码如下:

string getDeviceFingerPrint() {
    list<string> strList;
    list<string>::iterator it;
    hash<string> str_hash;
    size_t num;
    char tmp[11] = { 0 };
    // 主板UUID存在,就使用主板UUID生成机器指纹

    if (getDevcieInfo((char*)"wmic csproduct get UUID", strList)

    && (*strList.begin()).compare("FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF\r\n") != 0)
    {

    //cout << *strList.begin() << endl;

    cout << (*strList.begin()).substr(0, (*strList.begin()).length() - 4) << endl;
    num = str_hash(*strList.begin());

    sprintf_s(tmp, "%u", num);

    //cout << string(tmp) << endl;
    return string((*strList.begin()).substr(0, (*strList.begin()).length() - 4));
    }
    // 主板UUID不存在,使用CPUID、BIOS序列号、硬盘序列号生成机器指纹

    string otherStr("");

    strList.clear();

    if (getDevcieInfo((char*)"wmic cpu get processorid", strList)) {

    //otherStr.append((*strList.begin()).pop_back());

    otherStr.append((*strList.begin()).substr(0, (*strList.begin()).length() - 4));

    cout << *strList.begin() << endl;

    }

    cout << otherStr << endl;

    strList.clear();

    if (getDevcieInfo((char*)"wmic bios get serialnumber", strList)) {

    otherStr.append((*strList.begin()).substr(0, (*strList.begin()).length() - 9));

    cout << *strList.begin() << endl;

    cout << otherStr << endl;

    }

    strList.clear();
    if (getDevcieInfo((char*)"wmic diskdrive get serialnumber", strList)) {
    string allDiskNum("");
    // 硬盘可能有多块
    for (it = strList.begin(); it != strList.end(); it++)
    {
    allDiskNum.append(*it);
    }
    cout << *strList.begin() << endl;
    otherStr.append((*strList.begin()).substr(0, (*strList.begin()).length() - 4));
    }
    cout << otherStr << endl;
    num = str_hash(otherStr);

    sprintf_s(tmp, "%u", num);
    //cout << string(tmp) << endl;
    return string(otherStr);

}

先解读到这里,后面的代码大家先自己看,待有空再来解读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LaneCat网猫上网行为管理软件内网版是一款基于B/S架构电信级的互联网监控软件,软件可以实时记录局域网内计算机所有用户的在使用计算机时的行为,让你能直观的了解到用户在工作中使用计算机、修改资料和访问互联网的情况,包括收发的邮件、浏览的网页以及FTP上传下载的文件,监视和管理网内用户的聊天行为,限制、阻断网内用户访问指定网络资源或网络协议等。是安全简便有效的网络监控、网络管理工具,是用户实现互联网监控功能的好帮手。 LaneCat网猫上网行为管理软件内网版功能 一、网页浏览管控: LaneCat网猫能够查看员工网页访问情况的同时,可帮助网络管理人员建立符合内网安全和封堵策略的网站访问黑白名单,审计并规范用户的上网行为,有效降低上述安全风险,更能提高员工的工作效率。 全面记录用户所访问的所有浏览过的网页,内容包括网址、标题、时间等,并能够方便查询; 阻断任何不符合IT策略的网页访问,如娱乐、新闻、反动、色情等; 可执行人性化的分时段网页浏览控制策略。 二、邮件管控: LaneCat网猫可以完整的记录各种类型的邮件的详细内容以供审计,并能够通过准确限制邮局黑白名单来规范用户的电子邮件使用行为,防范电子邮件滥用的泄密风险。 完整记录各种方式(webmail、outlook、foxmail等)邮件的收发件人、正文内容以及附件内容; 设定邮件服务器黑白名单,有效限制邮件收发; 限制指定格式附件邮件发送。 三、聊天工具管控: LaneCat网猫可以完整地记录大部分主流即时聊天工具的聊天内容,同时,它还可以阻止用户通过聊天工具外发内部机密文件,从而有效地防止内部机密文件经由聊天工具泄漏。 记录的聊天工具包括QQ、MSN、飞信、Skype、Google Talk、雅虎通等; 根据文件格式、文件大小等控制文件通过即时聊天工具外发。 四、网络流量监控: LaneCat网猫可以实时的显示各用户使用网络流量情况,并以图表让整体和数字的直观方式提供管理者查看,方便管理针对网络异常时做出快速响应,保证关键业务的正常带宽,使整个网络更加通畅。 实时显示每台电脑的带宽,包括上传流量、下载流量和总流量; 可按上传流量、下载流量和总流量等进行排序查看; 可按部门查看,并可查看整个公司总的带宽大小。 五、文件操作管控 LaneCat网猫可以有效地保护终端、文件服务器等各种位置的文档的应用安全,防范非法的文件访问、修改、删除、复制等危险行为的发生,杜绝文件损失与泄漏风险;同时,详细的文档操作行为审计可以记录下一切文档使用行为。当风险操作发生时,完善的备份机制还能进一步保护机密文档的安全。完整记录对各种文件操作,包括创建、访问、修改、删除、复制等; 支持记录包括本地硬盘、网络盘、可移动存储等各种位置的文档操作详情; 实现引擎与特征库的分离 控制用户对各种位置的文件的操作权限,包括访问、修改、删除等; 在文件被非法修改、删除等操作时及时进行备份,防止文档损失,同时留存证据。 六、打印监控: LaneCat网猫可以完整的记录全部的打印操作行为。防范打印泄密的同时,还能减少非必要的打印行为,节约成本。 记录完整的打印操作信息,包括打印机名、计算机、用户、文件、标题、应用程序、页数等。 七、设备管控: LaneCat网猫可以为种类繁多的外部设备分别设定应用策略,方便必要的信息交换的同时,大大减少信息外泄的隐患;可以控制设备包括软/光驱、可移动存储设备、无线网卡、3G上网卡、蓝牙等。 八、移动存储授权: LaneCat网猫可以方便的对移动存储设备进行授权管理,未经授权移动存储设备不得在公司内部使用,有效防止通过移动存储将内部机密文件带出。 九、网络控制: LaneCat网猫可以控制内部计算机的局域网与互联网通讯权限,帮助保护重要部门的网络安全,使内部网络免受非法入侵,同时有效防止内网机密信息经由网络泄漏。 灵活控制计算机的互联网访问权限,防止用户非法外联互联网; 控制有风险的端口以防范已有的网络安全风险。 十、应用程序管控: LaneCat网猫可以帮助管理者发现用户正在使用的应用程序的情况,并帮助制定和执行网络应用的黑名单,减少不符合规定的程序应用,降低安全风险,提升用户工作效率。 记录各种应用程序的启动与关闭时间、窗口标题等使用信息; 禁止任何不符合规定的应用程序的使用; 允许管理者自行建立和维护应用程序库,并以黑名单机制进行管理。 十一、屏幕监控: LaneCat网猫可以完整跟踪截取用户的桌面,以最直观的方式重现用户的操作行为。管理员可以在控制台上察看用户的即时桌面,甚至将屏幕保存历史记录以供日后审计需要时查看。 按自定义时间间隔定时抓拍用户的计算机屏幕; 实时查看用户的计算机屏幕画面; 查看指定用户在指定时间区间内的历史屏幕。 十二、资产管理: LaneCat网猫可以帮助网路管理员自动收集、统计网络中的软硬件IT资产清单,并实时监测资产变动。 十三、远程维护: LaneCat网猫为网路管理员提供了在单一控制台上远程诊断和维护网内任何计算机的方便工具,减轻网络管理员的工作负担,同时让操作系统更加健康的运行。 LaneCat网猫可以方便的对移动存储设备进行授权管理,未经授权移动存储设备不得在公司内部使用,有效防止通过移动存储将内部机密文件带出。 十四、系统管控: LaneCat网猫提供了丰富的系统管理功能,为管理员在单一控制台上集中管理网内的计算机提供了基础。 锁定、注销、关闭、重启指定客户端计算机; 详细的系统限制策略(包括禁用控制面板、设备管理器、服务管理、磁盘管理、本地用户和组、ip/mac绑定等); 为网内的计算机划分不同的组别以便于管理。 LaneCat网猫上网行为管理软件内网版 v2.1.1608.2400 更新日志 1、更新功能-增加最新版QQ兼容。 LaneCat网猫上网行为管理软件内网版软件截图

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值