Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
openmeetings-stale-install-admin — Apache OpenMeetings 9.1.0 - Alta - Remoto - Privilegi residui - la procedura guidata /install obsoleta inserisce un secondo ADMIN | Kitploit
Strumenti/GitHubGitHub/abraxas/openmeetings-stale-install-admin
Autenticazione e AutorizzazioneEscalation di PrivilegiAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebLab e Pratica
GitHubabraxas/openmeetings-stale-install-admin

openmeetings-stale-install-admin

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Apache OpenMeetings 9.1.0 - Alta - Remoto - Privilegi residui - la procedura guidata /install obsoleta inserisce un secondo ADMIN

Vedi Repository
2 giorni faNon ancora revisionato

Abraxas Labs - openmeetings-stale-install-admin

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  openmeetings-stale-install-admin

openmeetings-stale-install-admin

Classe: Privilegio residuo Raggiungibilità: Remota

Apache OpenMeetings 9.1.0 (9773c59e) - Apache Software Foundation

InstallWizardPage reindirizza le richieste nuove dopo isInstalled(). Una pagina Wicket aperta prima della prima installazione rimane attiva. Il completamento su quella sessione obsoleta esegue loadAll(cfg, true). ImportInitvalues.checkInstalled registra "no need to install" e non restituisce nulla. Il secondo completamento inserisce un altro utente ADMIN+SOAP.

IDnessuna CVE al momento
ClassePrivilegio residuo
RaggiungibilitàRemota (/install non autenticato durante la prima configurazione)
CWECWE-367, CWE-269
CVSSAlto: 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
ProdottoApache OpenMeetings
Affetto9.1.0 (9773c59e1af327bf988018e661f456ae9997c29f) finestra di prima installazione
Authnessuna sulla sessione obsoleta della procedura guidata
LicenzaGNU Affero GPL v3.0
Labsolo 127.0.0.1:18159. Tarball ufficiale 9.1.0, non installato, HTTP 5080.

Ho fissato il tag 9.1.0, peel 9773c59e1af327bf988018e661f456ae9997c29f. Il residuo richiede una pagina della procedura guidata aperta prima del completamento della prima installazione.

Cosa può fare un attaccante

Raggiungere /openmeetings/install mentre l'istanza non è ancora installata. Conservare quel JSESSIONID. Attendere che un operatore completi la prima installazione. Inviare POST Finish sulla pagina obsoleta.

MetodoSinkPrivilegio
POST obsoleto Finish della procedura guidata (wizard-form-buttons-finish)ImportInitvalues.checkInstalled registra e continua (ImportInitvalues.java:607-612); loadInitUserAndGroupIntegrità (dimostrato in lab): secondo utente staleadm con diritti ADMIN, SOAP, LOGIN, DASHBOARD, ROOM. Login SOAP riuscito. Conteggio utenti=2.
Stesso loadAll(cfg, true)persistenza / SMTP / percorsi dal form obsoletoIntegrità (dedotto): riscrittura di persistence.xml e delle impostazioni mail dai campi della procedura guidata controllati dall'attaccante. Non necessario per SUCCESS.

Dimostrato in lab vs dedotto: il secondo login ADMIN+SOAP è dimostrato in lab. La riscrittura di persistence.xml è dedotta da loadAll.

Richiede: che l'attaccante abbia recuperato /install prima di isInstalled(). L'operatore ha poi completato l'installazione. Lo stesso id di pagina Wicket viene ancora inviato. L'immagine docker ufficiale è già installata, quindi questa è la finestra del primo avvio del tarball (e qualsiasi reinstallazione).

Superficie adiacente che resta chiusa

SuperficieMotivo
GET /install nuovo dopo l'installazioneil costruttore reindirizza a /signin (InstallWizardPage.java:31-34). Lab: la nuova sessione è finita su signin.
Login SOAP non autenticato prima dell'installazionehealth installed=false; il login fallisce fino al completamento della procedura guidata.
Tomcat manager / console H2manager escluso, console H2 disattivata su questo pin.

Come l'ho trovato

Il lock nel costruttore sembra una correzione completa per "installazione dopo installazione". checkInstalled continua comunque a registrare soltanto. Wicket memorizza la pagina nella sessione. Una sessione che ha attraversato isInstalled() mantiene un pulsante Finish che chiama ancora loadAll.

admin.sh -i è una seconda JVM e non carica CryptProvider di Tomcat, quindi questo lab usa una seconda procedura guidata web come primo installatore e la pagina obsoleta come attaccante.

Lab

cd lab
./run.sh

Loopback http://127.0.0.1:18159/openmeetings. Testimone ultima riga:

SUCCESS OPENMEETINGS-STALE-INSTALL-WITNESS

Correzione suggerita

checkInstalled deve restituire (o lanciare un'eccezione) quando è già installato. Vincolare Finish a un token di installazione monouso. Rimuovere la pagina Wicket dalla sessione quando isInstalled() cambia stato. Non inserire un secondo ADMIN da loadInitUserAndGroup se un admin esiste già.

Contatto

Abraxas Labs - https://abraxaslabs.tech - https://github.com/abraxas - https://x.com/abraxas_null - [email protected]

Fornitore: [email protected]

Scarica lo strumento