L’intelligence artificielle est un concept nouveau depuis 30 50 ans (mince, c’est encore plus vieux que je ne le pense). Quand j’ai commencé l’informatique, on parlait déjà d’intelligence artificielle, et déjà on était déçu des résultats, au point que l’acronyme IA se trouvait souvent remplacé par Informatique Avancée qui correspondait mieux à la nature profonde du sujet. Le marketing ou nos peurs primaires nous empêchent souvent de bien comprendre ce que recoupe cette notion d’intelligence artificielle. Mais parler d’intelligence artificielle est nettement plus vendeur que de parler de classification automatique de motifs complexes1.
Archives de catégorie : Concepts
RGPD
Le Règlement Général sur la Protection des Données est un règlement européen sur la protection des données. Amis de La Palice, bonjour. Mais encore ? Je vais faire un résumé de la très bonne explication fournie par NextInpact sur le sujet.
Continuer la lectureFIDO
FIDO est une alliance créée (en 2012) à l’origine par PayPal et quelques autres acteurs afin d’essayer d’établir un protocole d’authentification sans mot de passe.
Dès 2013, Google, Yubico et NXP1 s’y joignent pour répondre à une problématique forte chez Google de lutte contre le phishing. Pour cela, l’industrie avait besoin d’un standard pour une authentification « forte », et très vite l’idée d’un facteur matériel a été présentée par ces acteurs, avec un protocole ouvert et donc utilisable par tous.
L’acronyme FIDO correspond à Fast IDentity Online, ce qui souligne bien l’orientation web des protocoles. Les grandes étapes historiques de cette alliance sont ici.
FIDO « 1 »
Le besoin initial était de renforcer l’authentification sur des services web ; il était donc naturel d’introduire un second facteur en complément du mot de passe. Fin 2014, les normes FIDO UAF et FIDO U2F sont publiées simultanément.
Premiers protocoles
UAF
UAF correspond à Universal Authentication Framework, qui propose un protocole d’authentification sans mot de passe, à base de cryptographie.
U2F
U2F est la norme concernant le second facteur d’authentification, ou Universal 2nd Factor en anglais, également à base de cryptographie.
A quoi ça sert ?
Grâce à ces normes, on garantit la valeur de l’authentification puisqu’on sait comment cette dernière est établie. Garantir ne signifie pas que l’authentification est parfaite mais qu’on en connaît les mécanismes, et qu’on peut ainsi gérer correctement le risque associé.
Certification
En bonus, une certification peut ainsi être réalisée sur les dispositifs concernés : en utilisant un dispositif FIDO, on sait donc parfaitement comment ce dernier fonctionne. Par la suite, les travaux concernant la certification vont continuer pour suivre l’évolution des technologies et l’accompagner.
La suite
Des travaux viendront compléter ces premières normes, en standardisant les échanges via Bluetooth et NFC, en incluant la biométrie, etc.
FIDO2
En 2016, l’alliance poursuit son travail avec un objectif ambitieux, à savoir créer une norme reconnue pour l’authentification forte sur internet (sur le web).
Pour cela, l’alliance pouvait se baser sur les travaux de la première norme et en 2018 le protocole fut intégré comme candidate recommandation par le W3C, ouvrant la porte à la reconnaissance en tant que standard international de ce qui était en train de devenir FIDO2.
FIDO2 vs. webAuthn
FIDO2 est un ensemble de spécifications, comprenant deux parties :
- webAuthn qui est une ensemble de spécifications du W3C, dont le but est d’établir des standards pour le Web ;
- CATP qui est un ensemble de spécifications de l’alliance FIDO décrivant un protocole d’authentification entre un client et un dispositif d’authentification communiquant via USB, Bluetooth ou NFC.
Les avantages selon FIDO
Sécurité
FIDO utilise un mécanisme cryptographique pour assurer l’authentification à un site. Chaque authentifiant est unique pour chaque site, le secret ne quittant jamais le dispositif FIDO.
Facilité d’utilisation
La facilité d’utilisation provient du dispositif FIDO lui-même, qui gère la partie cryptographique avec le site web. L’authentification sur le dispositif lui-même peut être celui que le client désire (parmi ce qui existe), et est réalisée localement, sans échange avec le serveur web.
Types d’authentification pris en charge
FIDO versions 1 et 2 permettent plusieurs types d’authentification, en combinant les différentes possibilités. En ce ce qui concerne FIDO2 :
- Un seul facteur : identité + identifiant (« credential ») FIDO2
- Second facteur (complément du 1er) : identité + mot de passe + identifiant FIDO2
- Un seul facteur, sans mot de passe : clé cryptographique (« resident key ») FIDO2 stockée sur le dispositif FIDO2
- Deux facteurs (MFA) « sans mot de passe » : clé cryptographique FIDO2 + code PIN
Les dispositifs FIDO2 sont également rétro-compatibles avec l’authentification FIDO U2F :
- Un seul facteur : identité + identifiant FIDO U2F
- Second facteur: identité + mot de passe + identifiant FIDO2 U2F
Points clés
- Les identifiants FIDO2 sont basés sur une paire de clé cryptographique de type asymétrique.
- Le fournisseur d’identité (« identity provider », ou IdP) valide l’identité de l’utilisateur et associe une clé publique FIDO2 à un compte utilisateur (phase d’enregistrement, souvent appelée improprement enrolement en français).
- L’identifiant (« credential ») FIDO2 peut être généré sur un support matériel (clé physique, smartphone, PC portable…) ou par logiciel, selon la politique choisie.
- L’authentification utilise une clé cryptographique liée au dispositif d’authentification et, en option, un autre facteur qui peut être de type « ce que je sais » (code PIN) ou « ce que je suis » (biométrie). Cet identifiant complémentaire (PIN ou biométrie) n’est pas diffusé entre les dispositifs d’authentification et n’est pas partagé avec aucun serveur. Il est stocké uniquement sur le dispositif d’authentification.
- La clé privée de l’utilisateur (de la paire de clé asymétrique) ne quitte jamais le dispositif d’authentification. Le serveur d’authentification ne conserve que la clé publique associée au compte de l’utilisateur durant la phase d’enregistrement.
- La saisie du code PIN, la présentation de la biométrie, ou l’appui sur le bouton présent sur le dispositif sert à débloquer la clé privée afin de signer cryptographiquement les données envoyées au fournisseur d’identité dans l’assertion. Les données signées contiennent également l’indication d’utilisation ou non d’un code PIN ou de la biométrie. La demande d’authentification se poursuit à partir du moment que le fournisseur d’identité a vérifié l’assertion d’authentification.
Hello ?
- https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/Windows-Hello-FIDO2-certification-gets-you-closer-to/ba-p/534592
- https://www.zdnet.fr/actualites/windows-10-dit-hello-a-la-fin-des-mots-de-passe-avec-fido2-39884405.htm
Sources
- https://fidoalliance.org/specifications
- https://www.globalsecuritymag.fr/7-choses-que-vous-avez-toujours,20180829,80528.html
- Site officiel FIDO
- FIDO2 : le nouveau standard pour une connexion Web sécurisée, Ionos
- FIDO2, le Nouveau Standard pour l’authentification Passwordless, Ping Identity
- WL Trusted Authentication, equensWordLine
- Le standard WebAuthN, W3C
- Guide pour développeur pour intégration de WebAuthN, Best Practices et checklist, Yubico
- FIDO2: Solving the Password Problem – Kudelski Security Research
- WebAuthn/FIDO2: Verifying responses | by Ackermann Yuriy | WebAuthn Works | Medium
- FIDO2 Deep Dive: Attestations, Trust model and Security – Kudelski Security Research
- http://www.zdnet.fr/actualites/iphone-5s-la-securite-du-lecteur-biometrique-deja-contournee-39794213.htm
- https://www.noknok.com/sites/default/files/whitepapers/nnltechnicalwhitepaper.pdf
- http://fidoalliance.org/adoption/fido-ready
- http://www.biometricupdate.com/201402/paypal-and-samsung-launch-fido-authentication-and-fingerprint-payments-for-samsung-galaxy-s5
- http://fr.ubergizmo.com/2014/03/galaxy-s5-lecteur-empreinte-digitale-aurait-problemes/
- http://www.biometricupdate.com/201402/bank-of-america-joins-the-fido-alliance
- https://www.nextinpact.com/news/106385-connexion-securisee-api-webauthn-presque-finalisee-premiere-yubikey-fido2.htm
Sujets connexes
Authentification web
A regarder :
- La théorie, l’alliance
- Principes, programmes, working Groups
- L’architecture
- Sécurité du stockage
- Versus biométrie
- Inter-opérabilité
- Développements, API
Attaques 2FA
- https://breakdev.org/evilginx-advanced-phishing-with-two-factor-authentication-bypass/
- https://techcrunch.com/2018/05/10/hacker-kevin-mitnick-shows-how-to-bypass-2fa/
Autres ressources
Commandes utiles
openssl
Voici quelques commandes utiles. Sauf indication contraire, c’est du Linux 😉 mais ça marche quasiment de la même façon sous Windows.
openSSL est un outil open source très répandu qui offre un très grand nombre de fonctions utiles pour la mise en oeuvre de SSL. Voici quelques exemples d’utilisation.
Pour récupérer le certificat présenté par un site :
openssl s_client -connect nom_du_site:443 -showcerts
Pour afficher en clair le contenu d’un certificat X.509 :
openssl x509 -in nom_fichier_certificat -text
Debugging de connexion SSL
openssl s_client -state -nbio -debug -connect ...
Pour afficher la clé publique d’un certificat :
openssl x509 -pubkey -noout -in nom_fichier_certificat
Pour afficher la clé publique en format utile pour une connexion SSH avec clé :
ssh-keygen -y -f nom_fichier_cerificat
Pour la clé privée :
openssl pkcs12 -in fichier.pfx -nocerts -out fichier.key -nodes openssl rsa -in fichier.key -out clepriv.key
A passer ensuite dans la moulinette PuTTY KeyGen pour transformer tout ça en format utilisable par PuTTY…
Convert PEM files
PEM to DER
openssl x509 -outform der -in certificate.pem -out certificate.der
PEM to P7B
openssl crl2pkcs7 -nocrl -certfile certificate.cer -out certificate.p7b -certfile CACert.cer
PEM to PFX
openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt
Convert P7B files
P7B to PEM
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
P7B to PFX
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile CACert.cer
Convert PFX files
PFX to PEM (extraction du certificat)
openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes
PFX to PEM (extraction de la clé privée)
openssl pkcs12 -in certificate.pfx -nocerts -out cle.pem -nodes
Convert DER files
DER to PEM
openssl x509 -inform der -in certificate.cer -out certificate.pem
Sources
- http://sslguru.fr/faq/technical-questions/convert-certificates-formats-pem-p7b-pfx-der.html
- https://www.freecodecamp.org/news/openssl-command-cheatsheet-b441be1e8c4a/
git
Pour utiliser git avec token d’authentification, il faut indiquer ce token dans l’URL des push.
git remote set-url origin "https://USER:TOKEN@gitlab.com/user/projet.git"
BitLocker
Récupération des informations sur un volume donné :
manage-bde –protectors –get [volume]
Création d’un fichier package de clé, sur un id récupéré par la commande ci-dessus :
manage-bde -KeyPackage C: -id "{id}" -path "f:\Folder"
Réseau
Windows
ipconfig /displaydns tracert netsh
Linux
Pour arrêter et redémarrer une interface (afin de prendre en compte les changements de paramétrage).
ifconfig eth0 down ifconfig eth0 up
Autres commandes :
route -n
Windows
- https://techreadpoint.wordpress.com/2015/06/15/10-useful-windows-commands-you-should-know/
- https://www.techrepublic.com/blog/10-things/10-windows-7-commands-every-administrator-should-know/
- https://www.lifewire.com/command-prompt-tricks-and-hacks-2618104
- https://helpdeskgeek.com/help-desk/21-cmd-commands-all-windows-users-should-know/
- https://www.malekal.com/slmgr-commande-activer-supprimer-visualiser-licences-windows/
- https://betanews.com/2020/02/28/windows-10-god-modes/
- https://korben.info/easter-eggs-windows.html
- How to Mount Windows Network Drives in WSL – University of Iowa College of Public Health (uiowa.edu) Et ça marche aussi avec un lecteur USB…
Mesure de performances Win10
Voir aussi
Serverless functions
Principe
Les principe des serverless functions (fonctions sans serveur) consiste à mettre à disposition, pour un client, un environnement d’exécution géré par l’hébergeur (et non par le client) permettant de faire tourner un script ou programme ayant une durée de vie assez courte, par exemple en réponse à un événement quelconque.
Continuer la lectureMot de passe
Le mot de passe est un élément extrêmement sensible dans la chaîne de la sécurité. C’est le point faible le plus souvent rencontré et, forcément, le plus souvent utilisé pour les piratages et les actes malveillants. Il ne sert à rien de sécuriser sa connexion SSH si vous laissez un mot de passe faible…
On s’en débarrasse bientôt ?
Euh non. Nul ne peut prédire l’avenir, mais tout comme on nous promet depuis 30 ans des merveilles de l’intelligence artificielle, on nous annonce depuis des années la fin du mot de passe. J’attends toujours. Ca devient drôle quand on voit des articles entiers consacré au sujet, et se terminer de façon sibylline1 en disant qu’il faudra peut-être le garder en secours. On ne sait jamais, on n’est jamais trop prudent.
Pot de Masse : grands principes
Trois principes forts :
- Tous les utilisateurs (ayant des privilèges élevés, et donc a minima le user
root
) doivent avoir un mot de passe fort.
- Aucun utilisateur ne doit pouvoir se connecter au système sans mot de passe, et encore une fois l’idéal est que tout utilisateur ait un mot de passe fort.
- Un mot de passe doit rester secret.
Inutile de compter sur la biométrie pour remplacer les mots de passe ; quand à une alternative sérieuse et crédible, je n’en connais pas aujourd’hui.
Autre recommandation très utile : utiliser un gestionnaire de mots de passe (de codes secrets) éprouvé et réputé, comme KeePass.
C’est quoi un mot de passe fort ?
C’est un mot de passe difficile à trouver. Mais encore ?
- Un mot de passe ayant au moins 8 caractères de long (c’est un minimum), voire plus ;
- Il ne doit pas contenir de mot du dictionnaire, de nom propre ou facile à deviner ;
- Il doit contenir des caractères, des chiffres, de majuscules, des minuscules ;
- Il faut utiliser des caractères spéciaux si c’est possible (genre * ! ; ? _ ç ou ce que vous voulez) ;
- Ne doit avoir aucun rapport avec le site, avec l’auteur du site, etc ; par exemple, n’utilisez pas le nom de votre chat ou chien, votre date de naissance, votre surnom ;
Exemple de bon mot de passe : Zs01_A!rt
Exemple de mauvais mot de passe : sitejean
, 23051991
(ma date de naissance), motdepassesecure
, adminpwd
, …
Ça n’est pas parce que le mot de passe est long que la protection est assurée : il faut à la fois une certaine longueur mais il faut aussi de la complexité. Mine de rien, ça suffit à se protéger d’une bonne partie des attaques sans trop se casser la tête. Ça vaut le coup de faire ce petit effort, non ?
Faut-il changer régulièrement son mot de passe ?
Pas si évident que ça. Par exemple, si vous êtes au bureau et que la politique de sécurité de votre entreprise vous oblige à changer régulièrement votre mot de passe, on induit un risque dérivé : celui que vous écriviez votre mot de passe sur un bout de papier (car vous finissez par oublier votre mot de passe tellement vous le changez souvent) ; même rangé dans un tiroir, l’accès à ce précieux sésame restera d’une facilité infinie. Donc il vaut parfois mieux un bon mot de passe, respectant les principes ci-dessus, et qui n’apparaisse que dans votre tête !
Idéalement, il ne faut changer son mot de passe que s’il a été compromis, ou si on suspecte qu’il a été compromis2, mais on ne le sait pas toujours.
Comment savoir si mon mot de passe est compromis ?
Bêtement : s’il est dans le top 25 des mots de passe les plus utilisés, laissez tomber. Sinon, un site tente d’agréger tous les mots de passe issus de fuites de données connues (cf ci-dessous), et s’il est impossible que le site soit exhaustif, on peut être sûr que si son mot de passe y figure, c’est mort…
Une initiative intéressante
Troy Hunt a eu l’idée de compiler un maximum de mots de passe ayant été exfiltré au cours du temps3, en les regroupant dans une base unique. Ainsi, il est facile de savoir si son mot de passe est à risque, car s’il est apparu quelque part, il y a fort à parier qu’il sera testé en priorité par des pirates.
Un outil4 exploite également cette base : 1password. Je ne connais pas la qualité de cet outil, mais ça peut être également utile.
Comment retenir un mot de passe complexe ?
En ne le changeant que rarement (cf paragraphe précédent, en respectant les restrictions d’usage), ou en le construisant selon une méthode souvent recommandée : chaque caractère est l’initiale des mots d’une phrase.
Exemple 1 : MFp?KilB2
(traduction : Mon Film préféré ? Kill Bill 2)
Exemple 2 : g1so210L
(traduction façon SMS : j’ai un seau de 10 litres)
Après il faut jouer avec les majuscules/minuscules, etc. A vous de voir si ça peut vous faciliter la vie. Moi j’avoue ne pas m’en servir, mais l’essentiel est de trouver ce qui vous convient le mieux.
Le fameux mot de passe par défaut
- https://news.sophos.com/fr-fr/2018/03/29/mots-de-passe-par-defaut-objets-connectes-sur-google/
Mot de passe sous Windows
What Happens When you Type Your Password into Windows? (syfuhs.net)
Au sujet des attaques
Quelques attaque amusantes
- L’usage de la caméra intégrée aux PC portables pour regarder votre frappe clavier ;
- Les keyloggers (enregistreurs de frappe) ;
- Plus rigolo : l’analyse de nos traces thermiques. Pas forcément très fiable, mais peut être réalisée sans accès logique à la machine, ni accès physique direct, ni même être réalisée exactement au moment de la frappe : il suffit d’une caméra thermique. Cependant, les scénarios d’attaque sont limités.
Quelques types d’attaque
- L’attaque par force brute consiste à tester une grande quantité de mot de passe sur un même compte. Elle est facile à détecter et à contenir (en limitant le nombre de tentatives dans un laps de temps donné), à condition d’y penser ! Pour éviter la détection, certains utilisent des botnets pour répartir les tentatives dans le temps et sur différentes IP, afin de brouiller les détections5.
- Le credential stuffing est la réutilisation (souvent automatisée) d’identifiants valides sur une multitude de sites, en partant du principe que les utilisateurs réutilisent souvent leurs mots de passe…
- Password spraying, ou pulvérisation de mot de passe (traduction ANSSI), qui consiste à essayer quelques mots de passe communs sur une grande quantité de comptes.
- Le shoulder surfing est l’observation directe par l’attaquant du mot de passe, en regardant ce que fait l’utilisateur (par dessus son épaule notamment).
Recommandations
Le groupe Gartner recommandait les huit pratiques suivantes (avec mes commentaires) :
- Mettez en place un système de blocage automatique des sessions. La session est bloquée soit après une période d’inactivité d’une durée définie, soit lorsque le « token » d’identification de l’utilisateur s’éloigne du poste de travail. C’est souvent une règle de base du système d’exploitation ; cela peut également être complété par certains outils.
- Utilisez un système de blocage en cas de tentatives d’accès répétées avec des mots de passe erronés. Le mieux est de mettre en place un blocage temporisé, qui présente l’avantage d’être plus robuste en cas d’attaques visant à bloquer les comptes utilisateurs (attaque équivalente à un déni de service). Ce travail est effectué par certains HIDS comme Ossec, dont je parle sur le site.
- Mettez en oeuvre une authentification forte. Les attaques automatiques simples deviennent alors inefficaces. Cela n’est hélas pas possible sur un serveur à distance dutype OVH ou Dedibox, il faut se contenter de l’authentification par mot de passe. L’authentification forte fait appel à des systèmes physiques comme des cartes générant des mots de passe périodiques.
- Limitez (ou au moins contrôlez) le nombre de sessions simultanées ouvertes avec un même identifiant. Idéalement, il ne devrait y avoir qu’une personne utilisant un identifiant donné, à un instant donné. Si l’on est amené à tolérer l’utilisation épisodique de sessions simultanées, il n’est tout de même pas normal d’avoir deux sessions simultanées, ouvertes sur des postes situés dans les lieux éloignés. De plus, il est possible d’identifier les comportements anormaux, comme par exemple des connexions depuis l’extérieur avec des identifiants appartenant à des gens travaillant au bureau. Cette recommandation est valable pour les postes de travail comme pour un serveur. Inconvénient : en cas d’attaque avérée, si quelqu’un se connecte en root, personne d’autre (y compris l’administrateur véritable) ! ne pourra se connecter.
- Rappelez toujours aux utilisateurs, au démarrage d’une session, les dates et heures de début et de fin de leur session précédente ; et apprenez-leur à contrôler la justesse de cette information. Inutile pour un serveur à distance s’il n’y a que l’administrateur qui s’y connecte.
- Accordez toujours, par défaut, des autorisations minimum aux acteurs. Il est plus facile d’ouvrir ensuite les droits indispensables que d’accorder des droits très larges au départ, puis de supprimer ensuite les droits inutiles. En effet, il faut se souvenir que les droits inutiles constituent autant de failles potentielles.
- Assurez-vous que les comptes périmés sont supprimés ou inactivés le plus vite possible. Suivez également la création d’utilisateur (Ossec le permet) : rien ne doit se faire sans l’accord de l’administrateur…
- Surveillez et protégez-vous contre les codes malins. En effet, les logiciels espions, notamment, sont capables de voler facilement les mots de passe. Pour cela, HIDS, pare-feu et tous les outils recommandés sur ce site.
Sources
- https://connect.ed-diamond.com/MISC/MISC-094/Psychologie-comportementale-que-faire-du-mot-de-passe
- Etude Microsoft 2020
Voir aussi
Articles connexes
Liens externes
- http://wpengine.com/unmasked/
- http://password.social-kaspersky.com/fr
- http://www.passwordmeter.com/
- http://webtecker.com/2008/03/26/collection-of-password-strength-scripts/
- http://rumkin.com/tools/password/passchk.php
- http://securite.developpez.com/defis/generateur-mot-de-passe/
- http://www.atlantico.fr/rdv/minute-tech/pourquoi-ne-vaut-mieux-pas-mettre-fin-au-mot-passe-frederic-mouffle-2394425.html
- https://www.cnil.fr/en/node/23315
- http://www.zdnet.fr/actualites/windows-10-microsoft-imagine-un-monde-sans-mots-de-passe-39867808.htm
Linux
Linux is not Unix. Or Linux tend à se répandre un peu partout alors que, n’en déplaise à son créateur, il n’a pas forcément été conçu sur des bases suffisamment sûres pour les entreprises1.
Sources
Publications
Villes connectées
Le concept de villes connectées (ou Smart Cities) est un des nébuleux concepts issus de l’imagination débridée de nos têtes plus ou moins pensantes. Elles seront alimentées par nos équipements informatiques et par une foultitude de capteurs qui seront inévitablement disseminés dans notre environnement urbain (mais pourquoi pas aussi dans des zones moins denses) : des objets connectés dédiés au fonctionnement de la ville.
Or nos brillants techniciens sont plus enclins à étudier comment réaliser et rendre possible cette idée plutôt que de penser aux conséquences de cette utilisation ultra-intrusive de données récoltées1, lesquelles échapperont probablement au contrôle des citoyens.
On part de loin
De très loin, même. Sans refaire l’historique des vulnérabilités, on remarque que les chercheurs (comme ceux d’IBM2)relèvent que les plus basiques sont présentes quasiment partout, aussi bien dans des capteurs météo que dans des feux tricolores de signalisation !
Et je te mets un mot de passe administrateur codé en dur (et facilement devinable), que je ne sécurise pas ma couche d’authentification, que je laisse passer les injections SQL (voir ce que ça donne pour les machines à voter électroniques) ou le XSS.
Les scénarios de risque ressemblent à ce qu’on trouve dans les films3 : on détourne l’usage des feux rouges pour bloquer la circulation et échapper aux flics, on fausse les mesures d’éléments critiques comme la niveau des eaux ou le taux de radioactivité, pour causer des dégâts ou désorganiser les activités humaines.
Voir aussi
Sources
- https://www.lemonde.fr/smart-cities/article/2017/10/13/les-libertes-individuelles-oubliees-de-la-smart-city_5200742_4811534.html
- https://www.cnil.fr/fr/smart-city-et-donnees-personnelles-quels-enjeux-de-politiques-publiques-et-de-vie-privee
- https://public.dhe.ibm.com/common/ssi/ecm/75/en/75018475usen/final-smart-cities-whitepaper_75018475USEN.pdf
Lien interne
SGX
SGX est un système d’enclave sécurisé présent au sein de certains processeurs Intel, spécialement conçus pour être plus sécurisés.
Continuer la lectureSmartphones
Nos smartphones sont-ils sûrs ? Je suis persuadé que la plupart des utilisateurs pensent que oui, particulièrement les afficionados d’Apple qui ont entendu dire (et donc sont persuadés) qu’iOS et Mac OS sont insensibles voire invulnérables aux virus et autres malwares.
Or malheureusement il n’en est rien, je renvoie iOS et Android dos-à-dos, surtout lorsque les utilisateurs débrident (débloquent) leur téléphone à des fins de personnalisation. A ce titre voici les principales, recensées par l’éditeur Checkpoint.
Je ne regarderai ici que le point de vue technique, et non fonctionnel, car nos smartphones sont nos pires ennemis au sujet de notre vie privée (et même professionnelle), en dévoilant par le biais de notre usage une énorme partie de notre vie.
Les menaces directes
Le jailbreak (ou débridage)
Cette opération consiste à faire sauter les contrôles de votre téléphone et de vous donner, consciemment ou non, un accès complet à celui-ci. Avec un niveau élevé de privilèges, vous pouvez devenir administrateur (= grand chef) de votre machine et y faire ce que vous voulez. En bien ou en mal. C’est amusant pour installer des applications qu’Apple a refusé. Donc ok vous pourrez personnaliser votre écran d’accueil et télécharger toutes les applications pornos que vous souhaitez (par exemple sur Cydia), mais rien n’arrêtera les programmes malveillants qui n’en demandent pas tant… D’abord ils pourront s’installer facilement, mais en plus ils pourront ensuite faire ce qu’ils veulent. Exemple : installer un RAT ou un outil cherchant à cacher que votre téléphone est jailbreaké…
La prise de contrôle
Votre iPhone peut être totalement contrôlé par un inconnu, sans que vous ne le sachiez. Le principe est qu’une fois un iPhone jailbreaké, il devient possible d’installer tout et n’importe quoi dessus, et donc pas seulement les applications vérifiées par Apple sur son store. L’attaquant se débrouille pour installer son malware ou son RAT .
Les faux certificats
A quoi bon faire de faux certificats ? Pour tromper son monde ! Si un petit malin arrive à se faire passer pour une entreprise réputée qui publie de nombreuses applications légitimes sur le store d’Apple, il arrivera alors facilement à faire passer son programme à lui, voire à l’intégrer dans un programme légitime.
D’où l’importance de vérifier correctement les certificats, afin d’être sûr de qui les publie et les utilise. Cela peut représenter une somme de travail importante dans le cas des magasins d’applications, où des centaines d’applications sont publiées.
Les profils iOS malicieux
Le MITM du Wifi
Pfou, un titre incompréhensible au premier abord. Les attaques MITM consistent à ce qu’un tiers vienne se placer au milieu d’une conversation en principe sécurisée. Ce type d’attaque se voit sur les réseaux Wifi mal sécurisés (ou non sécurisés). On peut théoriquement éviter cela avec un utilisateur au faîte du sujet et très vigilant. Et disposant d’un smartphone qui lui permette de contrôler visuellement certains éléments (comme les certificats).
Les webkits
Les webkits ne sont pas de méchants programmes : ce sont des outils que les navigateurs internet utilisent pour construire visuellement le résultat de votre navigation (afficher et positionner le texte, les images, etc.). Très utilisés, la moindre faille est critique. Une d’entre elles permettait, par exemple, d’effectuer le jailbreak de son iPhone rien qu’en visitant une page web spécialement construite à cet effet.
Attaques 0-day
Pour moi, un 0-day (ou faille 0-day) est une faille non corrigée dans une application. Qu’elle soit connue ou pas importe peu.
Une attaque 0-day est une attaque utilisant… une faille 0-day. Pourquoi est-grave ? Voir ci-dessus : parce qu’elle est non corrigée. Donc un petit malin se sert de cette faille, et personne ne peut l’arrêter. Il existe un commerce de ces failles : la cybercriminalité est devenue une industrie.
Les risques indirects
La plupart des fabricants de smartphones proposent des services de stockage en ligne. Il faut garder à l’esprit qu’ils sont souvent opérés par des tiers, et que leur mise en œuvre peut être plus ou moins bien faite, sans compter les risques inhérents à l’usage de services en ligne. Savez-vous par exemple qu’Apple utilise Amazon (AWS), Microsoft (Azure) ou Google (GCP) pour son service iCloud1 ?
Qui qui est le mieux ? iOS ou Android ?
Checkpoint ne mentionne pas pour Android les webkits (je ne vois pas pourquoi) ni les profils iOS malicieux (là j’ai une petite idée). Sinon, à défaut d’être identiquement exploitées (d’un point de vue purement technique), les menaces sont très similaires d’un point de vue conceptuel. La pomme n’est pas plus sûre que les bonbons.
Toutefois, certaines caractéristiques desservent Android, comme par exemple le nombre d’applications publiées (supérieur à iOS2), le fractionnement des versions du système d’exploitation et l’ouverture complète du système qui permet aux constructeurs et opérateurs de proposer des services et des programmes dont le niveau de sécurité peut être très hétérogène. Quand à la maintenance des programmes et versions d’OS, elle est à la main des mêmes constructeurs et opérateurs, donc la rigueur de gestion diffère (quand il n’y a pas carrément d’impossibilité technique à prendre en compte certains correctifs de sécurité).
Enfin, il est très facile sous Android de se connecter à des magasins d’applications non contrôlés, portes ouvertes aux programmes malveillants.