当前位置:网站首页>Double tampon transparent cryptage et décryptage basé sur le cadre minifilter
Double tampon transparent cryptage et décryptage basé sur le cadre minifilter
2022-06-25 11:13:00 【Biyezuopinvip】
Table des matières
FOKS-TROT Documents de développement 1
Introduction: 1
Introduction: 1
Comment compiler et utiliser: 1
Section de la conception: 3
Section des essais: 18
Non réparé bug: 18
Fin: 18
Introduction:
Ce projet est expérimental,Et la compréhension de l'auteur du système de fichiers, etc., est in évitablement biaisée,Cela peut induire en erreur,J'espère que le lecteur apprendra la dialectique,Et demandez au lecteur de suivre le Protocole open source pertinent.
Parce que j'en ai déjà écrit un. minifilter Le pilote de cryptage et de décryptage transparent de,Mais les niveaux étaient limités à l'époque, Il y a beaucoup de problèmes.,Aucune raison trouvée,C'est juste un contournement,Il en résulte une autre erreur sur la base de l'erreur,Donc, sur la base de l'expérience acquise dans l'élaboration de projets antérieurs,J'ai écrit ce projet.
Ce projet est également destiné à être achevé en tant que,Comme d'habitude,C'est la même chose. s(- -)b
Introduction:
Ce projet est une utilisation minifilter Le lecteur de filtre transparent crypto - décryptage du cadre,Lorsque le processus a écrit une extension de fichier spécifique(Par exemple, txt,docx)Chiffrement automatique des fichiers en cas de tendance.Le processus d'autorisation décrypte automatiquement lorsqu'il veut lire un fichier cryptographique,Processus non autorisé non décrypté,Afficher le texte chiffré,Et la modification du texte chiffré n'est pas autorisée,Le cryptage ou le décryptage ici ne vise que NonCachedIo.Le côté Bureau peut également envoyer des commandes de chiffrement et de décryptage de privilèges,Implémenter un chiffrement ou un décryptage séparé.
1.Ce projet utilise un double tampon,Les processus autorisés et non autorisés utilisent respectivement un tampon texte clair et un tampon texte chiffré;
2.Utiliser StreamContext Stocker les informations du fichier pour l'exécution du pilote , Comment utiliser le fichier pour identifier la queue , À la fin du document 4KB Informations de décryptage nécessaires pour stocker le fichier ;
3.Utiliser AES 128-ECB Mode, Et utiliser des mots de passe pour détourner (Ciphertext stealing)Méthode, Évitez que le texte clair doive être aligné en bloc (padding)La question de;
4.Write Et Read Utiliser SwapBuffers Pour le cryptage transparent et le décryptage ;
5. Le chiffrement privilégié et le déchiffrement privilégié utilisent la rentrée (Reentry)De la façon dont, Décrypter le fichier avec le chiffrement du pilote ;
6.Résolution FileRenameInformationEx Et FileRenameInformation Questions, Il est donc possible de chiffrer et de décrypter automatiquement docx,doc,pptx,ppt,xlsx,xls Etc. tmp Renommer un fichier en lecture - écriture ;
7. Enregistrer les rappels liés au processus , Gérer uniformément les processus d'autorisation et de non - autorisation à l'aide d'une liste liée ; Enregistrer le processus et le rappel de l'objet thread , Processus de protection EPROCESS,ETHREAD Objet; Vérification de l'intégrité du fragment de Code du processus d'autorisation .
Comment compiler et utiliser:
1.Installation CNG Bibliothèque:
https://www.microsoft.com/en-us/download/details.aspx?id=30688
Besoin de télécharger sur le site officiel de Microsoft Cryptographic Provider Development Kit,
Projets->Propriété VC++Répertoire contenant le répertoire, Le Répertoire de la Bibliothèque définit l'emplacement approprié
La routine du Linker ->Ajouter un répertoire de bibliothèque C:\Windows Kits\10\Cryptographic Provider Development Kit\Lib\x64
Entrée-> Les dépendances supplémentaires doivent être définies à ksecdd.lib
2.In Utils.c-> PocBypassIrrelevantFileExtension Définir l’extension de fichier à filtrer ,Process.c->PocIsUnauthorizedProcess Définir un processus non autorisé
3.Utiliser Visual Studio 2019 Compiler Debug x64 Drive,Compiler User、UserDll Et
UserPanel
4.Recommandations Windows 10 x64,NTFS Environnement opérationnel(C'est surtout FltFlushBuffers2
De IRP_MN_FLUSH_AND_PURGE Soutien uniquement NTFS),
边栏推荐
- Task03 probability theory
- relu与sigmod的比较
- 【文件包含漏洞-03】文件包含漏洞的六种利用方式
- Think about it
- Shen Lu, China Communications Institute: police open source Protocol - ofl v1.1 Introduction and Compliance Analysis
- FPGA基于VGA显示字符及图片
- Gaussdb cluster maintenance case set - slow SQL execution
- 查询法,中断法实现USART通信
- Sign up to open the third session of the "flying oar hacker marathon". It's been a long time
- [the path of system analyst] Chapter 6: Double inventory demand engineering (comprehensive knowledge concept)
猜你喜欢
Ouverture de l'inscription | le troisième marathon des hackers de pagaie est arrivé comme prévu.
Getting started with Apache Shenyu
Garbage collection mechanism
Explanation and use of kotlin syntax for Android
Upload and modify the use of avatars
NuxtJS实战案例
Socket communication principle
网易开源的分布式存储系统 Curve 正式成为 CNCF 沙箱项目
Apache ShenYu 入门
【文件包含漏洞-04】经典面试题:已知某网站仅存在本地文件包含漏洞时,如何GetShell?
随机推荐
Cdn+cos ultra detailed steps for drawing bed construction
Get to know Prometheus
查询法,中断法实现USART通信
过拟合原因及解决
[observation] objectscale: redefining the next generation of object storage, reconstruction and innovation of Dell Technology
OODA working method
Simple use of SVN
金仓KFS数据级联场景部署
zabbix分布式系统监控
Android之Kotlin语法详解与使用
What are the functions of arm64 assembly that need attention?
MySQL and Oracle processing CLOB and blob fields
How gaussdb counts the response time of user SQL
金仓数据库 KingbaseES 插件identity_pwdexp
Explanation and use of kotlin syntax for Android
[the path of system analyst] Chapter 6: Double inventory demand engineering (comprehensive knowledge concept)
Handling of NPM I installation problems
Shen Lu, China Communications Institute: police open source Protocol - ofl v1.1 Introduction and Compliance Analysis
GaussDB others内存比较高的场景
Kingbasees plug-in DBMS of Jincang database_ session