Les systèmes informatiques sont très fréquemment utilisés pour piloter, surveiller ou contrôler à distance des sites industriels ou plus généralement des équipements s'interfaçant directement avec le monde physique.
Les systèmes de contrôle industriel aussi concernés par la sécurité
Au même titre que tout systèmes, ces équipements sont concernés par la sécurité informatique : Ces systèmes présentent des vulnérabilités et sont aussi la cible d'attaques comme nous avions pu l'évoquer dans un article précédent.
Les centrales nucléaires, raffineries ou systèmes de traitement et de
distribution d'eau sont de bons exemples d'application de ces systèmes
SCADA (Supervisory Control And Data Acquisition). Encore plus proche de vous et nous, les grands immeubles
intègrent désormais des systèmes de ventilation ou de détection
d'incendie basés sur des systèmes informatiques.
Un nouveau mode de diffusion et une nouvelle cible
Ce code malicieux a été découvert et analysé par la société VirusBlokAda, un rapport d'analyse étant disponible ICI sur le site de F-Secure. Selon les informations disponibles dans deux articles (Krebs On Security, Experts Warn of New Windows Shortcut Flaw, July 15th, 2010, H-Online, Trojan spreads via new Windows hole, July 15th, 2010) il y a des informations qui me semblent intéressantes.
Une faille "Zero-Day"
D'un coté, le code malicieux utilise une nouvelle technique pour se diffuser via des clefs USB (utilisation d'une faille dans les raccourcis Windows "*.lnk"). Ceci lui permet d'infecter tout poste de travail dès insertion de la clef dans l'un des ports USB, exactement de la même manière que via la fameuse méthode de l'autorun. Lien pour un peu plus d'informations : "Sophos, Windows zero-day vulnerability uses shortcut files on USB, July 15th, 2010"
Finalité à visée espionnage industriel
De l'autre coté, la finalité du code malicieux semble aller au-delà
d'une classique prise de contrôle du poste infecté afin de grossir un
botnet : Le code se connecte à la base de données SQL intégrée dans le
système de contrôle industriel WinCC
édité par la société Siemens. Une petite plaquette de présentation de WinCC est disponible sur Scribd.
Le coupable habituel : les mots de passe par défaut
Un rapide
passage en revue des chaînes de caractères présentes dans le code de ce
virus semble indiquer que celui-ci se connecte à la base de données via
un compte utilisant un mot de passe par défaut (Login: WinCCConnect /
password: 2WSXcder). Je vous laisse creuser plus en détail les résultats
de l'analyse
de Frank Boldewin sur wilderssecurity.com.
Quand on dit qu'il
est important de changer les mots de passe par défaut....Oui, il faut en
avoir la volonté et surtout il faut que cela soit rendu possible et
documenté par l'éditeur ce qui n'est pas toujours complètement le cas.
Tant que vous y êtes, changez aussi le mot de passe du compte "WinCCAdmin" : cf ce que j'ai pu trouver sur un forum Russe (page
traduite via Google).
Du code malicieux signé
numériquement
Un autre point intéressant : Ce code malicieux
aurait été signé numériquement par la société "Realtek". Donc aucun
message d'avertissement ne prévient l'utilisateur qu'un programme
demande à être intégré au système. Cela indiquerai que des clefs de
signatures officielles auraient été dérobées auprès de développeurs.
Finalité du code malicieux : Les sites industriels
Le type d'application ciblé n'étant clairement ce que l'on retrouve
chez soi ni
dans une entreprise classique l'objectif n'est pas de voler des mots de
passe ou d'envoyer du spam à l'insu du propriétaire de la machine. Nous
serions donc face à une attaque visant spécifiquement des sites
industriels.
Une attaque ciblée et techniquement de bonne facture
D'un
coté une nouvelle faille pour automatiser l'exécution dès introduction
de la clef USB, de l'autre du code malicieux signé numériquement pour
une installation silencieuse et au milieu des systèmes de contrôle
industriel. Le "cocktail" est plutôt intéressant et montre que nul n'est
à l'abri d'attaques ciblées et techniquement évoluées.
Quelques
préconisations
Se méfier des clefs USB "étrangères" et ne
pas mettre sa clef dans tous
les ports USB qui passent. Les clefs USB sont l'équivalent des
disquettes 5"1/4 des années 80 : A cette époque on parlait de virus
comme PingPong,
Frodo,
DarkAvenger,
etc... Fondamentalement rien n'a changé depuis.
Changer les
mots de passe par défaut des applicatifs est important : C'est très
très très très (j'insiste !) rarement fait. Le plus souvent ce type de
mot de passe est "enfoui" dans un obscur fichier de configuration
lui-même inconnu de l'intégrateur... Changez ce mot de passe lors du
déploiement initial est le minimum à faire.