Kévin Subileau

Espace personnel

DSC01946_w

Réparer une souris qui fait des doubles-clics intempestifs

Si vous avez comme moi la malchance de posséder une souris qui a acquis la fâcheuse tendance à faire des doubles-clics alors que vous ne cliquez qu'une seule fois, sachez qu'il est peut-être possible de la réparer avec seulement quelques outils et un soupçon de patience.

L'origine de ce défaut peut être logicielle (problème de configuration), mais le plus souvent il s'agit d'un souci matériel. C'est donc uniquement ce dernier cas que je vais traiter dans cet article. Avant toute chose, assurez-vous donc que, dans votre cas, le problème est bien d'origine matérielle. Pour cela, je vous conseille si possible de tester la souris sur un autre ordinateur et/ou de tester une autre souris.

Notez toutefois que, comme toute intervention sur le matériel, cela va annuler la garantie si votre souris est toujours couverte et qu'il y a un risque, minime mais non négligeable, de rendre la souris totalement inopérante si vous commettez une maladresse. C'est un peu quitte ou double !

De plus, la réparation proposée ci-dessous n'est pas définitive. En effet, le défaut peut réapparaitre au bout d'un certain temps (6 mois, 1 an ou plus), auquel cas il faut simplement réitérer l'opération.
Lire la suite →

windows-10-desactiver-onedrive

Windows 10 - Désactiver OneDrive et l'enlever de l'explorateur de fichiers

Vous l'avez sans doute remarqué, OneDrive est intégré par défaut à Windows 10, et officiellement, selon Microsoft, il n'est pas possible de le désactiver. C'est bien dommage, car si comme moi vous n'utilisez absolument pas ce service, il a tendance à paraître un peu encombrant en s'incrustant dans l'explorateur de fichiers. Mais en réalité, il existe plusieurs moyens de le désactiver et surtout de l'enlever de l'explorateur de fichiers de Windows 10.

Par exemple, si vous utilisez l'édition Professionnelle de Windows 10, vous pouvez désactiver OneDrive via une stratégie de groupe (group policy). Les utilisateurs de l'édition Famille devront en revanche passer par le registre pour y parvenir.

Windows 10 Famille

La méthode suivante s'applique à Windows 10 Famille et permet de faire disparaître OneDrive du système sans pour autant le désinstaller complétement, ce qui permet de le restaurer plus facilement plus tard si nécessaire.

Pour commencer, cliquez avec le bouton droit sur l'icône de OneDrive (deux petits nuages blanc ou gris) dans la zone de notification, puis sur Paramètres. Pensez à cliquer sur la petite flèche dirigée vers le haut pour faire apparaître toutes les icônes si celle de OneDrive ne semble pas présente à première vue.

onedrive-open-settings

Ensuite, dans la nouvelle fenêtre qui s'affiche, décochez la case "Lancez automatiquement OneDrive quand j'ouvre une session Windows" puis cliquez sur OK. De cette manière, OneDrive ne s’exécutera plus automatiquement au démarrage.

onedrive-settings

Si vous ne prévoyez plus d'utiliser OneDrive, vous pouvez également cliquer sur le bouton "Supprimer le lien vers OneDrive" de cette même fenêtre. Cela a pour effet de désactiver la synchronisation des fichiers jusqu'à ce que vous le configuriez à nouveau. Si vous n'avez pas encore configuré OneDrive, ce bouton sera grisé comme sur la capture précédente.

Ensuite, vous pouvez si vous le souhaitez masquer l'entrée "OneDrive" située dans le volet de navigation latéral de l'explorateur de fichiers. Il faut pour cela effectuer une modification dans le registre.

Pour vous simplifier la tâche, je vous propose de télécharger cette archive contenant les fichiers .reg permettant d'effectuer les modifications nécessaires automatiquement. Ouvrez cette archive et double-cliquez sur le fichier .reg approprié selon si vous avez une version 32 bits ou 64 bits de Windows, puis confirmez votre action en cliquant sur Oui dans le message qui s'affiche. Pour connaitre la version que vous utilisez, tapez "A propos de votre PC" dans le champ de recherche de la barre des tâches, cliquez sur l'entrée du même nom dans les résultats, puis observez la ligne "Type du système" dans la fenêtre qui apparait. L'archive que je vous propose inclus également les fichiers .reg permettant de restaurer l'entrée "OneDrive" si vous souhaitez revenir en arrière.

L'entrée "OneDrive" devrait disparaitre immédiatement après avoir effectué la modification dans le registre. Si ce n'est pas le cas, essayez de redémarrer l’ordinateur.

Si vous préférez ne pas utiliser l'archive contenant les fichiers .reg et effectuer les modifications à la main, il faut alors ouvrir le registre puis passer la valeur System.IsPinnedToNameSpaceTree de la clé HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\ à 0. Sur les éditions 64 bits, il faut également effectuer la même opération sur la clé HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6\.

Si vous avez synchronisé des fichiers depuis votre OneDrive avant de le désactiver, vous pouvez également supprimer les copies locales de ces fichiers présentent sur votre PC pour libérer un peu d'espace. Pour cela, supprimez les fichiers présent dans le dossier C:\Users\Nom\OneDrive (remplacez Nom par le nom de votre compte utilisateur).

Windows 10 Professionnel, Enterprise ou Education

Si vous utilisez l'édition Professionnelle, Enterprise, ou Education de Windows 10, vous pouvez utiliser l'éditeur de stratégie de groupe pour accéder à des options de personnalisation avancée du système, et ainsi désactiver OneDrive complétement sur le système.

Pour cela, tapez gpedit.msc dans le champ de recherche Windows puis validez par la touche Entrée. Naviguez ensuite dans le dossier Stratégie Ordinateur Local\Configuration ordinateur\Modèles d'administration\Composants Windows\OneDrive.

Double-cliquez sur la ligne "Empêcher l'utilisation de OneDrive pour le stockage des fichiers" présente dans le panneau de droite, puis choisissez "Activé" et cliquez sur OK. Cela désactive complétement l'accès à OneDrive dans l'ensemble du système, y compris depuis des applications du Windows Store. Pour réactiver OneDrive, il suffit de choisir "Non configuré" au lieu de "Activé" pour le réglage précédent.

onedrive-gpo

Voilà qui devrait vous permettre de nettoyer votre espace de travail en supprimant OneDrive si vous ne l'utilisez pas. Personnellement je trouve dommage que Windows ne permettent pas de faire cela officiellement par un réglages dans les paramètres, mais cela deviendra peut-être le cas grâce une prochaine mise à jour...

icon-graduation-hat

Cérémonie de remise des diplômes de l'ISIMA - Promotion 2015

Le 26 septembre 2015, l'ISIMA a célébré au Casino de Royat la remise des diplômes à sa 19e promotion d’ingénieurs en informatique, dont je fais partie. Au cours de cette cérémonie organisée par l'AssoFinale, une association d'étudiants de 3e année, 108 étudiants ont été diplômés par l’école, dont 17 double-diplômes et 16 étudiants en alternance par contrat de professionnalisation.

Plusieurs personnalités locales étaient conviées à cet événement pour féliciter et encourager les jeunes diplômés, comme par exemple le président de l'université Blaise Pascal, le vice-président du conseil régional d'Auvergne, ou encore le parrain de cette promotion, M. Gilles Chaudesaigues, également directeur commercial de Modis France-Sud.

La vidéo ci-dessous, que j'ai réalisée pour l'occasion, vous permet de voir ou revoir l'intégralité des discours prononcés lors de cette cérémonie :

eclipse-super-lune

Eclipse totale de Super-Lune du 28 septembre 2015

Dans la nuit du 27 au 28 septembre, entre 3 h et 7 h (heure française, UTC+2), une éclipse totale de Super-Lune s'est produite. Cet événement est le résultat d'une rare combinaison de deux phénomènes. D’une part, le Soleil, la Terre et la Lune étaient alignés sur le même axe. Cette situation plonge la Lune dans l’ombre de la Terre, provoquant une éclipse totale de Lune. Mais d’autre part, au même moment, la Lune était aussi pleine et à son périgée, c'est à dire au plus proche de la Terre. L'astre apparaissait donc plus gros et plus brillant que d'habitude.

L'avantage d'une éclipse lunaire par rapport à une éclipse solaire est que l'observation ne nécessite aucun équipement de protection particulier, ni pour les yeux, ni pour l'appareil photo. Il m'a donc suffit de sortir en pleine nuit, équipé d'un bon trépied et de mon bridge Sony DSC-HX200V, pour prendre quelques photographies de cet événement, dont je vous propose une sélection dans cet article. Vous pouvez cliquer sur les images pour les voir en plus grand format.

23 h 12 : La Super-Lune

Le ciel est dégagé, la Lune est très lumineuse et nous offre une nuit très claire. Du coup, peu d'étoiles sont visibles à l’œil nu. Toutes les conditions sont réunies pour permettre l'observation de l'éclipse prévue 4 heures plus tard.

Lire la suite →

redresser-pdf-numerise

Redresser un document PDF numérisé avec Acrobat Pro

J'ai l'habitude de numériser la plupart des documents papiers que je reçois pour pouvoir les archiver, les retrouver et imprimer des copies plus facilement. Pour cela, j'utilise souvent le chargeur automatique de document de mon scanner, mais celui-ci à la fâcheuse tendance à numériser un peu en biais, ce qui n'est pas très propre.

J'ai donc recherché une solution simple pour corriger l'inclinaison de mes documents PDF numérisés, et j'ai finalement trouvé cette méthode utilisant Adobe Acrobat Pro (à ne pas confondre avec Acrobat Reader, Adobe Reader, ou Acrobat Reader DC).

Tout d'abord, ouvrez le document que vous souhaitez redresser sous Acrobat Pro. Ensuite, cliquez sur Outils (1) pour ouvrir le panneau latéral correspondant. Si le volet Traitement du document n'est pas présent, ce qui est le cas par défaut, cliquez sur la petite icône (2) en haut à droite du panneau latéral pour faire apparaitre un menu déroulant, comme le montre la capture ci-dessous.
adobe-acrobat-tools-panel

Dans ce dernier, parmi la liste des panneaux proposés, sélectionnez Traitement du document. Vous pouvez également ouvrir ce panneau en passant par le menu principal via Affichage, Outils puis Traitement du document.
adobe-acrobat-document-processing-panel

Déroulez le panneau Traitement du document si ce n'est pas déjà fait puis cliquez sur Optimiser le fichier PDF numérisé.
adobe-acrobat-optimize-scanned-pdf

Sur la nouvelle fenêtre qui s'affiche, décochez les cases Compression adaptative (1) et Indexation (ROC) (2) puis cliquez sur le bouton Modifier (3) de la section Filtres.
adobe-acrobat-optimize-scanned-pdf-2

Assurez-vous que le redressement est activé puis cliquez deux fois sur OK. Vous pouvez également essayer les autres optimisations proposées comme la suppression de l'arrière-plan, le détramage ou l'amélioration de la netteté du texte.
adobe-acrobat-optimize-scanned-pdf-filters

Et voilà, avec ça vous devriez pouvoir corriger tous les défauts d'inclinaison de vos documents numérisés. Personnellement je regrette un peu qu'il n'y ait pas un mode "manuel" où l'on pourrait indiquer directement une valeur en degrés, mais ce traitement automatique fonctionne tout de même plutôt bien.

wordpress-hack

Local file disclosure vulnerability in Crayon Syntax Highlighter

I discovered a local file disclosure vulnerability affecting all versions before 2.7.0 of Crayon Syntax Highlighter, a popular syntax highlighter built in PHP and jQuery. According to wordpress.org, the vulnerable versions of this WordPress plugin are installed on more than 40,000 websites.

This critical vulnerability allows remote attackers to read arbitrary files on server's file system, even outside the web root. This includes PHP source code, configuration files and system files as /etc/passwd or wp-config.php for example. Furthermore, as you will see below, authentication is generally not required to exploit this vulnerability. Of course, the web server must have read access on the target files.

I tested a few versions between the old 1.10 to the latest 2.6.10, with a freshly installed WordPress 4.1 and the default configuration, and all tested versions were vulnerable. This means that the vulnerability exists since at least 3 years.

Technical analysis

Crayon Syntax Highlighter can highlight from a URL, inline code, or a local file. Here are some examples of normal markup that could be put inside post content in order to highlight code from these three source types:

<!-- Inline code -->
<pre class="lang:php">
    <?php //code to highlight here ?>
</pre>

<!-- URL -->
<pre class="lang:java" data-url="http://example.com/class.java"></pre>

<!-- Local file - the interesting case -->
<pre class="lang:java" data-url="/java_sample/class.java"></pre>

In the local file case, by default, the path given in the data-url attribute is relative to the WordPress root directory. In the plugin settings page, the user can also specify a sub-folder from which this relative path should start. But, as you can see below in this piece of code extracted from crayon, the problem is that there is absolutely no control over the file type or the path given (stored in the variable $url).

// Try to replace the site URL with a path to force local loading
if (strpos($url, $site_http) !== FALSE || strpos($url, $site_path) !== FALSE ) {
    $url = str_replace($site_http, $site_path, $url);
    // Attempt to load locally
    $local = TRUE;
    $local_url = $url;
} else if (empty($scheme)) {
    // No url scheme is given - path may be given as relative
    $local_url = preg_replace('#^((\/|\\\\)*)?#', $site_path . $this->setting_val(CrayonSettings::LOCAL_PATH), $url);
    $local = TRUE;
}
// Try to find the file locally
if ($local == TRUE) {
    if ( ($contents = CrayonUtil::file($local_url)) !== FALSE ) {
        $this->code($contents);
    } else {
        // [...]
    }
}

The given path is simply prepended with the base path at line 79, and then the file's content is loaded at line 84 (the method CrayonUtil::file just calls the function file_get_contents). So, for example, assuming that the administrator hasn't modified the standard WordPress file structure and with the default settings, it's possible to get the database credentials and WordPress secret keys simply by putting the code below inside a post or page content:

<pre data-url="/wp-config.php"></pre>

You can also use a directory traversal attack to reach the root directory and get the content of /etc/passwd for example:

<pre data-url="/../../../../../../../../../../../../../../../../../etc/passwd"></pre>

Of course it's also possible to get the content of theme's source files, .htaccess and .htpasswd files, log files, and other files that could contain highly sensitive information.

But so far, I told you that these exploits must be put inside a post or page, so normally this requires authentication. But the real issue is that unauthenticated visitors can also exploit the vulnerability simply by posting a comment containing the same malicious markup (except when an alternative comment system is used, as Disqus). It's because Crayon can also highlight inside comments, and this feature is enabled by default. This is why I say that authentication is generally not required to exploit this vulnerability.

Even if comments are moderated before publication, the issue remains the same because WordPress display the comment to its author before moderation with a message like "Your comment is awaiting moderation.". So the file content is revealed before the administrator can delete the malicious comment.

You can see bellow a screen capture showing the exploit in action, both inside the post content and a comment before moderation:

Disclosure of /etc/passwd and wp-config.php (click to enlarge)

Disclosure of /etc/passwd and wp-config.php (click to enlarge)

Vendor response

I sent the initial report of the vulnerability to the plugin author on January 4. He replied quickly and confirmed the issue.

On April 5, he informed me that he had patched the issue. Finally, on April 13, he released the version 2.7.0, which includes this patch.

I thank him for his cooperation and his excellent work.

Remediation

The preferred solution is to update quickly to the latest version (>= 2.7.0), which fix the vulnerability by removing support of local file highlighting.

In the event where you really cannot install the update, an alternative way to limit risks is to disable Crayon in comments, in order to prevent attacks from unauthenticated visitor. But it will still be possible to exploit the vulnerability through a post or page content...

Disable Crayons in comments to prevent unauthenticated attacks

Disable Crayons in comments to prevent unauthenticated attacks

CVSS Score

I evaluate the CVSS Score at 7.8 (AV:N/AC:L/Au:N/C:C/I:N/A:N).

References

Secunia : #63998.
WPVDB : #7904.
OSVDB : #121278.

About me

For non-French speakers that can't read others pages about me on this blog (sorry, it's currently primarly intended to French speakers), I will introduce me briefly in English here so that you can know who am I. I'm Kevin Subileau, 23 years old. I'm not a professional security researcher (yet), but I'm a passionate in computing science, junior system & network engineer by day, and web developer by night, also interested by computing security. You can contact me by leaving a comment below (in English or French), on Twitter or by filling this form (fields are, top to bottom, name / email / subject / comment).

chrome-to-phone

Transférer facilement des pages Web d'un PC à un périphérique Android

J'ai longtemps cherché un moyen simple de transférer l'adresse d'une page Web depuis mon ordinateur vers mon smartphone Android, pour terminer ma lecture en déplacement par exemple. Jusqu’alors, je copiais l'adresse sur un service en ligne pour générer un QR-code que je flashais. On peut aussi s'envoyer l'URL par email ou la recopier manuellement. Ces méthodes fonctionnent bien, mais elles ne sont pas très pratiques.

Mais ça, c'était avant. En effet, j'ai récemment découvert une application Android gratuite, qui, combinée à une extension pour Chrome ou Firefox, permet de réaliser cette tâche d'un simple clic. Cette application, c'est Google Chrome To Phone.

Envoi de liens et de textes

Pour commencer, téléchargez et installez l'application Google Chrome To Phone sur votre smartphone ou votre tablette. Au premier lancement, l'application vous demandera le compte Google à utiliser pour le transfert.

chrome-to-phone-first-screen

Premier lancement de Chrome To Phone

Ensuite, selon votre navigateur, vous devez installer l'extension correspondante. Pour Google Chrome, ça se passe ici. Sur Firefox, elle se nomme FoxToPhone. Une fois installée, vous devriez voir apparaitre une nouvelle icône en haut à gauche de la fenêtre, comme ci-dessous.

chrome-to-phone-extension

L'icône de l'extension, sur Chrome (en haut) et Firefox (en bas)

En cliquant sur cette icône pour la première fois (puis sur le lien Connexion pour Chrome), il vous sera demandé de vous connecter à votre compte Google et d'autoriser l'application à l'utiliser pour le transfert. Bien entendu, vous devez indiquer le même compte que celui que vous avez sélectionné sur votre Android.

Voilà c'est prêt ! Désormais, si vous cliquez à nouveau sur l'icône, la page Web sur laquelle vous êtes sera automatiquement ouverte sur votre smartphone ou votre tablette. Et si c'est un lien Youtube ou Google Maps, l'application correspondante sera lancée. Y'a pas plus simple et efficace, et ça marche aussi si vous n'êtes pas relié au même réseau, y compris en 3G/4G !

Vous pouvez aussi passez par le menu contextuel en faisant un clic droit sur un lien, puis en cliquant sur Chrome To Phone (sur Chrome) ou Envoyer ce lien vers Android (sur Firefox). Pratique pour les liens pointant vers un téléchargement ;) .

Il y a juste une petite limitation : si vous utilisez l'application simultanément sur plusieurs périphériques et avec le même compte Google, les liens seront envoyés à tous les périphériques. Je n'ai pas trouvé de moyen d'en sélectionner un en particulier autrement qu'en utilisant des comptes différents.

Envoi de fichiers et de dossiers

Chrome To Phone ne permet que l'envoi de liens, de textes ou de numéros de téléphone, et uniquement dans le sens ordinateur vers Android. Si vous souhaitez en plus pouvoir envoyer aussi facilement des fichiers et dans les deux sens, vous pouvez essayer l'application Files Drag & Drop.

L'application Files Drag & Drop sur PC et smartphone

L'application Files Drag & Drop sur PC et smartphone

Le principe reste le même, vous devez installer l'application sur votre Android et sur votre ordinateur. L'avantage par rapport à Google Drive ou Dropbox est que les fichiers sont transférés directement de pair à pair, et ne passent pas par une plateforme d'hébergement ou un service tiers sur Internet. Ainsi, le transfert est plus rapide et vous pouvez envoyer des données sensibles sans inquiétude. En revanche, contrairement à Google Chrome To Phone, il est nécessaire que le smartphone et le PC soit connecté au même réseau local, et cela ne fonctionne donc pas via la 3G/4G. De plus, pour pouvoir bénéficier de toutes les fonctionnalités sans pub, vous devrez débourser 2€ pour acheter la version complète.

Voilà en tout cas des applications bien pratiques pour faciliter le transfert de données entre votre ordinateur, votre tablette et votre smartphone !

cupcake-candle-first-birthday

Bilan 2014 : deux ans déjà !

La fin de l'année 2014 arrive à grand pas et le site fête aujourd'hui ses deux ans, alors que, dans le même temps, je fête mes 23 ans ! Il est donc temps de faire un petit bilan sur la vie de ce site durant l'année 2014.

Commençons par quelques statistiques, pour voir un peu ce qui s'est passé en 2014. Et cette année, le moins que l'on puisse dire, c'est que je me suis auto-proclamé roi de la procrastination avec seulement 15 articles publiés, pour un total de 45 articles disponibles sur le site... Mais malgré cela, vous êtes toujours très nombreux à me lire, et ça, ça fait très plaisir !

Pour 2014, mon outil de statistiques (Piwik) m'indique un total de 84242 visites ! Après une forte augmentation l'an passé, la fréquentation s'est stabilisée cette année autour de 6500 visiteurs uniques par mois, comme on peut le voir sur la courbe ci-dessous :

Évolution des visites uniques par mois durant l'année 2014

Évolution des visites uniques par mois durant l'année 2014

On retrouve le même trio de tête que l'année précédente concernant les articles les plus lus. A eux deux, les articles sur le suivi d'avion en vol en direct et celui sur le cassage des mots de passe VBA totalisent toujours près de 70 % des vues uniques ! Ils sont suivis par l'article sur la configuration de la page d'accueil d'un onglet sur Firefox, avec 12 % des vues.

Du coté de la répartition des systèmes d'exploitation et navigateurs utilisés, c'est toujours le duo Windows 7 / Firefox qui l'emporte assez largement. Mais surtout, on remarque que Windows 8 arrive 4 points derrière... Windows XP ! Pour mémoire, Windows XP n'est plus mis à jour par Microsoft depuis avril 2014...

stats-2014-os-browsers

Répartition des systèmes et navigateurs utilisés en 2014

Voilà pour les chiffres. En deux ans, je trouve aussi que l'apparence du site a pris un petit coup de vieux. De plus, j'ai appris beaucoup de nouvelles techniques et de bonnes pratiques sur le développement web, en particulier l'utilisation d'outils comme CakePHP, Sass/Compass, Grunt/Gulp, Composer, PHPStorm, PuPHPet... Tout cela en grande partie grâce à Grafikart et à ses excellents tutoriels, que je tiens à remercier et que je vous recommande vivement si vous souhaitez progresser en développement Web.

Bref, tout ça pour vous dire que je travaille depuis déjà quelques mois sur un tout nouveau design, qui, je l'espère, verra le jour très prochainement. Il y a un an, je vous avez d'ailleurs déjà annoncé des nouveautés sur le site. Vous ne les avez sans doute pas vu, et pour cause, elles n'ont pas vu le jour... Pour tout vous dire, le nouveau design était même prévu pour aujourd'hui, mais force est de constater que ce n'est pas prêt et que je suis encore obligé de repousser...  Cela est dû principalement à mes études qui me phagocyte tout mon temps. Je tiens également à prendre le temps nécessaire pour mettre en application mes nouvelles connaissances et ne pas reproduire les mêmes erreurs de conception d'il y a deux ans qui me conduisent aujourd'hui à devoir repartir de zéro...

En cette fin d'année, j'ai également dû lutter contre quelques contraintes techniques. En effet, j'ai atteint mon quota de 200 Mo pour la base de données MySQL de mon hébergement mutualisé. J'ai donc dû trouver des solutions plus ou moins dans l'urgence, et j'ai finalement opté pour un serveur privé virtuel (ou VPS). Pour le moment, j'ai seulement déplacé Piwik, qui prenait beaucoup de place. Je verrai par la suite si je reste comme ça ou si je migre également WordPress.

En attendant, je vous remercie d'être toujours aussi nombreux à me lire et je vous rappelle que vous pouvez vous abonner au flux RSS pour ne louper aucun article, ou également me suivre sur Twitter.

A bientôt et joyeuses fêtes !