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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
element-fragment-guest — Element Web v1.12.29 - उच्च - रिमोट - सेशन - fragment guest creds whoami से पहले वास्तविक सेशन को मिटा देता है | Kitploit
उपकरण/GitHubGitHub/abraxas/element-fragment-guest
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षाप्रमाणीकरणलैब और अभ्यास
GitHubabraxas/element-fragment-guest

element-fragment-guest

Element Web v1.12.29 - उच्च - रिमोट - सेशन - fragment guest creds whoami से पहले वास्तविक सेशन को मिटा देता है

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

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

सभी देखें →

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

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

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

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

Abraxas Labs - element-fragment-guest

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  element-fragment-guest

element-fragment-guest

Element Web v1.12.29 - Element / New Vector

Class: Session destruction Reach: Remote

Lifecycle.loadSession URL hash से guest_user_id और guest_access_token को restoreSessionFromStorage पर प्राथमिकता देता है। Guests डिफ़ॉल्ट रूप से चालू हैं (enableGuest={!config.disable_guests})। app.element.io config.json में disable_guests सेट नहीं है। onTokenLoginCompleted केवल SSO और OIDC पैरामीटर हटाता है। यह कभी भी guest keys को नहीं हटाता। url_utils.ts पहले से ही टिप्पणी करता है कि ये fragment params अप्रयुक्त लगते हैं। वे अभी भी जीतते हैं।

कोई भी व्यक्ति जो किसी signed-in उपयोगकर्ता को guest fragment params के साथ hash URL खोलने के लिए प्रेरित कर सकता है, उन्हें लॉग आउट कर देता है और स्थानीय crypto मिटा देता है। एक garbage token पर्याप्त है। whoami कभी कॉल नहीं किया जाता।

IDअभी तक कोई CVE नहीं
CWECWE-384 / CWE-352 / CWE-613
CVSSHigh: 7.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H
ProductElement Web
Affectedv1.12.29 tag v1.12.29 (2d90d6b7b601ecb9ccdf81239a43b4396b4b0c9e)। Guests सक्षम (डिफ़ॉल्ट)।
Authunauthenticated attacker। पीड़ित को एक URL खोलना (या पुनः लोड करना) होगा।
LicenseGNU Affero GPL v3.0
Labकेवल 127.0.0.1

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

किसी signed-in उपयोगकर्ता को guest fragment params के साथ hash URL खोलने के लिए प्रेरित करें। क्लाइंट उन्हें लॉग आउट कर देता है, स्थानीय crypto मिटा देता है, और उन्हें एक हमलावर guest पर पार्क कर सकता है। यह logout और crypto wipe है। यह steal-the-real-token नहीं है। यह OS RCE नहीं है।

PrivilegeMethod / sinkRecon / integrity / availabilityLab-proven or inferred
Parse guest creds from the hashurl_utils.ts guest: { keys: ["guest_user_id", "guest_access_token"], location: "fragment" }Integrity of session selectionLab-proven। #/home?guest_user_id=...&guest_access_token=... guest_params बन गया। Query-string only नहीं हुआ।
Prefer guest over a stored non-guest sessionLifecycle.loadSession guest-first branch, log Using guest access credentialsIntegrityLab-proven। Seeded @victim:example.org पुनः स्थापित नहीं हुआ।
Wipe localStorage, IndexedDB account, sessionStorage, cryptodoSetLoggedIn(..., clearStorageEnabled=true) फिर clearStorage()Integrity / availability of the local sessionLab-proven। crypto_empty=yes, पूर्व token चला गया।
Skip token validationGuest path कभी /_matrix/client/v3/account/whoami कॉल नहीं करताIntegrityLab-proven। whoami_called=no। Garbage token not-a-real-token फिर भी मिटा दिया।
Persist attacker guest credsWipe के बाद persistCredentialsIntegrityLab-proven। after_user=@x:example.org, after_token=not-a-real-token, mx_is_guest=true।
Fixate onto a real guest on the default HSयदि guest token valid है तो वही persistIntegrityInferred। Lab ने garbage token का उपयोग किया, इसलिए कोई live HS login नहीं।
Keep doing this on reloadGuest keys hash में रहते हैं; onTokenLoginCompleted उन्हें नहीं हटाताIntegrityPin app.tsx से inferred। Lab ने URL एक बार खोला।

इस leftover पर बंद: असली access token चुराना (यह हटा दिया जाता है, exfiltrate नहीं किया जाता)। OS RCE / LPE (Desktop nodeIntegration: false, sandbox)। Live Element SPA (how=gadget)। Query-string ?guest_user_id= (केवल fragment)। disable_guests: true non-guest session रखता है। एक patched loadSession जो non-guest session मौजूद होने पर guest को अनदेखा करता है, वह भी इसे रखता है।

Same pin leftovers: vector: Windows drive-letter, Univention ICS javascript: href।

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

मैंने 22 Sep 2026 GitHub release के बाद Element Web v1.12.29 को pin किया। SSO loginToken केवल query-only है और उपयोग के बाद हटा दिया जाता है। Guest keys अभी भी fragment में बैठे हैं और restore पर जीतते हैं। url_utils.ts में टिप्पणी ही संकेत है: उन्हें पहले से ही संदेह था कि ये keys specified थीं।

गलत मोड़ पहले से दर्ज: query-string ?guest_user_id= को vector मानना (keys hash में रहती हैं); इसे token theft कहना (असली token हटा दिया जाता है, भेजा नहीं जाता); app.element.io config पर disable_guests की अपेक्षा करना (यह unset है)। एक reverse shell। Theatre।

Lab

Pin के gadget functions। Live Element Web container नहीं। how=gadget।

python3 element-fragment-guest-Abraxas-Labs.py

या

cd lab
./run.sh

लक्ष्य केवल http://127.0.0.1:19600। Compose project element-fragment-guest। Run के बाद stack tear down हो जाता है।

SUCCESS element-fragment-guest how=gadget guest-wipe=yes prior-kept=no garbage-token=yes disable-guests-keeps=yes ELEMENT-FRAGMENT-GUEST-WITNESS

समाधान

जब non-guest session पहले से मौजूद हो तो guest fragment params को अनदेखा करें। clearStorage से पहले /_matrix/client/v3/account/whoami के साथ guest token को validate करें। guest_user_id और guest_access_token को उसी तरह हटाएं जैसे SSO tokens हटाए जाते हैं। Hosted app.element.io के लिए डिफ़ॉल्ट disable_guests: true।

संदर्भ

  • github.com/element-hq/element-web tag v1.12.29
  • Lifecycle.ts (loadSession guest-first)
  • url_utils.ts
  • app.tsx (enableGuest={!config.disable_guests})
  • Same pin: element-vector-drive-letter · element-ics-javascript
  • CWE-384

License

GNU Affero GPL v3.0। देखें LICENSE। केवल Loopback lab। कोई warranty नहीं।

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