RamsonCloud O365: Paga por tus mensajes de correo en Office 365
-
Upload
chema-alonso -
Category
Technology
-
view
10.897 -
download
0
Transcript of RamsonCloud O365: Paga por tus mensajes de correo en Office 365
1
PayforyourOffice365e-mails(andOneDrivefiles)
Autores:ChemaAlonso([email protected]),PabloGonzález([email protected])&IosebaPalop([email protected])
ResumenEjecutivo
Adíadehoy,elmundodelransomwaresehaconvertidoenunnegociorentableparaelmundodel cibercrimen que extorsiona a individuos y organizaciones por medio de un sencillo perolucrativoesquema:Cifrarlosarchivosdelosequiposinfectadosyexigirdineroporlasclavesdedescifrado.Esteesquemalohemosvistoexplotadopormediodecampañasdespam,infeccionesconkitsdeexploitsoelusodebinariosinfectadosenredesP2P.Porotrolado,enelmundodelosservicios de correo electrónico,muchas organizaciones han comenzado a utilizar esquemas denubepúblicaparaofrecerdichoservicio,basándoseenplataformastanpopularescomoMicrosoftOffice365oGmail.Enestasplataformas,laposibilidaddeintegraraplicacionesvinculadaspermitea un atacante conseguir acceso al correo electrónico sin necesidad de obtener el usuario y lacontraseña,ysaltándoselossistemasde2ndFactorAuthentication.UniendolosataquesdeSpam,conlacreacióndeunaappmaliciosacreadaparalasplataformasOffice365oGmail,esposibleconstruir un eficaz ransomware especialmente diseñado para estos servicios. En este artículonosotros explicamos el funcionamiento de RansomCloudO365, un ransomware especialmentediseñadoparaatacaralasplataformasMicrosoftOffice365.
1.-Introducción:AtaquesdeSpamPhishingySpearPhishingDurantelosúltimosañoshemosvistounagrancantidaddeataquesaorganizacionesquehanterminadoconelrobodeinformaciónylaexposiciónpúblicadelacompañía.Compromisos de seguridad famosos que han pasado a formar parte del ideario denuestraprofesiónparaconstatarlanecesidaddeinvertirenmásmedidasdeseguridady conseguir sistemas más resistentes a los ciberataques. Aun cuando en origen estotalmentecorrectaestaaproximación,laejecucióndedichainversiónsiguesiendoelverdadero problema de fondo, ya que mientras algunos responsables de seguridadinviertengrandescantidadesdedineroennuevastecnologías,muchosdelos"BASICS"permanecensiserresueltostotalmente.Sirevisamoslosorígenesdemuchosdelosataquesmásfamososdenuestrosúltimosaños, veremos que en la gran mayoría muchos de los ataques comenzaron por unsencillo ataque de Spear Phishing con el que el atacante consiguió acceso a unaidentidadinternadelaorganizaciónquenoteníaconfiguradamásmedidadeseguridadqueunusuarioycontraseña,sincontarconunsegundofactordeautenticaciónounsegundofactordeautorización(2FA&2FA).
RamsomCloud O365
2
Comovamosaverenesteartículo,estoaúnpuedesermuchomáscomplejodeprotegeraúnsinoscentramosenlosataquesquetienencomoobjetivoelrobodelaccesoalascuentasdecorreoelectrónicosinnecesidadderobarelusuarioylacontraseña,esdecir,elrobodetokensOAuthquepermitanaunatacantesaltarsehastael2FAyaquepordiseñoelaccesovíaAPIusandoOAuthestáfueradeestasprotecciones.EstoesloquevamosaatacarconSAPPOyvamosaexplicarenesteartículocómofunciona.2.-RobodeCuentasenIDPsEnesteartículo,losIDP(IdentityProviders)quehemosseleccionadohansidoOffice365yWindows Live, pero el trabajo es análogopara otros IDP comoTwitter, Facebook,Google,etcétera,comoveremosentrabajosposteriores.ElobjetivodelastécnicasderobodetokensesconseguiraccesoalosrecursosvíaAPIconsiguiendoqueelusuario,enlugardeentregarunconjuntodecredencialesválidas,entreguesolounAuthCodeOAuthquepermitaelaccesoasusdatos.SipensamosenlasformasenlasquepuedeestarprotegidaunacuentaOffice365contraunataquenospodemosencontrarcondiferentesescenarios.
- Solo 1FA: En este caso la cuentaOffice 365está protegidaúnicamenteporusuarioycontraseña,conunúnicoprimerfactordeautenticación.ElatacantepuederobarlascredencialesvíaataquesdeSpearPhishing.
-2FAyApplicactionPasswords:Enestecaso lacuentaestáprotegidaporun2FA y solo aquellos clientes con un Applicaton Password estarán exentos depasarporel2FA.Elatacantedeberíarobarunapplicationpassworddel lugardondeestéalmacenadaoteneraccesoa2FA.
-2FAsinApplicationPasswords:Lacuentatieneun2FAynosehaceusodeApplicationPasswords,asíqueoseconsigueelaccesoausuario,passwordy2FAoseconsiguehacerunataquederedparahacerunhijackingdesessión.ComovimosenelartículodedicadoaSSLStrip+,eldominiodeOutolook.comteníaunapequeñaventanadetiempoparapoderatacarlasesiónHTTPsconHSTS.-2FAsinaccesoaredo2FA:Silacuentaesremota,ynohayaccesonialaredparahacerunataquedeman in themiddleni al 2FApareceel entornomáscomplicado.
Entodos loscasos,sicentramos losesfuerzosenelrobodetokensOAuth,todos losescenariosseríanigualdesencillosyaqueningunadelasmedidasdeprotecciónqueseusanenunosyotrosaplicanalescenariodeataquequevamosaexplicar.3.-SpearPhishing:AtaquesycontramedidasLosataquesdePhishingsebasanenengañaralusuarioparaconseguirqueintroduzcalas credenciales dentro de una web falsa. Estas webs están alojadas en dominiosfraudulentosquesimulanserelentornoconocidoporlavíctima,asísisedeseararobar
3
unacuentadeOffice365sesimularíaellogindeOffice365.SisedeseararobarunAppleID,sesimularíalawebdeAppleID.Asídesencillo.
Figura1:UnsitiowebdePhishingrobandodatosdeAppleID
Paraconseguiratraervíctimasaestossitios,sepuedenhacerdostiposdeataques.Elmasivo,conocidocomoSPAMPhishing,quenovapersonalizadoyseenvíaaunagrancantidaddedestinatarioesperandoteneréxitobasadoenprobabilidadesoeldirigidoaunavíctimaconcreta,llamadoSpearPhishing.Enesteúltimocaso,elcorreoelectrónicoestápersonalizadocondetallesquehaganpensara la víctimaen la veracidaddelmensaje. Esenesteúltimo tipodemensajesdondelosatacantesponensusesfuerzoscuandoestamosenunescenariodeAPTcontraunaorganización.
Figura2:UncorreodeSpearPhishingpersonalizadoparaunavíctimaconcreta
4
Para evitar los ataques de Phishing, SPAM Phishing & Spear Phishing se utilizandiferentesmedidasdeseguridad.Estassonvariadas,yseaplicanadiferentesnivelesdelaorganización:
-Awareness:ConsisteeneducaralusuarioareconocerunodeestosataquesdePhishing,SPAMPhishingySpearPhishing.Paraelloselesexplicaquenodebendar sus datos a sitiosweb que les envían por correo electrónico, que debenfijarse en el dominio de los servidores a los que se conectan, etcétera. Pordesgracia, ni son totalmente correctas estas recomendaciones en todos loscasos, ni las organizaciones luego fomentan su cumplimiento, ya que el usomasivoydescuidadoquesehacedelosmensajesdecorreoelectrónicoenlasempresas va en contra de ellas. Es común ver a agencias contratadas porequiposdemarketingcontratadosparaeventos,consultorasdeRRHHoasesoresvarios que envíen correos electrónicos a los empleados de una organizaciónsolicitandounaacciónoregistroenunaweb.Esdecir,mientrasqueporunladohacemos"awareness"parareconocerlosataquesdephishing,porotroladoseentrenaalosempleadosparacaerenelphishing.
-TecnologíaAntiPhishing:Tantoaniveldecorreoelectrónico,comoaniveldenavegador, se integranmedidas para detectar correos electrónicos de SPAMPhishingcomositiosdePhishing.HerramientascomolosfiltrosAntiPhishingdeGoogle Safe Browsing o el Microsoft Smart Screen vienen integrados paradetectarwebsqueesténhaciendoPhishing.Sinembargo,cuandohablamosdeataques dirigidos tipo Spear Phishing, la cosa es mucho más complicada dedetectar, y en casi todas las ocasiones pasa por debajo del radar de estastecnologías.
-SegundoFactordeAutenticación:Elúltimobastiónparaevitarelrobodelascuentasesproteger las identidadesdigitales.Paraello, lo idealseríaprotegerunacuentacontresfactores,siendounoalgoqueseconozca(password),otroalgo que se tenga (teléfono o token físico) y otro tercero algo que se sea(biometría). Algunas organizaciones utilizan smartcards protegidas porbiometríaocertificadosdigitalesalmacenadosentokensUSBqueseabrenconbiometríaypasswords.Laeleccióndependerádecadasistema.EnelcasodeOffice365/WindowsLivesepuedeponerun2FAparaprotegerlascuentas.
Pordesgracia,ningunadeestastresmedidasvaaserútilparaprotegeralosusuarioscontraataquesdestinadosarobartelostokensOAuth,talycomovamosaver.4.-OAuthenpocaspalabrasOAuthesunprotocolodeautorizaciónimplementadocomoOAuth2enlamayoríadelosIDPsdeInternet.Sebasaenunsistemadeautorizaciónenelaccesoalosrecursosporpartedelusuariodueñodelaidentidad,oloqueeslomismo,sebasaenelqueelusuariodeYESapermitirqueunaaplicaciónaccedaasusdatos.Porresumirelproceso,existentresfases:
5
Figura3:EsquemadefuncionamientodeOAuth
4.1.-SolicituddeAccesoEnestaprimeraparte,unaaplicaciónregistradaenelIDP,esdecir,enelcasodequequeramosaccederalosdatosdeOffice365deusuariosunaaplicaciónregistradacomodeOffice365,generaunaURLconlalistadepermisosquequierequeunusuariolede.ParaellosegeneraunaURLquellevaunalistadeSCOPES(ámbitosdeacceso)queserádondetendráconcedidoelpermisounavezelusuarioloautorice.
Figura4:SPAMPhishingdefalsacuentadeSpotifyllevaaunservidorhackeado
6
Figura5:ElservidorhackeadohaceunredirectaunaURLparasolicitarpermisosdeacceso
4.2.-AprobacióndeAccesoCuandoelusuariohaceclicoesredirigidoalaURLdesolicituddeacceso,selemostraráunapantallaenlawebdelIDP(Microsoft,Google,etc...)enlaqueseleinformarádelosaccesosqueseleestánsolicitandoyenlaquedeberádecirYESoNO.Esaeslaúltimabarreraantesdeconcederalaaplicaciónsolicitantetodoslosdatosqueestápidiendo.
Figura6:ElusuarionohainiciadolasesiónperolalistadeSCOPESestáenlaURL
Figura7:FalsaappdeSpotifysolicitandoaccesoalacuentaenWindowsLive
7
Cuandoelusuarionoha iniciadosesióne los serviciosdel IDP,entonces lawebqueapareceráserásimilaraladellogin,talycomoseveenlafigura.Sinembargo,enlaURLsepuedevercomohayuna listadepermisosqueson losque laURLdelpunto1hagenerado. Por el contrario, si el usuario ya ha iniciado sesión previamente, se irádirectamentealapartedeaprobaciónonodelospermisosdeacceso,enunawebcomolaqueseveacontinuación.SielusuariohaceclicenYES,entonceselservidordelIDPgeneraráunAuthCodeenestafasequelepermitiráalaaplicaciónsolicitaryaeltokendeaccesoalosrecursos.4.3.-ConsecucióndelAccesoSielusuarioconcedióeAuthCodeenlaparteanterior,ahoraescuestióndelaaplicaciónconsumidorasolicitarelAccessToken.ParaellodeberáusarsuApplicationID,suSecret,suAuthCodeysolicitarqueelAccessTokenleseaenviadoaunEndPoint.SeráahídondeelIDPleharállegarvíaAPIeltokenválidoquedaaccesoalosrecursossolicitadosenlalista de SCOPES. La aplicación, quedará registrada en la lista de apps con permisosconcedidos.EnlasiguienteimagenseveunaappmaliciosaaprobadaenunacuentadeWindowsLive.
Figura8:AppmaliciosaaprobadosuaccesovíaOAuth2enWindowsLive
Apartirdeesemomento,yasepodráaccedervíaAPIacadaunodelosrecursosdelIDPquehayansidoaprobados,comoveremosenlassiguientespartesdeesteartículo.5.-ConstruccióndelaaplicaciónRamsonCloudO365Entendiendo cómo funciona el sistema descrito, ya es posible trazar cómo sería unataquedeestetipo.Elesquemaquesedebeseguirconsistiríaenlossiguientespuntos.
1)ConstruirunaaplicaciónmaliciosaparaelIDPaatacar2)ConstruirunaURLconlasolicituddelSCOPE(lospermisos)adecuado3)ConseguirelAuthCodecuandoelusuarioaceptelaapp4)ConelAuthCodesolicitarelAccessToken5)ConelAccessTokenaccederatodoslosserviciosvíaAPI
8
ComoenesteejemplovamosahacerelataquecontracuentasdeOffice365yWindowsLive,necesitamoscrearunaaplicaciónRamsonCloudenlaplataformaMicrosoftquenosayudeaextraer losdatosde lascuentasqueconfíenenella.Paraello,concualquiercuentadeOutlookdebemosiraladirecciónapps.dev.microsoft.comycrearunanuevaaplicación.Allí recibiremosunApplication IDyunSecret,ademásdequedeberemosespecificar un servidor con un end-point donde vamos a recibir el AuthCode y elAccessToken.Esteservidordeberáestarennuestrainfraestructuraydeberemosponerunprogramaqueescuchelasllamadas.
Figura9:CreacióndeunaaplicaciónmaliciosaenMicrosoft
Paracontrolarlaaplicación,alaquehemosllamadoSappo,ennuestrainfraestructuraregistramos losdatosde la appqueacabamosde crear. Estonospermitirádespuéspoder hacer uso de la API deOffice365 y/oWindows Live a través del AccessTokenconcedidoalaappporpartedelusuariodirectamentedesdenuestraplataforma.
9
Figura10:RegistrodelaappennuestraplataformaparalanzarRansomCloudO365
Unavezqueyatenemoslaappcreada,yasepuedencrearlassolicitudesdepermisos,paraello,seránecesarioqueelusuariohagaclicenYESporloquelaingenieríasocialcobramuchafuerza.EnelejemploanteriorlaapplahemosllamadoSappo,paradejarclaroqueesaestaappaquiénelusuariodebeaceptar,peroparaconseguirmayorimpactoenIngenieríaSocialsedebenbuscarnombresmássuculentos.
Figura11:UnaAppmaliciosallamadaMSAntiSpamPROO365
Paranuestrapresentación,elegimoscrearunaappquesimularaserunAntiSpamProgratuito, loqueno llamaríamucho laatencióncuandosepidenpermisospara leeryescribirelcorreoelectrónico.Possupuesto,eldominodelend-pointyellogotiposeránfundamentalesparaacabardedarelefectoadecuadoencadacaso.
10
6.-ConstruccióndelaURLdepeticióndeSCOPESParaconseguirlospermisosadecuados,elusuariodebenavegaralservidordeMicrosoftconunaURLquedebellevarelsiguienteformato:
GEThttps://login.microsoftonline.com/common/oauth2/authorize/common/oauth2/authorize?scope=[scope_list]&response_type=[code]&client_id=[client_id]&redirect_uri=[redirect_uri]
Comosepuedever,esnecesarioidentificarquéappeslaquesolicitalospermisos,eneste casoClient_id, despuéshayque especificar la lista depermisos que se quierenobtenerenScope_ListyporúltimoqueloqueseesperaobteneresunAuthCodequedeberáserentregadoenRedirect_URI.
Figura12:AlgunosSCOPESdeWindowsLive
LalistadepermisosquehayenWindowsLiveesgrande,yaunqueenalgunosdeellosseespecificaqueesposibleleeryescribirelcorreoelectrónicovíaAPI,lociertoesqueenmuchascuentasnoestápermitidoaún.Esosí,sepuedenacceder,porejemplo,alosdocumentosdeOneDrivecomoveremosenunadelasdemos,oalalistadecontactos.
Figura13:MásSCOPESdeWindowsLive.AccesoaOneDriveyOneNote
11
En el caso de Office365 sí que están disponibles las APIs para acceder al correoelectrónico y, por tanto, leer, enviar correos electrónicos o borrar mensajes de lasdiferentescarpetasdelbuzóndelavíctima.
Figura14:SCOPESenOffice365
UnavezqueseenvíageneralaURL,losuyoeshacérselallegaralavíctimamedianteuncorreoelectrónicoqueleengañe.EnnuestrocasohemoselegidouncorreodeMicrosoftque personaliza el mensaje y lo envía como si fuera un AntiSpam Pro. EstapersonalizaciónlahacemosdirectamentedesdelaherramientaSappo,enlaquesolodebemoselegirunanuevavíctimaalaquevamosaenviarunaappSappo.
Figura15:EnviandoelataquedeSpearAPP
Elcorreoqueseenvíaenesteataqueestáhechocomosifueraunmensajeauténtico,asíquesielusuarionoestáespecialmentealertacontraestosataquesseencontraráconladiatribadesidebeonoaprobarlospermisosaesta"magnífica"appqueharáquetengamenosspamensubandejadeentrada.
12
Figura16:CorreoelectrónicoqueinvitaainstalarMicrosoftAntiSpamProentuOffice365
Cuandolavíctimarecibeelcorreoelectrónicoyhaceclicenelenlace,acabaráenunapantallaenlaquesesolicitasuaprobación.
Figura17:Pantalladeaceptacióndepermisosparalaappmaliciosa
13
Comosepuedever,noesunawebdephishing.Nopideusuariosycontraseñas.EstábajoeldominiooficialdeMicrosoft,conHTTPsyuncertificadodecolorverdetalycomorecomiendantodaslasmedidasdedeteccióndeataquesdephishing.Porsupuesto,elfiltro antiphishing del navegador no ha saltado y en la cuenta víctima hay un 2FAconfigurado.Porsupuesto,quedaclaroenesapantallaqueseestáconcediendoaesaaplicaciónunalistadepermisosque,deserunaappmaliciosa,podríasermuypeligroso.Pordesgracia,aligualquesucedeconlospermisosdelasappsenelmundodelossistemasoperativosAndroid,muchosusuariosaceptaránsincomprenderlasconsecuencias.7.-AtacandocuentasdeOffice365Llegadosaestepunto,enelqueelusuariotienequeelegirentreconcederodenegarlospermisos,es cuando termina laúltimamedidade seguridad. Sielusuariodecideconcederlos,apartirdeesemomento-yhastaqueleseanrevocadoslospermisosocaduquensinningúnprocesoderenegociaciónelAccessToken-laapppodráaccederatodoslosrecursosindicadosenlalistadeSCOPES.CuandoelusuariohaceclicenYES,enelend-pointmarcadoenRedirect-URIserecibiráelAuthCode,quelepermitiráalaaplicaciónsolicitarelAccessToken.EstosehacedeestaformaporqueenlapeticióndelAccessTokendebeindicarseelApplicationIDyelSecretparademostrarqueseeseldueñodelaappquequierelospermisos.LapeticiónquesedeberealizarparasolicitarelAccessTokenescomolaquesigueacontinuación:
POSTcommon/oauth2/tokenHTTP/1.1Host:https://login.microsoftonline.comContent-Type:application/x-www-form-urlencodedgrant_type=[authorization_code]&code=[authCode]&client_id=[client_id]&client_secret=[secret]&redirect_uri=[redirect_uri]
Como se puede ver, se solicita que se entregue lo que sería el AccessToken enRedirect_URI,ysielAuthCodeentregadoeselcorrecto,loquedevolveráelservidordelIDP,enestecasoMicrosoft,seráuntokendeacceso.7.1.-JWT(JSONWebToken)EnelcasodeMicrosofteltokenllegaenformatoJWTquenoesmásqueunacadenaURLEncodedenBASE64conunaestructuradetrespartes:Cabecera,PayloadyFirma.EnlasiguientecapturasepuedeveruntokenrecuperadoenformatoJWT.Si decodificamos la cadena en BASE64, podremos ver que en el payload está lainformacióncompletadetodalasesióndeacceso.Enellaaparecelainformacióndelaapp,lalistadepermisosylosdatosdelacuentaquehaconcedidolospermisos.
14
Figura18:JWTcompletoconlastrespartes
Figura19:Informacióndecodificadadelpayload
Estetoken,enbruto,tendráqueserenviadoencadapeticióndeaccesoalosrecursosdelacuentaenelIDPsiemprequesehagaunallamadaalaAPIdeOffice365oWindowsLive. Las peticiones habrán de ser hechas siguiendo el formato que aparece acontinuación:
GEThttps://login.microsoftonline.com/common/oauth2/authorizeHTTP/1.1Host:login.microsoftonline.comAuthorization:Bearer[Access_Token]UsandolaAPIdeOffice365paraaccederalosrecursos
Todoesteprocesoestáautomatizadoennuestraplataforma,asíquecuandoelusuarioaceptaloqueapareceráenlalistadetokensserántodosaquellosválidosquepuedenutilizarseparaaccederalosdatosdelacuenta.
15
Figura20:AccessTokenválidoparaaccederaunacuentaOffice365
7.2.-AccionessobrelacuentadeOffice365víatokenOAuthEn el caso de Office365, el acceso es completo a los correos electrónicos, así quepodemos listar todos losmensajes en la bandeja de entrada o en cualquiera de lascarpetasde lacuentao,comovamosaveren lasiguienteparte,hacerelcifradodetodoslosmensajesyejecutarunsecuestrodelbuzónconelmóduloRansomCloudO365.Paraqueseamássencillo lohemos integradoenun interfazdeusuarioquepermitenavegarporelbuzónylanzarlasacciones.
Figura21:AccionesimplementadasconeseAccessTokenenOffice365
Entrelasopciones,estátambiénladeborrarelmensajedecorreo,ladeenviarmensajesdesdelacuentayladeactivarodesactivarelprocesodeRansomCloudenestebuzónenconcreto.
Figura22:EnvíodecorreosusandolaAPIdeOffice365yelAccessToken
16
Estetipodetécnicassehanutilizadoparaconseguirengañarvíctimasyrobardinerocuandoseintroduceunmensajemanipuladoenmediodeunaconversaciónlealpara,porejemplo, conseguirqueelpagodeun trabajo sehagaenotra cuentabancaria -controladaporelcibercriminal-enlugardelacuentadelavíctima.
Figura23:Listadecontactosdelacuenta
EstastareassepodránrealizarmientrasqueelaccesoalaaplicaciónenOffice365nosearevocado.Paraello,elusuariodeberíairsealapartedeConfiguracióndeOffice365,yenlaseccióndePermisosdeAplicación,eliminarelaccesoasusdatosdecualquierappnodeseada.
Figura24:Listadetodosloscorreos.Sepuedenvisualizarcompletosyconadjuntos.
17
7.3.-SecuestrandoelcorreoelectrónicodeOffice365UnavezquesetieneaccesoyaatodaslascarpetasymensajesdeunbuzóndeOffice365,elprocesoparasecuestrarlosmensajesdelbuzónesbastantesencillo.Primeroseaccede a unmensaje que se descarga al servidor del atacante. Después se borra elmensajeoriginalmientrasqueenelservidordelatacanteserealizaelcifradodelmismo.Porúltimosesubeelmensajecifradoalservidorparaqueseencuentreallí.Elesquemaseríatansencillocomoeldescritoenlafigurasiguiente
Figura25:ProcesodesecuestrodebuzónenOffice365
Parahacermásefectivoesteproceso,elatacantepodríautilizarunesquemabasadoensecuestrarprimerolosmensajesmásantiguos,queseránlosquemástiempotardeenaccederlavíctima,yporlotantoeltrabajodesecuestrodelbuzóndispondrádeunaventanadeoportunidadmayorparacifrarelmayornúmerodemensajesposibles.Paraobtenerlosmensajesdecorreoelectrónicodeunadeterminadacarpeta,teniendolospermisosenelSCOPEadecuados,elatacantesolonecesitahacerusodelaAPIqueproporciona Office 365 para ello. Esta sería la petición necesaria para acceder losmensajedee-mail.
POST/api/v2.0/me/messagesHTTP/1.1Host:https://outlook.office.comAuthorization:Bearer+AccessTokenX-AnchorMailBox:[email protected]:Thistokenallowaccesstoemail
El proceso de secuestro de los mensajes se basa en eliminar el mensaje original ysustituirloporunacopiacifradadelmismo.Paraqueseamásdifícildedescifrarpormediodeunalgoritmodeingenieríainversa,lomássencilloesutilizarlosalgoritmosdegeneración de valores aleatorios para crear una clave aleatoria (Random Key) y unvectorde inicializaciónaleatorio (Random IV)por cada cuentade correoelectrónicosecuestrada.
18
Elprocesopararealizarestetrabajoennuestraaplicaciónestansencillocomoejecutarestastresinstrucciones:
cipher.key=aes_key=<RandomKeyforEmailAccount>cipher.iv=aes_iv=<RandomIVforEmailAccount>encrypted=cipher.update(messageBody)
Con este proceso, los mensajes de correo electrónico del buzón secuestrado porRansomCloudseráncifradosconAESyparalavíctimaserándocumentosinserviblesqueno podrá utilizar a menos que los descifre. Este es un ejemplo de un mensajesecuestradoporRansomCloud.
Figura26:MensajesecuestradoporRansomCloud
Losvaloresnecesariosparapoderdescifrarlosmensajessealmacenaránenunabasededatosalaquesepodráaccederdesdelaplataformaencualquiermomento.Conlamisma facilidad con que se pueden cifrar los mensajes, es posible descifrarlos y elsistema lo hará de forma autónoma con solo seleccionar la acción de DisableRansomCloud.
Figura27:ListadeCipherIVyCipherKeydelosbuzonessecuestrados
19
AlmismotiempoqueelcorreoelectrónicoescifradoenelservidordeRansomCloud,losmensajesoriginalesdebensereliminadosdelbuzónoriginal.Paraello,laplataformavaeliminándolosutilizandolaAPIqueofreceOffice365paraestastareasyparalacualsepidiópermisosen la listadeSCOPESconcedidosa laappmaliciosaque lavíctimaaceptó.Lapeticiónseríatalqueasí:
DELETE/api/v2.0/me/messages/{message_id}HTTP/1.1Host:https://outlook.office.comAuthorization:Bearer+AccessToken
AccessToken:Thistokenallowaccesstoemail
Message_id:Messageinthemailbox
Por último, una vez eliminado el mensaje original, RansomCloud sube a la nube elmensaje cifrado utilizando AES, y de nuevo esto se hace por una función quedirectamenteofrecelaAPI.Lapeticiónparasubirundeterminadoe-mail–enestecasounmensajecifradoporlaaplicaciónmaliciosa–escomolaquesigue:
POST/api/v2.0/me/MailFolders/inbox/messagesHTTP/1.1Host:https://outlook.office.comContent-Type:application/json;odata.metadata=minimalAuthorization:Bearer+AccessTokenX-AnchorMailBox:[email protected]: Subject => “subject”,Message => “encryptedmessage”… toRcpt, from,etc…(Allparamsoforiginalemail)AccessToken:Thistokenallowaccesstoemail
Porúltimo,paraterminarelprocesodesecuestrodelbuzónOffice365deunavíctima,bastaríaconponerunúltimomensaje,enestaocasiónentextoclarosincifrar,enelquesele informealavíctimadelosucedidoydecómodeberealizarelpagoparapoderrecuperarsusmensajesensubuzón.7.4.-DescifradodelcorreoelectrónicoLaplataforma,pormediodeotraappaceptadaporelusuariopodríarealizarelprocesoinverso.Esdecir,encualquiermomentolaplataformapuederevertirautomáticamenteelprocesoutilizandounalgoritmobasadoenaccederalosmensajes,descifrarlos,borrarelmensajecifradodelbuzónydepositarelantiguomensajesincifrarenelservidor.Elprocesopermitealaplataformagestionartodoelprocesoconsolounclic.
cipher.key=aes_key=<RandomKeyforEmailAccount>cipher.iv=aes_iv=<RandomIVforEmailAccount>encrypted=Base64.decode64(message)decrypted=
decipher.update(encrypted)+decipher.final
20
Figura28:MensajesdescifradosporRansomCloudO365
8.-AtacandocuentasdeWindowsLiveMailyOneDrivePodemoshacerexactamenteelmismoataquequehemosvistoenelcasoanteriorperoahoracontraunacuentadeWindowsLive.Paraellopodríamosutilizar lamismaappmaliciosaquecreamos inicialmenteocrearotradistinta,ypodríamosusarelmismocorreo electrónico con ingeniería social o distinto, pero deberemos cambiar laSCOPE_LISTdel correodepeticióndepermisosparaadecuarlos a losdisponiblesenWindowsLive,quesondistintosalosqueexistenenOffice365.UnavezquelavíctimadecidieraaceptardarpermisosalaappconunclicenYES,nuestraplataformarecibiríaunAccessTokenquelepermitiríainvocarlaAPIdeWindowsLiveparaaccederatodoslosrecursosconcedidos.Comosepuedever,enlaimplementaciónexistente a día de hoy en Windows Live no se permite - aún - acceder al correoelectrónico,aunquesíqueexistenlosSCOPESdefinidosparaello.Actualmente,estánenunprocesodemigraciónquetodavíanohanconcluidoyenelqueprontodejarándisponibleelaccesoparatodoslosbuzones.
Figura29:UnAccessTokenválidoparaunacuentadeWindowsLiverobado
21
Desdelaplataformaesposible,sinembargo,hacerusodeotrasAPIs,comoaccederaloscontactosoalserviciodealmacenamientodeficherosOneDrive.ComopartedelaPoChemos implementadoel accesoaOneDrivede formagráfica, así quebasta conhacerclicenelbotóndeOneDriveyaccederalaestructuradedocumentoscontenidaenlacarpeta.
Figura30:AccediendoalosdocumentosdelascarpetasdeOneDrive
Allísepuedendescargartodoslosficheros,navegarporlascarpetasparairbuscandodocumentación e, incluso, lanzar consultas de búsquedas de palabras dentro dedocumentos,loqueayudaríaaencontrarlainformacióndeformamuchomásdirigida.
Figura31:ConlaAPIdeOneDriveenWindowsLivesepuedenbuscardocs
DemaneraanálogaalosmensajesdeOffice365,conRansomCloudesposibleaccederalosficheros,borrarlosdesuubicaciónoriginal,cifrarlostalycomosehahechoconlosmensajesdee-mailydepositarlossecuestradosenlacarpetadelavíctimajuntoconunficheroqueexpliquecuáleselprocesoquesedebeseguirparaconseguirdescifrarlosficheros.
22
9.-RevisióndeappsenIdentityProvidersLa primera recomendación que deben seguir los usuarios de servicios en cloud deMicrosoftOffice365,GmailoWindowsLivees lade revisar cuáles son lasappsquetienenconectadasasuidentidadycuálessonlospermisosquehanconcedidoacadaunadeellas.
Figura32:UnaappmaliciosaconectadaalacuentadeGoogle
HayquetenerpresentequeRansomCloudpuedeseguirfuncionandoysecuestrandolosnuevosmensajesdecorreoelectrónicoquelleguenmientrasquenosecaduqueeltokenOAuthquehaobtenidoonoselerevoqueelacceso.Esportantoimportanterevisarquéappshayaceptadasyeliminarlassospechosas.Unacosacuriosaesque lasnuevasappsconpermisosconcedidosen lascuentasdeMicrosoftOffice365tardanunratoenaparecery,cuandoaparecen,notienenporquépermitir acceder a la información detallada de la app. Lo más normal es pedirinformacióndelospermisosdelaappynopoderaccederaellosenOffice365silaappesmaliciosacomolasquecreamosaquí.
Figura33:AplicaciónconpermisosenelperfildelusuariodeOffice365
23
Al igual que en el caso deMicrosoft Office365, enWindows Live es posible ver lospermisosconcedidosalasapps.Enestecaso,ademásesposibleverendetalletodoslospermisosquetienecadaunadelasappsasociadasalacuenta.HayqueiralazonadeAplicacionesyServiciosyallíestarálaapp.Ysihacemosclicendetallespodremosverlalistadetalladadetodoslospermisosquesehanconcedidoaestaapp.
Figura34:Listadepermisosconcedidosaestaapp
DependiendodecuálseaelIdentityProviderlasfuncionesquesepodríanrealizarconestetipodeAppsmaliciosascambiará,peroalfinalelconceptoessiempreelmismo.ConseguirunAccessTokenparaunaseriedeSCOPESeimplementarelacceso.10.-RecomendacionescontraataquesdeSpearAppsEnesteartículosehamostradocómosepuedenutilizarlasappsmaliciosasconectadasa un IDP para realizar accionesmaliciosas. La prueba de concepto que se ha hechopretendeexplicarlofácilquepuedesermigrarunesquemadelmundodelcibercrimencomoeseldelransomwarealacloud.Paraevitarestosataqueshayquefortalecerlasmedidas de seguridad que se tienen contra los ataques de Spear Apps y estas sonalgunas recomendacionesquesepuedenseguir, ademásde reforzar los sistemasdecorreo electrónico al máximo con Segundos Factores de Autenticación, motoresantispamyantimalwarepoderososoproteccionescontralasuplantacióndeidentidadesconfiltrosSPF.10.1.-NuevoentrenamientodeseguridadparalosusuariosComohemosvenidocontandoalolargodelartículo,alfinalelgranproblemaesquehemosestadoentrenandoalosusuariosadetectaruntipodeataquedephishingmuyconcretoenelquesesolicitanlascredencialesatravésdeunapáginawebalojadaenunservidorhackeadoofalsoenelquenoseidentificadeformacorrectaeldominiodelsitio,perotodasestasrecomendacionesfallancuandohablamosdeunataquedeSpearApp.
24
Figura35:RecomendacionesdeAdobeparareconocerataquesdephishing
Enestosataques,cuandoelusuariotienequedarclicenYES lohaceenelsitioweboriginaldeMicrosoft.EstáeneldominioMicrosoft.com,estábajounaconexiónHTTPs,conunCertificadoDigitaldeValidaciónExtendida-verde-queescorrectoyperteneceaMicrosoft,yademásnuncaseestásolicitandoningúnusuarionicontraseña.Todoloaprendidohastaelmomentonolevaaservirparanada.Ademásdetodoeso,elfiltroAntiPhishingimplementadoenlosnavegadorestampocopuededetectarnadayaquelaURLenlaqueseestáeslacorrectadeMicrosoft,ynovaabloquearla.HayqueentrenaralosusuariosparadetectarestetipodeataquesconSpearApps,ademásdeentrenarlosparadetectarelSpearPhishing.10.2.-UtilizacióndeCloudSOCsUnade las recomendaciones importantesque sepuedehaceres ladepracticarunamonitorizaciónactivadelassituacionesanómalaspormediodeunanálisisdeloslogsqueofrecenlosproveedoresdeCloud.
Figura36:CloudSecurityMonitoringbasadoenLogTrust
25
EnMicrosoftOffice365esposibleaccederaloslogsdeactividaddetodaslascuentasdeundominio corporativoparaprocedera suanálisisdeactivaidad.Un (Cloud IDS)Sistema de Detección de Intrusiones en Cloud que analice estos logs para detectarpatronesanómalosocomportamientosnohabitualespodríadetectar laaparicióndeunanuevaappasociadaaunbuzóndecorreooelcomienzodelaactividaddeunapptipoRansomCloudactuandosobreunodelosbuzones.
Figura37:EsquemadefuncionamientodeElasticadeBlueCoat
TecnologíascomoLogTrustquepermiteanalizartodosloslogsycrearreglasdeusoosoluciones como Elastica de BlueCoat pueden dar soporte a este tipo de trabajos arealizarporlosequiposdeseguridaddeunaempresa.10.3.-Soluciones:CifradodeNubePúblicaPor último, otra opción posible para evitar el robo de datos por medio de appsmaliciosaspodríaserelusodesolucionesdecifradodedatosdenubepública.
Figura38:CifradodeOffice365conGatewaydeVaultive
26
Eneste caso, una solución comoVaultiveque cifraOffice 365haría que, si una appconsiguepermisosparaaccedera loscorreosmedianteunAccessToken,estaappnopueda acceder a los datos descifrados de la cuenta si no lo hace vía el Gatewaycorporativoquerealizaelcifradoydescifradodelosdatos.Esta solución no protegería contra un ataque de RansomCloud, pero sí contra elespionajedelosmensajesoarchivosdeunacuentadeunodelosIDPscitadosenesteartículo.SilaappmaliciosaconsiguieraelAccessToken,perointentaraaccederdesdefuerade la redde laempresa - sinpasarporelgatewayquecifraydescifra lanubepública - entoncesobtendrías todos losdatosde losmensajesde correoelectrónicocifrados,talycomoseveenlasiguienteimagen.
Figura39:EmailcifradodeOffice365conVaultive
Unaaplicaciónmaliciosapodríaseguirdestrozandoloscorreosoaccediendoalalistaderemitentes,peronuncapodríaleerloscorreoselectrónicosdelbuzón,yaqueestántodoscifrados.10.4.-Aplicacióndesolucionesde2ºFactordeAutorizaciónActualmentelosprincipalesIDPsaplicansolucionesdeproteccióndeidentidadsoloenunpuntodeentrada,comoeselprocesodelogin.Enesteapartado,elusuariodebeproveer al sistema sus credenciales más la verificación de un segundo factor deautenticación, como puede ser un terminal de teléfono en el que se utiliza GoogleAuthenticatoroserecibencódigosOTPpormediodeunmensajeSMS.
Figura40:Latch(2ºFactordeAutorizacion)aplicadoacuentaOffice365
27
Sinembargo, si unatacantees capazde robarunTokenOAuth, lasproteccionesdeSegundo Factor de Autenticación no protegen para nada la cuenta. Sería por tantonecesarioañadirsolucionesdeSegundoFactordeAutorizaciónporlasqueelusuariopudieranosoloprotegerelloginsinolasaccionesquequierehabilitadasonoencadauna de las cuentas. Podríamos tener una protección tipo Latch (solución de2FAutorización)quepermitieraaldueñodelaidentidadgestionarsiquiereabiertasocerradasdeterminadasfuncionesdelacuentayqueeviteestetipodesoluciones.11.-PensamientosfinalesEstas técnicas no son nuevas, y en el mundo del cibercrimen se han utilizadopuntualmenteenmuchosescenariosdeataque.EnelpasadoyasehanvistoataquesdeSPAMPhishingparaconseguirTokensOAuth,peroesimportantequelosresponsablesde identidadesen lasorganizaciones sean totalmente conscientesde lospeligrosdeestosataquesquesonmuchomayoresquelostípicosataquesdeSpearPhishing-yadeporsímuypeligrososenlasorganizaciones-.Porsupuesto,lascompañíasresponsablesdelosIDPs–MicrosoftoGoogle–deberántomarmedidas y detectar actividadesmaliciosasporpartede apps conectadasparaeliminarlasloantesposibledesussistemasyrevocarleselacceso.