tag:linuxfr.org,2005:/tags/exploit/publicLinuxFr.org : les contenus étiquetés avec « exploit »2023-10-13T17:48:20+02:00/favicon.pngtag:linuxfr.org,2005:Diary/408822023-09-24T21:51:11+02:002023-09-24T21:51:11+02:00Avoir l'alarme à l'oeilLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#toc-ville-dortoir-covid-et-s%C3%A9curit%C3%A9">Ville dortoir, Covid et sécurité</a></li>
<li><a href="#toc-se-sentir-plus-en-s%C3%A9curit%C3%A9-avec-une-alarme">Se sentir plus en sécurité avec une alarme</a></li>
<li><a href="#toc-la-curiosit%C3%A9-serait-un-vilain-d%C3%A9faut">La curiosité serait un vilain défaut ?</a></li>
<li><a href="#toc-la-d%C3%A9couverte-qui-fait-peur-">La découverte qui fait peur …</a></li>
<li><a href="#toc--tr%C3%A8s-peur-">… Très peur …</a></li>
<li><a href="#toc--trop-peur-allo-le-support">… Trop peur ! Allo le support ?</a></li>
<li><a href="#toc-prouver-lexploit-de-la-faille">Prouver l'exploit de la faille</a></li>
<li><a href="#toc-allo-la-s%C3%A9curit%C3%A9">Allo la Sécurité ?</a></li>
<li><a href="#toc-jy-pense-et-puis-joublie">J'y pense et puis j'oublie</a></li>
</ul>
<p>Avant-propos: Les personnages et sociétés citées dans ce récit sont fictives. L'auteur ne connait pas Martin Petit, ni la société d'assurances La Forestière, et non plus la société de télésurveillance Alarm&moi. Mais ils se pourrait, dans une réalité alternative, ou pas, que les faits se soient réellement déroulés comme raconté ici…</p>
<h2 id="toc-ville-dortoir-covid-et-sécurité">Ville dortoir, Covid et sécurité</h2>
<p>M. Martin Petit habite le centre-ville d’une ville moyenne de banlieue. C’est ce qu’on pourrait appeler une ville-dortoir. On y habite, il y a quelques commerces, des écoles, collèges et un lycée, des zones pavillonnaires, des maisons de ville, quelques ensembles de logements sociaux composés d’immeubles pas très jolis, le tout avec une population variée, des plus populaires jusqu’aux riches bourgeois, selon les quartiers. Le gros avantage de cette ville, c’est la présence de gares qui desservent la grand métropole proche, et des lignes de bus. Martin (appelons le par son prénom), habite ici depuis une vingtaine d’année. Il a vu cependant son quartier changer, loin de se gentrifier, il se paupérise lentement, progressivement, avec les problèmes qui vont avec. Une mairie dynamique, notamment son adjoint à la sécurité, travaille très honorablement, mais les moyens, comme c’est le cas de beaucoup de villes, sont réduits.</p>
<p>Lors des confinements liés au covid, les gens étaient chez eux : les travailleurs qui le pouvaient télétravaillaient, ceux qui ne pouvaient pas tremblaient dans le train, le métro et leur lieu de travail avec leurs masques s’ils en trouvaient, les élèves et étudiants apprenaient en distanciel. Personne dans les rues, presque pas de voitures, pas d’avions. Jamais la ville n’a été aussi calme, jamais elle n’a été aussi sûre.</p>
<p>Puis, le Covid semblant moins dangereux, par de meilleures prises en charge, et l’arrivée des premiers vaccins, les gens sont ressortis : travail, loisirs, écoles. Les maisons habitées en permanence, sont pour certaines redevenues vides en soirée. Un certain type de travailleurs clandestins de l’ombre, frustrés durant des mois de n’avoir pu vaquer à leurs tâches habituelles, en ont profité pour tenter de rattraper le temps perdu : les voleurs. </p>
<p>En l’espace de quelques semaines, certaines rues ont été ratissées par ces indésirables peu scrupuleux. En plein jour, quel que soit le jour, des portes étaient fracturées, des maisons et appartements se faisaient dépouiller. Ce fut le cas de la rue de Martin. C’est pourtant une rue assez passante, tout au moins en heure de pointe. C’est telle voisine qui s’est fait cambrioler deux fois en six mois, c’est tel autre voisin dont tous les bijoux ont été volés. Martin s’en veut d’ailleurs un peu, il avait bien entendu cet après-midi là comme un claquement dans la rue, mais il avait pensé à un caillou expédié par une roue de voiture alors que quelqu'un brisait le canon d'une serrure. Et après coup il se rappelle avoir vu des personnes inconnues se « reposer » à quelques endroits tranquilles de la rue. Martin est encore en télétravail, mais lui aussi va devoir revenir de temps en temps sur son lieu de travail, c’est déjà le cas de son épouse, et les enfants sont retournés à l’école. Martin est inquiet : la maison sera vide. Et s’il se faisait cambrioler, lui aussi ?</p>
<h2 id="toc-se-sentir-plus-en-sécurité-avec-une-alarme">Se sentir plus en sécurité avec une alarme</h2>
<p>Comme beaucoup tout le monde, Martin a vu les réclames publicitaires vantant les mérites de systèmes d’alarmes et de télésurveillance. Des connaissances et membres de sa famille sont déjà équipés de divers systèmes. Martin se renseigne. La télésurveillance, oui, c’est mieux. Après tout, si l’alarme se déclenche et que personne ne peut intervenir, ou l’entendre, certes c’est dissuasif, mais ça lui ferait une belle jambe… Martin contacte la société en charge de son contrat d’assurance habitation, et il est rassuré : <strong>la Forestière</strong>, appelons là ainsi, s’est associée avec plusieurs autres groupes pour proposer une solution d’alarme et de télésurveillance, et des avantages associés, comme le remboursement de la franchise en cas de vol si l’alarme était activée. Martin les contacte. Une semaine après, la société de télésurveillance <strong>Alarm&moi</strong> installe les divers boitiers (centrale, capteurs, clavier, sirène, etc.), moyennement un abonnement mensuel de cinquante euros. Le prix de la tranquillité, pense Martin. Les essais sont concluants, et les étiquettes collées sur la porte : c’est généralement dissuasif. Martin se sent rassuré.</p>
<p>L’alarme est pilotée par une <strong>centrale</strong>, disposant de deux moyens de communication pour la télésurveillance : dans tous les cas c’est Internet, via une liaison entre la centrale et le switch d’un routeur ou d’une box reliée à <strong>Internet</strong>, ou un réseau mobile <strong>GPRS</strong> de type 2G. La communication avec le reste des éléments dans la maison se fait par ondes radio. On lui a expliqué que la centrale pouvait détecter les tentatives de brouillages et que l’alarme se déclencherait. En cas de perte d’Internet la liaison mobile prendrait le relais, en cas de panne de liaison mobile c’est Internet qui fonctionne. Il y a donc de la redondance. </p>
<p>Le temps passe. Quelques mois.</p>
<h2 id="toc-la-curiosité-serait-un-vilain-défaut">La curiosité serait un vilain défaut ?</h2>
<p>Martin est curieux. Il se demande comment la centrale de l’alarme communique avec l’extérieur. Après tout, ça fonctionne, puisque lors des déclenchements intempestifs accidentels, il a bien été appelé quasiment immédiatement par un opérateur de Alarm&moi. C’est qu’il manque encore une information dans ce récit. Martin est informaticien, et mieux, c’est un vrai SysOps, passionné de Linux. Depuis quelques temps Martin travaille dans la cybersécurité, et sa formation l’a rendu quelque peu méfiant. On dit même que ce métier peut même rendre paranoïaque. Alors un jour, Martin prend ses outils, et se met à regarder ce qui se passe. </p>
<p>Martin dispose d’un ordinateur fonctionnant sur Linux. Certes, ce qu’il fait est aussi possible sous Windows et MacOS, mais bon, on ne travaille bien qu’avec les bons outils. La première chose qu’il fait, c’est de trouver l’adresse IP de la centrale. Son ordinateur est connecté au même routeur et il est probable que la centrale récupère son IP en DHCP. Il faut d’abord trouver son adresse. Il y a plusieurs moyens, le plus simple étant de se connecter sur le routeur et de lister les baux DHCP jusqu’à trouver le bon. Martin aime quand c’est plus compliqué : il se met à la place d’un éventuel hacker ou voleur qui ne pourrait pas se connecter au routeur. C’est aussi un bon moyen de s’entrainer avec les outils à disposition sur son système d’exploitation préféré. Si la centrale répond au ping, alors il va la trouver. Il utilise la commande <strong>fping</strong> qui va envoyer un paquet ICMP à toutes les adresses du sous-réseau fourni :</p>
<pre><code># fping -a -A -q -g -i 1 -r 0 10.0.0.0/24
10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.5
</code></pre>
<p>Martin reconnait les 1, 3 et 5, ce sont celles de son routeur, de son PC et de sa machine virtuelle linux. Il reste la 10.0.0.2, celle-là il ne la connait pas. C’est sûrement la centrale de l’alarme. Il utilise une autre commande qui permet de faire à peu près la même chose mais en récupérant les adresses MAC, autrement dit l’adresse physique des adaptateurs Ethernet associés. L’avantage est que les trois premiers octets permettent de déterminer le constructeur. Il y a même un site où on peut <a href="https://mac-address.alldatafeeds.com/mac-address-lookup">vérifier soi-même</a>. Il met d’abord à jour la base des identifiants avec <strong>get-oui</strong>, puis lance la commande <strong>arp-scan</strong> :</p>
<pre><code>$ sudo get-oui -u https://standards-oui.ieee.org/oui/oui.txt
$ sudo cp ieee-oui.txt /usr/share/arp-scan/
$ sudo arp-scan --interface=eth0 10.0.0.0/24
Interface: eth0, type: EN10MB, MAC: …, IPv4: 10.0.0.5
Starting arp-scan 1.9.7 with 256 hosts (https://github.com/royhills/arp-scan)
10.0.0.1 6c:cd:d6:xx:yy:zz NETGEAR
10.0.0.2 00:1d:94:xx:yy:zz Climax Technology Co., Ltd
10.0.0.3 d8:5e:d3:xx:yy:zz GIGA-BYTE TECHNOLOGY CO.,LTD.`
</code></pre>
<p>Ça confirme que 10.0.0.2 est bien l’inconnue, Martin a un routeur Netgear, et une carte mère Gigabyte. Reste donc le Climax Technology. Il va maintenant tenter d’obtenir des détails sur ce qui se cache derrière cette adresse. Pour ça, il utilise un outil bien connu appelé <strong>nmap</strong>. C’est très puissant nmap, un véritable couteau suisse pour l’analyse des adresses, ports et tout ce qui se cache derrière. Martin décide de tester tous les ports de 1 à 65535, et il trouve des choses intéressantes, les ports 80 et 55023 sont ouverts :</p>
<pre><code>$ sudo nmap -p 1-65535 10.0.0.2
PORT STATE SERVICE
80/tcp open http
55023/tcp open unknown
</code></pre>
<p>Un port qui finit par 23, c’est suspect, 23 c’est un port telnet. Martin va maintenant chercher ce qui se cache derrière ces ports, avec un navigateur web et toujours avec nmap. Le paramètre <strong>sV</strong> permet de tester un port ouvert pour tenter de déterminer le service qui s’y cache, et sa version. Le port 80 ne permet pas de déterminer le type de serveur. Il suffit de tenter de se connecter avec un navigateur. On arrive sur une page d’accueil reprenant le nom de la société de télésurveillance, un bouton de connexion, mais sans les identifiants. C'est une authentification HTTP de type <strong>Basic Auth</strong>, Martin est coincé.</p>
<p><img src="//img.linuxfr.org/img/68747470733a2f2f7a7570696d616765732e6e65742f75702f32332f33382f723131642e706e67/r11d.png" alt="Authentification Basic Auth" title="Source : https://zupimages.net/up/23/38/r11d.png"></p>
<p>Mais le port <strong>55023</strong> lui est bien plus intéressant :</p>
<pre><code>$ sudo nmap -sV -p 55023 10.0.0.2
55023/tcp open telnet BusyBox telnetd
Service Info: Host: HPGW-NET6
</code></pre>
<p>Ainsi donc la centrale fonctionne avec <strong>busybox</strong>, un lot de commandes Unix de taille réduite qu’on installe généralement sur des systèmes embarqués. Souvent, il y a un Linux derrière. Mais ce qui surprend surtout Martin, c’est l’information sur le nom d’hôte. Ainsi donc, on a un nom de constructeur, Climax Technology, et un possible nom d'hôte qui ressemble à une référence de modèle. D’ailleurs, une tentative de connexion avec <strong>telnet</strong> retourne :</p>
<pre><code>$ telnet 10.0.0.2 55023
Trying 10.0.0.2...
Connected to 10.0.0.2.
Escape character is '^]'.
HPGW-NET6 login:
</code></pre>
<p>Que ce soit les ports 80 ou 55023, ce sont des protocoles qui ne sont pas sécurisés. Toutes les communications transitent en clair, un simple <strong>tcpdump</strong> sur la console, ou <strong>wireshark</strong> sur une interface graphique, permet de récupérer le trafic en direct. Mais pour attraper les connexions en clair, il faudrait que quelqu’un, un technicien, se connecte depuis le réseau privé de Martin. Hors, pas de technicien à l’horizon. Martin va faire ce que tout le monde ferait dans ce cas, il va chercher sur un moteur de recherche, ici Google. Un constructeur, un modèle, la bonne recherche et la surprise est de taille. La société <strong>Climax Technology</strong> existe, avec un <a href="https://www.climax.com.tw/">site web</a> exhaustif, et il y trouve son modèle. En cherchant sur d’autres sources il trouve aussi le mode d’emploi, avec les mots de passe par défaut. Et si les mots de passes étaient ceux par défaut ? Martin tente. Mais non, la centrale a été reconfigurée.</p>
<h2 id="toc-la-découverte-qui-fait-peur-">La découverte qui fait peur …</h2>
<p>Il continue à dérouler les résultats. Et là, il tombe sur un lien pointant sur une page au contenu plus qu’exhaustif, c’est la <a href="https://wiki.elvis.science/index.php?title=Examination_of_LUPUS-Electronics_devices">caverne d’Ali Baba</a> ! Un revendeur appelé <strong>Lupus propose la même alarme</strong> et quelqu'un a tout décortiqué.</p>
<p>Martin est épaté. Ce modèle conçu par Climax Tech est distribué et adapté par e nombreuses sociétés de télésurveillance et d’alarmes. Le lien parle de LUPUS, mais Alarm&moi utilise un même modèle au firmware adapté pour leurs besoin (probablement, d’ailleurs, juste un changement de logo). Toute la conception et le fonctionnement du système d’alarme sont décortiqués. De manière étonnante la page est assez élogieuse sur le produit, et les tests semblent le confirmer. En lisant plus bas, il trouve que la centrale fournit des informations sans même avoir à s’y connecter via une API REST et de nombreux endpoints. Il tente avec un simple <strong>curl</strong>.</p>
<pre><code>$ curl http://10.0.0.2/action/welcomeGet
{
"updates" : {
"version" : "HPGW-G6 <version firmware>",
"em_ver" : "<version firmware>",
…
"publicip" : "a.b.c.d",
"ip" : "10.0.0.2",
"mac" : "00:1D:94:xx:xx:xx"
}
}
</code></pre>
<p>Donc toutes ces infos sont accessibles, comme les versions des firmwares. C’est embêtant, car la suite de la page explique clairement comment exploiter une faille découverte début 2019. Les firmwares étant téléchargeables et étant des images de système de fichier, il a été possible d’extraire diverses informations, notamment le service principal, et de trouver la méthode de génération du mot de passe root. Elle est prédictive, elle est basée sur l’adresse MAC. Martin se dit que ça a peut-être été réparé. Après tout, son alarme a été installée en 2021, deux ans après la découverte de la faille. Il essaie en modifiant le programme <strong>Python</strong> pour l’adapter en version 3. Puis il l’exécute avec l’adresse MAC de la centrale.</p>
<pre><code>$ python.exe ./root.py
<< mot de passe root en clair>>
</code></pre>
<p>Il n’y a plus qu’à essayer avec telnet :</p>
<pre><code>$ telnet 10.0.0.2 55023
Trying 10.0.0.2...
Connected to 10.0.0.2.
Escape character is '^]'.
HPGW-NET6 login: root
Password: <<mot de passe fourni ci-dessus>>
Welcome to
____ __ __ __
/ ___\ / //_/ __ / /
/ / / /__ _ __ __ __ __ _/ / ___ ___ / /_
/ / / // // \ / \ \ \/ / / _// _ \ / __\ / __ \
/ /___ / // // / / // / \ > < / / / ___// /__ / / / /
\____//_//_//_/_/_/ \__/\//_/\_\ \_/ \___/ \___//_/ /_/
For further information check:
http://www.climax.com.tw/
[root@HPGW-NET6]#
</code></pre>
<h2 id="toc--très-peur-">… Très peur …</h2>
<p>D’après ce que Martin lit, tout ceci est censé être corrigé depuis mars 2019. Mais on est fin 2021 et ça fonctionne encore. Cette alarme ayant été adaptée pour Alarm&moi, le correctif n’a pas suivi et cette faille n’est pas corrigée. Martin est maintenant root, administrateur de son alarme. D’autres pourraient trouver ça normal, mais non. Il ne faudrait pas, surtout pas. Si Martin le peut, d’autres le peuvent ! Mais alors, il peut prendre la main sur le reste, non ? Voyons voir cette interface web. Le mot de passe est codé en Base64 avec table de correspondance. Le fichier de configuration est dans <strong>config/config.json</strong>, on peut le décoder :</p>
<pre><code>[root@HPGW-NET6]# grep Web config/config.json
…
"Web_Admin_Name":"SAT",
"Web_Admin_Passwd":"NGxxxxxxxxxxxxxxxx",
…
# echo "NGxxxxxxxxxxx" | base64 -d
4xxxxxxxxxxxxxxx
</code></pre>
<h2 id="toc--trop-peur-allo-le-support">… Trop peur ! Allo le support ?</h2>
<p>La fameuse page décrivant la faille fournit la table de correspondance. Elle a été extraite, toujours, du firmware de la centrale. Un caractère en définit un autre. Martin décode avec un petit programme en <strong>Python</strong> et dispose maintenant d’une chaine de caractères qui serait le mot de passe administrateur de l’interface de configuration du système d’alarme. Mais peut-être que la table de correspondance a changé, non ? Alors il essaie.</p>
<p><img src="//img.linuxfr.org/img/68747470733a2f2f7a7570696d616765732e6e65742f75702f32332f33382f7467386e2e706e67/tg8n.png" alt="La console web de l'alarme" title="Source : https://zupimages.net/up/23/38/tg8n.png"></p>
<p>Là, Martin commence à paniquer. Il repense à sa formation, son métier. Certains s’amuseraient à diffuser l’information, ou à la marchander, à l’ouvrir sur Twitter (« <em>Hey la société Alarm&moi, c’est quoi votre alarme en carton que j’ai hacké en script kiddy en trois minutes ?</em> »). Mais pas Martin. Martin prend la décision la plus intelligente : il contacte par mail le support de Alarm&moi, leur demandant s'il pouvait être rappelé par un responsable de la sécurité : il a trouvé une faille publique non corrigée permettant d’accéder à l’alarme une fois entré dans un domicile. Il poste, un soir de semaine, et attend la réponse.</p>
<h2 id="toc-prouver-lexploit-de-la-faille">Prouver l'exploit de la faille</h2>
<p>En attendant, Martin se demande comment un voleur pourrait exploiter la faille rapidement une fois entré dans la maison. Le voleur aurait 30 secondes pour déconnecter l’alarme avant qu’elle se déclenche. Il ne suffit pas de trouver la centrale : essayer de la détruire déclencherait un appel immédiat (ou alors d’un coup avec une très grosse masse). Il faudrait donc que le voleur :</p>
<ol>
<li>sache de quel modèle dispose l’habitant. C’est facile, c’est écrit sur l’étiquette collée sur la porte,</li>
<li>trouve la box ou le routeur. C’est facile, c’est généralement à côté de la prise fibre ou téléphonique, du téléphone ou du téléviseur, bien visible.</li>
<li>se connecte sur un port Ethernet libre, et joue l’ensemble de la séquence.</li>
</ol>
<p>La moitié du travail est fait. Il suffit de scripter l’ensemble (shell, python) et de trouver l’appel qui va bien : il suffit de regarder ce que fait le clic sur le bouton de l’interface web. Il écrit un script shell qui lance les diverses commandes, shell ou Python : trouver l’IP associée à une adresse MAC Climax, calculer le mot de passe root, se connecter et récupérer le fichier de configuration avec un netcat, recalculer le mot de passe admin du service Web, se connecter et déconnecter l’alarme via des méthodes HTTP GET et POST. Et ça fonctionne. Durée totale : <strong>environ 15 secondes</strong>. Pour un voleur, c’est jouable.</p>
<h2 id="toc-allo-la-sécurité">Allo la Sécurité ?</h2>
<p>Le lendemain matin, Martin reçoit un appel du support de la société Alarm&moi. Ils sont sceptiques. Martin leur explique qu’il peut prendre la main sur l’alarme et l’éteindre, sans passer par le boitier à code ou NFC, ni par l’application mobile. La réaction est intelligente, le technicien dit qu’il informe ses supérieurs. L’après-midi, Martin est en ligne avec un responsable sécurité. Il explique à nouveau. Le responsable lui demande de partager la procédure, Martin lui envoie. Le lendemain, le responsable l’appelle. Oui, la faille est là, on ne devrait pas accéder à la console et récupérer les mots de passes d’administration. Ils vont travailler sur un correctif. En attendant, Alarm&moi a désactivé le port telnet. Il le remercie, et lui demande de ne pas ébruiter. Martin tiendra sa parole, mais il prend cependant une mesure additionnelle : il déplace la centrale à un autre endroit plus compliqué à trouver, derrière un autre routeur totalement invisible, sur un autre sous-réseau non routé depuis la box internet. Même si un voleur trouve la box, il ne trouvera pas l’adresse de la centrale d’alarme.</p>
<h2 id="toc-jy-pense-et-puis-joublie">J'y pense et puis j'oublie</h2>
<p>Martin repense à cette histoire régulièrement. Le port telnet est désactivé, donc le risque est faible. Mais si… Mais si la centrale reboote ? De temps en temps, il teste, le port reste désactivé. Le mot de passe administrateur de l’interface web a été changé aussi. Après quelques mois, il n’y pense plus. L’exploit serait bien plus compliqué.</p>
<p>Deux ans plus tard, septembre 2023…</p>
<p>Ça fait un an et demi que Martin n’a pas vérifié quoi que ce soit. Un beau soir, il ressaie. Un seul port reste ouvert, le 80. Bon, toujours pas de TLS, mais bon… Le port telnet est absent. Aucun autre port TCP n’est présent. Il tente les appels aux API ouvertes. Seule un répond encore, le firmware a été mis à jour :</p>
<pre><code>$ curl http://10.0.0.2/action/welcomeGET
{
"updates" : {
…
"em_ver" : "<version firmware n+4>",
…
}
}
</code></pre>
<p>Mais ce qui est étonnant, c’est que si Martin appelle le même endpoint après une tentative de connexion sur l’interface web, il obtient un résultat différent. Quelque chose a changé, mais ce n’est pas encore parfait :</p>
<pre><code>Accès refusé: nom d'utilisateur.
</code></pre>
<p>Martin peut un peu mieux dormir, les principales failles ont été corrigées. Si le risque n’est pas nul et qu’on pourrait mieux faire (du HTTPS, un certificat, une authentification forte, etc.), il est devenu bien plus faible, pour lui et pour tous les clients de cette société de télésurveillance. Et tout ça, c’est un peu grâce à lui. Si Alarm&moi l’a remercié, il n’a pas même pas eu le droit à une réduction, ça aurait été sympa, mais bon, il n’a pas fait ça pour ça. Il n’a pas été cambriolé. Pendant ce temps-là, d’autres voisins ont malheureusement été victimes d’indélicats. Le dernier pas plus tard que la semaine dernière. Martin se dit qu’il devrait peut-être aller leur parler de tout ça, un jour…</p>
<p>Ah, au fait, comment Alarm&moi peut contrôler à distance l’alarme ? Et bien déjà c’est possible via la liaison GPRS et Martin n’a pas les moyens techniques d’analyser ça. Mais les scans des ports UDP ont révélé quelques informations intéressantes, et le fichier de configuration parle aussi de uPnP. Un jour, peut-être, Martin fera quelques tests en direct, toujours avec l’outil magique nmap.</p>
<div><a href="https://linuxfr.org/users/usawa/journaux/avoir-l-alarme-a-l-oeil.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/133421/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/usawa/journaux/avoir-l-alarme-a-l-oeil#comments">ouvrir dans le navigateur</a>
</p>
Sébastien Rohauthttps://linuxfr.org/nodes/133421/comments.atomtag:linuxfr.org,2005:Diary/386442019-08-31T10:37:31+02:002019-08-31T10:37:31+02:00Une exploitation massive de failles dans iOS depuis plus de 2 ansLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Google a publié, via le blog de projet zero, une analyse détaillée de plusieurs failles iOS qui ont été exploitées pendant plus de 2 ans pour récupérer massivement des données sur des milliers de terminaux :<br>
<a href="https://googleprojectzero.blogspot.com/2019/08/a-very-deep-dive-into-ios-exploit.html?m=1">https://googleprojectzero.blogspot.com/2019/08/a-very-deep-dive-into-ios-exploit.html?m=1</a></p>
<p>Je ne sais pas vous, mais j'avais pour ma part l'image d'une plateforme assez solide niveau sécurité. L'analyse des failles montre qu'en fait, c'est loin d'être le cas.</p>
<p>À noter que plusieurs failles sont dans Safari, il semblerait qu'un bon moyen de se protéger sur un iPhone soit d'utiliser un navigateur alternatif (à condition de ne pas être déjà compromis…).</p>
<p>D'autre part, la majeure partie des failles aurait été évitées en codant en Rust (mais aussi découvertes avec du fuzzing ou même dans certains cas de bons outils d'analyse statique).</p>
<div><a href="https://linuxfr.org/users/skippy380/journaux/une-exploitation-massive-de-failles-dans-ios-depuis-plus-de-2-ans.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/117991/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/skippy380/journaux/une-exploitation-massive-de-failles-dans-ios-depuis-plus-de-2-ans#comments">ouvrir dans le navigateur</a>
</p>
Colin Pitrathttps://linuxfr.org/nodes/117991/comments.atomtag:linuxfr.org,2005:Bookmark/6502019-05-16T16:33:08+02:002019-05-16T16:33:08+02:00NECUNOS: Un smartphone sécurisé, c'est un smartphone sans réseau<a href="https://necunos.com/blog/free-as-in-freedom-of-speech-part2/">https://necunos.com/blog/free-as-in-freedom-of-speech-part2/</a> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/117222/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/anonyme/liens/necunos-un-smartphone-securise-c-est-un-smartphone-sans-reseau#comments">ouvrir dans le navigateur</a>
</p>
Anonymehttps://linuxfr.org/nodes/117222/comments.atomtag:linuxfr.org,2005:Diary/385022019-05-08T12:15:02+02:002019-05-08T12:15:02+02:00Qualcomm corrige une faille critique dans des dizaines de puces SnapdragonLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Pour continuer sur les discussions autour d'Android du moment sur LinuxFR.</p>
<p>Source : <a href="https://app.beebom.com/qualcomm-patches-critical-flaw-dozens-snapdragon-socs/">https://app.beebom.com/qualcomm-patches-critical-flaw-dozens-snapdragon-socs/</a></p>
<p>Traduction :</p>
<blockquote>
<p>Des chercheurs du groupe NCC, une compagnie spécialisée dans la cybersécurité, ont découvert une vulnérabilité critique qui affecte des dizaines de puces Qualcomm utilisés dans les téléphones et tablettes Android.</p>
<p>D’après les rapports, pas moins de 46 puces Qualcomm, incluant les SD820, 835, 845, 855, 625, 636, 660, 670 sont probablement impactés par la vulnérabilité qui permet d’autoriser des attaquants potentiels à accéder à distance les données privées et les clés de chiffrement sur les machines utilisant ces puces.</p>
<p>Qualcomm a déjà fourni des correctifs pour ce bogue, donc il sera intéressant de voir combien de temps il faudra pour que les fabricants mettent en place ces correctifs pour les machines concernées.</p>
</blockquote>
<p>Donc ça a l’air de concerner un paquet de téléphones. La faille en détails : <a href="https://www.nccgroup.trust/us/our-research/private-key-extraction-qualcomm-keystore/?research=Technical+advisories">https://www.nccgroup.trust/us/our-research/private-key-extraction-qualcomm-keystore/?research=Technical+advisories</a></p>
<p>La faille est exploitée par attaque par canaux cachés et vise la TrustZone, qui stocke notamment les empreintes digitales enregistrées pour le déverrouillage.</p>
<p>Dans un fil de discussion sur les forums xda-developers, à propos d’un modèle en particulier : <a href="https://forum.xda-developers.com/lenovo-p2/how-to/vulnerability-snapdragon-chipsets-t3924977">https://forum.xda-developers.com/lenovo-p2/how-to/vulnerability-snapdragon-chipsets-t3924977</a></p>
<blockquote>
<p>J’ai récemment découvert que Qualcomm a trouvé des vulnérabilités dans beaucoup de puces qui permettent d’accéder aux données et aux clés de chiffrement du téléphone, y compris le Snapdragon 835 & co. Il y a aussi le Snapdragon 625 dans la liste. Qualcomm est en train de fournir une mise à jour pour corriger ça.</p>
<p>Lenovo ne fournira jamais la mise à jour [NdT : le téléphone a reçu sa dernière mise à jour constructeur en 2017] et nous sommes sur des ROM personnalisées.<br>
Y a-t-il un moyen pour appliquer cette mise à jour sur nos téléphones?</p>
</blockquote>
<p>Réponse :</p>
<blockquote>
<p>Probablement pas.</p>
</blockquote>
<p>Chouette, hein ? Surtout quand on compte, comme moi, garder le téléphone encore des années parce qu’il est en parfait état de fonctionnement (et que les autres modèles, même nouveaux, sont justes moins bons et plus chers, hein ;-)). Quand on vous dit qu’on veut des micrologiciels libres qu’on peut mettre à jour nous-même pour pouvoir faire ce que vous ne souhaitez pas faire, ce n’est pas du pipeau, c’est du concret !</p>
<p>Bon, pour exploiter cette faille il faut exécuter du code sur la machine. Comme d’habitude, n’exécutez que du code et des applications en lesquelles vous avez confiance et essayez de ne pas perdre votre téléphone. Les plus paranos voudront peut-être ne pas enregistrer d’empreinte digitale dans leur téléphone.</p>
<p>Je ne peux pas m’empêcher d’y voir une porte d’entrée pour déjouer des DRM, qui reposent sur la sécurité de la TrustZone, et d’espérer que ça arrivera.</p>
<div><a href="https://linuxfr.org/users/raphj/journaux/qualcomm-corrige-une-faille-critique-dans-des-dizaines-de-puces-snapdragon.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/117153/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/raphj/journaux/qualcomm-corrige-une-faille-critique-dans-des-dizaines-de-puces-snapdragon#comments">ouvrir dans le navigateur</a>
</p>
raphjhttps://linuxfr.org/nodes/117153/comments.atomtag:linuxfr.org,2005:Diary/351442014-08-01T10:37:50+02:002014-08-01T10:37:50+02:00L'USB c'est moisi, ça propage des virusLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Un bon petit article alarmiste pour commencer ce trolldi.</p>
<p>L'article source, que je préfère résumer car le ton m'a l'air trop alarmiste : <a href="http://www.nikopik.com/2014/08/la-norme-usb-possede-une-enorme-faille-de-securite-qui-ne-pourra-pas-etre-comblee.html">La norme USB possède une énorme faille de sécurité qui ne pourra pas être comblée</a></p>
<p>Qui a lui-même une source sur <a href="http://www.wired.com/2014/07/usb-security/">Wired</a>.</p>
<p>La Black Hat Security Conference à Las Vegas, c'est dans une semaine ! On va donc faire monter la hype avec une annonce fracassante d'une des conférences : à cause d'une faille de conception, il est possible de créer un virus qui se planque dans le firmware usb, et qui profite en open bar de l'ordinateur, peu importe son OS. Les deux auteurs ont modestement appelé leur fierté "BadUSB". Un petit "On ne peut pas patcher le firmware, on ne peut pas détecter le virus, les antivirus sont inutiles".</p>
<p>Ah si, il y a une chose possible : s'assurer que sa clé n'est pas infectée, et qu'elle n'est pas insérée dans un ordi potentiellement infecté. Le SIDA appliqué à la sécurité informatique ? Miam !</p>
<p>Les clés USB sont concernés, mais aussi tout ce qui se branche par USB : souris, webcam…</p>
<p>L'article de Wired finit sur un "bouh les constructeurs d'appareils ils veulent pas écouter qu'il y a un problème".</p>
<p>Des moules ici ont déjà vu des scénarios similaires ? Gros risque en vue ? Pétard mouillé ? <s>Ne ratez pas la suite de cet épisode palpitant sur Direct8 après la pub, ce programme vous est présenté par le fabuleux Morandini !</s></p><div><a href="https://linuxfr.org/users/zarmakuizz/journaux/l-usb-c-est-moisi-ca-propage-des-virus.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/102910/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/zarmakuizz/journaux/l-usb-c-est-moisi-ca-propage-des-virus#comments">ouvrir dans le navigateur</a>
</p>
Zarmakuizzhttps://linuxfr.org/nodes/102910/comments.atomtag:linuxfr.org,2005:Diary/348922014-04-15T14:52:44+02:002014-04-15T15:26:44+02:00journal bookmark : vers un fork d'OpenSSL ?Licence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Bonjour Nal,</p>
<p>je t'écris pour te faire part d'un possible fork d'OpenSSL par les développeurs d'OpenBSD qui ont démarré depuis quelques jours un <a href="http://undeadly.org/cgi?action=article&sid=20140415093252">nettoyage complet</a>.</p>
<p>Entre autres :</p>
<ul>
<li>suppression des fonctionnalités heartbeat qui ont conduit au bug de la semaine dernière;</li>
<li>suppression de beaucoup de code cryptographique en trop;</li>
<li>suppression de wrappers autour de fonctions standard, en particulier pour malloc qui <a href="http://www.tedunangst.com/flak/post/heartbleed-vs-mallocconf">entravait des techniques de mitigation d'exploit</a>
</li>
</ul><p>et autres nettoyages divers (cf premier lien), ce qui vu de loin paraît assez impressionnant en juste quelque jours.</p>
<p>Il ne reste plus qu'à attendre pour voir ce qu'il adviendra, mais en tous cas ce qui est sûr c'est que le code d'OpenSSL va être passé à la loupe, et peut-être que finalement le bug de la semaine dernière aura de bonnes conséquences à long terme.</p>
<p>NdM: <em>correction du nom de la fonctionnalité TLS</em></p><div><a href="https://linuxfr.org/users/anaseto/journaux/journal-bookmark-vers-un-fork-d-openssl.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/101883/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/anaseto/journaux/journal-bookmark-vers-un-fork-d-openssl#comments">ouvrir dans le navigateur</a>
</p>
anasetohttps://linuxfr.org/nodes/101883/comments.atomtag:linuxfr.org,2005:News/342222013-05-17T17:50:42+02:002013-05-19T14:38:45+02:00Root exploit sur les noyaux linux 2.6.38 à 3.8.8Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<div><p>Un nouveau root exploit est apparu mardi et concerne les noyaux Linux de 2.6.38 à 3.8.8 ayant CONFIG_PERF_EVENTS activé.</p>
<p>Tapez la commande suivante pour savoir si vous êtes impacté :<br /><code>zgrep CONFIG_PERF_EVENTS /proc/config.gz</code></p>
<p>Si zgrep répond cette ligne, vous êtes impacté.<br /><code>CONFIG_PERF_EVENTS=y</code></p>
<p>Le patch existe depuis plusieurs semaines mais n'a pas été forcement intégré dans toutes les distributions - cherchez le code CVE-2013-2094 dans les derniers security advisory.</p>
<p>La Debian Wheezy a été patchée ce matin (je mets le lien vers le mail de la liste de diffusion « security » car je ne trouve pas l'annonce de sécurité debian sur le site).</p>
<p>Pour ceux qui ne peuvent pas patcher immédiatement leur noyau, il faut suivre le lien vers l'outil de suivi de bug de redhat qui propose plusieurs solutions temporaires plus ou moins efficaces.</p></div><ul><li>lien nᵒ 1 : <a title="http://arstechnica.com/security/2013/05/critical-linux-vulnerability-imperils-users-even-after-silent-fix/" hreflang="en" href="https://linuxfr.org/redirect/86398">Critical Linux vulnerability imperils users, even after “silent” fix</a></li><li>lien nᵒ 2 : <a title="http://lists.debian.org/debian-security-announce/2013/msg00077.html" hreflang="en" href="https://linuxfr.org/redirect/86399">[DSA 2669-1] linux security update</a></li><li>lien nᵒ 3 : <a title="https://bugzilla.redhat.com/show_bug.cgi?id=962792" hreflang="en" href="https://linuxfr.org/redirect/86400">Solutions de mitigation du probleme</a></li></ul><div></div><div><a href="https://linuxfr.org/news/root-exploit-sur-les-noyaux-linux-2-6-38-a-3-8-8.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/98330/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/root-exploit-sur-les-noyaux-linux-2-6-38-a-3-8-8#comments">ouvrir dans le navigateur</a>
</p>
Guillaume EstivalNÿcorootixBenoît Sibaudhttps://linuxfr.org/nodes/98330/comments.atomtag:linuxfr.org,2005:Diary/330432012-08-28T13:40:42+02:002012-08-30T23:02:49+02:00Java ça pue c'est trop libre.Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Finalement j'ai l'impression que c'était inéluctable, que ça devait arriver un jour ou l'autre…</p>
<pre>
<code class="java"><span class="kd">public</span> <span class="kt">void</span> <span class="nf">init</span><span class="o">()</span>
<span class="o">{</span>
<span class="k">try</span>
<span class="o">{</span>
<span class="n">disableSecurity</span><span class="o">();</span>
</code>
</pre>
<p>Alors là évidemment quand ça commence comme ça…</p>
<p>Bon, pour ceusses qui l'ignorent encore ou ont toujours leur plugin Java d'activé dans leur navigateur, il y a un 0Day qui circule depuis au moins 2 jours:<br /><a href="http://labs.alienvault.com/labs/index.php/2012/new-java-0day-exploited-in-the-wild/">http://labs.alienvault.com/labs/index.php/2012/new-java-0day-exploited-in-the-wild/</a><br /><a href="http://eromang.zataz.com/2012/08/27/java-7-applet-rce-0day-gondvv-cve-2012-4681-metasploit-demo/">http://eromang.zataz.com/2012/08/27/java-7-applet-rce-0day-gondvv-cve-2012-4681-metasploit-demo/</a></p>
<p>A priori Linux serait également impacté, mais je n'ai pas pu le vérifier : je n'ai pas le JRE d'Oracle et pas non plus l'envie de tester.<br />
Les classes se nomment (nommaient ?) Gondzz et Gondvv. Mais Oracle n'a pas l'air inquiet pour autant.<br />
Il y a pourtant eu un CVE très explicite d'attribué par MITRE avant celui de Kurt Seifried (RedHat):<br /><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-4681">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-4681</a></p>
<p>Bien évidemment, il y a déjà un module Metasploit de disponible pour tous les script-kiddies qui ne sont pas en vacances scolaires.</p>
<p>Bref, en attendant la sortie de <em>Unbreakable Java</em>, il vous est recommandé au minimum de désactiver vos plugins dans les navigateurs ou de vous passer de la JRE d'Oracle.</p>
<p>
<em>NdM : cela concerne le JRE 7 et non Java 6, voir <a href="http://immunityproducts.blogspot.fr/2012/08/java-0day-analysis-cve-2012-4681.html">http://immunityproducts.blogspot.fr/2012/08/java-0day-analysis-cve-2012-4681.html</a> pour une doc' (merci à René Quirion et Christophe Turbout pour leurs commentaires).</em>
</p><div><a href="https://linuxfr.org/users/letoff/journaux/java-ca-pue-c-est-trop-libre.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/95352/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/letoff/journaux/java-ca-pue-c-est-trop-libre#comments">ouvrir dans le navigateur</a>
</p>
Raoul Volfonihttps://linuxfr.org/nodes/95352/comments.atomtag:linuxfr.org,2005:Diary/324302012-04-06T11:29:41+02:002012-04-06T11:29:41+02:00Le vers est dans le fruit<p>Tout le monde savait que cela devait finir par arriver:<br />
Un cheval de Troie spécifique aux ordinateurs fonctionnant sur Macos a envahi les ordinateurs Apple.<br /><a href="http://www.lemonde.fr/technologies/article/2012/04/06/les-mac-d-apple-seraient-vises-par-une-attaque-informatique_1681500_651865.html">http://www.lemonde.fr/technologies/article/2012/04/06/les-mac-d-apple-seraient-vises-par-une-attaque-informatique_1681500_651865.html</a><br />
Voilou un superbe argument commercial qui s'effondre RIP, mais avec le développement d'Androïd, nous n'avons pas forcément à nous réjouir. Visiblement la vulnérabilité d'un OS est fonction de sa part de marché, avec une progression exponentielle.</p><div><a href="https://linuxfr.org/users/vincentd/journaux/le-vers-est-dans-le-fruit.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/90212/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/vincentd/journaux/le-vers-est-dans-le-fruit#comments">ouvrir dans le navigateur</a>
</p>
Nitchevohttps://linuxfr.org/nodes/90212/comments.atomtag:linuxfr.org,2005:News/284582011-08-31T11:41:54+02:002021-07-11T19:20:01+02:00Clé web USB et sécuritéLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<div><p>C'est l'histoire d'une personne qui reçoit un gros document papier, contenant une clé USB en forme de clé de porte (voir la photo en seconde partie de la dépêche). On se dit que la clé USB doit contenir la version numérique du document papier, et on branche négligemment l'objet sur son ordinateur.</p>
<p>Une fois branchée sous Windows, la clé ouvre la fenêtre Exécuter avec le raccourci clavier [Touche windows+R], tape une adresse HTTP de site web et confirme la demande. On se retrouve avec un navigateur (disons Internet Explorer par défaut sous Windows) qui ouvre un site distant inconnu. En l'occurrence la clé pointe vers le site du vendeur de ce gadget (l'adresse était en erreur la première fois que je l'ai branchée…), qui lui-même pointe vers le site désiré par l'acheteur de cet objet promotionnel.</p>
</div><ul><li>lien nᵒ 1 : <a title="https://bugs.launchpad.net/ubuntu/+source/linux/+bug/798858" hreflang="en" href="https://linuxfr.org/redirect/72932">Bug #798858 in linux (Ubuntu): “USB Webkey devices send arbitrary keyboard input to focused window</a></li><li>lien nᵒ 2 : <a title="http://www.theregister.co.uk/2011/06/27/mission_impossible_mouse_attack/" hreflang="en" href="https://linuxfr.org/redirect/72933">The Register: Hackers pierce network with jerry-rigged mouse</a></li></ul><div><p>Comment ça marche ? Simple, la clé se fait passer pour un clavier, et envoie des séries de touches dès qu'elle est branchée. Sous Windows, la clé apparaît dans le gestionnaire de périphériques comme un <code>HID Keyboard Device</code>.</p>
<p>Sous GNU/Linux, lsusb montre comme périphérique USB<br>
<code>Bus 005 Device 003: ID 05ac:020b Apple, Inc. Pro Keyboard [Mitsumi, A1048/US layout]</code><br>
et usb-devices précise <br>
<code>P: Vendor=05ac ProdID=020b Rev=03.01</code><br>
<code>S: Manufacturer=WebKey</code><br>
<code>S: Product=WebKey</code><br>
et la série de touches envoyées (récupérable sur la console par exemple) est du type <code>^[r^[r^[r^[r^[r^[[1~^[[4http://r.w3bk33.c0m/xxxxxxxxxxxxxxxx $</code>.</p>
<p>Je résume : à des fins promotionnelles, on fournit à un public ciblé un objet qui envoie vers un site tiers via des redirections. Déjà au niveau sécurité c'est moyen (public ciblé donc attaque ciblée possible, site potentiellement hostile, adresse codée en dur qui restera après que l'opération promotionnelle ait disparue mais pas forcément pour un spammeur, etc.), mais surtout on se dit que ce système permet de faire beaucoup plus que ça. Au final, en se faisant passer pour un clavier, inséré à son insu par l'utilisateur, n'importe quelle commande pourrait être exécutée : effacement de données, dépôt d'un exécutable et exécution de celui-ci, <code>sudo kill -9 -1</code>, etc. Ici pas de parefeu USB qui bloquerait l'action, pas de confirmation, rien. Tout est automatique, on branche et c'est fait.</p>
<p>En sécurité informatique, il est largement connu que dès que l'attaquant a un accès physique à la machine, les choses vont de mal en pis. On est malheureusement habitué aux disquettes à secteur d'amorce infecté, aux cédéroms avec <code>autorun</code> hostile, etc. On se méfierait sûrement si quelqu'un nous disait « tiens branche <a href="http://fr.wikipedia.org/wiki/Enregistreur_de_frappe">ce dongle qui capture les touches entre ton clavier et ton ordi</a> » ou « connecte cette clé 3G pour me filer un accès à ta machine pour que je contourne ton parefeu d'entreprise ». Et pourtant ici on est tellement habitué aux clés (ou aux souris, cf article The Register) USB que l'on ne se méfie pas… À tort.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f6f756d70682e667265652e66722f7465787465732f7765625f7573625f6b65792e6a7067/web_usb_key.jpg" alt="Clé web USB" title="Source : http://oumph.free.fr/textes/web_usb_key.jpg"></p>
</div><div><a href="https://linuxfr.org/news/cle-web-usb-et-securite.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/87238/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/cle-web-usb-et-securite#comments">ouvrir dans le navigateur</a>
</p>
Benoît Sibaudhttps://linuxfr.org/nodes/87238/comments.atomtag:linuxfr.org,2005:Diary/315132011-08-25T11:42:03+02:002011-08-25T11:42:03+02:00Apache n'apprécie pas le HTTP RangeLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Un <a href="http://thread.gmane.org/gmane.comp.apache.announce/58">bug exploitable à distance</a> a récemment été découvert sur le serveur HTTP Apache et affecterait toutes les versions depuis la 1.3.</p>
<p>Le bug provient de la façon dont Apache traite une requête HTTP demandant plusieurs rangées de données se chevauchant. En effet, il est possible de spécifier dans l'en-tête HTTP la <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.2">rangée des données</a> que l'on veut recevoir au lieu des données complètes. Ceci est notamment utilisé lors du téléchargement d'un fichier et permet de reprendre le téléchargement là où il s'était arrêté.</p>
<p>L'attaque est assez simple puisqu'il suffit d'envoyer un ensemble de requêtes demandant des rangées se chevauchant. Un simple <a href="http://seclists.org/fulldisclosure/2011/Aug/175">script Perl</a> permet donc de mettre à genou un serveur. Celui-ci va prendre toutes les ressources CPU et consommer toute la mémoire. Ceci entraîne inévitablement la consommation du <code>swap</code> et donc l'asphyxie du système.</p>
<p>Pour l'heure aucun patch n'est disponible mais des solutions sont proposées, à savoir, limiter les requêtes de ce type.</p>
<p>On notera que la version Apache 1.3 d'OpenBSD ne semble <a href="http://marc.info/?l=openbsd-misc&m=131424693000610">pas être affecté</a> par ce phénomène. OVH à quant à lui complètement <a href="http://travaux.ovh.net/?do=details&id=5711">désactivé</a> les requêtes HTTP Range sur les serveurs mutualisés en attendant la résolution du problème.</p><div><a href="https://linuxfr.org/users/spack/journaux/apache-nappr%C3%A9cie-pas-le-http-range.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/87167/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/spack/journaux/apache-nappr%C3%A9cie-pas-le-http-range#comments">ouvrir dans le navigateur</a>
</p>
Spackhttps://linuxfr.org/nodes/87167/comments.atomtag:linuxfr.org,2005:Diary/286612009-08-14T11:11:08+02:002009-08-14T11:11:08+02:00Encore un trou de sécurité, encore Brad qui s'amuse...
Après la dernière vulnérabilité du noyau Linux ( voir la news de Victor <a href="http://linuxfr.org//2009/07/18/25744.html">ici</a> ) on aurait pu espérer un peu de répit...mais c'est raté !<br />
Deux membres du Google Security Team (Tavis Ormandy et Julien Tinnes) ont découvert une faille dans le noyau qui permet un exploit local (un simple utilisateur peut passer root).<br />
Leur annonce avec les explications se trouve <a href="http://thread.gmane.org/gmane.comp.security.full-disclosure/68951">sur cette page</a> et la correction du bug, par Linus en personne, a été postée <a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e694958388c50148389b0e9b9e9e8945cf0f1b98">ici</a>.<br />
<br />
Comme la dernière fois, Brad Spengler a repéré cette annonce de vulnérabilité sur la mailing-list Full disclosure et il a écrit un exploit qui l'utilise afin de prendre le contrôle de tous les anciens noyaux contenant la faille.<br />
Son exploit est disponible à cette adresse : <a href="http://grsecurity.net/~spender/wunderbar_emporium.tgz">http://grsecurity.net/~spender/wunderbar_emporium.tgz</a><br />
<br />
On peut y voir une petite vidéo (des gens qui jouent à la roulette russe...très symbolique ;-) et le code de l'exploit qui contient des commentaires sarcastiques du genre : "<i>nice work Linus on trying to silently fix an 8 year old vulnerability, leaving vendors without patched kernels for their users</i>".<br />
<br />
Comme la dernière fois il semble que cet exploit nécessite une faille de Pulseaudio et il s'appuie sur le bug dans la fonction personality() qui permet de passer à travers de la protection "mmap_min_addr" (donc les systèmes utilisant SELinux sont vulnérables).<br />
Selon Brad l'exploit "<i>works on any vulnerable kernel (I've tested extensively here on at least 15 VMs, x86, x64, 2.4, 2.6, with creds, without creds, 4k stacks, 8k stacks)</i>".<br />
<br />
Comme l'exploit ressemble beaucoup au précédent et nécessite la présence des mêmes bugs (Pulseaudio et personality) on peut espérer que l'impact sera moindre puisque les distributions auront patché leurs anciens noyaux pour fermer ces trous de sécurité.<br />
Pour une distributions sérieuse se faire avoir par le premier exploit était excusable du fait de sa nouveauté, se faire avoir par le second serait tout bonnement impardonnable !<div><a href="https://linuxfr.org/users/patrick_g/journaux/encore-un-trou-de-s%C3%A9curit%C3%A9-encore-brad-qui-samuse.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/54981/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/patrick_g/journaux/encore-un-trou-de-s%C3%A9curit%C3%A9-encore-brad-qui-samuse#comments">ouvrir dans le navigateur</a>
</p>
patrick_ghttps://linuxfr.org/nodes/54981/comments.atomtag:linuxfr.org,2005:News/257442009-07-18T14:16:53+02:002009-07-18T14:16:53+02:00Exploit local dans le noyau Linux 2.6.30<div>Brad Spengler, mainteneur du projet <a href="http://fr.wikipedia.org/wiki/Grsecurity" title="Définition Wikipédia">Grsecurity</a>, a publié un exploit local pour le noyau Linux. Seule la version 2.6.30 du noyau est impactée. L'exploit a été publié rapidement car aucune distribution n'utilise cette version pour le moment. Il est capable de contourner les protections AppArmor, SELinux, LSM, et désactive l'audit. La faille concerne les interfaces réseaux virtuelles tun et <a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=33dccbb050bbe35b88ca8cf1228dcf3e4d4b3554">a été introduite</a> en février dernier. D'abord considérée comme un simple bug, elle a été découverte le 4 juillet, <a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3c8a9c63d5fd738c261bd0ceece04d9c8357ca13">corrigée le lendemain</a>, puis Brad a publié son exploit le 15 juillet.
<br />
<br />
Brad profite de l'exploit pour dire tout le mal qu'il pense de la gestion de la sécurité dans le noyau Linux (lire notamment tous les commentaires présents dans le fichier exploit.c du tgz). Il reproche notamment la correction silencieuse de failles qui pose problème aux distributions Linux : les mainteneurs ne savent pas quels patchs doivent être backportés dans les branches stables. Il reproche également l'absence d'analyse de l'impact d'un bug en terme de sécurité : certaines failles sont considérées comme non exploitables, alors qu'elles le sont.
<br />
<br />
La seconde partie de cette dépêche détaille la faille.</div><ul><li>lien nᵒ 1 : <a title="http://grsecurity.net/~spender/cheddar_bay.tgz" hreflang="en" href="https://linuxfr.org/redirect/63169">Exploit "cheddar bay" (.tar.gz)</a></li><li>lien nᵒ 2 : <a title="http://isc.sans.org/diary.html?storyid=6820" hreflang="en" href="https://linuxfr.org/redirect/63170">A new fascinating Linux kernel vulnerability (ISC SANS)</a></li><li>lien nᵒ 3 : <a title="http://lwn.net/Articles/341773/" hreflang="en" href="https://linuxfr.org/redirect/63171">Article Linux Weekly News</a></li></ul><div>La faille est intéressante, car en lisant le code source, elle ne semble pas exploitable. En fait, comme le pointeur est déréférencé avant qu'on teste si le pointeur est NULL, gcc supprime le test car il suppose que de toute façon le déréférencement causera une erreur fatale. L'option -fno-delete-null-pointer-checks de gcc permet de désactiver cette optimisation. Extrait du code posant problème :
<br />
<code>struct sock *sk = tun->sk;
<br />
...
<br />
if (!tun) return POLLERR;</code>
<br />
L'exploit alloue de la mémoire à l'adresse 0 (NULL) dans l'espace utilisateur où le code de l'exploit sera écrit. Le déréférencement du pointeur NULL ne cause donc pas d'erreur dans le noyau.
<br />
<br />
En décembre 2008, Julia Lawall avait posté 3 patchs (<a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f51c5b6e623cc737d47f513cbb893cec914f0bd2">drm</a>, <a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6bf67672">agnx</a> et <a href="http://lkml.org/lkml/2008/12/19/162">go7007</a>) corrigeant des bugs similares. Les patchs ont été générés avec <a href="http://www.emn.fr/x-info/coccinelle/">Coccinnelle</a> : outil permettant de patcher les pilotes Linux en utilisant des règles décrites dans un langage haut niveau.</div><div><a href="https://linuxfr.org/news/exploit-local-dans-le-noyau-linux-2630.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/24791/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/exploit-local-dans-le-noyau-linux-2630#comments">ouvrir dans le navigateur</a>
</p>
Victor STINNERhttps://linuxfr.org/nodes/24791/comments.atomtag:linuxfr.org,2005:Post/260272008-10-13T03:11:09+02:002008-10-13T03:11:09+02:00Buffer Overflow exploit
Bonjour cher pingouins,<br />
<br />
Je travaille sur un compte rendu de sécurité informatique à propos de linux. Je prends trois exemple de vulnérabilités et je les étudies. Les trois exemples sont d'ordre différents. Je cherche une vulnérabilité assez récente de buffer overflow sur le kernel pour laquelle il a été réalisé un concept of proof ou un exploit et un correctif si possible.<br />
<br />
Pouvez-vous m'aider?<br />
<br />
J'en ai trouvés... mais bon.. soit pas d'exploit, soit trop vieux.<br />
<br />
Merci d'avance.<div><a href="https://linuxfr.org/forums/general-general/posts/buffer-overflow-exploit.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/80603/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/forums/general-general/posts/buffer-overflow-exploit#comments">ouvrir dans le navigateur</a>
</p>
Le Gall Sébastienhttps://linuxfr.org/nodes/80603/comments.atomtag:linuxfr.org,2005:Diary/261292008-02-11T13:42:32+01:002008-02-11T13:42:32+01:00Ça faisait longtemps: Local Root Exploit dans linux ! Triste semaine que voilà mon journal.<br />
Depuis quelque jours, la nouvelle est tombé dans toute les oreilles: un bug dans vmsplice permet d'élever ses privilèges de simple mortel à Dieu tout puissant.<br />
Le code malfaisant est comme d'habitude sur milw0rm ici => <a href="http://www.milw0rm.com/exploits/5092">http://www.milw0rm.com/exploits/5092</a> et là => <a href="http://www.milw0rm.com/exploits/5093">http://www.milw0rm.com/exploits/5093</a><br />
Heureusement un patch on-the-fly du kernel est possible: => <a href="http://www.ping.uio.no/~mortehu/disable-vmsplice-if-exploitable.c">http://www.ping.uio.no/~mortehu/disable-vmsplice-if-exploita(...)</a><br />
Le kernel est déjà patché et les distributions devraient incessament sous peu distribué de nouveaux kernel patchés.<br />
<br />
<a href="http://it.slashdot.org/it/08/02/10/2011257.shtml">http://it.slashdot.org/it/08/02/10/2011257.shtml</a>
<p>
----<br />
<b>NdM : Victor Stinner rajoute</b><br />
Deux exploits root locaux circulent sur Internet : <a href="http://www.milw0rm.com/exploits/5092">Linux Kernel 2.6.17 - 2.6.24.1 vmsplice Local Root Exploit</a> et <a href="http://www.milw0rm.com/exploits/5093">Linux Kernel 2.6.23 - 2.6.24 vmsplice Local Root Exploit</a>.<br />
<br />
Ils exploitent un bug dans l'appel système vmsplice(). Le noyau 2.6.24.1 corrige partiellement le bug et la version 2.6.24.2 semble le corriger définitivement.<br />
<br />
Plus d'informations :<br />
* <a href="http://lkml.org/lkml/2008/2/10/8">LKML: "Niki Denev": kernel 2.6.24.1 still vulnerable to the vmsplice local root exploit</a><br />
* Gentoo : <a href="https://bugs.gentoo.org/show_bug.cgi?id=209460">Gentoo Bug 209460 - kernel 2.6.17 - 2.6.24.1 splice: missing user pointer access verification (CVE-2008-{0009,0010})</a><br />
* Ubuntu : <a href="https://bugs.launchpad.net/ubuntu/+source/linux/+bug/190587">Bug #190587 in linux (Ubuntu): “Local root exploit in kernel 2.6.17 - 2.6.24 (vmsplice)”</a><br />
* Debian : <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=464953">#464953 - linux-2.6: mmap() local root exploit - Debian Bug report logs</a><br />
<br />
Les patchs dans le noyau : <a href="http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.24.y.git;a=commit;h=1617e66d11d6621824f642728d62f242272fd063">splice: fix user pointer access in get_iovec_page_array()</a> (2.6.24.2) et <a href="http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.24.y.git;a=commit;h=cece280a46c9b5c0adb4d5251f42c082a578e1ad">splice: missing user pointer access verification (CVE-2008-0009/10)</a> (2.6.24.1).<br />
<br />
Identifiants CVE : <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0009">CVE-2008-0009</a> et <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0010">CVE-2008-0010</a>.
</p><div><a href="https://linuxfr.org/users/inico/journaux/%C3%A7a-faisait-longtemps-local-root-exploit-dans-linux.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/52525/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/inico/journaux/%C3%A7a-faisait-longtemps-local-root-exploit-dans-linux#comments">ouvrir dans le navigateur</a>
</p>
inicohttps://linuxfr.org/nodes/52525/comments.atom