Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/alex66366/odpure
रक्षात्मक उपकरणगतिशील विश्लेषण (सैंडबॉक्सिंग)भेद्यता विश्लेषणमशीन लर्निंगपेपर और शोधAI सुरक्षाप्रतिकूल हमला
GitHubalex66366/odpure

ODPure

ब्लैक-बॉक्स इनपुट-चरण शुद्धिकरण रक्षा जो भ्रष्टाचार, विसरण पुनर्निर्माण, और DBSCAN सर्वसम्मति मतदान के माध्यम से ऑब्जेक्ट डिटेक्टरों पर बैकडोर हमलों को निष्क्रिय करती है।

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

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

सभी देखें →

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

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

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

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

ODPure: एन्सेम्बल करप्शन कॉन्सेंसस के माध्यम से ऑब्जेक्ट डिटेक्शन के लिए बैकडोर प्यूरीफिकेशन

बैकडोर हमलों के विरुद्ध ऑब्जेक्ट डिटेक्टरों के लिए तैयार किया गया पहला इनपुट-स्टेज ब्लैक-बॉक्स प्यूरीफिकेशन डिफेंस।

License: MIT

📖 अवलोकन

ODPure पहला इनपुट-स्टेज, ब्लैक-बॉक्स प्यूरीफिकेशन फ्रेमवर्क है जो ऑब्जेक्ट डिटेक्टरों को बैकडोर हमलों से बचाने के लिए तैयार किया गया है। यह एक नए Corruption-Reconstruction-Selection (CRS) प्रतिमान को क्रियान्वित करता है जो:

  1. ट्रिगर पैटर्न को बाधित करने के लिए इनपुट छवियों को विविध विकृतियों के साथ करप्ट करता है
  2. जनरेटिव डिफ्यूजन प्रायर्स का उपयोग करके सूक्ष्म संरचनात्मक विशेषताओं का पुनर्निर्माण करता है
  3. स्थानिक सर्वसम्मति मतदान के माध्यम से उच्च-विश्वास वाले डिटेक्शनों का चयन करता है

ODPure विविध बैकडोर हमलों को प्रभावी ढंग से निष्क्रिय करता है (Attack Success Rate को 0.0% तक कम करता है) जबकि स्वच्छ डिटेक्शन उपयोगिता को संरक्षित रखता है, और मौजूदा डिफेंसों की तुलना में बेहतर डिफेंस-उपयोगिता ट्रेड-ऑफ प्राप्त करता है।

🔑 मुख्य विशेषताएँ

  • ब्लैक-बॉक्स डिफेंस: मॉडल इंटरनल्स, ग्रेडिएंट्स, या आर्किटेक्चर की आवश्यकता नहीं
  • मॉडल-अज्ञेय: किसी भी ऑब्जेक्ट डिटेक्टर के साथ काम करता है (YOLO, Faster R-CNN, आदि)
  • मल्टी-अटैक डिफेंस: OMA, ODA, और OGA हमला प्रकारों को संभालता है
  • ज़ीरो-शॉट: ट्रिगर पैटर्न का कोई पूर्व ज्ञान आवश्यक नहीं
  • सतत धारणा: डेटा को त्यागे बिना परिचालन स्ट्रीम निरंतरता बनाए रखता है
  • 📋 आवश्यकताएँ

    सिस्टम आवश्यकताएँ

    • Python 3.8+
    • CUDA 11.7+ (GPU त्वरण के लिए)
    • 16GB+ GPU मेमोरी की सिफारिश की जाती है

    Python निर्भरताएँ

    root@kitploit:~
    # Core dependencies
    torch>=1.13.0
    torchvision>=0.14.0
    numpy>=1.21.0
    Pillow>=9.0.0
    opencv-python>=4.5.0
    
    # Diffusion models
    diffusers>=0.14.0
    transformers>=4.25.0
    accelerate>=0.20.0
    
    # Evaluation
    scikit-learn>=1.2.0  # For DBSCAN clustering
    scipy>=1.9.0
    
    # Data processing
    pyyaml>=6.0
    tqdm>=4.64.0
    

    Conda एनवायरनमेंट सेटअप (अनुशंसित)

    root@kitploit:~
    # Create conda environment
    conda create -n odpure python=3.9 -y
    conda activate odpure
    
    # Install PyTorch with CUDA
    conda install pytorch torchvision pytorch-cuda=11.7 -c pytorch -c nvidia
    
    # Install other dependencies
    pip install -r requirements.txt
    

    📦 प्रीट्रेन्ड वेट्स डाउनलोड करें

    Reconstruction मॉड्यूल चलाने से पहले, आपको प्रीट्रेन्ड मॉडल वेट्स डाउनलोड करने होंगे:

    आवश्यक वेट्स

    ModelDescriptionDownload
    DiffBIR v2.1Main restoration modelHuggingFace
    Stable DiffusionLatent diffusion priorsHuggingFace
    LLaVAVision-language captionerHuggingFace
    RAMRecognition-Aware ModelGitHub Release

    इंस्टॉलेशन चरण

    1. वेट्स डायरेक्टरी बनाएँ:
    root@kitploit:~
    mkdir -p Method/Reconstruction/weights
    
    1. संबंधित मॉडल रिपॉजिटरी में दिए गए निर्देशों का पालन करते हुए वेट्स डाउनलोड करें और रखें।

    2. अपने डाउनलोड किए गए वेट्स की ओर इंगित करने के लिए Method/Reconstruction/configs/ में कॉन्फ़िग फ़ाइलों को अपडेट करें।

    🏗️ प्रोजेक्ट संरचना

    root@kitploit:~
    ODPure/
    ├── attack_script/              # Backdoor attack implementations
    │   ├── COCO_chessboard_29x29_OMA.py     # Object Misclassification (Chessboard)
    │   ├── COCO_chessboard_29x29_ODA.py     # Object Disappearance Attack (Chessboard)
    │   ├── COCO_chessboard_9x9_OGA.py      # Object Generation Attack (Chessboard)
    │   ├── COCO_poke_15x15_OMA.py          # OMA (Poké Ball)
    │   ├── COCO_poke_15x15_ODA.py          # ODA (Poké Ball)
    │   ├── COCO_poke_15x15_OGA.py          # OGA (Poké Ball)
    │   ├── COCO_white_15x15_OMA.py         # OMA (Solid White)
    │   ├── COCO_white_15x15_ODA.py         # ODA (Solid White)
    │   └── COCO_white_15x15_OGA.py         # OGA (Solid White)
    │
    ├── Method/                     # Core defense methodology
    │   ├── corruptions/           # Image corruption module
    │   │   ├── imagecorruption.py # Corruption functions
    │   │   └── multiprocess_imagecorruption.py  # Parallel processing
    │   │
    │   ├── Reconstruction/         # Diffusion-based restoration
    │   │   ├── inference.py       # Main inference script
    │   │   ├── diffbir/           # DiffBIR model implementation
    │   │   ├── llava/             # LLaVA captioner
    │   │   ├── ram/               # Recognition-Aware Model
    │   │   ├── configs/           # Model configurations
    │   │   └── weights/           # Model weights (download separately)
    │   │
    │   └── dbscan_vote_new.py     # DBSCAN clustering & voting
    │
    ├── evaluation/                 # Evaluation metrics
    │   ├── OMA_ASR_new.py         # OMA Attack Success Rate
    │   ├── OMA_mAP.py             # OMA Mean Average Precision
    │   ├── ODA_ASR_new.py         # ODA Attack Success Rate
    │   ├── ODA_mAP.py             # ODA Mean Average Precision
    │   ├── OGA_ASR_new.py         # OGA Attack Success Rate
    │   ├── OGA_mAP.py             # OGA Mean Average Precision
    │   ├── val_OMA.py             # YOLO validation for OMA
    │   ├── val_ODA.py             # YOLO validation for ODA
    │   └── val_OGA.py             # YOLO validation for OGA
    │
    ├── data_format_conversion/    # Data format utilities
    │   ├── voc2yolo.py            # VOC to YOLO format conversion
    │   ├── cocotoyolo.py          # COCO to YOLO format conversion
    │   └── select_coco_val_attack_information.py
    │
    ├── ablation_study/            # Ablation experiments
    │   ├── multiprocess_imagecorruption.py
    │   ├── random_select_corruption.py
    │   └── select_specific_corruption.py
    │
    ├── run_pipeline.sh            # One-shot CRS pipeline runner
    └── README.md                 # This file
    

    🚀 त्वरित शुरुआत

    विकल्प A: वन-शॉट एंड-टू-एंड पाइपलाइन (अनुशंसित)

    अनुशंसित प्रवेश बिंदु run_pipeline.sh है, जो तीन CRS चरणों को कैस्केड करता है:

    root@kitploit:~
    # Defaults: GPU=0, INPUT=inputs/demo/bid, OUTPUT=results/v2.1_demo_bid, ATTACK=ODA
    bash run_pipeline.sh
    
    # Custom arguments: GPU_ID INPUT_DIR OUTPUT_DIR ATTACK
    bash run_pipeline.sh 0 inputs/coco_oda results/oda ODA
    bash run_pipeline.sh 1 inputs/coco_oma results/oma OMA
    bash run_pipeline.sh 2 inputs/coco_oga results/oga OGA
    

    स्क्रिप्ट निम्नलिखित करती है:

    1. चरण 1 (करप्शन) – 45 करप्टेड वेरिएंट उत्पन्न करता है
    2. चरण 2 (पुनर्निर्माण) – LLaVA कैप्शनर के साथ DiffBIR v2.1
    3. चरण 3 (चयन) – DBSCAN स्थानिक सर्वसम्मति मतदान

    अंतिम शुद्ध किए गए डिटेक्शन <OUTPUT_DIR>/final/ में लिखे जाते हैं।

    विकल्प B: प्रत्येक चरण को मैन्युअल रूप से चलाएँ

    यदि आप मध्यवर्ती चरणों का निरीक्षण / प्रतिस्थापन करना चाहते हैं तो इसका उपयोग करें।

    चरण 1: करप्शन

    root@kitploit:~
    python Method/corruptions/multiprocess_imagecorruption.py \
        --input_dir /path/to/input/images \
        --output_dir /path/to/corrupted/images \
        --num_corruptions 45 \
        --num_workers 8
    

    चरण 2: पुनर्निर्माण

    root@kitploit:~
    python Method/Reconstruction/inference.py \
        --task denoise \
        --upscale 2 \
        --version v2.1 \
        --captioner llava \
        --cfg_scale 6 \
        --noise_aug 1 \
        --input /path/to/corrupted/images \
        --output /path/to/restored/images \
        --batch_size 32 \
        --device cuda
    

    चरण 3: चयन (DBSCAN मतदान)

    root@kitploit:~
    python Method/dbscan_vote_new.py \
        --folder_purs /path/to/restored/detections \
        --temp /path/to/temp \
        --output_path /path/to/final/detections \
        --eps 0.5 \
        --min_samples 10
    

    📊 मूल्यांकन

    चरण 1: एनवायरनमेंट सक्रिय करें

    root@kitploit:~
    conda activate odpure
    

    चरण 2: तीन स्प्लिट्स पर डिटेक्टर चलाएँ

    root@kitploit:~
    # Run on poisoned inputs (before defense)
    python evaluation/val_ODA.py \
        --weights runs/train/exp/weights/last.pt \
        --data data/ODA_poison.yaml \
        --img 640 --iou-thres 0.65 --conf-thres 0.5 \
        --save-txt --save-conf \
        --project results/poisoned_val_txt
    
    # Run on clean inputs
    python evaluation/val_ODA.py \
        --weights runs/train/exp/weights/last.pt \
        --data data/ODA_clean.yaml \
        --img 640 --iou-thres 0.65 --conf-thres 0.5 \
        --save-txt --save-conf \
        --project results/clean_val_txt
    
    # Run on purified inputs (after defense via ODPure)
    python evaluation/val_ODA.py \
        --weights runs/train/exp/weights/last.pt \
        --data data/ODA_purified.yaml \
        --img 640 --iou-thres 0.65 --conf-thres 0.5 \
        --save-txt --save-conf \
        --project results/pur_val_txt
    

    चरण 3: ASR / mAP की गणना करें

    OMA (Object Misclassification Attack)

    root@kitploit:~
    python evaluation/OMA_ASR_new.py
    

    स्क्रिप्ट के अंदर पथ कॉन्फ़िगर करें:

    root@kitploit:~
    gt_folder      = "/path/to/ground_truth"
    benign_folder  = "/path/to/clean_val_txt"
    attack_folder  = "/path/to/pur_val_txt"
    target_class   = "0"      # person class
    

    ODA (Object Disappearance Attack)

    root@kitploit:~
    python evaluation/ODA_ASR_new.py
    

    OGA (Object Generation Attack)

    root@kitploit:~
    python evaluation/OGA_ASR_new.py
    

    mAP की गणना करें

    root@kitploit:~
    python evaluation/ODA_mAP.py
    python evaluation/OGA_mAP.py
    python evaluation/OMA_mAP.py
    

    🛡️ डिफेंस कॉन्फ़िगरेशन

    डिफ़ॉल्ट ODPure सेटिंग्स

    ParameterValueDescription
    num_corruptions15 types × 3 severities = 45 variantsCorruption diversity
    corruption_severity1, 2, 3Corruption intensity levels
    DBSCAN eps0.5Clustering radius
    DBSCAN min_samples10Consensus threshold
    cfg_scale6.0Classifier-free guidance
    noise_aug1Noise augmentation level

    करप्शन प्रकार

    ODPure 4 श्रेणियों में 15 विविध करप्शन फ़ंक्शन का उपयोग करता है:

    • शोर: Gaussian, Shot, Impulse
    • धुंधलापन: Gaussian, Glass, Motion, Zoom, Defocus
    • मौसम: Snow, Frost, Fog, Brightness
    • डिजिटल: JPEG compression, Pixelate, Elastic transform

    🔧 उन्नत उपयोग

    कस्टम करप्शन

    root@kitploit:~
    from Method.corruptions.imagecorruption import *
    
    # Apply specific corruption
    corrupted_img = gaussian_noise(image, severity=2)
    corrupted_img = glass_blur(image, severity=1)
    corrupted_img = jpeg_compression(image, severity=3)
    

    मल्टी-GPU प्रोसेसिंग

    root@kitploit:~
    # Process on specific GPU
    CUDA_VISIBLE_DEVICES=0 python Method/Reconstruction/inference.py \
        --task denoise --input inputs/demo --output results/demo
    
    # Batch processing with multiple GPUs
    CUDA_VISIBLE_DEVICES=0,1,2,3 python Method/Reconstruction/inference.py \
        --task denoise --batch_size 64 --input inputs/batch --output results/batch
    

    YOLOv5 के साथ एकीकरण

    root@kitploit:~
    # Train backdoored model
    CUDA_VISIBLE_DEVICES="0,1" python train.py \
        --data data/custom.yaml \
        --epochs 200 \
        --weights checkpoints/yolov5s.pt \
        --img 640 \
        --batch-size 128
    
    # Evaluate with defense
    python evaluation/val_ODA.py \
        --weights runs/train/exp/weights/last.pt \
        --data data/val.yaml \
        --img 640 \
        --iou-thres 0.65 \
        --conf-thres 0.5 \
        --save-txt --save-conf
    

    📈 प्रायोगिक परिणाम

    VOC और COCO पर डिफेंस प्रदर्शन (Chessboard ट्रिगर)

    AttackDataset (Model)Clean mAPBefore Defense (mAP/ASR)After Defense (mAP/ASR)
    OMAVOC (YOLO)76.4%8.2% / 87.7%80.5% / 2.0%
    OMAVOC (F-RCNN)79.3%44.9% / 94.6%78.1% / 17.4%
    OMACOCO (YOLO)52.8%0.4% / 94.6%52.0% / 1.5%
    OMACOCO (F-RCNN)49.7%6.3% / 91.9%47.0% / 16.3%
    ODAVOC (YOLO)72.0%71.6% / 96.5%76.7% / 20.8%
    ODAVOC (F-RCNN)77.6%76.4% / 69.3%75.4% / 18.9%
    ODACOCO (YOLO)54.0%52.4% / 99.9%54.1% / 25.4%
    ODACOCO (F-RCNN)50.9%50.3% / 81.7%51.4% / 28.0%
    OGAVOC (YOLO)80.4%78.0% / 65.1%82.2% / 0.0%
    OGAVOC (F-RCNN)83.2%81.2% / 98.4%80.9% / 0.0%
    OGACOCO (YOLO)53.0%52.8% / 99.8%54.4% / 0.0%
    OGACOCO (F-RCNN)48.9%49.1% / 95.4%49.5% / 0.0%

    अनुकूली हमलों के विरुद्ध मजबूती

    TriggerAttackClean mAPBefore ASRAfter ASR
    Poké BallOMA77.3%95.5%19.8%
    Poké BallODA75.3%98.5%35.1%
    Poké BallOGA79.8%96.8%15.4%
    Solid WhiteOMA75.5%82.0%52.9%
    Solid WhiteODA71.8%71.1%44.0%
    Solid WhiteOGA80.2%73.7%37.0%

    🔬 खतरा मॉडल

    हमलावर की क्षमता

    • प्रशिक्षण के दौरान डेटा पॉइज़निंग के माध्यम से बैकडोर प्रत्यारोपित करता है
    • डिटेक्टरों को दुर्भावनापूर्ण व्यवहार प्रदर्शित करने के लिए हेरफेर करता है (OMA, ODA, OGA)
    • स्वच्छ इनपुट पर सामान्य भविष्यवाणियाँ बनाए रखता है

    रक्षक की बाधाएँ

    • हमला-अज्ञेय: ट्रिगर पैटर्न का कोई पूर्व ज्ञान नहीं
    • सख्त ब्लैक-बॉक्स: केवल इनपुट क्वेरी करें और आउटपुट देखें
    • कोई प्रशिक्षण डेटा नहीं: केवल इन्फरेंस-टाइम इनपुट पर प्यूरीफिकेशन

    डिफेंस लक्ष्य

    • सुरक्षा: बैकडोर सक्रियण को कम करें (कम ASR)
    • निष्ठा: स्वच्छ और शुद्ध इनपुट पर उच्च mAP बनाए रखें

    हमला प्रकार

    Attack TypeDescriptionBehavior
    OMAObject Misclassification Attackलक्ष्य वस्तुओं को गलत वर्गीकृत करने के लिए बाध्य करता है
    ODAObject Disappearance Attackलक्ष्य वस्तुओं को डिटेक्शन से गायब कर देता है
    OGAObject Generation Attackमतिभ्रमित भूत वस्तुओं को प्रेरित करता है

    📚 उद्धरण

    यदि आपको यह कार्य अपने शोध में उपयोगी लगे, तो कृपया उद्धृत करें:

    root@kitploit:~
    @article{odpure2026,
      title={ODPure: Backdoor Purification for Object Detection via Ensemble Corruption Consensus},
      author={},
      journal={},
      year={2026}
    }
    

    📝 लाइसेंस

    यह प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।

    🤝 आभार

    • DiffBIR - Diffusion-based Image Restoration
    • LLaVA - Large Language and Vision Assistant
    • YOLOv5 - Object Detection Framework
    • CLIP - Contrastive Language-Image Pretraining

    📧 संपर्क

    प्रश्नों या सहयोग के लिए, कृपया GitHub पर एक issue खोलें।


    ODPure - सतत धारणा बनाए रखते हुए ऑब्जेक्ट डिटेक्शन सिस्टम को बैकडोर हमलों से बचाना।

    टूल डाउनलोड करें