MakeCat
L’outil MakeCat est un outil CryptoAPI qui crée un fichier de catalogue. MakeCat est disponible dans le cadre du kit de développement logiciel (SDK) de Microsoft Windows pour Windows 7 et .NET Framework 4,0 et est installé, par défaut, dans le \ dossier Bin du chemin d’installation du kit de développement logiciel (sdk).
L’outil MakeCat utilise la syntaxe de commande suivante :
MakeCat [ -n | -r | -v ] Nom du fichier
Paramètres
| Paramètre | Description |
|---|---|
| -n |
Ne s’arrête pas sur une erreur récupérable. |
| -r |
Force MakeCat à se terminer s’il rencontre des erreurs récupérables. Plus précisément, il se termine lors du traitement des entrées dans la section des fichiers de catalogue d’un fichier. CDF. |
| -v |
Verbose. Affiche tous les messages de progression et d’erreur. |
| FileName |
Nom du fichier. CDF à analyser. Pour connaître la structure et le contenu requis, consultez la section Notes. |
Notes
Le fichier. CDF doit être généré avec les spécifications suivantes.
[CatalogHeader]
Name=Name
ResultDir=ResultDir
PublicVersion=[|1]
CatalogVersion = [|1|2]
HashAlgorithms=[|SHA1|SHA256]
PageHashes=[true|false]
EncodingType=Encodingtype
CATATTR1={type}:{oid}:{value} (optional)
CATATTR2={type}:{oid}:{value} (optional)
[CatalogFiles]
{reference tag}=file path and name
{reference tag}ALTSIPID={guid} (optional)
{reference tag}ATTR1={type}:{oid}:{value} (optional)
{reference tag}ATTR2={type}:{oid}:{value} (optional)
<HASH>kernel32.dll=kernel32.dll
<HASH>ntdll.dll=ntdll.dll
Notes
La dernière entrée dans le fichier. CDF doit toujours avoir un caractère de saut de ligne explicite à la fin de la ligne.
La [ ] section CatalogHeader définit des informations sur l’ensemble du fichier catalogue.
| Option | Description |
|---|---|
| Nom |
Nom du fichier catalogue, y compris son extension. |
| ResultDir |
Répertoire dans lequel le fichier. cat créé sera placé. Si ce paramètre n’est pas indiqué, le répertoire actif par défaut est utilisé. Si le répertoire n’existe pas, il est créé. |
| PublicVersion |
Cette option n'est pas prise en charge. Windows server 2008 R2, Windows 7, Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Version du catalogue. Si le champ n’est pas renseigné, la valeur par défaut, 1, est utilisée. |
| CatalogVersion |
Version du catalogue. Si la version n’est pas présente ou a la valeur 1, « 0x100 » est passé au paramètre dwPublicVersion de la fonction CryptCATOpen et un fichier catalogue de la version 1 est créé. L’option HashAlgorithms doit être vide ou contenir SHA1. Si la version est définie sur 2, « 0x200 » est passé au paramètre dwPublicVersion de la fonction CryptCATOpen et un fichier catalogue de la version 2 est créé. L’option HashAlgorithms doit contenir SHA256. Si cette option est présente mais contient une valeur autre que 1 ou 2, l’outil MakeCat génère une erreur. Windows server 2008 R2, Windows 7, Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette option n’est pas prise en charge. |
| HashAlgorithms |
Nom de l’algorithme de hachage utilisé. Pour plus d’informations, consultez l’option CatalogVersion. Windows server 2008 R2, Windows 7, Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette option n’est pas prise en charge. |
| PageHashes |
Spécifie s’il faut hacher les fichiers listés dans l' < > option HASH dans la [ ] section CatalogFiles Windows server 2008 R2, Windows 7, Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette option n’est pas prise en charge. |
| EncodingType |
Type d’encodage de message utilisé. Si le champ n’est pas renseigné, la valeur par défaut de EncodingType est PKCS _ 7 _ ASN _ Encoding | x509 _ ASN _ , 0x00010001. |
La [ ] section CatalogFiles définit chaque membre du fichier catalogue avec des fichiers de types différents et des attributs de différents types dans des groupes distincts.
| Option | Description |
|---|---|
| balise de référence |
Référence de texte au fichier. Il peut s’agir de caractères de texte ASCII, à l’exception du signe égal (=). Le système doit être en mesure de reproduire cette balise après l’installation. Utilisez < hash > comme préfixe du nom de fichier. La balise est alors le hachage du fichier sous forme de chaîne ASCII. |
| nom et chemin d’accès du fichier |
Nom du fichier, y compris l’extension à analyser et le chemin d’accès relatif au fichier. Tout type de fichier pouvant être signé avec SignTool peut être ajouté à un catalogue. Par exemple, les noms de fichiers avec les extensions suivantes, entre autres, peuvent être ajoutés à un catalogue : .exe, .cab,. cat,. ocx, .dll et. STL. |
| ALTSIPID |
GUID SIP qui doit être utilisé pour le hachage au lieu du SIP standard en fonction du type de fichier. Cette entrée est facultative. Si cette entrée est omise, le membre sera haché à l’aide du SIP par défaut. Si aucun SIP installé par défaut n’est trouvé, le SIP plat sera utilisé. |
| guid |
Représentation textuelle d’un GUID. |
| ATTRx |
Optionnel. Attribut ou instruction sur le fichier ou le contenu. Il peut y avoir un nombre quelconque d’attributs, y compris aucun. |
| type |
Définit le type d’attribut qui est ajouté au format 0x00000000 (texte). Cette option peut êtreune combinaison or au niveau du bit de zéro ou plusieurs des valeurs suivantes :
|
| oid |
Représentation textuelle de la clé de référence de l’attribut. Il s’agit d’un OID sous la forme d’une chaîne de texte en notation à quatre points (par exemple, a. b. c. d) ou d’un nom de texte. |
| value |
Représentation textuelle de la valeur de l’attribut. Le type de représentation textuelle utilisé dépend de la valeur de l’option type. Les caractères EOL déterminent la longueur. |
| <FORMAT> |
Hache le fichier spécifié. |
Le fichier catalogue généré n’est pas signé. S’il doit être signé avant de transmettre, il est signé à l’aide de SignTool.