Archives de catégorie : Réseaux & infrastructure

ElasticSearch

ElasticSearch est un moteur de recherche et d’analyse RESTful distribué, d’après son site web (elastic.co). Très utilisé et même proposé sous forme de service par AWS, ce produit permet de gérer des recherches sur de grandes quantités de données.

C’est bien.

Mais cela devient moins amusant quand on le configure mal, les informaticiens pouvant être peu consciencieux ou débordés. Le résultat est alors sans appel : des moteurs de recherche internet (comme Shodan) indexent (trop) facilement les contenus mal protégés, et l’énorme quantité des données gérées par ElasticSearch deviennent purement et simplement disponibles et accessibles à la moindre requête anonyme.

Continuer la lecture →

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

Objets connectés

Le terme objets connectés me semble plus approprié que l‘internet des objets, qui prend les choses dans le mauvais sens en partant d’internet pour arriver aux objets, et qui est également trop limitatif car le vrai enjeu n’est pas tant d’être sur internet que d’être relié à d’autres objets.

Le ‘S’ dans IOT c’est pour « Sécurité ».

Blague anonyme

Les objets connectés existent depuis longtemps, sur l’échelle de temps informatique. Un ordinateur ou un serveur informatique étant des objets, il y a belle lurette que la connexion est faite. Le vrai changement est qu’en suivant la vague de miniaturisation et de banalisation des composants informatiques, on peut désormais coller partout ces composants, jusque dans votre pacemaker12, permettant notamment des fonctions évoluées mais aussi de la communication avec d’autres objets, sur internet ou pas.

Continuer la lecture →

Windows (sécurité)

A la question « Windows est-il sûr », je ne saurais pas répondre, désolé. Pour autant, est-il plus sûr qu’avant, là d’autres ont répondu oui. Il faut reconnaître que la plupart des grandes sociétés et éditeurs informatiques font des efforts, et Windows 101 est beaucoup moins sensible (c’est-à-dire moins infecté par des programmes malveillants) que Windows 7.

Continuer la lecture →

Android

Application, gestion des fichiers

Just like files that you save on the device’s internal storage, Android stores your database in private disk space that’s associated application. Your data is secure, because by default this area is not accessible to other applications.

Cependant, si on ne suit pas les bonnes pratiques, notamment lors du stockage de données sur des supports externes à l’OS (genre carte SD), les données deviennent vite accessibles pour des intrus1.

Lenteur des mises-à-jour

Une des choses que je reproche le plus à Android est la fragmentation des versions de l’OS, ce qui se comprend par la difficulté d’intégration de tous les acteurs (fabricants de composants et puces, fabricants de smartphones, opérateurs téléphoniques) qui devaient chacun revoir leur copie à chaque mise à jour d’Android, ce qui fait que beaucoup traînaient les pieds ou ne le faisaient carrément pas. Or un OS viable est un OS à jour !

Treble

Depuis Android 8.0, toutes les parties spécifiques que les acteurs précédents devaient modifier a été séparée (logiquement) de l’OS. L’avantage indéniable de la manœuvre est de laisser le code spécifique à part, sans avoir besoin de le retravailler2. Il « suffit » donc de mettre à jour l’OS, pour un téléphone donné, afin d’avoir les derniers correctifs : le travail est du côté de Google, pas des acteurs intervenant par la suite (fondeurs de puces, constructeurs de téléphone et opérateurs).

Android One

Une autre option pour avoir un système à jour est justement de n’utiliser aucune personnalisation du téléphone, en respectant certains critères documentés par Google3. Au final, on aura un téléphone moins personnalisé (personnellement ça m’importe peu) mais surtout suivant (ou plutôt : pouvant suivre) les mises-à-jour Android sans aucun souci.

Google propose même de labelliser les téléphones respectant les critères Android One ; et je ne vois pas l’intérêt qu’aurait un constructeur à s’embêter à être Android One pour ne pas suivre le train des mises-à-jour de l’OS !

Liens

Sources

Voir aussi

MacOS (sécurité)

MacOS est-il sécurisé ? Je ne saurais pas mieux répondre que pour Windows ! Un petit mot, en passant, sur les mythes et réalités de l’informatique : j’ai souvent entendu des partisans du Mac (d’Apple) dire que les Mac n’étaient pas sensibles aux virus informatiques. La preuve, selon eux, était qu’on n’entendait jamais parler de virus sur cet environnement. Evidemment, c’est faux. La situation est néanmoins différente sur iOS (sur iPhone).

Logique de marché

Même il y a quelques années, cette affirmation était partiellement fausse : on n’en entendait peu parler, ce qui ne signifie pas qu’on n’en parlait pas du tout. Il y a une logique très simple dans la criminalité, informatique ou pas :

Le crime suit l’usage.

Les cybercriminels suivent donc l’usage : développer un programme malveillant ou toute attaque informatique demande de la préparation, du temps, des moyens, avec l’espérance d’un retour sur investissement pour l’initiateur. Ce retour peut être financier mais pas seulement (les motifs peuvent aller de la recherche de notoriété à l’idéologie).

Quelqu’un voulant attaquer les Mac n’attaquera que des Macintosh. Et donc seulement 10% du marché1 des ordinateurs personnels (à la louche). Donc beaucoup d’efforts pour peu de retours. Autant dire que c’est peu rentable et peu intéressant pour un attaquant.

Donc si les Macs sont moins attaqués, c’est uniquement parce qu’ils sont moins nombreux et moins intéressants.

Sécurité intrinsèque

Par contre, quelqu’un cherchant à attaquer un Mac y arrivera à peu près avec les mêmes techniques qu’un ordinateur PC Windows : il n’y a aucune différence fondamentale entre MacOS et Windows qui, comme tout programme informatique est faillible. Tout l’environnement MacOS peut présenter le même genre de vulnérabilités que des PC sous Windows. Il suffit de regarder les failles régulièrement corrigées par Apple. Les archives des vulnérabilités corrigées remontent au moins à 2003.

A la conférence Black Hat 2018, un chercheur du projet Google Zero a même enjoint Apple de changer de mentalité, car même avec du personnel très compétent en matière de sécurité informatique, la société manque de culture et ignore un peu trop la réalité des exploitations ; il relève même que les exploitations ciblées de vulnérabilités (comme par exemple l’infiltration d’Amnesty grâce à l’outil d’attaque Pegasus) sont beaucoup plus fréquentes2 qu’on ne l’imagine (et qu’Apple ne l’imagine).

Vulnérabilités notables

Programmes malveillants

Tordons le cou aux idées reçues : il existe des programmes malveillants7 pour Mac. Leur proportion reste très inférieure à celle de la part de marché des Macs, mais c’est logique par rapport à ce qui est dit plus haut : les retours sur investissement sont faibles, donc les pirates s’y intéressent moins.

Stockage en ligne

CrashPlan

Très bon, bande passante moyenne, mais arrêt de la formule grand public au profit d’une solution Small Business, presque équivalente mais un peu plus chère (à vérifier : taille espace stockage). Clé de chiffrement réellement privée.

kDrive

https://www.infomaniak.com/fr/kdrive/

Carbonite

Ressemble à CrashPlan Small Business (6$/mois, a priori illimité). Ne prend pas en charge les disques réseaux. La clé de chiffrement ne peut pas être choisie !

pCloud

Nouveau venu, rapport qualité-prix correct mais uniquement pour la formule « à vie ». Surcoût pour la chiffrement de bout-en-bout (autant utiliser un autre service de chiffrement).

iDrive

Très bien noté dans plusieurs tests. 2 To pour 70$ mais 14$ en promotion.

Blackblaze

Clé privée, mais curieusement la sauvegarde démarre avant qu’on ait pu saisir cette clé. Étrange.. Tarif abordable (50$/an) et stockage illimité. Ne prend pas en charge les disques réseaux.

Acronis

??

OneDrive (Microsoft)

1 To de stockage pour 5 utilisateurs, inclus dans l’offre Famille. Pas de chiffrement en standard. Il est possible de chiffrer soi-même les fichiers, bien sûr, mais on perd un peu l’intérêt de l’intégration avec Office (Word, Excel, etc.).

Dropbox

1 To de stockage pour 8£ par mois.

Box

Inutilisable pour un usage personnel, trop cher (10$/100Go).

GoogleOne

Le nouveau service autorisera 2 To pour 10$ par mois.

Cozy Cloud

??

Mozy

??

SpiderOak

??

iCloud

2 To pour 10€/mois. Pas de synchronisation partielle, surtout orienté Apple.

Amazon Drive

100 €/To/an.

hubic

S’arrête ! Après des soucis de performance moyenne, de disponibilité, OVH jette l’éponge.

Synology (C2 backup)

60 €/an pour 1 To. Très bonne intégration avec Synology DSM, forcément. Mais je n’ai pas vu de possibilité d’étendre l’espace de stockage. Clé vraiment privée.

Online (C14, Free)

Stockage à froid

Sources et tests

Virtualisation

Je ne me lancerai pas dans une étude approfondie de la virtualisation et de ses principes, je me bornerai aux définitions essentielles.

Hyperviseur de type 1

Hyperviseur de type 2

Autres types de virtualisation ou d’isolation

  • Conteneurs
  • Virtualisation matérielle type Intel VT
  • Isolation (chroot, docker, rkt…)

Voir aussi sur wikipedia !

Virtualbox et CentOS

Petite manip pour que ça marche (CentOS 8).

yum groupinstall "Development tools"
yum install dkms
yum install kernel-devel
reboot

Failles

Cloud

Le cloud computing est avant tout un terme marketing qui, comme souvent en informatique, ne fait que remettre en avant des notions existantes (mais qui évoluent au cours du temps, les rendant tantôt plus accessibles, tantôt plus pratiques que d’autres). Brut de fonderie, je dirais que ce qu’on appelle couramment cloud consiste principalement à faire tourner son informatique (infrastructure ou applicative) sur les ordinateurs de quelqu’un d’autre.

Définition

Je ne définirai pas forcément le cloud comme le NIST1 qui indique (traduction approximative) :

Le cloud computing est un modèle permettant l’accès en réseau à un pool de ressources partagées de ressources informatiques configurables pouvant être rapidement provisionnées avec un effort minimal de gestion et d’interactions avec le fournisseur.

Les principales caractéristiques sont :

  • Ressources disponibles à la demande ;
  • Large accès via un réseau ;
  • Mise en commun des ressources ;
  • Elasticité (en gros : on peut créer ou supprimer très rapidement des ressources de taille et de caractéristiques très variables) ;
  • Mesurabilité ;

Bien que très intéressante et très réfléchie, je l’adapterai un peu au vu de mon expérience personnelle. D’autant que les modèles proposés ne sont pas vraiment le reflet des pratiques industrielles.

Cloud public, privé, hybride

Le NIST définit (à mon sens) correctement les types privé et public, qui sont respectivement dédié à l’usage d’un seul client (ou organisation) et ouvert à tout client, mais il introduit un type communautaire, constitué de plusieurs organisations ayant un intérêt commun, et qui n’est jamais utilisé en pratique, sauf peut-être dans les clouds gouvernementaux proposés par Amazon.

Point intéressant : aucune mention n’est faite de la localisation des infrastructures clouds par rapport au client. Que le cloud soit interneou externe n’a que peu d’importance dans cette définition, alors qu’en pratique la localisation est une préoccupation constante des directions informatiques.

Leur définition du cloud hybride est également bancale : en gros ça n’est qu’un mix de clouds, alors qu’en général on parle souvent de cloud hybride pour désigner un mélange de cloud et d’infrastructures classiques possédées par le client (ou organisation).

Responsabilité

Un point crucial selon moi a été oublié par le NIST : la responsabilité des ressources. En effet, la virtualisation est une composante intrinsèque des infrastructures clouds (en terme d’elasticité principalement), et elle marque la frontière entre ce qui est de la responsabilité du fournisseur et celle du client.

Ainsi, le niveau hyperviseur (qui est de la responsabilité du fournisseur) sépare la partie matérielle (également de la responsabilité du fournisseur), cachée du client, des services exposés et proposés au client dont la gestion est de sa responsabilité. En clair, le fournisseur doit s’assurer qu’il peut proposer des services fiables et conformes aux clients qui les gèrent selon leurs besoins.

Ce modèle de responsabilité partagée, cher à Amazon2, est pourtant fondamental dans l’usage du cloud pour toutes les questions relatives à la sécurité et à la conformité.

Catégorie « incidents »

Articles intéressants

VPN

Un VPN est un outil permettant de naviguer discrètement sur internet. La qualité de l’anonymat dépend du sérieux du fournisseur.

  • https://www.bleepingcomputer.com/news/security/many-vpn-providers-leak-customers-ip-address-via-webrtc-bug/
  • https://docs.google.com/spreadsheets/d/1Nm7mxfFvmdn-3Az-BtE5O0BIdbJiIAWUnkoAF_v_0ug/edit#gid=0
  • http://www.zdnet.fr/actualites/plus-de-5-ans-de-prison-pour-un-fournisseur-de-vpn-en-chine-39861968.htm
  • http://www.zdnet.fr/actualites/google-chrome-des-extensions-vpn-laissent-des-donnees-de-navigation-en-clair-39866528.htm
  • https://thebestvpn.com/

DNS

Le protocole DNS permet de connaître l’adresse réelle d’un serveur web. Plus précisément cela transforme le nom de domaine inclus dans une URL (adresse symbolique du genre https://secu.si) en adresse technique (adresse IP).

Pour cela, de très nombreux serveurs se répartissent la tâche sur toute la planète web. Pour des raisons d’efficacité, nous nous retrouvons souvent connectés directement à un serveur géré par notre fournisseur d’accès internet. Rien de bien fameux, sauf que les fournisseurs d’accès gardent souvent des traces, pour leur usage propre ou parce qu’on leur demande1.

Continuer la lecture →

Microservices

L’architecture en microservices est une approche intéressante dans la construction de systèmes d’informations, en particulier sur des infrastructures cloud où ce type d’architecture s’adapte naturellement. Cependant, cela reste un choix d’architecture, dans la filiation du SOA, avec des cas d’usage plus ou moins adaptés1.

En premier lieu, construire une architecture en microservices implique de choisir un niveau de granularité (de finesse) des services, qui n’obéit à aucune règle prédéfinie : on propose généralement d’avoir un service par fonctionnalité, mais plus le service est gros, plus on se rapproche d’une application monolithique, et à l’inverse plus le service est fin, plus la complexité induite peut être importante. Il faut donc que le service (ou la fonctionnalité) soit suffisamment indépendante du reste mais pas trop complexe non plus.

Continuer la lecture →