MakeCat
Das MakeCat-Tool ist ein CryptoAPI-Tool, das eine Katalogdatei erstellt. MakeCat ist als Teil des Microsoft Windows Software Development Kit (SDK) für Windows 7 und .NET Framework 4.0 verfügbar und standardmäßig im Ordner "\Bin" des SDK-Installationspfads installiert.
Das MakeCat-Tool verwendet die folgende Befehlssyntax:
MakeCat [-n|-r|-v] FileName-
Parameter
Parameter | Beschreibung |
---|---|
-n |
Beenden Sie nicht bei einem wiederherstellbaren Fehler. |
-r |
Erzwingt MakeCat am Ende, wenn es auf wiederherstellbare Fehler stößt. Insbesondere endet er beim Verarbeiten der Einträge im Abschnitt "Katalogdateien" einer CDF-Datei. |
-v |
Wortreich. Zeigt alle Status- und Fehlermeldungen an. |
FileName- |
Der Name der CDF-Datei, die analysiert werden soll. Erforderliche Struktur und Inhalte finden Sie in den Hinweisen. |
Bemerkungen
Die CDF-Datei muss mit den folgenden Spezifikationen erstellt werden.
[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
Anmerkung
Der letzte Eintrag in der CDF-Datei muss immer ein explizites Zeilenumbruchzeichen am Ende der Zeile aufweisen.
Der Abschnitt [CatalogHeader] definiert Informationen zur gesamten Katalogdatei.
Option | Beschreibung |
---|---|
Name |
Name der Katalogdatei, einschließlich der Erweiterung. |
ResultDir |
Verzeichnis, in dem die erstellte CAT-Datei abgelegt wird. Wenn nicht angegeben, wird das aktuelle Standardverzeichnis verwendet. Wenn das Verzeichnis nicht vorhanden ist, wird es erstellt. |
PublicVersion |
Diese Option wird nicht unterstützt. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Katalogversion. Wenn sie leer gelassen wird, wird der Standardwert 1 verwendet. |
CatalogVersion |
Katalogversion. Wenn die Version nicht vorhanden ist oder auf 1 festgelegt ist, wird "0x100" an den dwPublicVersion Parameter der CryptCATOpen-Funktion übergeben und eine Katalogdatei der Version 1 erstellt. Die Option "HashAlgorithms" muss leer sein oder SHA1 enthalten. Wenn die Version auf 2 festgelegt ist, wird "0x200" an den dwPublicVersion Parameter der CryptCATOpen--Funktion übergeben, und eine Katalogdatei der Version 2 wird erstellt. Die Option "HashAlgorithms" muss SHA256 enthalten. Wenn diese Option vorhanden ist, aber einen anderen Wert als 1 oder 2 enthält, tritt beim MakeCat-Tool ein Fehler auf. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Diese Option wird nicht unterstützt. |
HashAlgorithms |
Name des verwendeten Hashingalgorithmus. Weitere Informationen finden Sie in der CatalogVersion-Option. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Diese Option wird nicht unterstützt. |
PageHashes |
Gibt an, ob die in der Option <HASH-> im Abschnitt [CatalogFiles] aufgeführten Dateien hashen sollen. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Diese Option wird nicht unterstützt. |
EncodingType |
Typ der verwendeten Nachrichtencodierung. Wenn sie leer gelassen wird, ist der Standardcodierungstyp PKCS_7_ASN_ENCODING | X509_ASN_ENCODING, 0x00010001. |
Der Abschnitt [CatalogFiles] definiert jedes Mitglied der Katalogdatei mit Dateien verschiedener Typen und Attributen verschiedener Typen in separaten Gruppen.
Option | Beschreibung |
---|---|
Referenztag |
Textverweis auf die Datei. Dies kann beliebige ASCII-Textzeichen mit Ausnahme des Gleichheitszeichens (=) enthalten. Das System muss dieses Tag nach der Installation reproduzieren können. Verwenden Sie <HASH-> als Präfix des Dateinamens. Dies führt dazu, dass das Tag der Hash der Datei in ASCII-Zeichenfolgenform ist. |
Dateipfad und -name |
Der Dateiname, einschließlich der zu analysierenden Erweiterung und des relativen Pfads zur Datei. Jeder Dateityp, der mit SignTool signiert werden kann, kann einem Katalog hinzugefügt werden. Dateinamen mit den folgenden Erweiterungen können beispielsweise einem Katalog hinzugefügt werden: .exe, .cab, CAT, OCX, .dllund STL. |
ALTSIPID |
SIP-GUID, die anstelle des standardmäßigen SIP basierend auf dem Dateityp für hashing verwendet werden soll. Dieser Eintrag ist optional. Wenn dieser Eintrag nicht angegeben wird, wird das Element mit dem Standard-SIP hashed. Wenn kein standardmäßig installiertes SIP gefunden wird, wird das flache SIP verwendet. |
guid |
Textdarstellung einer GUID. |
ATTRx |
Wahlfrei. Attribut oder Anweisung zu der Datei oder dem Inhalt. Es kann eine beliebige Anzahl von Attributen geben, einschließlich keiner. |
Art |
Definiert, welche Art von Attribut im Format 0x00000000 (Text) hinzugefügt wird. Diese Option kann ein bitweiserODER Kombination aus Null oder mehr der folgenden Werte sein:
|
oid |
Die Textdarstellung des Referenzschlüssels des Attributs. Es handelt sich um ein OID in Form einer Textzeichenfolge in gepunkteter Quadnotation (z. B. a.b.c.d) oder einem Textnamen. |
Wert |
Die Textdarstellung des Werts des Attributs. Der verwendete Textdarstellungstyp hängt vom Wert der Typoption ab. Die EOL-Zeichen bestimmen die Länge. |
<HASH-> |
Hasht die angegebene Datei. |
Die generierte Katalogdatei ist nicht signiert. Wenn sie vor der Übertragung signiert werden soll, wird sie mit SignToolsigniert.