CnCrypt代码 之 比较靠谱的临时驱动挂载和卸载方法

CnCrypt 主机防御工具实战指南:文件隐藏与驱动拦截的深度应用 本文深度解析CnCrypt主机防御工具在文件隐藏与驱动拦截方面的实战应用。通过内核级文件隐藏技术,可让敏感数据对资源管理器及命令行彻底“隐形”;结合驱动与动态库拦截功能,能有效阻止恶意软件加载,扼杀勒索软件、广告注入等威胁。文章提供了从基础设置到高级规则组合的完整指南,帮助用户构建精准的本地数据防护体系。 阅读详情

CnCrypt便携版采用的驱动挂载和卸载方法,驱动启动之后直接添加删除标记,当驱动停止后,驱动就会自动卸载。


// Install and start driver service and mark it for removal (non-install mode)
int  DriverLoad()
{
	SC_HANDLE		hManager = NULL, hService = NULL;
	WCHAR			szDriverPath[CC_LONG_PATH + 1];
	BOOL			bResult = FALSE;
	DWORD			dwStartType;

	if (ReadLocalMachineRegistryDword(L"SYSTEM\\CurrentControlSet\\Services\\CnCrypt", L"Start", &dwStartType)
		&& (dwStartType == SERVICE_SYSTEM_START || dwStartType == SERVICE_BOOT_START))
	{
		return ERR_PARAMETER_INCORRECT;
	}

	GetModPath(szDriverPath, ARRAYSIZE(szDriverPath));
	wcscat(szDriverPath, !OSVersion::Is64BitOs() ? L"CnCrypt.sys" : L"CnCrypt-x64.sys");
	if (!FileExists(szDriverPath))
	{
		Error("DRIVER_NOT_FOUND");
		return ERR_DONT_REPORT;
	}

	hManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
	if (hManager == NULL)
	{
		if (GetLastError() == ERROR_ACCESS_DENIED)
		{
			Error("ADMIN_PRIVILEGES_DRIVER");
			return ERR_DONT_REPORT;
		}

		return ERR_OS_ERROR;
	}

	// Remove stale service (driver is not loaded but service exists)
	hService = OpenService(hManager, L"CnCrypt", SERVICE_ALL_ACCESS);
	if (hService != NULL)
	{
		DeleteService(hService);
		CloseServiceHandle(hService);
		hService = NULL;
		Sleep(500);
	}

	hService = CreateService(hManager, L"CnCrypt", L"CnCrypt",
		SERVICE_ALL_ACCESS, SERVICE_KERNEL_DRIVER, SERVICE_DEMAND_START, SERVICE_ERROR_NORMAL,
		szDriverPath, NULL, NULL, NULL, NULL, NULL);
	if (hService == NULL)
	{
		goto error;
	}
	CloseServiceHandle(hService);
	hService = NULL;

	hService = OpenService(hManager, L"CnCrypt", SERVICE_ALL_ACCESS);
	if (hService == NULL)
	{
		goto error;
	}

	bResult = StartService(hService, 0, NULL);
	if (!bResult)
	{
		goto error;
	}

error:
	DWORD dwError = GetLastError();
	if (hService != NULL)
	{
		// 驱动停止后会自动删除
		DeleteService(hService);
		CloseServiceHandle(hService);
	}

	if (hManager != NULL)
	{
		CloseServiceHandle(hManager);
	}
	SetLastError(dwError);
	return !bResult ? ERR_OS_ERROR : ERROR_SUCCESS;
}


BOOL DriverUnload()
{
	int		iRefCount;
	int		iVolumesMounted;
	BOOL	bResult;

	SC_HANDLE hManager, hService = NULL;
	SERVICE_STATUS ssStatus;
	int		nTimes;
	BOOL	bDriverUnloaded = FALSE;

	if (g_hDriver == INVALID_HANDLE_VALUE)
	{
		return TRUE;
	}

	try
	{
		if (BootEncryption(NULL).GetStatus().bDeviceFilterActive)
		{
			return FALSE;
		}
	}
	catch (...) {}

	// Test for mounted volumes
	bResult = GetVolumeMounted(g_hDriver, &iVolumesMounted);
	if (!bResult)
	{
		return TRUE;
	}

	if (iVolumesMounted != 0)
	{
		return FALSE;
	}

	// Test for any applications attached to driver
	iRefCount = GetDriverRefCount(g_hDriver);
	if (iRefCount > 1)
	{
		return FALSE;
	}

	CloseHandle(g_hDriver);
	g_hDriver = INVALID_HANDLE_VALUE;

	// Stop driver service
	hManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);
	if (hManager == NULL)
	{
		goto error;
	}

	hService = OpenService(hManager, L"CnCrypt", SERVICE_ALL_ACCESS);
	if (hService == NULL)
	{
		goto error;
	}
	BOOL bControlServiceStop = FALSE;
	do
	{
#define WAIT_PERIOD 3
		for (nTimes = 0; nTimes < WAIT_PERIOD; nTimes++)
		{
			bResult = QueryServiceStatus(hService, &ssStatus);
			if (!bResult)
			{
				goto error;
			}

			if (ssStatus.dwCurrentState != SERVICE_START_PENDING &&
				ssStatus.dwCurrentState != SERVICE_STOP_PENDING &&
				ssStatus.dwCurrentState != SERVICE_CONTINUE_PENDING)
			{
				break;
			}

			Sleep(1000);
		}
		if (!bControlServiceStop)
		{
			if (ssStatus.dwCurrentState != SERVICE_STOPPED)
			{
				bResult = ControlService(hService, SERVICE_CONTROL_STOP, &ssStatus);
				if (!bResult)
				{
					goto error;
				}
			}
			else
			{
				break;
			}
			bControlServiceStop = TRUE;
		}
		else
		{
			if (ssStatus.dwCurrentState != SERVICE_STOPPED && ssStatus.dwCurrentState != SERVICE_STOP_PENDING)
			{
				goto error;
			}
			break;
		}
	} while (TRUE);

	bDriverUnloaded = TRUE;

error:
	if (hService != NULL)
	{
		CloseServiceHandle(hService);
	}

	if (hManager != NULL)
	{
		CloseServiceHandle(hManager);
	}

	return bDriverUnloaded;
}


CnCrypt 主机防御工具实战指南:从文件锁定到驱动拦截的全方位防护 本文详细介绍了CnCrypt主机防御工具的核心功能与实战应用。作为一款基于内核层的主动防御工具,CnCrypt通过文件锁定、注册表隐藏、驱动拦截等核心功能,从源头拦截恶意修改,实现全方位的系统防护。其无进程特性与灵活的规则配置,为用户提供了高效、静默且强大的安全解决方案,尤其适合追求系统纯净与深度控制的高级用户。 阅读详情

相关推荐

(原创开源)CnCrypt 快速启动工具(CnCrypt磁盘加密伪装程序),VS2015编译

CnCrypt磁盘加密进行伪装而做的一个快速启动工具,有网友让发一个独立版,于是就提取出一个出来。提取之后的程序只有80+K,快速启动的基本功能都已经具备。 你可以将常用的的软件、游戏、文件、文件夹的快捷方式拖放到软件窗口中,然后随时通过设置的快捷键即可实现各个程序的快速启动,使用起来非常方便快捷!

CnCrypt-TrueCrypt国内延伸版本 3096

(原创工具)CnCrypt 文件保护工具1.23,隐藏锁定文件或文件夹

每个人总会有那么一些文件或文件夹想要保护起来不被别人随意访问或者删除,大多数人都是将文件或文件夹摆放在一些极不常用的路径,或者简单地用 Windows 的文件隐藏属性隐藏起来,但这些方法都不怎么好使。而且有时候,一些重要的文档,除了想隐藏之外,还希望它们能不被别人随意地更改或删除。今天给大家带来这个很方便、很实用的文件夹、文件锁定工具 CnCrypt文件保护工具。       CnCrypt

CnCrypt-TrueCrypt国内延伸版本 4902

内存取证之volatility及案例演示

Volatility是一款开源内存取证框架,能够对导出的内存镜像进行分析,通过获取内核数据结构,使用插件获取内存的详细情况以及系统的运行状态。若没有不会安装可以查看这篇文章内存取证-Volatility安装使用以及一些CTF比赛题目。......

m0_46467017的博客 4169

(原创工具)CnCrypt 文本加密工具,支持密码和密钥文件加密,支持多种加密算法

应多个网友建议最新开发,CnCrypt 文本加密 是一款传统的本地文本加密/解密工具,支持密码及密钥加密。 适合于不放心文本在互联网上传输,也不放心各种互联网服务自身的加密的同学。

CnCrypt-TrueCrypt国内延伸版本 3849

CnCrypt主机防御工具实战:如何用文件锁定和注册表隐藏保护你的隐私数据

本文详细介绍了CnCrypt主机防御工具如何通过文件锁定和注册表隐藏功能保护隐私数据。文章涵盖了文件锁定的设置方法、典型应用场景,以及注册表隐藏的深度应用和实际价值,帮助用户有效防止数据泄露和恶意软件攻击。驱动拦截功能的协同防御策略进一步提升了整体安全性。

weixin_30505225的博客 605

(原创)CnCrypt 主机防御工具,包括文件 注册表隐藏锁定,驱动 动态库拦截等功能

CnCrypt 手动主机防御工具 这版主机防御包括有文件锁定,隐藏,注册表锁定,隐藏,进程拦截,驱动拦截,动态库拦截,网络管控,端口转发,文件重定向等N个实用的功能,另外还有窗口拦截和进程保护,外设控制等几功能给隐藏了,因为窗口实在是放不下了,下个版本再加吧,程序没有太高的技术含量,但整体测试,调试花了不少时间,重在稳定,实用。软件界面部分做的还比较粗糙,没有进行过多的优化,后面版本我会继续改进。 欢迎大家继续关注CnCrypt的其它作品。 功能描述 1、文件保护 文件读写保护

weixin_43268350的博客 760

(2017.9.22更新)TrueCrypt中国版CnCrypt V1.23(磁盘加密)

许多网友在电脑中都有需要保密的文件,如工作文档、私人日记、照片等,经过XX门事件之后,相信各位网友都对自己电脑里的一些隐私文件的保存问题有了更高的安全要求。生活中却有许多的不安全因素会使得这些需要保密的文件遭到泄漏,如黑客入侵、电脑或存储工具丢失、电脑送修等等情况。 为了避免被有心之人轻易获取到保密文件,最方便快捷的方法就是对这些需要保密的文件进行加密处理。别人即使拿到你的文件,也因为没有密码导致无法查看,从而保障你的隐私。 目前市面上的加密软件参差不齐,有的是伪加密,它们所谓的加密只是简单地将文件隐藏

CnCrypt-TrueCrypt国内延伸版本 1万+

CnCrypt(磁盘加密工具绿色版是一款功能强大磁盘加密工具,供大家学习研究参考

加密单个分区或整个硬盘,所有加密都是以分区为基础的 提供两级方案,以应对被强迫说出密码的情况(如抢劫。隐藏分区(覆盖式密码术,steganography)无法探测到CnCrypt 加密分区(加密数据会被认为是随机数据)。

惠惠软件 947

(原创)CnCrypt 加密U盘,将U盘分为普通盘和加密盘,单文件便携版

CnCrypt加密U盘是一款免费的文件加密软件,支持winxp-win10之间所有系统,您可以通过 CnCrypt加密U盘在普通上开辟出一个私密空间,用来存放文件、视频等各种格式的数据资料。像家里的保险柜一样,您可以通过设定的密码打开它并进行使用。

CnCrypt-TrueCrypt国内延伸版本 2877

双有源桥变换器(DAB)TPS控制:从理论建模到Simulink/PSIM仿真实践

本文深入探讨了双有源桥变换器(DAB)的三重移相(TPS)控制技术,从理论建模到仿真实现。文章详细分析了TPS相比SPS和DPS的优势,阐述了其12种工况的划分逻辑与电流应力最优调制策略,并提供了在Simulink和PSIM平台搭建仿真模型的详细步骤与实战经验,帮助工程师掌握这一高效控制方法。

white的博客 584

.NET适配HarmonyOS进展 1. 前言

目前国产化系统浪潮下,适配鸿蒙是中国软件大势所趋,.NET作为最适合开发客户端语言之一,适配鸿蒙系统(HarmonyOS Next)是目前.NET开发者最关心的事情。我目前业余时间正在移植Avalonia到HarmonyOS,去年在.NET Conf CN上分享过,目前又取得一点进展,所以本文把所有问题进行整合与大家进行分享。

2301_76476890的博客 1461

TrueCrypt、VeraCrypt、CnCrypt三大虚拟磁盘加密以及EDS安卓版

  TrueCrypt,是一款免费开源的加密软件,同时支持Windows Vista,7/XP, Mac OS X, Linux 等操作系统。TrueCrypt不需要生成任何文件即可在硬盘上建立虚拟磁盘,用户可以按照盘符进行访问,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。TrueCrypt 提供多种加密算法,包括:AES-256, Blowfish (448-bit key), C...

bruce135lee的专栏 3万+

【iOS开发】dyld: Symbol not found: ___chkstk_darwin 问题解决

【iOS开发】dyld: Symbol not found: ___chkstk_darwin 问题解决 Xcode 13.2.1 运行到iOS12.x版本上崩溃报错如下:dyld: Symbol not found: ___chkstk_darwin dyld: Symbol not found: ___chkstk_darwin Referenced from: /private/var/containers/Bundle/Application/A424CEFD-51DB-450E-9D62-B8

wm9028的专栏 6566

(原创工具)CnCrypt磁盘痕迹擦除工具,彻底杜绝数据恢复。

CnCrypt磁盘痕迹擦除工具 没有释放磁盘空间的作用,它的正在用途是在于对机密文件,私人文档进化彻底的数据删除!面向的用户主要是对文档机密性要求较高的人群!(比如我电脑有一份机密报价单,现在我想把它删除,而用windows系统的删除功能在将文件删除之后,别有用心的人可以使用数据恢复软件把这份报价单从已经删除的硬盘中恢复出来,这时候 “磁盘痕迹擦除工具”就登场了) 如果要详细知道 “磁盘痕迹擦除工具”工作原理,可以参考查阅 硬盘数据结构和文件储存系统的相关资料,以及 “数据恢复软件 原理”等 我只做一个通俗

CnCrypt-TrueCrypt国内延伸版本 4892

AI Agent实战:WorkBuddy安装部署、任务执行与模型接入全教程

AI Agent是当前自动化办公与智能工作流的核心技术,它区别于传统问答式AI,能够理解目标、拆解任务并调用工具交付完整成果。其底层原理基于任务规划、工具调用与结果验证的循环机制,让机器从“提供建议”进化为“完成任务”。在工程实践中,合理配置模型服务(如接入DeepSeek)、设计标准化Skill(技能包)与自定义指令,可以显著提升Agent在报告生成、数据分析、竞品调研等场景中的稳定性与效率。WorkBuddy作为典型的任务式AI工作台,为运营、产品、开发等多角色提供了统一入口,覆盖安装部署、任务描述公式

weixin_26712075的博客 290

LM358模拟声音传感器原理图设计,已量产(声音传感器)

最近在做智能家居设备的声音触发模块时,搭了个基于 LM358 的模拟声音传感器电路 —— 不用复杂的专用芯片,靠通用运放就能把环境声音转化为可被单片机 AD 采集的电压信号,成本压得很低,实际调试下来灵敏度和稳定性都够用。今天把这个电路拆解开,聊聊每部分的设计思路。

不脱发的程序猿 475

13.python加密

1.加密技术介绍 加密算法和秘钥是加密技术中心最重要的两个元素。 加密算法用于加密和解密的数学函数。秘钥是加密和解密算法中的一种输入参数 1.1 加密技术可以分为单向加密和双向加密: 单向加密:加密过程中不使用秘钥,将数据加密处理成加密数据,无法被解密。一般通过哈希算法生成密文 双向加密:双向加密可以分为对称加密算法,非对称加密算法、数字签名。 1.1.1 对称加密算法 发送方和接收方会先协定一个相同秘钥,然后对数据加密和解密使用这一相同的秘钥。最广泛的对称加密算法是AES 优点..

鹏哥哥Aaa 719

CasADi - 最优控制开源 Python/MATLAB 库

CasADi 是一款开源软件工具,用于数值优化,特别是最优控制(即涉及微分方程的优化)。该项目由 Joel Andersson 和 Joris Gillis 在鲁汶工程大学工程优化中心 (OPTEC) 在读博士生在 Moritz Diehl 的指导下发起。本文档旨在简要介绍 CasADi。

机器人控制与仿真应用 7935

CnCrypt 文件属性批量修改工具,通过修改文件属性达到更好的伪装效果

文件属性修改工具是一款用于文件属性修改的工具,可以非常方便的帮助您修改文件或者文件夹的日期时间等属性,软件同时支持批量修改文件的日期和时间,局部修改日期/时间。对于一些需要修改文件日期的朋友来说有非常大的帮助。

CnCrypt-TrueCrypt国内延伸版本 2060

r3live 使用前提 雷达-相机外参标定 livox_camera_lidar_calibration

港科大livox_camera_calib虽然操作方便,但是使用mid360雷达会有视角问题(投影三维点到相机),尝试了很多场景,标定效果都不理想(推荐场景是楼梯间),看来港大的更适合avia之类窄角度的雷达。如果标定效果不好的话,就使用 getExt2节点,getExt1节点只优化外参,而getExt2节点在计算的时候会将一开始计算的内参作为初值和外参一起优化。一般使用getExt1节点即可,如果在外参初值验证过,并且异常值已经剔除后,优化还是有较大的残差,那么可以使用getExt2试一试。

z1872385的博客 2401

从服务器到桌面超算:当3999美元的NVIDIA DGX Spark装上Ubuntu,普通开发者能玩出什么花?

DGX Spark的出现,标志着AI算力正在经历从"数据中心集中供给"到"个人桌面按需拥有"的范式转移。它让开发者可以在本地完成从数据预处理、模型微调到推理验证的全流程,只有在需要大规模训练时才调用云端资源。迭代速度:从按小时计费的云端调试,变成随时随地的本地实验数据主权:敏感信息永不离开本地成本可控:一次投入,长期使用,不受API调用次数限制AI算力民主化的时代,真的来了。你的下一台超级计算机,不必在云端。它就在你的桌面上,安静地等待着你的下一个创意。附录:实用资源。

QQ_778132974的博客 624

CnCrypt代码 之 为磁盘设备分配和移除盘符

BOOL ChangeMountPoint(int nDriveNo, LPCTSTR lpDevice, BOOL bAddMountPoint) { BOOL bResult = FALSE; TCHAR szDriveLetterAndSlash[4] = { 0 }; TCHAR szDriveLetter[3] = { 0 }; TCHAR szUniqueVolumeName[

CnCrypt-TrueCrypt国内延伸版本 847

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

(原创软件)CnCrypt 密码生成工具,提取自CnCrypt的一个独立版本

密码生成器是一款使用微软的CryptoAPI中提供的强大加密方式随机产生密码的既简单又强大的工具。 这款密码生成器不仅可以点击即可产生密码,也可以随自己的意愿灵活调整生成密码的方式,比如设置密码的字符组合等等。这个小程序不仅适用于系统程序员和系统管理员,当然也适用于占了更多数的担心电脑安全的普通个人用户。 密码生成器的操作方式极其简单,可以用默认的直接点击生成,也可以用自己定制的规则来生成密码。一般来说,默认的已经足够,如果是喜欢折腾的技术宅,试试自己定制规则也无妨。

CnCrypt-TrueCrypt国内延伸版本 1577

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

(2016.12.02更新)CnCrypt文件保险柜1.18,兼容TrueCrypt加密卷,单文件绿色版

您可以通过 CnCrypt文件保险柜,在电脑上新建一个私密空间,用来存放文件、视频等各种格式的数据资料。像家里的保险柜一样,您可以通过设定的保险柜密码打开它并进行使用。 1,保险箱为用户提供了真正的高强度加密功能,如果用户加上了一个复杂的密码后,以目前的计算机配置来说是几乎无法进行强行破解的。 2,软件没有任何自动联网操作,保证用户密码,数据不会被泄露。 3,不支持密码找回功能,软件不会在任何位置记录用户的密码信息。 4,软件兼容TrueCrypt加密卷格式,可以直接把之前创建的TrueCrypt加密卷拿

CnCrypt-TrueCrypt国内延伸版本 2249

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

cncrypt安卓版_CnCrypt Protect

CnCrypt Protect是一款由个人制作的电脑安全防御软件,利用CnCrypt Protect能够实现文件保护、网络管控、进程拦截等功能,是一款非常简单好用的手动系统防御工具,有需要的可以下载使用。功能介绍1、文件保护文件读写保护,隐藏。2、注册表保护注册表读写保护,隐藏。3、网络管控一个简单的防火墙,支持使用域名,支持TCP,UDP,ICMP协议。4、进程拦截可根据进程文件名或进程特征码,...

weixin_35219046的博客 878
上一篇: CnCrypt代码 之 获取程序自身版本号
下一篇: CnCrypt代码 之 两个比较好用的磁盘边界检查函数
cncrypt
博客等级 码龄11年 104粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值