关于文件加密的实现 ( 积分: 200 )

  • 主题发起人 主题发起人 yimingnet
  • 开始时间 开始时间
Y

yimingnet

Unregistered / Unconfirmed
GUEST, unregistred user!
RT 我想做一个关于文件加密的软件,不知道该从哪下手,需要哪些技术?
1、在某台机器上运行客户端,这个客户端隐藏进程;
2、在该客户端机器上自动加密一些文件 如WORD,AUTOCAD,3DMAX等;
3、加密过的文件拷贝到无客户端或非同公司机器上将无法打开;
4、有管理端可以帮客户端机器上的文件解密,解密后拷贝出公司即可正常打开;
以上几点不知道该用哪些技术实现,是否有例子?
现在最想知道的就是这种加密方式要怎么做?谢谢各位了!
 
这个只能通过 Hook API 去实现。
如果是收费软件,可以考虑使用我得 Hook API 控件,
如果是想自己做,可以参考afxhook等代码。
 
to 白河愁
你的HOOK API 控件怎么收费呢?
 
详细+ msn kryso@ff18.com
 
楼上的,你的MSN常年不在线的啊?
 
请楼主留下联系方式。
 
那天似乎见你+我了,但不知道哪个是你.
 
个人见解,仅供参考:

1、在某台机器上运行客户端,这个客户端隐藏进程;
[A] 可以将客户端作成Windows服务,这样第次OS启动,其就自动启动,且为隐藏进程;
2、在该客户端机器上自动加密一些文件 如WORD,AUTOCAD,3DMAX等;
3、加密过的文件拷贝到无客户端或非同公司机器上将无法打开;
4、有管理端可以帮客户端机器上的文件解密,解密后拷贝出公司即可正常打开;
将要加密的文件以流的方式读出,再用约定好的密钥对流进行加密,组成新的数据流,再将流写入目的文件(即加密好的文件),目的文件可以使用结构化存储文件(如Word,Excel文件就是使用此文件格式),在其中添加密钥、文件类型及其他一些附加信息的存储结点。
解密的过程首先读出密钥及文件类型等附加信息,再对存储流解密,写入解密好的文件。
如果有用Word,Excel直接打开加密好的文件,就必须使用到Hook,API等技术,在读取加密文件前,先进行解密,再读取真正的原始文件。
 
NT下 Windows服务 是不能隐藏进程的,除非做作成ole或者dll
 
高级话题

Hook
CreateFile 与 CloseFile

mark
 
你需要HOOK的不是CreateFile 与 CloseFile
而应该是WriteFile与ReadFile两个函数,在WriteFile过程中将你的数据加密一下再保存,ReadFile过程中将你的数据解密再返回到Buffer中。HOOK CreateFile 与 CloseFile函数是无意义的。
这样只有安装了你的HOOK 的机器才能完全还原你加密的文件的。完全符合这条“加密过的文件拷贝到无客户端或非同公司机器上将无法打开”。
感觉使用底层的方法更好实现,由于ReadFile使用的参数是Handle,这个时候可以使用ObReferenceObjectByHandle然后再获取文件的路径,这样可以判断是否是需要加密或者解密的文件(通过后缀名),而且在这里完成这些动作的话,没有一个可以逃脱的。
 
我见过这样的软件,完全符合楼主的要求.并且我们公司也买了这样的软件,它分为服务器,管理机和客户端,能自动加密所需要加密的一切软件,在没有安装客户端的机上是不能打开加密的文件的.
 
据说要用驱动编的透明实时加密才最后,用HOOK的话可能在某些情况下有问题,不是完美方案,我也想用HOOK来实现这一功能,不知比起驱动的来有何缺点,主要是我不会驱动。
 
驱动得最大缺点就是兼容问题。 ring3 做也足够了。
 
而应该是WriteFile与ReadFile两个函数,在WriteFile过程中将你的数据加密一下再保存
--------------------
这个不一定。因为程序也许中 Write 或 Read 一小部份,而加密可能是非对称加密,读的一小部份不能解密也说不定呢。
 
要保证客户端长期运行也是难题,用户可以杀掉进程(用ntsd命令基本可以杀掉所有进程),然后在copy文件,你怎么办?
 
杀掉就最好了,因为储存的时候都加密了,copy走的话就只能得到乱码。
 
转的:
整理了一些透明驱动级加密的常见问题 ,不针对任何的公司和个人。请勿对号入座。

作为防止泄密的内网安全产品,驱动级透明加密有着很大的优势。兼容性好,性能损失小。
但是目前市面的类似产品普遍存在一些问题:

1、进程的校验问题。
一般可以通过改名。如“word.exe”改为“123.exe”逃过强制加密。或通过加壳来逃过Hash的校验。

2、线程、进程的注入和内存的Dump。
通过一些工具很容易注入合法进程而夺取明文。网络有类似的工具可下载。

3、明文的缓存控制问题。
一般的产品都会打开密文后及时的清除掉缓存,但是正在打开中,肯定是有缓存的。如果
这时候拷贝文件,通常来说是明文。
 
这些问题其实都不难解决的。
 
本人也十分需要这样的程序。谁有完整的程序我可以高价购买。QQ联系方式79610276
 
后退
顶部