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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
gitea-git-redir-ssrf — Gitea के repo migrate endpoint में authenticated SSRF के लिए proof-of-concept और lab, जहाँ git HTTP redirects का पालन करते हुए loopback git HTTP में जाता है और internal objects लीक करता है। | Kitploit
उपकरण/GitHubGitHub/abraxas/gitea-git-redir-ssrf
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षापेनिट्रेशन टेस्टिंगलैब और अभ्यास
GitHubabraxas/gitea-git-redir-ssrf

gitea-git-redir-ssrf

Gitea के repo migrate endpoint में authenticated SSRF के लिए proof-of-concept और lab, जहाँ git HTTP redirects का पालन करते हुए loopback git HTTP में जाता है और internal objects लीक करता है।

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

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

सभी देखें →

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

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

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

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

Abraxas Labs - gitea-git-redir-ssrf

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  gitea-git-redir-ssrf

gitea-git-redir-ssrf

Gitea 1.27.3 - Gitea

IsMigrateURLAllowed आपके द्वारा टाइप किए गए URL पर एक वन-शॉट net.LookupIP है। इसके बाद बाइट्स git clone --mirror से गुज़रते हैं। HandleGitCmdHTTPRedirection को git को उस हॉप का पालन करने से रोकना चाहिए। यह कुछ नहीं करता। कमेंट ही निष्कर्ष है: उन्होंने http.followRedirects=false छोड़ दिया क्योंकि GitLab बिना .git के 301 देता है। Pull-mirror fetch भी उसी नो-ऑप को कॉल करता है।

एक साइन-इन किया हुआ उपयोगकर्ता allow-list किए गए bait होस्ट से migrate कर सकता है और git 302 का पालन करते हुए loopback git HTTP में चला जाता है। आंतरिक ऑब्जेक्ट्स उनके स्वामित्व वाले रेपो में पहुँच जाते हैं।

IDअभी तक कोई CVE नहीं
CWECWE-918
CVSSHigh: 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
ProductGitea
Affectedv1.27.3 (146cc3e) तक
Authप्रमाणित (डिफ़ॉल्ट खुला पंजीकरण)
LicenseGNU Affero GPL v3.0
Labकेवल 127.0.0.1

हमलावर क्या कर सकता है

पंजीकरण करें, किसी बाहरी दिखने वाले URL से migrate करें जो http://127.0.0.1:.../internal.git पर 302 करता है। सीधे loopback पर migrate करना अस्वीकृत है। रीडायरेक्ट-फॉलो किया गया clone नहीं है। Witness फ़ाइल उनके रेपो में पहुँच जाती है।

file:// डिस्क रीड नहीं। /api/internal पर X-Gitea-Internal-Auth नहीं (git वह हेडर सेट नहीं करेगा)। अनप्रमाणित RCE नहीं। मेटाडेटा RCE नहीं जब तक आप अलग से यह न दिखाएँ कि git ने बॉडी को संग्रहीत किया।

उसी टैग के अवशेष: keys IDOR, hostmatcher 0.0.0.0/8।

मैंने इसे कैसे खोजा

v1.27.3 ने 2026 GHSA लहर को बंद किया: CVE-2026-60004 (diffpatch hook RCE, CISA KEV), CVE-2026-59774 (unauth Org-mode #+INCLUDE), fork-PR Actions गेट्स, reverse-proxy X-WEBAUTH-USER डिफ़ॉल्ट। उनके लिए 1.27.3+ पर बने रहें। मैं फिर भी उस टैग पर बैठा रहा।

CVE-2026-59765 ने Go uri.Open को ठीक किया। CVE-2026-22874 ने Go reservedIPNets को ठीक किया। Git का redirector अभी भी एक FIXME है। Changelog "disable HTTP redirects on pull mirror sync" यह फ़ंक्शन नहीं है।

Lab Gitea को 8.8.4.2 पर रखता है ताकि 8.8.4.10 पर एक bait होस्ट hostmatcher को बाहरी दिखे। आंतरिक git HTTP Gitea netns पर केवल loopback पर बाइंड होता है (network_mode: service:gitea, पोर्ट 9418)। 127.0.0.1 पर सीधे migrate को विफल होना चाहिए। रीडायरेक्ट-फॉलो किए गए clone को सफल होना चाहिए। redir.py /bait.git को http://127.0.0.1:9418/internal.git पर 302 करता है। Witness फ़ाइल WITNESS में GHSA-GITEA-GIT-REDIR-SSRF है।

पहले से दर्ज गलत रास्ते: ALLOW_LOCALNETWORKS true (तब allow-list चली जाती है); file://; X-Gitea-Internal-Auth; एक reverse shell। नाटक। सीधे loopback migrate अस्वीकृत होना ही नियंत्रण है।

क्लाइंट बग उत्पाद बग जैसे दिखते हैं। एक हेल्पर जो http.client को शैडो करता है, कभी पैकेट नहीं भेजता। HTTPResponse पर .recv() .read() नहीं है। मैं यह एक बार बता रहा हूँ क्योंकि इसने समय लिया और एक मिनट के लिए ऐसा लगा कि 1.27.3 ने काम पूरा कर लिया है।

Lab

cd lab
./run.sh

लक्ष्य केवल http://127.0.0.1:18103। ALLOW_LOCALNETWORKS=false।

negative-loopback status=422 You can not import from disallowed hosts
migrate-bait status=201 clone_addr=http://8.8.4.10/bait.git
fetch raw/WITNESS status=200 GHSA-GITEA-GIT-REDIR-SSRF
SUCCESS Gitea #2 git HTTP redirect SSRF

समाधान

submit-time DNS को सीमा न मानें। http.followRedirects=false को बाध्य करें (और clone URLs को .git पर सामान्यीकृत करें ताकि GitLab अभी भी काम करे), या git HTTP को ऐसे dialer के माध्यम से प्रॉक्सी करें जो हर हॉप पर hostmatcher को फिर से चलाए।

संदर्भ

  • github.com/go-gitea/gitea टैग v1.27.3
  • HandleGitCmdHTTPRedirection · IsMigrateURLAllowed
  • आस-पास पैच किए गए: CVE-2026-59765 · CVE-2026-22874
  • CWE-918

लाइसेंस

GNU Affero GPL v3.0। देखें LICENSE। केवल loopback lab। कोई वारंटी नहीं।

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