Sfondo
I funzionari di Celer Network hanno dichiarato il 18 agosto che tra le 3:45 e le 6:00, ora di Pechino, alcuni utenti di cBridge sono stati indirizzati a contratti intelligenti dannosi. Inizialmente si sospettava che l'interfaccia front-end di cBridge fosse stata compromessa da un attacco DNS.
Completamente diverso dai precedenti episodi di hacking di bridge cross-chain come Nomad, Wormhole, Ronin, Harmony, ecc., questo attacco non è stato causato da bug negli smart contract e nei protocolli cross-chain o dall'intrusione dei server correlati e dal cross-chacking Anche le risorse della catena bloccate in cBridge sono state mantenute al sicuro. In questo attacco gli hacker hanno preso di mira direttamente l'infrastruttura sottostante dell'architettura Internet al di fuori del sistema Celer e hanno consentito agli utenti cross-chain di accedere entro un certo periodo di tempo a un'interfaccia utente front-end di "phishing" ingannando il protocollo di routing sottostante di Internet ( BGP). La rete Celer è stata in grado di limitare i danni grazie alla loro pronta risposta. Questo perché il team di Celer Network dispone di un sistema di monitoraggio 24 ore su 24. Il loro team di assistenza clienti è stato in grado di identificare il problema e avvisare la comunità in modo tempestivo. Il team di Celer Network ha autorizzato il team di sicurezza di SlowMist a rispondere a questa emergenza e a condurre un'indagine approfondita.

Processo di analisi
Il team di Celer Network inizialmente sospettava un attacco DNS e, dopo aver comunicato con loro, siamo riusciti a saperne di più sul nome di dominio in questione: cbridge-prod2.celer.network. Abbiamo scoperto che il browser non ha segnalato un errore di certificato durante l'attacco. Pertanto, la nostra indagine è iniziata affrontando innanzitutto la possibilità di un attacco DNS. (Un ringraziamento speciale a @greysign1 per averci aiutato a verificare rapidamente la possibilità di un attacco DNS)
Abbiamo iniziato esaminando le informazioni relative al certificato:
Sembra che il certificato sia stato alterato inaspettatamente, laddove il certificato originale emesso da Let's Encrypt è stato sostituito con un certificato contraffatto emesso da GoGetSSL.
GoGetSSL può emettere un certificato gratuito di 90 giorni:

Analisi del certificato 1: https://crt.sh/?id=7356185959

Sul certificato viene visualizzato un errore di controllo CRL nel seguente momento:

Analisi del certificato 2: https://crt.sh/?id=7356185959

Questo certificato presenta anche un errore di controllo CRL nei seguenti momenti:

Dopo aver esaminato l'indirizzo IP, il certificato e altre informazioni associate al Certificato 1, abbiamo scoperto che l'indirizzo IP vincolato da questo certificato era 44.235.216.69.



L’indirizzo IP del certificato 2 non è stato in grado di interrogare l’indirizzo IP corrispondente al certificato 2, il che potrebbe essere dovuto alla breve durata dell’attacco e alla mancata raccolta delle informazioni rilevanti da parte del motore di ricerca Internet.
Di conseguenza, abbiamo concentrato la nostra analisi sui dati di risoluzione IP per il dominio cbridge-prod2.celer.network:
L'indirizzo IP, 44.235.216.69, è stato associato a cbridge-prod2.celer.network per un lungo periodo di tempo.

Ecco la domanda: il fatto che questo indirizzo IP, 44.235.216.69, sia stato associato a cbridge-prod2.celer.network per un lungo periodo di tempo, dimostra che apparteneva al server ufficiale di Celer Network. Ciò è stato confermato anche con il team Celer Network. Allora perché c'era un certificato contraffatto associato a questo IP?

Quindi abbiamo iniziato a indagare sull'AS di 44.235.216.69 e abbiamo scoperto che l'AS corrispondente a questo IP era insolito.

AS16509 annuncia i bogon::

Osservando i bogon, siamo in grado di determinare che questo è generalmente il caso in cui un utente malintenzionato falsifica un indirizzo IP per eseguire un attacco: https://networkdirection.net/articles/routingandswitching/bgp-bogonsandmartians/ https://forum .networklessons.com/t/what-are-bogons/6333

Poiché l'AS su 44.235.216.69 presentava anomalie, abbiamo inizialmente sospettato che il problema riguardasse BGP, quindi abbiamo contattato la rete Celer per ottenere l'indirizzo IP dell'aggressore: 54.84.236.100. Abbiamo scoperto che anche AS14618, dove si trova l'indirizzo IP, presenta un'eccezione. (AS14618 annuncia anche i bogon)

Per coincidenza, l'upstream di AS14618 era AS16509 (AS16509 è anche l'AS dove si trova 44.235.216.69). Questo ci ha avvisato della possibilità di un attacco BGP.
La nostra indagine ha rivelato che l'IP: 54.84.236.100 è stato contrassegnato come dannoso.
Abbiamo raccolto informazioni rilevanti sull'IP: 54.84.236.100 dalla nostra comunità e abbiamo trovato una menzione di quell'indirizzo IP correlato a un altro incidente di attacco BGP avvenuto nel 2014. Tuttavia, poiché questo incidente è avvenuto molto tempo fa, potrebbe non essere più pertinente.


Abbiamo quindi continuato la nostra indagine seguendo i record lasciati da questo attacco BGP:

Il monitoraggio del record BGP per l'IP di attacco: 54.84.236.100 ha rivelato che il percorso non è più disponibile.

Abbiamo continuato a monitorare le tracce del router BGP per l'IP di Celer: 44.235.216.69 e siamo riusciti a trovare il percorso corretto.

Abbiamo quindi controllato il registro delle modifiche del nodo BGP: Ora di Pechino: 18/8/2022 2:48 AM — 18/8/2022 7:48 UTC+8


Il 18/8/2022, è stato riscontrato che nel periodo di tempo compreso tra le 2:48 e le 7:48 BST è stato registrato un gran numero di aggiunte ed eliminazioni di nodi di record di modifiche.
Abbiamo continuato a monitorare il registro delle modifiche dell'AS e abbiamo scoperto che AS14618 in precedenza aveva le informazioni di instradamento 44.235.216.0/24, ma il percorso è stato poi modificato in Ritirato, dimostrando che:
44.235.216.0/24 in AS14618 era il percorso ottimale
Ora 44.235.216.0/24 in AS14618 non è più il percorso ottimale; è ritirato.
(Quando si verifica un attacco BGP, l'attaccante pubblicherà un percorso ottimale per indirizzare il traffico al proprio server)

Per ottenere dati più accurati, abbiamo utilizzato il seguente bgplay per verificare le modifiche nei percorsi relativi a 44.235.216.69 nel momento dell'attacco.

Il 17/08/2022, possiamo vedere che durante il periodo di tempo tra le 19:19:23 +UTC e le 23:19:23 +UTC, si è verificata una fluttuazione significativa nelle informazioni dei percorsi di instradamento BGP.
Questa modifica si riflette nell'indirizzamento del traffico da 44.235.216.0/24 ad AS14618, dove il traffico da 44.235.216.0/24 esce attraverso AS16509 dopo l'attacco.
Di conseguenza, riteniamo che questo incidente sia probabilmente un evento di attacco BGP, in cui AS14618 sembra essere un nodo sotto il controllo dell'aggressore (il router dell'AS14618 potrebbe avere problemi di sicurezza e potrebbe essere sfruttato dagli aggressori), con l'attacco della durata di circa 4 ore.
L’aggressore è riuscito a collegare il Certificato 1 (certificato contraffatto) all’IP di Celer Network: 44.235.216.69 perché aveva un server dannoso con lo stesso IP. Poiché gogetssl supporta http per l'autenticazione, possono semplicemente inserire il testo fornito da gogetssl nel server dannoso. Pertanto, rendendo possibile associare il Certificato 1 indirizzando il traffico al server dannoso con lo stesso IP tramite attacco BGP. Di conseguenza, il browser è stato avvisato dell'errore del certificato.
Abbiamo stabilito che AS14618 era controllato dall'aggressore per i seguenti motivi.
L'aggressore ha prima indirizzato il traffico del 44.235.216.69 verso AS14618 e, dopo l'attacco, ha instradato nuovamente il 44.235.216.69 verso AS16509.
Anche l'IP di attacco: 54.84.236.100 è all'interno di AS14618.
Dopo l'attacco, AS14618 è stato ritirato a 44.235.216.69.
Per rispondere a questa domanda: il fatto che questo indirizzo IP, 44.235.216.69, sia stato associato a cbridge-prod2.celer.network per un lungo periodo di tempo, dimostra che apparteneva al server ufficiale Celer Network. Ciò è stato confermato anche con il team Celer Network. Allora perché c'era un certificato contraffatto associato a questo IP?
Se si utilizza il protocollo HTTPS per comunicare, non è possibile crittografare/decrittografare i dati (compresi i dati della comunicazione client/server) senza ottenere la chiave privata del certificato. Quindi, per garantire che il certificato sia corretto e poter eseguire l'attacco man-in-the-middle, l'aggressore deve riassociare il certificato applicato nell'autorità al server dannoso con lo stesso IP 44.235.216.69. Ciò consente all’aggressore di decrittografare i dati del client e inserire il codice dannoso nei dati del pacchetto di risposta.
Conclusione dell'analisi
Abbiamo studiato questo attacco in collaborazione con il team Celer Network. Nonostante si trattasse di un sofisticato tentativo di attacco BGP alla rete Celer, l'aggressore ha preparato tutto, dai tempi dell'attacco, alla falsificazione dei certificati, al controllo AS e altre operazioni.
In definitiva, riconosciamo che molti progetti sono già consapevoli dei rischi associati agli attacchi BGP e hanno adottato le precauzioni appropriate. Tuttavia, molti non ne sono ancora consapevoli, soprattutto quando si tratta di modifiche del percorso di rete indotte da modifiche dell'AS. Senza adeguate misure di preparazione e risposta esiste il rischio considerevole di ulteriori attacchi da parte degli stessi o di altri aggressori. Pertanto, invitiamo le organizzazioni, gli ISP e i fornitori di hosting di server a riconoscere tali rischi e a coordinarsi sulle strategie difensive per evitare che incidenti simili si ripetano. E, come sempre, se hai bisogno di assistenza, contatta il team di sicurezza di SlowMist.
Allegato
Grafico DNS cbridge-prod2.celer.network:


