1. Questo sito utilizza i cookies. Continuando a navigare tra queste pagine acconsenti implicitamente all'uso dei cookies. Scopri di più

Java L'exploit di BungeeAuthMeBridge...

Discussione in 'Coding' iniziata da Pirro, 3 Ottobre 2018.

  1. Pirro

    Pirro Developer
    OWNER

    Medaglie:

    Messaggi:
    276
    Mi piace ricevuti:
    79
    Scrivo questo topic per i server owner che hanno un network SP e vogliono proteggersi. Non fornirò pappa pronta, sia perché sarebbe una cosa lunga, sia perché ho fatto tanto per aiutare la community a proteggersi dai grief e simili, venendo il più delle volte preso più di mira perché "griffare il server di quello che fa plugin per proteggersi è figo!", spiegherò semplicemente il da farsi, chi capisce un minimo di programmazione sa già cosa fare.

    Negli ultimi giorni sta girando un exploit che permette di bypassare la sicurezza di AuthMe ed accedere con qualsiasi account. TecnoCraft di recente è stato griffato per questo, non è colpa nostra, è una cosa ancora sconosciuta. Dirò senza mezzi termini che buona parte dei server in Italia (tranne quelli premium) ne sono vulnerabili, molti non vengono griffati perché utilizzano protezioni esterne, quali OpProtect e simili, ma non sistemano la falla alla radice, se comunque non si viene griffati resta una falla grave perché chiunque potrebbe rubare l'account di chiunque.

    È partito tutto da un topic su HF (che non linkerò per ovvi motivi) postato a Luglio ed ignorato fin'ora, in cui veniva spiegata una falla nel plugin BungeeAuthMeBridge che permette di bypassare ogni versione di AuthMe. Questa falla consisteva nel crearsi un proxy BungeeCord locale e un server spigot sempre in locale collegato. Queste due istanze in locale dovevano avere rispettivamente installati i plugin AuthMe e BungeeAuthMeBridge. Andava poi aggiunto nel config il server da bypassare e bisognava loggare in locale con il nick che si voleva rubare. Una volta entrati bisognava fare il login nel server in locale e poi collegarsi tramite comando al server vero e proprio, e boom, AuthMe veniva bypassato.


    Questo perché? Semplicemente perché BungeeAuthMeBridge ha sempre lo stesso canale per comunicare con il server Minecraft, e loggando in un server esterno e poi entrando nel server Minecraft si può far credere al server di aver eseguito il login, essendo che il canale manda il messaggio per riprendere la sessione.

    Questo, a grandi linee (ho omesso molti dettagli sul procedimento per ovvi motivi) è l'exploit.


    Passando al lato fix, come si fa? Beh, non è una cosa alla portata di tutti. Bisogna crearsi una versione propria di BungeeAuthMeBridge, creandosi dei canali privati per la comunicazione fra AuthMe e BungeeAuthMeBridge.

    Le classi da modificare per poi ricompilare sono le seguenti:
    Nella versione Bungee: https://github.com/CryLegend/AuthMe...m/crylegend/bungeeauthmebridge/Constants.java
    In quella Bukkit/Spigot: https://github.com/CryLegend/AuthMe.../com/crylegend/authmebridge/AuthMeBridge.java

    Bisogna modificare le stringhe "incomingChannel" e "outgoingChannel", il mio consiglio è di farlo con del testo generato randomicamente, 16 caratteri di lunghezza potrebbero andare bene (solo lettere e numeri).
    Ora, la cosa potrebbe essere un po' incasinata da capire. La spiego brevemente.

    Se nella versione Bukkit mettete "pincopalla" come "outgoingChannel" nella versione Bungee dovete mettere "pincopalla" come "incomingChannel" così come se mettete nella versione Bukkit "tiziocaio" come "incomingChannel" dovrete mettere "tiziocaio" in "outgoingChannel" nella versione Bukkit.


    Dopo di che, una volta ricompilati i plugins e inseriti nel vostro server, un eventuale malintenzionato, non conoscendo i vostri canali di comunicazione, non può farvici accesso. Questo è l'unico fix concreto e purtroppo non accessibile a tutti, finché gli sviluppatori dei plugins non fanno un aggiornamento con un fix concreto e globale.



    Grazie per aver preso visione e buon proseguimento.
     
    • Informativo Informativo x 5
    • Utile Utile x 1
    #1
  2. zSupremeFrancy04

    Medaglie:

    Messaggi:
    85
    Mi piace ricevuti:
    0
    In teoria facciamo prima a non fare nulla e stare con la vecchia password e basta senno qua account rubbati server grieffati minecraft che fallisce mezza terra in delirio. ok sto esagerando,quindi in conseguenza? meglio vecchia password o meglio nuovo con authy?perchè in tal caso resto con la mia password indecifrabile.
     
    #2
  3. Pirro

    Pirro Developer
    OWNER

    Medaglie:

    Messaggi:
    276
    Mi piace ricevuti:
    79
    Questo topic è indirizzato solo per chi gestisce un server e vuole proteggere sé stesso e la propria utenza. Nulla di più.
     
    #3
  4. zSupremeFrancy04

    Medaglie:

    Messaggi:
    85
    Mi piace ricevuti:
    0
    Capisco,ma puo darmi la risposta pls?
     
    #4
  5. int__main

    int__main Utente

    Medaglie:

    Messaggi:
    42
    Mi piace ricevuti:
    5
    La 2fa non ha nulla a che fare con questo bug
     
    #5
  6. zSupremeFrancy04

    Medaglie:

    Messaggi:
    85
    Mi piace ricevuti:
    0
    ahh... allora scherzavo.
     
    #6