Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cart — Python implementation of the CaRT library for (un)inerting files. | Kitploit
उपकरण/GitHubGitHub/cybercentrecanada/cart
Defensive ToolsEncryption/Decryption ToolsMalware AnalysisDigital ForensicsCryptography
GitHubcybercentrecanada/cart

cart

Python implementation of the CaRT library for (un)inerting files.

रिपॉजिटरी देखें
5371 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CaRT (संपीड़ित और RC4 परिवहन)

Latest Stable Release

CaRT फ़ाइल प्रारूप का उपयोग मैलवेयर और उससे जुड़े मेटाडेटा को संग्रहीत/स्थानांतरित करने के लिए किया जाता है। यह मैलवेयर को बेअसर कर देता है ताकि उसे निष्पादित न किया जा सके और उसे एन्क्रिप्ट कर देता है ताकि एंटी-वायरस सॉफ़्टवेयर CaRT फ़ाइल को मैलवेयर के रूप में चिह्नित न कर सके।

लाभ

  • तेज़: CaRT उतना ही तेज़ है जितना किसी फ़ाइल को ज़िप करना
  • स्ट्रीमिंग: CaRT zlib और RC4 का उपयोग करता है, जो इसे फ़ाइलों को स्ट्रीमिंग में एन्कोड करने की अनुमति देता है
  • मेटाडेटा: CaRT फ़ाइल के मेटाडेटा को फ़ाइल के साथ ही उसी फ़ाइल में संग्रहीत कर सकता है, मेटाडेटा को बिना पूरी फ़ाइल पढ़े पढ़ा जा सकता है
  • हैश गणना: CaRT फ़ाइल को एन्कोड करते समय उसके हैश की गणना करता है और उस जानकारी को फ़ुटर में संग्रहीत करता है
  • आकार: CaRT फ़ाइलें आमतौर पर मूल फ़ाइलों से छोटी होती हैं क्योंकि यह संपीड़न का उपयोग करती है। (उस स्थिति को छोड़कर जब CaRT में भारी मात्रा में मेटाडेटा संग्रहीत किया जाता है)

STIX v2 के साथ CaRT का उपयोग

अब जब STIX v2 एन्कोडिंग के रूप में JSON का उपयोग करता है, तो आप अपनी STIX रिपोर्ट को सीधे CaRT प्रारूप में बंडल कर सकते हैं। जब CaRT फ़ाइलों को एन्कोड करता है, तो यह आपकी फ़ाइल के समान उपसर्ग वाली *.cartmeta फ़ाइल से मेटाडेटा जोड़ता है। इसलिए, यदि आप अपनी STIX रिपोर्ट को .cartmeta फ़ाइल में सहेजते हैं, तो परिणामी CaRT फ़ाइल में पूरी STIX रिपोर्ट उसके भीतर अंतर्निहित होगी।

उदाहरण:

root@kitploit:~
$ ls
  file.exe            - File I want to encode
  file.exe.cartmeta   - Stix report of file.exe

$ cart file.exe
$ ls
  file.exe            - File I want to encode
  file.exe.cartmeta   - Stix report of file.exe
  file.exe.cart       - CaRT file containing both the file.exe and its STIX report

प्रारूप अवलोकन

अनिवार्य शीर्षलेख (38 बाइट्स)

CaRT का एक अनिवार्य शीर्षलेख होता है जो इस प्रकार दिखता है

root@kitploit:~
 4s     h         Q        16s         Q
CART<VERSION><RESERVED><ARC4KEY><OPT_HEADER_LEN>

जहाँ VERSION का मान 1 है और RESERVED का मान 0 है। अधिकांश मामलों में, फ़ाइल को डिक्रिप्ट करने के लिए उपयोग की जाने वाली RC4 कुंजी अनिवार्य शीर्षलेख में संग्रहीत होती है और हमेशा समान होती है (पाई के पहले 8 अंक, दो बार)। हालाँकि, CaRT कुंजी को अधिलेखित करने का विकल्प प्रदान करता है जो तब अनिवार्य शीर्षलेख में नल बाइट्स संग्रहीत करता है। फ़ाइल को unCaRT करने के लिए आपको कुंजी जानने की आवश्यकता होगी...

वैकल्पिक शीर्षलेख (OPT_HEADER_LEN बाइट्स)

CaRT का वैकल्पिक शीर्षलेख, JSON क्रमबद्ध शीर्षलेख का एक OPT_HEADER_LEN बाइट्स RC4 ब्लॉब है

root@kitploit:~
RC4(<JSON_SERIALIZED_OPTIONAL_HEADER>)

डेटा ब्लॉक (N बाइट्स)

CaRT का डेटा ब्लॉक पहले zlib और फिर RC4 ब्लॉक होता है

root@kitploit:~
RC4(ZLIB(block encoded stream))

वैकल्पिक फ़ुटर (OPTIONAL_FOOTER_LEN बाइट्स)

वैकल्पिक शीर्षलेख की तरह, CaRT का वैकल्पिक फ़ुटर, JSON क्रमबद्ध फ़ुटर का एक OPT_FOOTER_LEN बाइट्स RC4 ब्लॉब है

root@kitploit:~
RC4(<JSON_SERIALIZED_OPTIONAL_FOOTER>)

अनिवार्य फ़ुटर (28 बाइट्स)

CaRT अपनी फ़ाइल को एक अनिवार्य फ़ुटर के साथ समाप्त करता है, जो प्रारूप को फ़ुटर पढ़ने और हैश लौटाने की अनुमति देता है बिना पूरी फ़ाइल पढ़े

root@kitploit:~
 4s      QQ           Q
TRAC<RESERVED><OPT_FOOTER_LEN>

कमांड लाइन इंटरफ़ेस

pip पैकेज स्थापित करके, आपको CaRT लाइब्रेरी और CaRT CLI दोनों तक पहुँच प्राप्त होती है।

CaRT CLI के विकल्पों के लिए निम्नलिखित प्राथमिकता होती है:

  • CLI के अंदर सभी विकल्पों के लिए डिफ़ॉल्ट मान होते हैं
  • डिफ़ॉल्ट मान ~/.cart/cart.cfg में दिए गए विकल्पों द्वारा अधिलेखित किए जाते हैं
  • कॉन्फ़िगरेशन फ़ाइल के मान CLI विकल्पों द्वारा अधिलेखित किए जाते हैं

CaRT CLI में उपलब्ध विकल्प ये हैं:

root@kitploit:~
usage: cart [options] file1 file2 ... fileN

            The CaRT file format is used to store/transfer malware and its associated metadata.

            It neuters the malware so it cannot be executed and encrypts it so anti-virus software
            cannot flag the CaRT file as malware.


positional arguments:
  file

options:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -d, --delete          Delete original after operation succeeded
  -f, --force           Replace output file if it already exists
  -i, --ignore          Ignore RC4 key from conf file
  -j JSONMETA, --jsonmeta JSONMETA
                        Provide header metadata as JSON blob
  -k KEY, --key KEY     Use private RC4 key (base64 encoded). Same key must be provided to unCaRT.
  -m, --meta            Keep metadata around when extracting CaRTs
  -n FILENAME, --name FILENAME
                        Use this value as metadata filename
  -o OUTFILE, --outfile OUTFILE
                        Set output file
  -s, --showmeta        Only show the file metadata

            CaRT is smart enough to determine if a file needs to be CaRTed or unCaRTed.

            To CaRT an unCaRTed file: cart file1

            To unCaRT a CaRTed file: cart file1

            It is the same command!

CaRT की कॉन्फ़िगरेशन फ़ाइल इस प्रकार दिखती है:

root@kitploit:~
[global]
# rc4_key is a base64 representation of your key
rc4_key: AvUzYXNkZg==
# keep_meta is an equivalent to -m in the CLI
keep_meta: True
# force is an equivalent to -f in the CLI
force: True

# default_header is a key/value pair of data to be added to the CaRT in the optional header
[default_header]
poc: Your Name
poc_email: [email protected]

अन्य CaRT लाइब्रेरियाँ

Rust और Java में भी CaRT के कार्यान्वयन उपलब्ध हैं। इन्हें नीचे देखें:

  • Rust: https://github.com/CybercentreCanada/cart-rs
  • Java: https://github.com/CybercentreCanada/cart-java

CaRT (संपीड़ित और RC4 परिवहन)

CaRT फ़ाइल प्रारूप मैलवेयर और संबंधित मेटाडेटा को संग्रहीत और स्थानांतरित करने की अनुमति देता है। यह मैलवेयर को बेअसर करता है ताकि उन्हें निष्पादित न किया जा सके और उन्हें एन्क्रिप्ट करता है ताकि एंटी-वायरस सॉफ़्टवेयर CaRT फ़ाइल को मैलवेयर के रूप में चिह्नित न करे।

लाभ

  • तेज़: CaRT का उपयोग करना उतना ही तेज़ है जितना किसी फ़ाइल को संपीड़ित करना।
  • स्ट्रीमिंग: CaRT zlib और RC4 का उपयोग करता है, जो फ़ाइलों को स्ट्रीमिंग के दौरान एन्कोड करने की अनुमति देता है।
  • मेटाडेटा: CaRT किसी फ़ाइल के मेटाडेटा को फ़ाइल के साथ ही उसी फ़ाइल में संग्रहीत कर सकता है; मेटाडेटा को पूरी फ़ाइल पढ़ना आवश्यक हुए बिना पढ़ा जा सकता है।
  • हैश गणना: CaRT फ़ाइल को एन्कोड करने के समानांतर फ़ाइल के हैश की गणना करता है, फिर जानकारी को फ़ुटर में संग्रहीत करता है।
  • आकार: CaRT फ़ाइलों का आकार आमतौर पर मूल फ़ाइलों से छोटा होता है, क्योंकि वे संपीड़ित होती हैं (जब तक कि CaRT में बड़ी मात्रा में मेटाडेटा संग्रहीत न किया गया हो)।

STIX v2 के साथ CaRT का उपयोग

अब जब STIX का संस्करण 2 एन्कोडिंग के प्रयोजनों के लिए JSON का उपयोग करता है, तो आप अपनी STIX रिपोर्ट को सीधे CaRT प्रारूप में समूहित कर सकते हैं। जब CaRT फ़ाइलों को एन्कोड करता है, तो यह आपकी फ़ाइल द्वारा उपयोग किए गए समान उपसर्ग वाली *.cartmeta फ़ाइल से मेटाडेटा जोड़ता है। परिणामस्वरूप, यदि आप अपनी STIX रिपोर्ट को .cartmeta फ़ाइल में सहेजते हैं, तो पूरी रिपोर्ट परिणामी CaRT फ़ाइल में एकीकृत हो जाएगी।

उदाहरण के लिए:

root@kitploit:~
$ ls
  file.exe            - Fichier à coder
  file.exe.cartmeta   - Rapport STIX du fichier file.exe

$ cart file.exe
$ ls
  file.exe            - Fichier à coder
  file.exe.cartmeta   - Rapport STIX du fichier file.exe
  file.exe.cart       - Fichier CaRT contenant à la fois le fichier file.exe et son rapport STIX

प्रारूप अवलोकन

अनिवार्य शीर्षलेख (38 बाइट्स)

CaRT में एक अनिवार्य शीर्षलेख होता है जो इस प्रकार दिखता है:

root@kitploit:~
 4s     h         Q        16s         Q
CART<VERSION><RESERVED><ARC4KEY><OPT_HEADER_LEN>

इस शीर्षलेख में, VERSION का मान 1 है और RESERVED का मान 0 है। अधिकांश मामलों में, फ़ाइल को डिक्रिप्ट करने के लिए उपयोग की जाने वाली RC4 कुंजी वहाँ संग्रहीत होती है और वह हमेशा समान होती है (पाई के पहले 8 अंक, दो बार)। हालाँकि, CaRT कुंजी को बदलने का एक तरीका प्रदान करता है, जिसमें अनिवार्य शीर्षलेख में नल बाइट्स संग्रहीत किए जाते हैं। तब आपको CaRT फ़ाइल को डिकोड करने के लिए कुंजी जानने की आवश्यकता होगी।

वैकल्पिक शीर्षलेख (OPT_HEADER_LEN बाइट्स)

CaRT का वैकल्पिक शीर्षलेख, JSON क्रमबद्ध शीर्षलेख का एक OPT_HEADER_LEN बाइट्स RC4 ब्लॉब है

root@kitploit:~
RC4(<JSON_SERIALIZED_OPTIONAL_HEADER>)

डेटा ब्लॉक (N बाइट्स)

CaRT का डेटा ब्लॉक पहले zlib और फिर RC4 ब्लॉक होता है

root@kitploit:~
RC4(ZLIB(block encoded stream))

वैकल्पिक फ़ुटर (OPTIONAL_FOOTER_LEN बाइट्स)

वैकल्पिक शीर्षलेख की तरह, CaRT का वैकल्पिक फ़ुटर, JSON क्रमबद्ध फ़ुटर का एक OPT_FOOTER_LEN बाइट्स RC4 ब्लॉब है

root@kitploit:~
RC4(<JSON_SERIALIZED_OPTIONAL_FOOTER>)

अनिवार्य फ़ुटर (28 बाइट्स)

CaRT फ़ाइल एक अनिवार्य फ़ुटर के साथ समाप्त होती है, जो प्रारूप को पूरी फ़ाइल पढ़े बिना फ़ुटर पढ़ने और हैश लौटाने की अनुमति देता है:

root@kitploit:~
 4s      QQ           Q
TRAC<RESERVED><OPT_FOOTER_LEN>

कमांड लाइन इंटरफ़ेस

pip पैकेज स्थापित करके, आप CaRT लाइब्रेरी और CaRT CLI तक पहुँच सकते हैं।

CaRT CLI के विकल्पों के लिए निम्नलिखित प्राथमिकता होती है:

  • CLI से सभी विकल्पों के लिए डिफ़ॉल्ट मान परिभाषित किए जाते हैं
  • डिफ़ॉल्ट मान ~/.cart/cart.cfg में विकल्पों द्वारा अधिलेखित किए जाते हैं
  • कॉन्फ़िगरेशन फ़ाइल में मान CLI विकल्पों द्वारा अधिलेखित किए जाते हैं

CaRT CLI में उपलब्ध विकल्प ये हैं:

root@kitploit:~
utilisation: cart [options] fichier1 fichier2 ... fichierN

            Le format de fichier CaRT est utilisé pour enregistrer et transferer des fichiers malicieux et les métadonnées associées.

            Il permet de neutraliser le fichier malicieux afin qu'il ne puisse être exécuté et l'encrypte afin d'éviter la detection et l'effacement par les anti-virus.


arguments positionels:
  fichier

options:
  -h, --help            afficher ce message d’aide et quitter
  -v, --version         afficher le numéro de version du programme et quitter
  -d, --delete          supprime le fichier original après une exécution réussie
  -f, --force           remplacer le fichier de sortie s’il existe déjà
  -i, --ignore          Ignorer la clé RC4 dans le fichier conf
  -j JSONMETA, --jsonmeta JSONMETA
                        Fournir les métadonnées de l’en-tête sous forme d’objet blob json
  -k KEY, --key KEY     Utiliser la clé RC4 privée (codé en Base64). La même clé doit être saisie pour décompresser le fichier CaRT.
  -m, --meta            Conserver les métadonnées lors de l’extraction des fichiers CaRT
  -n FILENAME, --name FILENAME
                        Utiliser cette valeur comme nom de fichier des métadonnées
  -o OUTFILE, --outfile OUTFILE
                        Définir le fichier de sortie
  -s, --showmeta        Afficher uniquement les métadonnées du fichier

            CaRT est capable de déterminer si un fichier a besoin d'être CaRTé ou déCaRTé.

            Pour CaRTer un fichier déCaRTé: cart file1

            Pour déCaRTer un fichier CaRTé: cart file1

            C'est la même commande!

CaRT की कॉन्फ़िगरेशन फ़ाइल इस प्रकार दिखती है:

root@kitploit:~
[global]
# rc4_key est une représentation en Base64 de votre clé
rc4_key: AvUzYXNkZg==
# keep_meta est un équivalent de -m dans le CLI
keep_meta: True
# force est un équivalent de -f dans le CLI
force: True

# default_header est une paire de données clé/valeur à ajouter à l'en-tête facultatif du fichier CaRT
[default_header]
poc: Votre nom
poc_email: [email protected]

CaRT फ़ाइलों के साथ काम करने के लिए अन्य लाइब्रेरियाँ

Rust और Java में भी CaRT के कार्यान्वयन उपलब्ध हैं। इन्हें निम्नलिखित पतों पर देखें:

  • Rust: https://github.com/CybercentreCanada/cart-rs
  • Java: https://github.com/CybercentreCanada/cart-java
टूल डाउनलोड करें