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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
anubis-fetch — curl की तरह, लेकिन यह Anubis और Cloudflare bot-walls को पार कर जाता है। | Kitploit
उपकरण/GitHubGitHub/fzakaria/anubis-fetch
स्क्रिप्टिंग और स्वचालनWAF बाईपासवेब सुरक्षाउपयोगिताएँ और फ्रेमवर्कएंटी-बॉटफिंगरप्रिंट स्पूफिंग
GitHubfzakaria/anubis-fetch

anubis-fetch

curl की तरह, लेकिन यह Anubis और Cloudflare bot-walls को पार कर जाता है।

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

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

सभी देखें →

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

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

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

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

anubis-fetch

Built with Nix CI License: MIT

$ nix run github:fzakaria/anubis-fetch -- --text https://lore.kernel.org/

Anubis प्रूफ-ऑफ-वर्क चुनौतियों के पीछे URL प्राप्त करने के लिए एक Go CLI। यह लीगेसी SHA-256 और WASM चुनौतियों को इन-प्रोसेस हल करता है, और फ़ॉलबैक के रूप में हेडलेस Chromium का उपयोग करता है।

lore.kernel.org और kernel.org जैसी साइटें पेज परोसने से पहले प्रूफ ऑफ वर्क की आवश्यकता के लिए Anubis का उपयोग करती हैं। एक साधारण HTTP क्लाइंट को अनुरोधित सामग्री के बजाय चुनौती पेज प्राप्त हो सकता है। anubis-fetch चुनौती को हल करता है, उत्तर सबमिट करता है, और परिणामी पेज को stdout पर लिखता है।

यह कैसे काम करता है

  1. सहेजे गए कुकी का पुनः उपयोग करें। सफल चुनौती के बाद Anubis एक auth कुकी जारी करता है। टूल प्रति होस्ट कुकीज़ सहेजता है और बाद के अनुरोधों पर उन्हें भेजता है।
  2. प्रूफ ऑफ वर्क को इन-प्रोसेस हल करें। HTTP क्लाइंट Chrome के TLS और HTTP/2 फ़िंगरप्रिंट की नकल करने के लिए req का उपयोग करता है। यह निष्क्रिय बॉट जाँचों में मदद कर सकता है, जिसमें Cloudflare की भी शामिल है। Anubis की fast और slow विधियों के लिए, टूल एक nonce की गणना करता है और सीधे उत्तर सबमिट करता है। WASM विधियों sha256, argon2id, और hashx के लिए, यह साइट का मॉड्यूल डाउनलोड करता है और इसे Go में wazero के साथ चलाता है।
  3. ब्राउज़र पर फ़ॉलबैक करें। हेडलेस Chromium, जिसे chromedp द्वारा नियंत्रित किया जाता है, साइट द्वारा परोसी गई चुनौती कोड चलाता है।

ब्राउज़र फ़ॉलबैक Anubis की preact और metarefresh विधियों, और Cloudflare चुनौती पेजों (cf-mitigated: challenge वाली प्रतिक्रियाएँ) को संभालता है। टूल तब भी फ़ॉलबैक करता है जब लीगेसी SHA-256 कठिनाई अपनी सीमा से अधिक हो जाती है, WASM निष्पादन विफल हो जाता है या टाइमआउट हो जाता है, या Anubis किसी समाधान को अस्वीकार कर देता है। Chromium से शुरू करने के लिए --browser का उपयोग करें, या HTTP पथ की आवश्यकता के लिए --no-browser का उपयोग करें। सभी तीन WASM विधियाँ --no-browser के साथ काम करती हैं।

सब कुछ के लिए ब्राउज़र का उपयोग क्यों नहीं करें?

नेटिव सॉल्वर प्रत्येक फ़ेच के लिए ब्राउज़र प्रक्रिया शुरू करने से बचता है। जिन चुनौतियों को फ़ॉलबैक की आवश्यकता होती है, उनके लिए Chromium अभी भी Nix पैकेज में शामिल है।

मूल SHA-256 पथ के लिए अनुमानित फ़ेच समय:

पथवॉल टाइमChromium चाहिए
इन-प्रोसेस SHA-256 सॉल्वर~0.6sनहीं
ब्राउज़र फ़ॉलबैक~2.0sहाँ

कठिनाई 2 पर स्थानीय Anubis सर्वर के विरुद्ध WASM फ़ेच समय:

WASM विधिमाध्यिका वॉल टाइमChromium चाहिए
SHA-256~0.025sनहीं
Argon2id~0.55s-2.33sनहीं
HashX~0.041sनहीं

Anubis प्रूफ-ऑफ-वर्क, संक्षेप में

fast और slow विधियों के लिए, Anubis चुनौती को पेज में एम्बेड करता है:

{"rules":{"algorithm":"fast","difficulty":4},
 "challenge":{"id":"...","method":"fast","randomData":"6214bd88...","difficulty":4}}

सॉल्वर एक ऐसा nonce खोजता है जिसके लिए hex(sha256(randomData || nonce)) difficulty शून्य अक्षरों से शुरू होता है। nonce को दशमलव स्ट्रिंग के रूप में एन्कोड किया जाता है। उत्तर Anubis को सबमिट किया जाता है:

GET /.within.website/x/cmd/anubis/api/pass-challenge?id=...&response=<hash>&nonce=<n>&redir=<url>&elapsedTime=<ms>

एक सफल प्रतिक्रिया एक auth कुकी सेट करती है और अनुरोधित पेज पर रीडायरेक्ट करती है। कठिनाई 4 के लिए औसतन लगभग 65,536 हैश की आवश्यकता होती है।

WASM चुनौतियाँ

sha256, argon2id, और hashx के लिए, Anubis एक WebAssembly मॉड्यूल परोसता है जो प्रूफ ऑफ वर्क को लागू करता है। anubis-fetch मॉड्यूल डाउनलोड करता है, चुनौती के hex डेटा को बाइट्स में डिकोड करता है, और डेटा और कठिनाई को मॉड्यूल को पास करता है। मॉड्यूल एक nonce खोजता है और ऊपर दिए गए उसी एंडपॉइंट पर सबमिशन के लिए nonce और हैश लौटाता है।

मॉड्यूल wazero का उपयोग करके Go प्रक्रिया के अंदर चलता है, इसलिए ये विधियाँ --no-browser के साथ काम करती हैं। निष्पादन की मेमोरी और समय सीमाएँ हैं। मॉड्यूल कठिनाई नियमों को परिभाषित करता है; WASM कठिनाई संख्याएँ लीगेसी SHA-256 विधि से सीधे तुलनीय नहीं हैं।

इंस्टॉलेशन

सीधे चलाएँ:

$ nix run github:fzakaria/anubis-fetch -- <url>

या अपने flake में इनपुट जोड़ें:

{
  inputs.anubis-fetch.url = "github:fzakaria/anubis-fetch";
}

inputs.anubis-fetch.packages.${system}.default को home.packages या environment.systemPackages में जोड़ें।

उपयोग

anubis-fetch [flags] URL
फ़्लैगप्रभाव
--textHTML को सादे टेक्स्ट में बदलें
--timeout MSप्रति-चरण टाइमआउट मिलीसेकंड में सेट करें; डिफ़ॉल्ट 30000
--ua STRINGUser-Agent सेट करें
--browserसीधे Chromium का उपयोग करें
--no-browserयदि HTTP सॉल्वर को ब्राउज़र फ़ॉलबैक की आवश्यकता हो तो 3 के साथ बाहर निकलें
--no-cacheसहेजी गई कुकीज़ को पढ़ना और लिखना अक्षम करें
--help, -hउपयोग प्रिंट करें और बाहर निकलें
# HTML से stdout
anubis-fetch https://lore.kernel.org/

# सादा टेक्स्ट
anubis-fetch --text https://lore.kernel.org/

# HTTP पथ की आवश्यकता; निकास स्थिति 3 की जाँच करें
anubis-fetch --no-browser https://lore.kernel.org/

कुकी दृढ़ता

कुकीज़ प्रति होस्ट $XDG_CACHE_HOME/anubis-fetch/cookies/<host>.json में सहेजी जाती हैं, या XDG_CACHE_HOME सेट न होने पर ~/.cache/anubis-fetch/cookies/<host>.json में। एक वैध auth कुकी बाद के अनुरोधों को चुनौती छोड़ने दे सकती है। Chromium के माध्यम से प्राप्त कुकीज़ भी सहेजी जाती हैं, साथ में Chromium का User-Agent भी। Cloudflare केवल उस User-Agent के अंतर्गत cf_clearance का सम्मान करता है जिसने इसे अर्जित किया, इसलिए उस होस्ट को बाद के HTTP अनुरोध सहेजा गया User-Agent भेजते हैं जब तक कि --ua इसे ओवरराइड न करे।

सहेजी गई कुकीज़ के बिना फ़ेच करने के लिए --no-cache का उपयोग करें, या उन्हें त्यागने के लिए होस्ट की फ़ाइल हटा दें। समाप्त या अस्वीकृत कुकी के लिए नई चुनौती की आवश्यकता होती है।

विकास

$ nix develop          # Go, gopls, Chromium, treefmt
$ go test ./...        # Go यूनिट टेस्ट
$ nix build            # पैकेज्ड CLI
$ nix flake check      # बिल्ड, टेस्ट, और फ़ॉर्मेटिंग
$ nix fmt              # Go और Nix फ़ॉर्मेट करें

निर्भरताएँ

  • TecharoHQ/anubis: चुनौती सर्वर।
  • imroc/req: Chrome प्रतिरूपण वाला HTTP क्लाइंट।
  • chromedp/chromedp: Chromium ड्राइवर।
  • tetratelabs/wazero: Go WebAssembly रनटाइम।
टूल डाउनलोड करें