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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
bidi_char_detector — आपकी फ़ाइलों में Unicode BIDI वर्णों की उपस्थिति की जाँच करता है, जिनका उपयोग सप्लाई चेन हमलों के लिए दुरुपयोग किया जा सकता है। CVE-2021-42574 देखें। | Kitploit
उपकरण/GitHubGitHub/maweil/bidi_char_detector
स्थैतिक विश्लेषणभेद्यता विश्लेषणकोड विश्लेषणसीक्रेट डिटेक्शनआपूर्ति श्रृंखला सुरक्षागलत कॉन्फ़िगरेशनArchived
GitHubmaweil/bidi_char_detector

bidi_char_detector

आपकी फ़ाइलों में Unicode BIDI वर्णों की उपस्थिति की जाँच करता है, जिनका उपयोग सप्लाई चेन हमलों के लिए दुरुपयोग किया जा सकता है। CVE-2021-42574 देखें।

रिपॉजिटरी देखें
633 साल पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

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

BIDI कैरेक्टर डिटेक्टर

यह टूल आपकी फ़ाइलों में यूनिकोड BIDI कैरेक्टर की उपस्थिति की जाँच करता है जिनका दुरुपयोग सप्लाई चेन हमलों के लिए किया जा सकता है, CVE-2021-42574 को कम करने के लिए। यह टूल Rust में लिखा गया है और एक छोटे (< 3MB) डॉकर संगत कंटेनर के रूप में वितरित किया जाता है ताकि तेज और आसान उपयोग किया जा सके।

हमले की व्याख्या के लिए, GitHub के ब्लॉग एंट्री या मूल पेपर पर नज़र डालें जहाँ हमला प्रकाशित किया गया था।

इंस्टॉलेशन

यह पैकेज मुख्य रूप से इसके डॉकर कंटेनर के माध्यम से उपयोग के लिए है। लेकिन स्थानीय इंस्टॉलेशन भी संभव है। संकलन के लिए कम से कम Rust 1.56.0 की आवश्यकता है क्योंकि यह Rust 2021 Edition का उपयोग करता है। इस रिपॉजिटरी को क्लोन करें और अपने वर्तमान उपयोगकर्ता के लिए बाइनरी इंस्टॉल करने के लिए cargo install --path . चलाएँ। उसके बाद, आप bidi_detector कमांड का उपयोग कर सकते हैं।

उपयोग

आधिकारिक डॉकर कंटेनर के माध्यम से टूल चलाना शुरू करने का संभवतः सबसे आसान तरीका है। इसे डॉकर के माध्यम से चलाने के लिए, निम्नलिखित कमांड आपकी वर्तमान कार्यशील निर्देशिका के अंदर सभी फ़ाइलों को स्कैन करने के लिए काम करना चाहिए:

root@kitploit:~
docker run --rm -it -v $(pwd):/data ghcr.io/maweil/bidi_char_detector:latest

आपके सिस्टम के अनुसार इस कमांड में थोड़ा बदलाव करना पड़ सकता है। यदि आप उदाहरण के लिए podman का उपयोग करते हैं और SELinux सक्षम है, तो इसके बजाय निम्नलिखित कमांड आज़माएँ:

root@kitploit:~
podman run --rm -it -v $(pwd):/data:Z ghcr.io/maweil/bidi_char_detector:latest

कॉन्फ़िगरेशन

डिफ़ॉल्ट रूप से, सभी फ़ाइलों की जाँच की जाएगी। यदि आपके वर्तमान निर्देशिका में बाइनरी फ़ाइलें हैं, तो कमांड विफल हो जाएगा क्योंकि यह गैर-UTF8 एन्कोडेड फ़ाइल को डिकोड नहीं कर सकता। कमांड को अपनी आवश्यकताओं के अनुसार अनुकूलित करने के लिए, अपने प्रोजेक्ट की रूट में bidi_config.toml नामक एक फ़ाइल रखें। आप इस रिपॉजिटरी में इसका एक उदाहरण पा सकते हैं, नीचे एक उदाहरण देखें। विकल्पों का विवरण उदाहरण के नीचे दिया जाएगा:

root@kitploit:~
[general]
includes = [ 
    "src/**/*",
    "**/*.patch",
    "**/*.json",
    "**/Dockerfile",
    "test/*.js"
]
excludes = [
    ".git/*",
    "target/*"
]

[display]
show_details = true

सामान्य सेटिंग्स

इस अनुभाग में दो ऐरे (includes और excludes) शामिल हैं जहाँ आप स्कैन की जाने वाली फ़ाइलों के पैटर्न निर्दिष्ट कर सकते हैं (या स्कैन से बाहर करने के लिए)। कृपया सुनिश्चित करें कि आपके पैटर्न वास्तव में निर्देशिका के अंदर की फ़ाइलों से मेल खाते हैं, न कि निर्देशिका के नाम से, अन्यथा आपकी फ़ाइलें स्कैन नहीं होंगी। यदि आप सभी फ़ाइलों को स्कैन करना चाहते हैं और केवल उदाहरण के लिए अपनी .git निर्देशिका को बाहर करना चाहते हैं, तो निम्नलिखित कॉन्फ़िगरेशन काम करेगा:

root@kitploit:~
[general]
includes = [ 
    "**/*"
]
excludes = [
    ".git/*",
]

[display]
show_details = true

यदि आप इसके बजाय स्पष्ट रूप से परिभाषित करना चाहते हैं कि किस फ़ोल्डर में आपकी स्रोत फ़ाइलें हैं, तो निम्नलिखित कॉन्फ़िगरेशन उदाहरण src निर्देशिका में सभी फ़ाइलों को स्कैन करेगा (बिना कुछ अनदेखा किए):

root@kitploit:~
[general]
includes = [ 
    "src/**/*"
]
excludes = [
]

[display]
show_details = true

डिस्प्ले सेटिंग्स

इस अनुभाग में निम्नलिखित सेटिंग्स उपलब्ध हैं:

उदाहरण: show_details = true, verbose = true

root@kitploit:~
src/lib.rs - 0 BIDI characters
src/main.rs - 0 BIDI characters
test/example-commenting-out.js - 6 BIDI characters
Found character RLO (Right-to-Left Override), test/example-commenting-out.js:4:3
Found character LRI (Left-to-Right Isolate), test/example-commenting-out.js:4:7
Found character PDI (Pop Directional Isolate), test/example-commenting-out.js:4:20
Found character LRI (Left-to-Right Isolate), test/example-commenting-out.js:4:22
Found character RLO (Right-to-Left Override), test/example-commenting-out.js:6:20
Found character LRI (Left-to-Right Isolate), test/example-commenting-out.js:6:24
Found 6 potentially dangerous Unicode BIDI characters!

उदाहरण: show_details = false, verbose = true

root@kitploit:~
src/lib.rs - 0 BIDI characters
src/main.rs - 0 BIDI characters
test/example-commenting-out.js - 6 BIDI characters
Found 6 potentially dangerous Unicode BIDI characters!

उदाहरण: show_details = false, verbose = false

root@kitploit:~
test/example-commenting-out.js - 6 BIDI characters
Found 6 potentially dangerous Unicode BIDI characters!

क्रेडिट्स

हमले का पता लगाने के सभी क्रेडिट, प्रासंगिक BIDI कैरेक्टर की सूची सहित, संबंधित पेपर के मूल लेखकों को जाते हैं। कृपया उनके काम पर निर्माण करते समय उनके मूल पेपर का हवाला दें।

इस रिपॉजिटरी में फ़ाइल test/example-commenting-out.js उनकी मूल रिपॉजिटरी में commenting-out.js की एक प्रति है। इसका लाइसेंस मूल रिपॉजिटरी (MIT लाइसेंस) का अनुसरण करता है। इसका उपयोग यहाँ केवल परीक्षण उद्देश्यों के लिए किया जाता है।

root@kitploit:~
@article{boucher_trojansource_2021,
    title = {Trojan {Source}: {Invisible} {Vulnerabilities}},
    author = {Nicholas Boucher and Ross Anderson},
    year = {2021},
    journal = {Preprint},
    eprint = {2111.00169},
    archivePrefix = {arXiv},
    primaryClass = {cs.CR},
    url = {https://arxiv.org/abs/2111.00169}
}
टूल डाउनलोड करें
SettingDescriptionOptionalDefaultIntroduced in
show_detailsयह निर्णय लेता है कि मिलने पर पता लगाए गए BIDI कैरेक्टर की लाइन/स्थिति और प्रकार को प्रिंट करना है या नहीं (नीचे उदाहरण देखें)नहीं-v0.1.1
ignore_invalid_dataक्या बाइनरी/गैर-UTF8 फ़ाइलों का पता चलने पर त्रुटि संदेश मुद्रित करना हैहाँtruev0.1.2
verboseक्या फ़ाइल का नाम प्रिंट करना है भले ही कोई संदिग्ध कैरेक्टर न मिलेहाँtruev0.1.2