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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ShipProof — SOC 2 साक्ष्य जो GitLab CI में स्वयं एकत्र होता है: प्रत्येक मर्ज एक हस्ताक्षरित बंडल उत्पन्न करता है, एक OPA गेट अनुपलब्ध प्रमाण वाले रिलीज़ को ब्लॉक करता है, और ऑडिटरों को स्क्रीनशॉट के बजाय एक लिंक मिलता है। | Kitploit
उपकरण/GitLabGitLab/divyanshukumar0014/shipproof
रक्षात्मक उपकरणस्थैतिक विश्लेषणकोड विश्लेषणस्क्रिप्टिंग और स्वचालनकॉन्फ़िगरेशन ऑडिटिंगक्लाउड सुरक्षाDevSecOpsसीक्रेट डिटेक्शनआपूर्ति श्रृंखला सुरक्षा
GitLabdivyanshukumar0014/shipproof

ShipProof

SOC 2 साक्ष्य जो GitLab CI में स्वयं एकत्र होता है: प्रत्येक मर्ज एक हस्ताक्षरित बंडल उत्पन्न करता है, एक OPA गेट अनुपलब्ध प्रमाण वाले रिलीज़ को ब्लॉक करता है, और ऑडिटरों को स्क्रीनशॉट के बजाय एक लिंक मिलता है।

1 दिन पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
रिपॉजिटरी देखें
साझा करें

ShipProof

SOC 2 साक्ष्य जो GitLab CI में स्वयं एकत्र होता है: प्रत्येक मर्ज एक हस्ताक्षरित बंडल उत्पन्न करता है, एक Open Policy Agent गेट अनुपस्थित प्रमाण वाले रिलीज़ को अवरुद्ध करता है, और एक ऑडिटर को स्क्रीनशॉट के बजाय एक पैकेट लिंक मिलता है।

ShipProof banner

लाइव ऑडिटर डैशबोर्ड · GitLab प्रोजेक्ट · डेमो साक्ष्य · रोडमैप

मैंने इसे क्यों बनाया

मैंने ShipProof इसलिए बनाया क्योंकि एंटरप्राइज़ बिक्री बार-बार infosec समीक्षा के दौरान रुक जाती है। जब कोई ऑडिटर SOC 2 Type II परिवर्तन-प्रबंधन साक्ष्य मांगता है, तो इंजीनियर अक्सर Jira, Slack और Drive में स्क्रीनशॉट ढूँढने में दो सप्ताह बिता देते हैं।

मैं चाहता था कि प्रमाण सीधे डिप्लॉयमेंट पाइपलाइन में रहे। ShipProof में प्रत्येक मर्ज कमिट स्वचालित रूप से एक विहित, हस्ताक्षरित साक्ष्य बंडल बनाता है जिसमें टेस्ट रन, Semgrep SAST स्कैन, Gitleaks सीक्रेट्स डिटेक्शन, Syft सॉफ़्टवेयर बिल ऑफ़ मटेरियल्स, और CODEOWNERS अनुमोदन शामिल होते हैं।

मेरा मुख्य डिज़ाइन नियम सख्त है: एक LLM प्रमाणों का सारांश बना सकता है या इश्यू विवरण का मसौदा तैयार कर सकता है, लेकिन यह कभी भी किसी रिलीज़ को अनुमोदित नहीं कर सकता। रिलीज़ गेट Rego में लिखा गया एक Open Policy Agent मूल्यांकन है। यदि कोई आर्टिफ़ैक्ट अनुपस्थित है या कोई अनुमोदन रबर स्टैम्प जैसा दिखता है, तो गेट फेल-क्लोज़्ड हो जाता है, रिलीज़ को रोक देता है, और समाधान पथ के साथ एक इश्यू फ़ाइल करता है। जब गेट अनुमति देता है, तो ऑडिटर को एक स्टैटिक साइट या एक प्रमाणित API का एकल लिंक मिलता है।

ShipProof क्या करता है

  • प्रति कमिट SHA प्रमाण एकत्र करता है: टेस्ट परिणाम, SAST, सीक्रेट्स स्कैन, CycloneDX SBOMs, और समीक्षा अनुमोदनों को एक विहित JSON बंडल में।
  • नियतात्मक नीति का मूल्यांकन करता है: OPA डिफ़ॉल्ट रूप से अस्वीकार करता है। अनुपस्थित स्कैन, खराब हस्ताक्षर, टूटी श्रृंखलाएँ, और तेज़ रबर-स्टैम्प समीक्षाएँ सभी रिलीज़ को रोक देती हैं।
  • रबर-स्टैम्प अनुमोदनों को चिह्नित करता है: 500 से अधिक पंक्तियों के डिफ़ पर पाँच मिनट से कम की समीक्षाएँ, या केवल-लेखक समीक्षाएँ, CC8.1 इंटेंट में विफल होती हैं।
  • रिकॉर्ड्स को श्रृंखलाबद्ध और हस्ताक्षरित करता है: Cosign हस्ताक्षर और एक हैश-श्रृंखलाबद्ध JSONL लेजर छेड़छाड़ को तुरंत पकड़ लेते हैं।
  • अंतराल इश्यू स्वचालित रूप से फ़ाइल करता है: अस्वीकृतियाँ विफल नियंत्रण, नमूना कमिट, और सटीक उपचार चरणों के साथ एक GitLab कार्य आइटम उत्पन्न करती हैं।
  • ऑडिटर पैकेट प्रकाशित करता है: एक डेटा स्रोत GitLab Pages पर और एक रीड API के माध्यम से समान JSON, CSV, और PDF दृश्य प्रस्तुत करता है।
  • GitLab Duo को सुरक्षित रूप से बाँधता है: कस्टम Duo फ़्लो संदर्भ एकत्र और वर्णन करते हैं, जबकि OPA के पास एकमात्र प्रमोशन प्राधिकार बना रहता है।

कवर किए गए जीवनचक्र चरण (9 में से सभी 9 स्वचालित)

मैंने ShipProof को GitLab DevOps जीवनचक्र के विरुद्ध मैप किया। यह सभी नौ चरणों को मूल रूप से स्वचालित करता है:

चरणपाइपलाइन में मैंने क्या स्वचालित किया
planक्लोज़्ड-लूप अंतराल कार्य आइटम प्रबंधन। गेट अस्वीकृतियाँ पुनरावृत्ति गणना के साथ संरचित ट्रैकिंग इश्यू स्वतः खोलती हैं; बाद की पासिंग पाइपलाइनें फ़िक्स कमिट संदर्भों के साथ इश्यू को स्वतः हल और बंद करती हैं।
createकोड समीक्षा और स्रोत प्रबंधन। CODEOWNERS नीति फ़ाइलों की सुरक्षा करता है; गेट पाँच मिनट से कम की रबर-स्टैम्प अनुमोदनों को अस्वीकार करता है; स्वचालित MR नोट्स समीक्षा का मार्गदर्शन करते हैं; Duo फ़्लो MR टिप्पणियों का वर्णन करते हैं।
verifypytest, Semgrep SAST, और Gitleaks verify चरण में चलते हैं, आर्टिफ़ैक्ट हैश रिकॉर्ड करते हैं।
packageSyft package चरण में CycloneDX SBOMs उत्पन्न करता है और आर्टिफ़ैक्ट को बंडल में हैश करता है।
secureनियतात्मक OPA गेट रिलीज़ से पहले हस्ताक्षर, श्रृंखला हैश, और रबर-स्टैम्प नियमों की जाँच करता है।
releaseअनुपालन गेट जॉब प्रोडक्शन में डिप्लॉयमेंट को अवरुद्ध करता है; डिप्लॉय जॉब्स को allow निर्णय की आवश्यकता होती है।
configureCloud Run डिप्लॉयमेंट मैनिफ़ेस्ट सीक्रेट कमिट किए बिना पर्यावरण चर से रेंडर होते हैं।
monitorडिप्लॉयमेंट के बाद की जाँचें सत्यापित करती हैं कि चल रहे कंटेनर इमेज डाइजेस्ट बंडल-अनुमोदित कमिट से मेल खाते हैं।
governएक अपरिवर्तनीय हैश-श्रृंखलाबद्ध लेजर ऑडिटर पैकेट, अंतराल इश्यू, और GitLab Pages डैशबोर्ड को फ़ीड करता है।

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

मैंने ShipProof को Python 3.11 और Node.js 20 के साथ विकसित किया।

python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt

मेरा टेस्ट सूट और टाइप चेक चलाएँ:

OPA_BIN=/tmp/opa pytest -q && ruff check src tests demo-app scripts && mypy --strict src scripts

किसी भी कमिट के लिए एक स्थानीय बंडल एकत्र करें:

PYTHONPATH=src python -m comply.collect --sha aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa --out /tmp/bundle.json

कलेक्टर stdout पर एक एकल JSON पंक्ति आउटपुट करता है और पूर्ण बंडल को policy/inputs.json के साथ डिस्क पर लिखता है। यदि प्रमाण अनुपलब्ध हैं, तो बंडल एक deny स्थिति दर्ज करता है।

उपयोग

किसी MR के लिए साक्ष्य एकत्र करें

PYTHONPATH=src python -m comply.collect --sha <40-hex-sha> --out evidence/bundle.json \
  --mr-iid 42 --pipeline-id 1001 --project group/project \
  --pipeline-file pipeline.json --approvals-file approvals.json

CI में, scripts/gate_bridge.py pipeline.json तैयार करता है, जबकि scripts/fetch_approvals.py GitLab API से समीक्षा डेटा खींचता है। अनुपस्थित फ़ाइलें पास माने जाने के बजाय अनुपस्थित स्थिति के रूप में दर्ज की जाती हैं। प्रत्येक stderr लॉग में बंडल सहसंबंध ID शामिल होता है, और रहस्य *** के रूप में छिपाए जाते हैं।

रिलीज़ गेट का मूल्यांकन करें

PYTHONPATH=src python -m comply.gate --bundle evidence/bundle.json --ledger logs/ledger.jsonl

Exit code 0 एक allow verdict दर्शाता है। Exit code 1 एक denial दर्शाता है जिसमें विफल नियंत्रण का नाम देने वाली एक structured error होती है। Exit code 2 अमान्य arguments दर्शाता है। जब gate CI में ब्लॉक करता है, तो pipeline एक tracking issue खोलने के लिए python -m comply.gap को ट्रिगर करता है।

एक auditor packet जनरेट करें

PYTHONPATH=src python -m comply.packet --ledger logs/ledger.jsonl --release all \
  --out packet.json --csv packet.csv --pdf packet.pdf

CSV निर्यात में ग्यारह कॉलम होते हैं: bundle_id,commit_sha,mr_iid,pipeline_id,control,proof_type,status,artifact_sha,approver_ids,policy_sha,created_at। PDF उसी JSON स्रोत से print CSS के माध्यम से रेंडर होता है।

ऑडिटर API प्रारंभ करें

AUDITOR_TOKEN=local-only PYTHONPATH=src uvicorn comply.api:app --port 8000

बियरर प्रमाणीकरण का उपयोग करके बंडल क्वेरी करें:

curl -H "Authorization: Bearer local-only" "localhost:8000/api/v1/bundles?mr_iid=42"

The API बंडल क्वेरीज़, रिलीज़ पैकेट्स और बैकग्राउंड PDF एक्सपोर्ट के लिए एंडपॉइंट्स प्रदान करता है, जो बियरर टोकन और प्रति मिनट 60 अनुरोधों की दर सीमा द्वारा सुरक्षित हैं।

ऑडिटर वेब एप्लिकेशन चलाएँ

cd auditor && npm install && npm run build

इंटरफ़ेस React 19, TypeScript और Tailwind CSS से बनाया गया है। यह hash routing का उपयोग करते हुए एक स्थिर साइट के रूप में निर्यात होता है, जिससे यह सर्वर रीराइट्स के बिना सीधे GitLab Pages पर चल सकता है। जब कोई बैकएंड API मौजूद नहीं होता है, तो यह public/fallback/demo-packets.json से नमूना डेटा का उपयोग करता है।

पाइपलाइन कैसे काम करती है

flowchart LR
    A["CI jobs (pytest, Semgrep, Gitleaks, Syft)"] --> B["gate_bridge.py (artifact summary)"]
    B --> C["comply.collect (bundle.json + inputs.json)"]
    C --> D["comply.sign (Cosign, HMAC fallback)"]
    D --> E["ledger.jsonl (hash chain)"]
    E --> F["comply.gate (OPA policy + signature + chain)"]
    F -->|"deny"| G["comply.gap (gap issue + MR comment)"]
    F -->|"allow"| H["deploy jobs (gated)"]
    E --> I["comply.packet (JSON, CSV, PDF)"]
    I --> J["GitLab Pages dashboard + read API"]
टूल डाउनलोड करें