CodeSignTool είναι ένα ασφαλές βοηθητικό πρόγραμμα γραμμής εντολών πολλαπλών πλατφορμών Java προσανατολισμένο στο απόρρητο για την απομακρυσμένη υπογραφή αντικειμένων κώδικα Microsoft Authenticode και Java με eSigner Πιστοποιητικά υπογραφής κωδικού EV. Αποστολές των αρχείων αποστέλλονται στο SSL.com για υπογραφή έτσι ώστε ο ίδιος ο κωδικός να μην αποστέλλεται Αυτό είναι ιδανικό όπου τα ευαίσθητα αρχεία πρέπει να υπογραφούν, αλλά δεν πρέπει να αποστέλλονται μέσω του καλωδίου για υπογραφή. Το CodeSignTool είναι επίσης ιδανικό για αυτοματοποιημένες διαδικασίες παρτίδας για υπογραφές μεγάλου όγκου ή για ενσωμάτωση σε υπάρχουσες ροές εργασίας αγωγών CI / CD.
Για να γνωρίζετε όλους τους τύπους αρχείων που μπορεί να υπογράψει το CodeSignTool, ανατρέξτε σε αυτό το άρθρο: Υποστηριζόμενοι τύποι αρχείων eSigner
Για οδηγίες σχετικά με το πώς να αυτοματοποιήστε την υπογραφή κωδικού EV χρησιμοποιώντας το signtool.exe ή το certutil.exe παρακαλώ ελέγξτε αυτό το πώς.
Αν θέλετε να χρησιμοποιήσετε το esigner για να υπογράψετε έγγραφα, παρακαλούμε ανατρέξτε σε αυτόν τον οδηγό DocSignTool.
Εγκατάσταση CodeSignTool
Για να εγκαταστήσετε την τρέχουσα έκδοση του CodeSignTool, απλώς κατεβάστε και αποσυμπιέστε το σωστό αρχείο για το λειτουργικό σας σύστημα:
Σημειώστε ότι η λήψη των Windows περιλαμβάνει χρόνο εκτέλεσης Java, αλλά η έκδοση Linux / macOS απαιτεί την εγκατάσταση του χρόνου εκτέλεσης Java στον υπολογιστή σας. Η έκδοση των Windows της εντολής είναι ένα αρχείο δέσμης (CodeSignTool.bat
) και η έκδοση Linux / macOS είναι ένα σενάριο κελύφους (CodeSignTool.sh
).
Επισκόπηση χρήσης CodeSignTool
Χρήση: CodeSignTool [-hV] [COMMAND] [PARAMETERS]
Επιλογές:
-h
,--help
: Εμφάνιση μηνύματος βοήθειας και έξοδος.-V
,--version
: Εμφάνιση πληροφοριών έκδοσης και έξοδος.
εντολές:
get_credential_ids
: Εξαγάγετε τη λίστα των αναγνωριστικών διαπιστευτηρίων eSigner που σχετίζονται με έναν συγκεκριμένο χρήστη.credential_info
: Κλειδί εξόδου και πληροφορίες πιστοποιητικού που σχετίζονται με αναγνωριστικό διαπιστευτηρίου.sign
: Αντικείμενο κώδικα σήμανσης και χρονικής σήμανσης.batch_sign
: Υπογραφή και χρονική σήμανση πολλαπλών αντικειμένων κώδικα με ένα OTP.hash
: Κατακερματισμός προ-υπολογισμού για μελλοντική χρήση μεbatch_hash_sign
εντολή.batch_sign_hash
: Υπολογισμός κατακερματισμού προ-υπολογισμένος μεhash
εντολή.
παράμετροι:
-access_token=<TOKEN>
: ΟΑυθ πρόσβαση στο διακριτικό.-credential_id=<CREDENTIAL_ID>
: Αναγνωριστικό διαπιστευτηρίου για υπογραφή πιστοποιητικού.-input_dir_path=<PATH>
: Κατάλογος εισαγωγής για αντικείμενα κώδικα που πρόκειται να υπογραφούν, έχουν υπολογισμούς κατακερματισμού ή επιλέξτε μη υπογεγραμμένα αρχεία και αντίστοιχους κατακερματισμούς για υπογραφή-input_file_path=<PATH>
: Διαδρομή αντικειμένου κώδικα προς υπογραφή.-otp=<OTP>
: OAuth OTP τιμή από την εφαρμογή ελέγχου ταυτότητας.-output_dir_path=<PATH>
: Κατάλογος όπου θα γραφτούν υπογεγραμμένα αντικείμενα κώδικα.-password=<PASSWORD>
: Κωδικός πρόσβασης λογαριασμού SSL.com.-program_name=<PROGRAM_NAME>
: Όνομα προγράμματος (μόνο για προγράμματα εγκατάστασης MSI).-totp_secret=<TOTP_SECRET>
: ΟΑυθ TOTP μυστικό-username=<USERNAME>
: Όνομα χρήστη λογαριασμού SSL.com-override="true"
: Αντικαθιστά το υπογεγραμμένο αρχείο
-password="P!@^^ssword12"
).Εντολές CodeSignTool
get_credential_ids
Εξαγάγετε τη λίστα των αναγνωριστικών διαπιστευτηρίων eSigner που σχετίζονται με έναν συγκεκριμένο χρήστη. Παράμετροι -username
και -password
απαιτούνται.
Χρήση: CodeSignTool [-hV] get_credential_ids -username=<USERNAME> -password=<PASSWORD>
Παράδειγμα:
CodeSignTool get_credential_ids -username=john.doe@example.com -password="P0z9@lxo41" Credential ID(s): - fe537ace-e132-52a9-c2e7-egcd2ac3f1e6
Μπαίνοντας CodeSignTool get_credential_ids
Χωρίς τις απαιτούμενες παραμέτρους θα εμφανίζονται πληροφορίες χρήσης για την εντολή.
διαπιστευτήριο_info
Κλειδί εξόδου και πληροφορίες πιστοποιητικού που σχετίζονται με αναγνωριστικό διαπιστευτηρίου. Παράμετροι -credential_id
, -username
, να -password
απαιτούνται.
Χρήση: CodeSignTool [-hV] credential_info -credential_id=<CREDENTIAL_ID> -username=<USERNAME> -password=<PASSWORD>
Παράδειγμα:
CodeSignTool credential_info -credential_id = fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -username=john.doe@example.com -password = "P0z9 @ lxo41" Πιστοποιητικό EVCS Πληροφορίες θέματος: - Θέμα DN: OID.1.3.6.1.4.1.311.60.2.1.3. .1.3.6.1.4.1.311.60.2.1.2 = ΗΠΑ, OID.2.5.4.15 = Νεβάδα, OID.20081614243 = Ιδιωτικός οργανισμός, CN = SSL Corp, SERIALNUMBER = NV26, O = SSL Corp, L = Χιούστον, ST = Τέξας, C = US - Λήξη πιστοποιητικού: Δευ 21 Φεβ 21:37:2024 EST 3 - Εκδότης DN: CN = SSL.com EV Code Signing Intermediate CA RSA RXNUMX, O = SSL Corp, L = Houston, ST = Texas , C = ΗΠΑ
Μπαίνοντας CodeSignTool credential_info
Χωρίς τις απαιτούμενες παραμέτρους θα εμφανίζονται πληροφορίες χρήσης για την εντολή.
scan_code
Ενεργοποιεί τη σάρωση κακόβουλου λογισμικού προ-υπογραφής. Αυτό σαρώνει το αρχείο σας για τυχόν κακόβουλο λογισμικό, προκειμένου να αποφευχθεί ο παραβιασμός του κώδικα και αποτρέπει την υπογραφή κώδικα εάν εντοπιστεί κακόβουλο λογισμικό.
Χρήση: CodeSignTool scan_code [-hV] -credential_id=<credentialId> -input_file_path=<inputFilePath> -password=<password> [-program_name=<programName>] -username=<username>
Για πιο λεπτομερείς πληροφορίες σχετικά με τα πλεονεκτήματα ασφαλείας της υπηρεσίας SSL.com Malware Scan, μπορείτε να επισκεφτείτε τη σελίδα μας αφιερωμένη σελίδα.
υπογράψουν
Αντικείμενο κώδικα σήμανσης και χρονικής σήμανσης. Παράμετροι -username
, -password
, να -input_file_path
απαιτούνται. -credential_id
απαιτείται μόνο για χρήστες με περισσότερα από ένα πιστοποιητικά υπογραφής κώδικα eSigner. -output_dir_path
, -program_name
, να -totp_secret
είναι προαιρετικά.
Χρήση: CodeSignTool sign [-hV] [-credential_id=<CREDENTIAL_ID>] -username=<USERNAME> -password=<PASSWORD> -input_file_path=<PATH> [-output_dir_path=<PATH>] [-program_name=<PROGRAM_NAME>] [-totp_secret=<TOTP_SECRET>]
Προαιρετικές παράμετροι:
- If
-credential_id
παραλείπεται και ο χρήστης έχει μόνο ένα πιστοποιητικό υπογραφής κώδικα eSigner, το CodeSignTool θα προεπιλεγεί σε αυτό. Εάν ο χρήστης διαθέτει περισσότερα από ένα πιστοποιητικά υπογραφής κώδικα, αυτή η παράμετρος είναι υποχρεωτική. - If
-output_dir_path
παραλείπεται, το αρχείο καθορίζεται στο-input_file_path
θα αντικατασταθεί με το υπογεγραμμένο αρχείο. Το CodeSignTool θα ζητήσει από τον χρήστη πριν αντικαταστήσει το αρχείο. - If
-program_name
υπάρχει κατά την υπογραφή ενός προγράμματος εγκατάστασης MSI, η τιμή θα εμφανίζεται στο παράθυρο διαλόγου επιβεβαίωσης ως όνομα προγράμματος. - If
-totp_secret
υπάρχει, το CodeSignTool θα υπολογίσει ένα OTP βάσει χρόνου για υπογραφή, επιτρέποντας την αυτοματοποιημένη χρήση του εργαλείου. Εάν αυτή η παράμετρος δεν υπάρχει, θα ζητηθεί από το χρήστη για μη αυτόματη καταχώριση OTP.
Παραδείγματα:
Μη αυτόματη καταχώριση OTP:
CodeSignTool sign -credential_id = fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -username=john.doe@example.com -password = "P0z9 @ lxo41" -output_dir_path = sign -input_file_path = test.exe Enter το : 884646 Ο κωδικός υπογράφηκε με επιτυχία: C: \ Users \ John Doe \ Desktop \ CodeSignTool-v1.0-windows \ sign \ test.exe
Αυτοματοποιημένη παραγωγή OTP:
CodeSignTool sign -credential_id=fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -username=john.doe@example.com -password="P0z9@lxo41" -totp_secret=ii5gVvZ9G+WkxB3FauAnoL/z14AXSMistcE0jZMWWNSjQDlql2kt2D6Z+l8= -output_dir_path=signed -input_file_path=test.exe Code signed successfully: C:\Users\John Doe\Desktop\CodeSignTool-v1.0-windows\signed\test.exe
Μπαίνοντας CodeSignTool sign
Χωρίς τις απαιτούμενες παραμέτρους θα εμφανίζονται πληροφορίες χρήσης για την εντολή.
Error: invalid otp
κατά την προσπάθεια υπογραφής ενός αρχείου, μπορεί να προκληθεί από ένα ή περισσότερα από αυτά τα ζητήματα:
- Ο κωδικός QR που σαρώσατε στην εφαρμογή ελέγχου ταυτότητας δεν ταιριάζει με το όνομα χρήστη, τον κωδικό πρόσβασης και / ή το αναγνωριστικό διαπιστευτηρίου από την εντολή σας. Αυτό θα μπορούσε να συμβεί εάν:
- Έχετε ρυθμίσει πολλούς λογαριασμούς για 2FA στη συσκευή σας και επιλέξατε τον λάθος.
- Προσπαθείτε να χρησιμοποιήσετε τα διαπιστευτήρια σύνδεσής σας για ένα κοινόχρηστο πιστοποιητικό, αλλά σάρωσε έναν κωδικό QR που μοιράστηκε ένας συμπαίκτης από τον λογαριασμό του.
- Το OTP που εισαγάγατε έχει ήδη λήξει.
- Η εντολή σας περιλαμβάνει ένα μη έγκυρο μυστικό TOTP.
παρτίδα_σήμα
Υπογράψτε και χρονική σήμανση έως και 100 αρχεία κώδικα με ένα OTP. Παράμετροι -username
, -password
, να -input_dir_path
απαιτούνται. -credential_id
απαιτείται μόνο για χρήστες με περισσότερα από ένα πιστοποιητικά υπογραφής κώδικα eSigner. -output_dir_path
, -program_name
, να -totp_secret
είναι προαιρετικά.
Χρήση: CodeSignTool [-hV] batch_sign [-credential_id=<CREDENTIAL_ID>] -username=<USERNAME> -password=<PASSWORD> -input_dir_path=<PATH> [-output_dir_path=<PATH>] [-program_name=<PROGRAM_NAME>] [-totp_secret=<TOTP_SECRET>]
Εάν ένας χρήστης θέλει να πραγματοποιήσει σήμα παρτίδας με έλεγχο κακόβουλου λογισμικού, κάθε αντικείμενο κώδικα στη δέσμη πρέπει πρώτα να σαρωθεί με το scan_code
εντολή και μετά, το batch_sign
η εντολή μπορεί να εκτελεστεί.
Προαιρετικές παράμετροι:
- If
-credential_id
παραλείπεται και ο χρήστης έχει μόνο ένα πιστοποιητικό υπογραφής κώδικα eSigner, το CodeSignTool θα προεπιλεγεί σε αυτό. Εάν ο χρήστης διαθέτει περισσότερα από ένα πιστοποιητικά υπογραφής κώδικα, αυτή η παράμετρος είναι υποχρεωτική. - If
-output_dir_path
παραλείπεται, τα αρχεία που καθορίζονται στο-input_dir_path
θα αντικατασταθεί με τα υπογεγραμμένα αρχεία. Το CodeSignTool θα ζητήσει από τον χρήστη πριν αντικαταστήσει το αρχείο. - If
-program_name
υπάρχει κατά την υπογραφή ενός προγράμματος εγκατάστασης MSI, η τιμή θα εμφανίζεται στο παράθυρο διαλόγου επιβεβαίωσης ως όνομα προγράμματος. - If
-totp_secret
υπάρχει, το CodeSignTool θα υπολογίσει ένα OTP βάσει χρόνου για υπογραφή, επιτρέποντας την αυτοματοποιημένη χρήση του εργαλείου. Εάν αυτή η παράμετρος δεν υπάρχει, θα ζητηθεί από το χρήστη για μη αυτόματη καταχώριση OTP.
Παράδειγμα:
CodeSignTool batch_sign -username=john.doe@example.com -password = "P0z9 @ lxo41" -credential_id = fe537ace-e132-52a9-c2e7-egcd2ac3f1e6 -input_dir_path = input -output_dir_path = έξοδος Η εντολή Batch sign εκτελέστηκε με επιτυχία. Κατάλογος εξόδου για υπογεγραμμένα αρχεία: έξοδος
Μπαίνοντας CodeSignTool batch_sign
Χωρίς τις απαιτούμενες παραμέτρους θα εμφανίζονται πληροφορίες χρήσης για την εντολή.
χασίσι
Προ-υπολογισμός κατακερματισμού για μελλοντική χρήση με batch_hash_sign
εντολή. Παράμετρος -input_dir_path
απαιτείται. -program_name
είναι προαιρετικό
Χρήση: CodeSignTool [-hV] hash -input_dir_path=<PATH> [-program_name=<PROGRAM_NAME>]
Προαιρετικές παράμετροι:
- If
-program_name
υπάρχει κατά την υπογραφή ενός προγράμματος εγκατάστασης MSI, η τιμή θα εμφανίζεται στο παράθυρο διαλόγου επιβεβαίωσης ως όνομα προγράμματος.
Παράδειγμα:
CodeSignTool hash -input_dir_path = η εντολή εισαγωγής Hash εκτελέστηκε με επιτυχία. Κατακερματισμένα αρχεία που δημιουργήθηκαν στο: input
Μπαίνοντας CodeSignTool hash
Χωρίς τις απαιτούμενες παραμέτρους θα εμφανίζονται πληροφορίες χρήσης για την εντολή.
batch_sign_hash
Υπολογισμός κατακερματισμού προ-υπολογισμένος με hash
εντολή. Παράμετροι -access_token
, input_dir_path
, -otp
, να output_dir_path
απαιτούνται. -credential_id
απαιτείται μόνο για χρήστες με περισσότερα από ένα πιστοποιητικά υπογραφής κώδικα eSigner.
Χρήση: CodeSignTool [-hV] batch_sign_hash -access_token=<ACCESS_TOKEN> [-credential_id=<CREDENTIAL_ID>] -input_dir_path=<PATH> -output_dir_path=<PATH> -otp=<OTP>
Προαιρετικές παράμετροι:
- If
-credential_id
παραλείπεται και ο χρήστης έχει μόνο ένα πιστοποιητικό υπογραφής κώδικα eSigner, το CodeSignTool θα προεπιλεγεί σε αυτό. Εάν ο χρήστης διαθέτει περισσότερα από ένα πιστοποιητικά υπογραφής κώδικα, αυτή η παράμετρος είναι υποχρεωτική.
Παράδειγμα:
CodeSignTool batch_sign_hash -access_token=eyJraWQiOiJmUE1yYUdlbXVMWGUtcG9JWUtLem1CMEYwYXlFczktUEpiN29lTWFlY2I0IiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJTU 0wuY29tIEF1dGhlbnRpY2F0aW9uIFNlcnZpY2UiLCJleHAiOjE2MTQ4OTcxNDIsImlhdCI6MTYxNDg5MzU0MiwianRpIjoiZmI2OTZlNDUtMTIzOS00ZGE4LW I1MmYtODNkZDE2MTY3ZTM3IiwidXNlciI6eyJ1c2VyX2lkIjoxMzIyODU4LCJ1c2VyX2VtYWlsIjoiYWFyb24uZS5ydXNzZWxsQGdtYWlsLmNvbSIsInNzbF9 hY2NvdW50X2lkIjo0NzQzMDJ9LCJjbGllbnQiOnsiaWQiOiJmUE1yYUdlbXVMWGUtcG9JWUtLem1CMEYwYXlFczktUEpiN29lTWFlY2I0In19.fCKDs1igjsI UDG2sUN_2OTb90Jw1nKNPHcD1MyEUR6sHCv_aJmcvcaFRne_eKLHzeQ9WtT5y3Fb2ppc50kMnjPG6JgX5gnFMptMn-ySsI277CtKbkSn3u-WSDSovn51jPm82 4wTeJmuXEzdv9clRjTwp6VoM9eqHCIaDAd3MP2xpMaa35cZbDaaAFKQ7jxWo9dUuTZY7DsKK0p1LloUEnmNxtNimQ3GDwkj_M600WB1zYrhDL9_3oZKaXcUx9 qzHcBCLzGgeaZ0xdpZtADxmXDUCcmkZi20yQ53bxqVL2w00sJ73efKB7JGeGWVehO-ZlGs3PUQwooox1JgEgcsA -credential_id=fe537ace-e132-52a9 -c2e7-egcd2ac3f1e6 -input_dir_path=input -output_dir_path=output -otp=142392 Batch sign hash command executed successfully. Output directory for signed files: output
Μπαίνοντας CodeSignTool batch_sign_hash
Χωρίς τις απαιτούμενες παραμέτρους θα εμφανίζονται πληροφορίες χρήσης για την εντολή.