Successfully reported this slideshow.
Your SlideShare is downloading. ×

David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
iPhone + Botnets = Fun
iPhone + Botnets = Fun
Loading in …3
×

Check these out next

1 of 71 Ad

More Related Content

Viewers also liked (9)

Advertisement

Similar to David Barroso - iPhone + Botnets = FUN! [RootedCON 2010] (20)

More from RootedCON (20)

Advertisement

Recently uploaded (20)

David Barroso - iPhone + Botnets = FUN! [RootedCON 2010]

  1. 1. iPhone + Botnets = Fun El ascenso y caída de un imperio Autor: David Barroso Congreso de Seguridad ~ Rooted CON’2010
  2. 2. Agenda •  Nuestro personaje •  Cómo intentó infectar millones de iPhones – En quién se fijó – Cómo lo hizo – Cómo acabó •  Conclusiones Congreso de Seguridad ~ Rooted CON’2010 2
  3. 3. Aviso La presentación contiene datos reales y datos de ciencia-ficción En caso de duda, siga el principio de la Navaja de Occam Congreso de Seguridad ~ Rooted CON’2010 3
  4. 4. Nuestro personaje •  Nombre: Homer •  Edad: 38 •  Ocupación: Inspector de Seguridad •  Lugar: Springfield Congreso de Seguridad ~ Rooted CON’2010 4
  5. 5. Springfield Shopper Congreso de Seguridad ~ Rooted CON’2010 5
  6. 6. Mariposa Congreso de Seguridad ~ Rooted CON’2010
  7. 7. Hmmmm Congreso de Seguridad ~ Rooted CON’2010 7
  8. 8. Idea Congreso de Seguridad ~ Rooted CON’2010 8
  9. 9. Ser el amo de millones de ordenadores Congreso de Seguridad ~ Rooted CON’2010 9
  10. 10. Congreso de Seguridad ~ Rooted CON’2010 10
  11. 11. Congreso de Seguridad ~ Rooted CON’2010 11
  12. 12. Be Cool Congreso de Seguridad ~ Rooted CON’2010 12
  13. 13. iPhone e iPad Congreso de Seguridad ~ Rooted CON’2010 13
  14. 14. iBoard e iMat Congreso de Seguridad ~ Rooted CON’2010 14
  15. 15. iPhone Fuente: Wikipedia Congreso de Seguridad ~ Rooted CON’2010 15
  16. 16. Tienda de donuts Congreso de Seguridad ~ Rooted CON’2010 16
  17. 17. Encuentro con A-Z Congreso de Seguridad ~ Rooted CON’2010 17
  18. 18. Zhiguli Sedan Congreso de Seguridad ~ Rooted CON’2010 18
  19. 19. Mercedes SLR Congreso de Seguridad ~ Rooted CON’2010 19
  20. 20. ZeuS - Precio •  ZeuS Kit 1.3.4 ($3000 - $4000) – Licencia por hardware •  Backconnect ($1500) •  Firefox form grabber ($2000) •  Soporte Jabber ($500) •  VNC ($10000) •  Windows Vista/Windows 7 ($2000) Congreso de Seguridad ~ Rooted CON’2010 20
  21. 21. ZeuS Builder Congreso de Seguridad ~ Rooted CON’2010 21
  22. 22. ZeuS no infecta •  Spam •  Drive-by downloads •  Web 2.0 infections •  Pay-per-install •  Falsos codecs Congreso de Seguridad ~ Rooted CON’2010 22
  23. 23. Tienda de donuts Congreso de Seguridad ~ Rooted CON’2010 23
  24. 24. Ikee Worm •  Primer código malicioso para iPhone •  Ashley Towns, 21 años •  Australia Congreso de Seguridad ~ Rooted CON’2010 24
  25. 25. SSH Scanning Congreso de Seguridad ~ Rooted CON’2010 25
  26. 26. Ikee Worm •  Ikee iPhone Worm (alpine): “<ikee> Secondly I was quite amazed by the number of people who didn't RTFM and change their default passwords.” •  Segundo iPhone Worm (ohshit!): – Roba información – Es una botnet con dos C&C – Afecta a bancos holandeses – Ya no es sólo un script de prueba sino que tiene un proceso malicioso (sshd) Congreso de Seguridad ~ Rooted CON’2010 26
  27. 27. Idea Congreso de Seguridad ~ Rooted CON’2010 27
  28. 28. iOrchard iOrchard = Botnet de iPhones Basada en ZeuS Congreso de Seguridad ~ Rooted CON’2010 28
  29. 29. Coming soon ZeuS vs iOrchard Congreso de Seguridad ~ Rooted CON’2010 29
  30. 30. ZeuS – Conexión al C&C Congreso de Seguridad ~ Rooted CON’2010 30
  31. 31. ZeuS – C&C Congreso de Seguridad ~ Rooted CON’2010 31
  32. 32. ZeuS – C&C Congreso de Seguridad ~ Rooted CON’2010 32
  33. 33. ZeuS – C&C Congreso de Seguridad ~ Rooted CON’2010 33
  34. 34. iOrchard– C&C Congreso de Seguridad ~ Rooted CON’2010 34
  35. 35. iOrchard– C&C Congreso de Seguridad ~ Rooted CON’2010 35
  36. 36. iOrchard– C&C •  Basado en LAMP (como casi todos) •  Fuerte uso de javascript (mootools) Congreso de Seguridad ~ Rooted CON’2010 36
  37. 37. ZeuS – Cifrado (antiguo) Congreso de Seguridad ~ Rooted CON’2010 37
  38. 38. ZeuS – Cifrado •  ZeuS utiliza el algoritmo RC4 con claves de 256 bytes –  Enviar datos robados –  Contactar con el C&C –  Recibir ordenes •  El fichero de configuración está cifrado con la clave única (unas 1200) Congreso de Seguridad ~ Rooted CON’2010 38
  39. 39. iOrchard– Cifrado •  Algoritmos disponibles enum { kCCAlgorithmAES128, kCCAlgorithmDES, CCCrypt(encryptOrDecrypt, kCCAlgorithm3DES, kCCAlgorithmRC4, kCCAlgorithmCAST, kCCOptionPKCS7Padding, kCCAlgorithmRC4, vkey, //"123456789012345678901234", //key kCCKeySizeDES, kCCAlgorithmRC2 vinitVec, //"init Vec", //iv, }; vplainText, //"Your Name", //plainText, plainTextBufferSize, (void *)bufferPtr, bufferPtrSize, &movedBytes); Congreso de Seguridad ~ Rooted CON’2010 39
  40. 40. ZeuS – Supervivencia •  HKLMSoftwareMicrosoftWindows NTCurrentVersion Winlogon "Userinit" = "C:WINDOWSsystem32userinit.exe,C: WINDOWSsystem32sdra64.exe •  HKLMSoftwareMicrosoftWindowsCurrentVersionRun "Userinit" = "C:Documents and SettingsuserApplication Datasdra64.exe" Congreso de Seguridad ~ Rooted CON’2010 40
  41. 41. iOrchard– Supervivencia •  LaunchDaemons – /System/Library/LaunchDaemons/ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/ PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.simpsons.iorchard</string> <key>Program</key> <string>/usr/bin/iorchard</string> <key>StandardErrorPath</key> <string>/dev/null</string> <key>OnDemand</key> <false/> </dict> </plist> Congreso de Seguridad ~ Rooted CON’2010 41
  42. 42. ZeuS – Información privada •  Roba credenciales almacenados en el Windows Protected Storage •  Roba certificados X.509 •  Roba credenciales FTP y POP3 •  Roba cookies HTTP y Flash Congreso de Seguridad ~ Rooted CON’2010 42
  43. 43. iOrchard– Información privada •  Direcciones de correo – /var/mobile/Library/Preferences/ com.apple.accountsettings.plist •  POP3, IMAP, Gmail, MobileMe, etc. – No está la contraseña (PSKeychainUtilities) •  /private/var/Keychains/keychain-2.db 1||||||||||||||homer@mrx.com||mail.mrx.com|smtp||25||<t?????hT Sj??]6=?|apple Congreso de Seguridad ~ Rooted CON’2010 43
  44. 44. iOrchard– Información privada •  SMS – /private/var/mobile/Library/SMS/sms.db sqlite> select * from message; 581|605234312|1268480030|"Hola David, soy Homer. Oye, llamame por favor cuando puedas, vale? Venga, hasta luego." - via SpinVox. Recuerda: DictaSMS es gratis. Solo se cobra al que te llama si te deja msj. |2|0|| 230|0|0|0|0||es|||1|| Congreso de Seguridad ~ Rooted CON’2010 44
  45. 45. iOrchard– Información privada •  Llamadas – /System/Library/PrivateFrameworks/ AppSupport.framework/calldata.db – /private/var/mobile/Library/CallHistory/call_history.db sqlite> select * from call; 1357|0097142925822|1268039168|0|5|1659 1358|943324191|1268039290|77|5|-1 1359|+971503515393|1268040783|0|131077|-1 1360|+971333495251|1268040824|810|5|-1 Congreso de Seguridad ~ Rooted CON’2010 45
  46. 46. iOrchard– Información privada •  Contactos –  NSArray *people = (NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBoo k); – /private/var/mobile/Library/AddressBook/ AddressBook.sqlitedb sqlite> select * from ABPerson; Congreso de Seguridad ~ Rooted CON’2010 46
  47. 47. iOrchard– Información privada •  Eventos y tareas – /private/var/mobile/Library/Calendar/Calendar.sqlitedb sqlite> .tables Alarm OccurrenceCache AlarmChanges OccurrenceCacheDays Attendee Participant AttendeeChanges Recurrence Calendar RecurrenceChanges CalendarChanges Store Event Task EventChanges TaskChanges EventExceptionDate _SqliteDatabaseProperties Congreso de Seguridad ~ Rooted CON’2010 47
  48. 48. iOrchard– Información privada •  Redes Wireless – /Library/Preferences/SystemConfiguration/ com.apple.wifi.plist •  SSID_STR •  lastJoined •  lastAutoJoined Congreso de Seguridad ~ Rooted CON’2010 48
  49. 49. iOrchard– Información privada •  Datos del teléfono – /var/mobile/Library/Preferences/ com.apple.commcenter.plist •  ICCID, IMSI, SBFormattedPhoneNumber – /var/mobile/Library/Preferences/ com.apple.mobilephone.settings.plist •  call-forwarding-number – /var/mobile/Library/Preferences/ com.apple.mobilephone.plist •  DialerSavedNumber •  AddressBookLastDialedUid Congreso de Seguridad ~ Rooted CON’2010 49
  50. 50. iOrchard– Información privada •  Fotografías – /var/mobile/Media/DCIM/100APPLE •  JPG y PNG •  Longitud y latitud Congreso de Seguridad ~ Rooted CON’2010 50
  51. 51. iOrchard– Información privada •  Localización geográfica – /var/mobile/Library/Preferences/com.apple.Maps.plist •  UserLocation with date •  /var/mobile/Library/Preferences/ com.apple.preferences.datetime.plist –  Timezone – /var/mobile/Library/Preferences/ com.apple.weather.plist •  Tiempo en ciudades Congreso de Seguridad ~ Rooted CON’2010 51
  52. 52. iOrchard– Información privada •  Búsquedas recientes – /var/mobile/Library/Preferences/ com.apple.mobilesafari.plist •  RecentSearches – /var/mobile/Library/Preferences/ com.apple.youtube.plistTimezone •  Bookmarks, History, lastSearch Congreso de Seguridad ~ Rooted CON’2010 52
  53. 53. iOrchard– Información privada •  Keyboard Cache – /var/mobile/Library/Keyboard/ •  dynamic-text.dat •  es_ES-dynamic-text.dat •  Imagenes cacheadas •  /private/var/mobile/Library/Caches/Snapshots Congreso de Seguridad ~ Rooted CON’2010 53
  54. 54. ZeuS – Robo de credenciales •  Hooks típicos en ring3: wininet.dll ws2_32.dll •  HttpSendRequestW • send •  HttpSendRequestA • sendto • WSASend •  HttpSendRequestExW • WSASendTo •  HttpSendRequestExA • closesocket •  InternetReadFile •  InternetReadFileExW •  InternetReadFileExA •  InternetQueryDataAvailable •  InternetCloseHandle •  HttpQueryInfoA •  HttpQueryInfoW Congreso de Seguridad ~ Rooted CON’2010 54
  55. 55. ZeuS – Robo de credenciales •  Hooks típicos en ring3: user32.dll –  GetMessageW –  GetMessageA –  PeekMessageA –  PeekMessageW –  GetClipboardData –  TranslateMessage crypt32.dll –  PFXImportCertStore Congreso de Seguridad ~ Rooted CON’2010 55
  56. 56. iOrchard– Robo de credenciales •  Hagamos lo mismo que en los cajeros automáticos Congreso de Seguridad ~ Rooted CON’2010 56
  57. 57. iOrchard– Robo de credenciales •  Hagamos lo mismo que en los cajeros automáticos Congreso de Seguridad ~ Rooted CON’2010 57
  58. 58. iOrchard– Robo de credenciales •  Teclado en el iPhone – UIKeyboardLayout (UIView) •  UIKeyboardLayoutRoman – UIKeyboardInputManager •  UIKeyboardInputManagerAlphabet (hook predicción) – Para hacer hooks: •  MobileSubstrate –  void MSHookFunction(void* function, void* replacement, void** p_original); Congreso de Seguridad ~ Rooted CON’2010 58
  59. 59. ZeuS – Kill OS •  Nethell: –  Borra NTDETECT.COM y ntldr •  InfoStealer: –  Borra drivers*.sys –  Borra algunas claves (HKLMMicrosoftWindows NT CurrentVersionWinlogon: Shell = Explorer.exe •  ZeuS: –  Borra HKCU, HKLMSoftware y HKLMSystem •  Glacial Dracon: –  del /A:S /Q /F C:*.* –  del /S /Q %SYSTEMROOT% %PROGRAMFILES% Congreso de Seguridad ~ Rooted CON’2010 59
  60. 60. iOrchard– Kill OS •  rm –rf / Congreso de Seguridad ~ Rooted CON’2010 60
  61. 61. iOrchard– Acceso por VNC •  $10000 en ZeuS •  Open Source en iOrchard ($0) •  Integrando Veency, un servidor VNC disponible en Cydia Congreso de Seguridad ~ Rooted CON’2010 61
  62. 62. Objetivo conseguido Congreso de Seguridad ~ Rooted CON’2010 62
  63. 63. Veamos los resultados Después de varias oleadas de infecciones masivas… … y de una intensa actividad de compra, alquiler y venta Congreso de Seguridad ~ Rooted CON’2010 63
  64. 64. ZeuS – ZeusTracker Congreso de Seguridad ~ Rooted CON’2010 64
  65. 65. iOrchard– iOrchardTracker Congreso de Seguridad ~ Rooted CON’2010 65
  66. 66. Conclusiones •  Hay unos 40 millones de iPhone –  10% jailbreak •  Infección es simple –  Contraseña por defecto •  Acceso total a los datos privados –  Acceso a tu entidad financiera –  Spear phishing •  Conectividad 24x7 •  Copiemos las características de un caso de éxito •  Vigila tu iPod/iPhone/iPad Congreso de Seguridad ~ Rooted CON’2010 66
  67. 67. ¿Cómo acabó todo? ¿Qué pasó con Homer y su iOrchard? Congreso de Seguridad ~ Rooted CON’2010 67
  68. 68. ¿Cómo acabó todo? Congreso de Seguridad ~ Rooted CON’2010 68
  69. 69. ¿Cómo acabó todo? Congreso de Seguridad ~ Rooted CON’2010 69
  70. 70. ¿Cómo acabó todo? Congreso de Seguridad ~ Rooted CON’2010 70
  71. 71. Gracias a: S21sec e-crime Jay Freeman (saurik) Nicolas Seriot (iPhone privacy) KennyTM (Keyboard hooks) Homer – Matt Groening David Barroso tomac@yersinia.net @lostinsecurity Congreso de Seguridad ~ Rooted CON’2010

×