SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Sécurité du Web embarqué

         Nicolas RUFF
    EADS Innovation Works
    nicolas.ruff (à) eads.net
Contexte
• Vous connaissez …
Contexte
• … mais connaissez-vous ?
  – nginx
  – lighttpd
  – Allegro RomPager
  – Virata EmWeb
  –…
Contexte
• Attention !

  – Ceci n'est pas une conférence à propos de la
    sécurité d'Internet
Contexte
• … quoique …
Les contraintes de l'embarqué
• Serveurs Web "allégés"
  – Souvent à thread unique

• Pas de langage de script
  – Utilisation massive de CGI
  – Ou à défaut des langages "maison"

• Ressources limitées
  – Il existe des alternatives à OpenSSL
     • Et je ne parle pas de GnuTLS 
Les risques de l'embarqué
• Toutes les failles que vous connaissez
  – OWASP TOP 10

• Mais aussi …
  – Epuisement de ressources
  – Secrets stockés "en dur"
  – Logiciels archaïques
  – Injection de commandes
  – Failles d'implémentation triviales
Exemple - OWASP TOP 10
• Pas la peine d'épiloguer …
Exemple - épuisement de ressources
• Le déni de service le plus facile du monde
  – Une seule thread SSL côté serveur …
Exemple - secrets stockés "en dur"
• Secrets:
  – Page d'administration ou de débogage
     • Souvent non documentée
  – Compte
     • Parfois non documenté
  – Clé secrète
     • Ex. clé SSH ou partie privée d'un certificat SSL


• Un mythe ?
  – Malheureusement non …
     • https://code.google.com/p/littleblackbox/
Exemple - logiciels archaïques
• En 2008, cet équipement est vulnérable au ver
  Slapper …
  – http://www.cert.org/advisories/CA-2002-27.html
              C:> dir

              (...)
              11/06/2008   17:21      22 756 003 avc
              (...)

              C:> strings avc | grep -i openssl

              Stack part of OpenSSL 0.9.6a 5 Apr 2001
              ASN.1 part of OpenSSL 0.9.6a 5 Apr 2001
              Big Number part of OpenSSL 0.9.6a 5 Apr 2001
              (...)
Exemple - injection de commandes
• Prendre le contrôle de n'importe quel script
  CGI en 2 temps …
         /var/www/cgi/admin$ fgrep system *
         (…)
         Binary file pt_settings.cgi matches
         Binary file reboot.cgi matches
         Binary file recorder_status.cgi matches
         Binary file recorder_test.cgi matches
         (…)

         /var/www/cgi/admin$ grep "%s" recorder_test.cgi
         recorder_test.cgi: TinyDBError %s
         recorder_test.cgi: umount %s
         recorder_test.cgi: mkdir -p %s
         recorder_test.cgi: smbmount //%s/%s %s -o username=%s,password=%s
         recorder_test.cgi: touch %s
Exemple - injection de commandes
• Rapport complet
  – http://newsoft-tech.blogspot.com/2010/09/d-
    link-dcs-2121-and-state-of-embedded.html


• Qui est épargné ?
  – Probablement personne …
     • Cf. slide suivant
Exemple - injection de commandes
Exemple - failles d'implémentation
                triviales
• Démo !

  – Si Dieu veut 
Conclusion
• Le TOP 10 de l'OWASP, c'est bien …

• … mais le Web embarqué, c'est pire !

  – En 2011, on trouve encore des équipements avec
    une implémentation SSL ou HTTP-AUTH
    vulnérable à des débordements de buffer …

Weitere ähnliche Inhalte

Mehr von Cyber Security Alliance

Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?Cyber Security Alliance
 
iOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce itiOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce itCyber Security Alliance
 
Why huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacksWhy huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacksCyber Security Alliance
 
Corporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomwareCorporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomwareCyber Security Alliance
 
Introducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging appsIntroducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging appsCyber Security Alliance
 
Understanding the fundamentals of attacks
Understanding the fundamentals of attacksUnderstanding the fundamentals of attacks
Understanding the fundamentals of attacksCyber Security Alliance
 
Reverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemReverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemCyber Security Alliance
 
Easy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 fEasy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 fCyber Security Alliance
 
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Cyber Security Alliance
 
Offline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setupOffline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setupCyber Security Alliance
 
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...Cyber Security Alliance
 
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptWarning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptCyber Security Alliance
 
Killing any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureKilling any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureCyber Security Alliance
 

Mehr von Cyber Security Alliance (20)

Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?
 
iOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce itiOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce it
 
Why huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacksWhy huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacks
 
Corporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomwareCorporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomware
 
Blockchain for Beginners
Blockchain for Beginners Blockchain for Beginners
Blockchain for Beginners
 
Le pentest pour les nuls #cybsec16
Le pentest pour les nuls #cybsec16Le pentest pour les nuls #cybsec16
Le pentest pour les nuls #cybsec16
 
Introducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging appsIntroducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging apps
 
Understanding the fundamentals of attacks
Understanding the fundamentals of attacksUnderstanding the fundamentals of attacks
Understanding the fundamentals of attacks
 
Rump : iOS patch diffing
Rump : iOS patch diffingRump : iOS patch diffing
Rump : iOS patch diffing
 
An easy way into your sap systems v3.0
An easy way into your sap systems v3.0An easy way into your sap systems v3.0
An easy way into your sap systems v3.0
 
Reverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemReverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande Modem
 
Easy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 fEasy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 f
 
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
 
Offline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setupOffline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setup
 
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
 
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptWarning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
 
Killing any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureKilling any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented feature
 
Rump attaque usb_caralinda_fabrice
Rump attaque usb_caralinda_fabriceRump attaque usb_caralinda_fabrice
Rump attaque usb_caralinda_fabrice
 
Operation emmental appsec
Operation emmental appsecOperation emmental appsec
Operation emmental appsec
 
Hacking the swisscom modem
Hacking the swisscom modemHacking the swisscom modem
Hacking the swisscom modem
 

ASFWS 2011 : Sécurité du web embarqué

  • 1. Sécurité du Web embarqué Nicolas RUFF EADS Innovation Works nicolas.ruff (à) eads.net
  • 3. Contexte • … mais connaissez-vous ? – nginx – lighttpd – Allegro RomPager – Virata EmWeb –…
  • 4. Contexte • Attention ! – Ceci n'est pas une conférence à propos de la sécurité d'Internet
  • 6. Les contraintes de l'embarqué • Serveurs Web "allégés" – Souvent à thread unique • Pas de langage de script – Utilisation massive de CGI – Ou à défaut des langages "maison" • Ressources limitées – Il existe des alternatives à OpenSSL • Et je ne parle pas de GnuTLS 
  • 7. Les risques de l'embarqué • Toutes les failles que vous connaissez – OWASP TOP 10 • Mais aussi … – Epuisement de ressources – Secrets stockés "en dur" – Logiciels archaïques – Injection de commandes – Failles d'implémentation triviales
  • 8. Exemple - OWASP TOP 10 • Pas la peine d'épiloguer …
  • 9. Exemple - épuisement de ressources • Le déni de service le plus facile du monde – Une seule thread SSL côté serveur …
  • 10. Exemple - secrets stockés "en dur" • Secrets: – Page d'administration ou de débogage • Souvent non documentée – Compte • Parfois non documenté – Clé secrète • Ex. clé SSH ou partie privée d'un certificat SSL • Un mythe ? – Malheureusement non … • https://code.google.com/p/littleblackbox/
  • 11.
  • 12. Exemple - logiciels archaïques • En 2008, cet équipement est vulnérable au ver Slapper … – http://www.cert.org/advisories/CA-2002-27.html C:> dir (...) 11/06/2008 17:21 22 756 003 avc (...) C:> strings avc | grep -i openssl Stack part of OpenSSL 0.9.6a 5 Apr 2001 ASN.1 part of OpenSSL 0.9.6a 5 Apr 2001 Big Number part of OpenSSL 0.9.6a 5 Apr 2001 (...)
  • 13. Exemple - injection de commandes • Prendre le contrôle de n'importe quel script CGI en 2 temps … /var/www/cgi/admin$ fgrep system * (…) Binary file pt_settings.cgi matches Binary file reboot.cgi matches Binary file recorder_status.cgi matches Binary file recorder_test.cgi matches (…) /var/www/cgi/admin$ grep "%s" recorder_test.cgi recorder_test.cgi: TinyDBError %s recorder_test.cgi: umount %s recorder_test.cgi: mkdir -p %s recorder_test.cgi: smbmount //%s/%s %s -o username=%s,password=%s recorder_test.cgi: touch %s
  • 14. Exemple - injection de commandes • Rapport complet – http://newsoft-tech.blogspot.com/2010/09/d- link-dcs-2121-and-state-of-embedded.html • Qui est épargné ? – Probablement personne … • Cf. slide suivant
  • 15. Exemple - injection de commandes
  • 16. Exemple - failles d'implémentation triviales • Démo ! – Si Dieu veut 
  • 17. Conclusion • Le TOP 10 de l'OWASP, c'est bien … • … mais le Web embarqué, c'est pire ! – En 2011, on trouve encore des équipements avec une implémentation SSL ou HTTP-AUTH vulnérable à des débordements de buffer …