Création d’une clé usb bootable en ligne de commande

De mon coté j’ai beaucoup de problèmes avec Unetbootin, qui est sensé être la référence sous Linux pour créer des clés usb bootable. Sous Windows j’utilise Linux Live USB Creator qui est parfait, très ergonomique, grand choix de distributions, mode live, et surtout il fait bien le job. C’est à dire que quand on lui demande de faire une clé usb bootable ca marche à tous les coups :)
Unetbootin ne propose pas le formatage de la clé avant l’installation, du coup au bout de 3 utilisations on a les fichiers d’installation de 3 distributions qui sont mélangés, un menu de boot avec 20 choix, et généralement plus grand chose qui se lance. J’ai aussi souvent des problèmes lors de la création des clés usb : erreur en tout genre, ou assistant qui ne se termine pas tout simplement.
Bref je me suis mis à la recherche d’un remplacant pour Unetbootin, mais je n’ai pas trouvé mon bonheur. Usb-creator semble pas mal, mais à mon premier test j’ai eu une erreur bizarre, genre le nom de la distribution incorrecte, donc ca n’a pas marché (c’est balo quand même). Il existe aussi Multisystem, qui d’après mes souvenirs fait le job mais est un peu trop complexe à utiliser à mon gout. Il faudra que je reteste.
Après quelques minutes de recherche j’ai enfin trouvé la solution ultime, simple et fonctionnelle pour créer des clés usb bootage. Ca se fait en ligne de commande avec une commande ultra simple :

 dd if=/home/user/monimage.iso of=/dev/sdb

Deux petits inconvénients tout de même :

  •  rien ne s’affiche à l’écran une fois la commande lancée jusqu’à la fin de la création
  • si vous souhaitez réutiliser la clé avec des fichiers classiques il faudra passer via Gparted pour supprimer et recréer les partitions

Blacklister une adresse ip avec iptables


l arrive fréquemment d’avoir des rigolos qui spamment vos pages avec un test de sécurité (qui remplit 3000 fois chaque formulaire pour tester les failles), il suffit que vos pages ne soit pas forcément très optimisées (sur un site qui fait 1000 vues par jour on optimise par forcément autant que sur un site qui fait 1M/jour) et c’est rapidement la panique. Si les formulaires font des insertions en base de donnée et/ou envoie des mails, le load du serveur augmente rapidement, et votre machine perso est polluée par les emails.
Une solution simple lorsque tout le trafic vient d’une seule ip est de la blacklister dans iptables. Vous pouvez bien sur le faire dans votre application ou au niveau de apache, mais le plus radical est de le faire dans iptables, c’est la que votre machine sera le moins impactée.

Blacklister une ip:
  iptables -A INPUT -s 123.45.67.89 -j DROP

Pour tous les paquets venant de cette ip, on DROP le paquet
A mettre tout en haut de vos règles de pare feu si vous avez un script pour remplir iptables

Blacklister une plage d’ip:
  iptables -A INPUT -s 1.2.3.0/24 -j DROP

Même principe, mais en précisant un sous-réseau dans la commande. Ici on blackliste toutes les ips de notre plage (de 1.2.3.1 à 1.2.3.254)
Evidemment ces règles ne solutionnent pas les attaques plus sophistiquées de type DDOS avec une multitude d’adresses ips utilisées, mais dans les cas les plus courant, ca permettra de restaurer le calme sur votre serveur rapidement.

Comment monter une image .iso sous linux ?



Habitué de Windows et de ses Daemon Tools, Alcohol et compagnie ? Vous ne trouvez pas d’équivalent sous linux ?
Voici la solution en 2 lignes de commandes (en root):

  mkdir /media/cdiso

  mount -o loop -t iso9660 monimage.iso /media/cdiso
En général un raccourci bureau « cdiso » apparait ainsi qu’un raccourci dans le menu de l’explorateur de fichiers
Si vous avez besoin de déplacer/supprimer le fichier iso, un simple umount /media/cdiso déverrouillera le fichier 

[PyQt4] Convertisseur de devise


Convertisseur de devise est une application développée avec PyQt4.
Ce logiciel permet de convertir en temps réel les devises nationales des pays en s'appuyant sur les données mises en ligne de la Banque de Canada (url:http://www.bankofcanada.ca/en/markets/csv/exchange_eng.csv). Ce logiciel permet aussi de convertir en temps réel 1 Bitcoin en devises nationales en s'appuyant sur le données mis en ligne sur le site Bitpay (url: http://www.bitpay.com) et sur d'afficher l'évolution de Litecoin en s'appuyant sur les données du site Btc-E (url: http://www.btc-e.com).
Source: Github.

PyGI Photo-Viewer : Une visionneuse d'image crée avec PyGI



PyGI Photo-Viewer est une simple visionneuse d'image crée avec PyGI qui permet de parcourir, pivoter et de se déplacer dans le dossier de l'image sélectionnée.

Dépendances:
    ~ Python 3
    ~ PyGObject 3
    ~ Gtk3+

Formats supportés:
    ~ JPG
    ~ JPEG
    ~ GIF
    ~ PNG

Téléchargement : Github

Steam : un bug supprime tous les fichiers des utilisateurs sur les distributions Gnu/Linux


Les utilisateurs de Steam, le célèbre outil de Valve Software qui permet aux gamers de télécharger, jouer et gérer la liste de leurs jeux vidéo sur PC, ont reporté il y a quelques jours de cela, un bug assez inquiétant sur la version Linux de l’outil. En effet, il semblerait qu'un défaut au niveau du code causerait la suppression de tous les fichiers liés au compte de l'utilisateur.

Selon le rapport d'erreur, le fait de déplacer Steam vers un autre emplacement dans le système de fichiers, puis de tenter de lancer le client de nouveau finit par exécuter la commande suivante : « rm -rf /* ». Cette commande, connue par tous les utilisateurs du Shell, a pour effet d'effacer de manière récursive tous les fichiers à partir du répertoire racine, ce qui implique tous les fichiers de l'utilisateur, mais aussi les lecteurs de sauvegarde montés et/ou partagés en réseau, à l'exception des fichiers systèmes appartenant au super-utilisateur « root » qui sont conservés.

« Il s'est réinstallé et tout avait l'air super. Jusqu'à ce que j'ai regardé et vu qu'il avait apparemment tout supprimé, y compris mes 3 To de fichiers sur mon disque dur externe », s'exclama un utilisateur sur GitHub.

Après vérification, la cause du bug a été détectée. Il s'agit d'une simple négligence qu'on peut voir dans le code suivant :

# Scary!

rm -rf "$STEAMROOT/"*

Comme on peut le voir, le contenu de la variable $STEAMROOT n'est pas vérifié. Si celle-ci était vide, le code causerait effectivement l'appel à la suppression des fichiers à partir du répertoire racine « / ». A remarquer que le commentaire #Scary (ie: effrayant) laisse penser que le programmeur savait qu'il y avait un risque qu'une telle chose puisse se produire. On attend toujours la réaction de Valve Software.

En attenant, il est conseillé aux utilisateurs d'éviter de déplacer le répertoire Steam et de s'assurer d'avoir une copie de ses fichiers au cas où …

Source : GitHub

Tous les LiveCD existants sont classés et disponibles sur The LiveCD List


The LiveCd List est un site à mettre directement dans les favoris, il ne fait finalement pas grand chose, mais ce qu'il fait est d'une efficacité et d'une utilité remarquable. Le site recense tous (ou presque) les LiveCD existants, avec pour chacun un lien de téléchargement et un lien vers le site officiel.

Ce qui est pratique, c'est son menu qui permet de cibler rapidement ce que vous recherchez :


  • Creation Tools: contient une liste de logiciels pour créer un liveCD / liveUSB.
  • Purpose: vous pouvez choisir le thème de ce que vous recherchez, si vous mettez security, vous tomberez sur une liste de LiveCD dédiés à la sécurité informatique comme: Kali Linux, Hackin9 Live, OphCrack LiveCD, etc.
  • Operating system: pour choisir le système d'exploitation.
  • Platform: pour choisir votre plateforme.

Un site à garder bien au chaud dans les favoris.

Sécurité : des failles vieilles de 27 ans découvertes dans le serveur d'affichage X Window

Ilja van Sprundel, un chercheur en sécurité de IOActive, a découvert un grand nombre de bugs dans le code source du système d’affichage open source X Window. Ces bugs sont causés par le code de base du serveur X et certains d’entre eux seraient présents depuis 1987. Ces bugs pourraient être exploités afin d’accéder à la mémoire non initialisée du serveur X, ce qui pourrait provoquer des erreurs de segmentation, ou utilisés pour exécuter du code arbitraire. Ils représentent donc des failles assez importantes.

Parmi ces failles, on peut citer le risque d’un déni de service en raison d’un malloc non vérifié lors de l’authentification du client. Ce dernier peut provoquer une erreur du système dans le serveur s’il envoie les valeurs qui feront échouer le malloc. Un autre bug concernant les entiers peut provoquer des débordements de mémoire (overflow), et une troisième faille permet de lire ou d'écrire au-delà des limites de la mémoire allouée lors du traitement de la demande.

Le risque est encore plus grand si « le serveur X est exécuté avec les privilèges root ; s’il est exposé aux clients du réseau ou limité aux connexions locales ; et s’il utilise des extensions de protocoles touchées, en particulier l'extension GLX ».

Ilja van Sprundel a travaillé avec l'équipe de sécurité de X.org pour confirmer et régler ces problèmes. Les corrections sont disponibles uniquement dans les commits git pour l'instant, mais sont prévues pour être incluses dans le xorg-server-1.17.0 et xorg-server-1.16.3.

Source : X.org

Les 7 meilleurs gestionnaires d'archive sur Gnu/Linux



  1. File roller :
    C'est un gestionnaires d'archive pour l'environnement de bureau GNOME. Il est utilisé pour des fonctions de compression et d'archivage. Il peut créer et modifier des archives, voir le contenu et également extraire les fichiers de l'archive. Il peut être également intégré dans l'environnement de bureau et de son gestionnaire de fichiers graphique qui rend l'emploi de l'archivage plus facile. Il prend en charge les archives tar, archives zip, les archives jar, archives RAR, archives Debian, les fichiers ISO, archives AR etc.
  2. PeaZip :
    Il est logiciel multi-plateforme pour l'archivage des fichiers portable et sa licence est LGPL. Il prend en charge plusieurs formats d'archive et de compression comme 7z, 7z-sfx, ARC / WRC, BZ2, GZ, LPAQ, PAQ, PEA, QUAD, split, TAR, UPX, ZIP, etc. Il est facile à intégrer dans GNOME et KDE. Ses principales caractéristiques incluent le chiffrement authentifié, l'application de plusieurs filtres pour archiver le contenu, générer des mots de passe aléatoires et des fichiers de clés.
  3. Xarchiver :
    Il est un outil de compression de fichier léger et simple pour le système d'exploitation Gnu/Linux. Il dispose d'une fonction de détection de mot de passe qui permet de savoir si les archives créées de fichiers sont avec un mot de passe ou non. Il dispose d'un glisser-déposer fonctionnalité qui peut ajouter des fichiers que vous voulez vous archiver. Vous pouvez également jeter un œil à la barre de progression pour vérifier l'état de l'extraction ou de l'archivage de vos fichiers. L'interface de l'application  est très facile à utiliser. Il supporte les formats comme 7-Zip, RAR, TAR, etc.
  4. Ark :
    Il est l'un des meilleurs utilitaires d'archivage de fichiers pour Gnu/Linux. Il a des charges de fonctionnalités qui vous permet de créer des archives de tous les fichiers, extraire des fichiers à partir d'archives et si vous n'êtes pas sûr de ce qui est là dans une archive particulier, vous pouvez également afficher le contenu de l'archive d'abord, puis les extraire. Réglez le taux de compression selon vos besoins et aussi mettre en place un mot de passe pour toutes les archives que vous créez. Il supporte les formats Zip comme tar, gzip, bzip2, rar etc.
  5. Dar :
    Archive disque ou "DAR" est un gestionnaire d'archive riche en fonctionnalités qui supporte les sauvegardes, compression, des tuyaux pour les opérations à distance et suppression des fichiers lors de la restauration. Il peut stocker la sauvegarde en plusieurs fichiers (appelé «tranches») d'une taille donnée et il existe des interfaces utilisateur graphiques disponibles pour "DAR" y compris "KDar" et "DarGUI". Ses principales caractéristiques comprennent la compression, extraction rapide de fichiers, la liste rapide de fichiers d'archives, restauration plat, les filtres, les opérations à distance, la protection des données, archives en sous-ensembles, etc.
  6. 7-Zip :
    Il est un gestionnaire d'archive populaire qui peut être utilisé sur les systèmes Gnu/Linux. Il permet de compresser des fichiers facilement à des taux de compression supérieurs à l'aide "LZMA2" et compression "LZMA". Il fournit des meilleurs taux de compression par rapport à "WinZip" et "PKZip" logiciel. 7-Zip  prend en charge plusieurs langues, plus de 79 langues différentes.
  7. Tar :
    Tar est un gestionnaire d'archive en mode console pour le conditionnement d'un ensemble des fichiers en une seule archive au format "tar". La fonction qu'il remplit est assez similaire à "cpio" et au logiciel comme "PKZIP" dans le monde "DOS". Il est largement utilisé par le système de gestion des paquets Debian et il est utile aussi pour effectuer des sauvegardes des systèmes et échanger des ensembles de fichiers avec d'autres personnes.

Sortie d'OpenSuse 13.2



OpenSuse 13.2 est sorti aujourd'hui le 7/11/2014 avec l'annonce de la fusion des distributions OpenSuse semi-rolantes instables (semi-roling instable) Factory et Tumbleweed en un seul projet nommé Tumbleweed.
Maintenant que OpenSuse 13.2 est à la porte, Tumbleweed sera, à mon avis, le choix de ceux qui veulent avoir un système à jour et qui englobe les dernières technologies de pointe. Il sera intéressant de voir comment une rolling release peut cohabiter et travailler aux côtés de la structure tradiotionnelle d'OpenSuse.
Cependant, dans OpenSuse 13.2 les développeurs ont opté pour le KDE 4.x en ajoutant quelques éléments des cadres KDE5. Ce dernier sera disponible dans les repos pour ceux qui veulent le tester.

Les utilisateurs de Gnome ne seront pas déçus comme ceux de KDE, OpenSuse 13.2 - Gnome aura Gnome 3.14, à l'exception de quelques programmes de Gnome 3.14 qui seront absent (Exemple : L'application météo, Photo Apps qui sera remplacée par Shotwell et l'application météo n'est pas intégrée par défaut).

Il faut noter aussi que les applications sont toutes mis à jour avec une nouveauté dans YaST qui opte pour Btrfs comme système de fichier par défaut.

Pour télécharger OpenSuse 13.2 :
 OpenSuse 13.2
Pus d'informations sur : OpenSuse Tumbleweed
Plus d'informations sur : OpenSuse Factory
Plus d'informations sur : Btrfs

UbuTricks – Un script Bash pour installer facilement certaines applications sur Ubuntu 14.04/14.10



Si vous tournez sur Ubuntu cela ne vous a sans doute pas échappé, il est possible d’installer des applications de plusieurs manières. Vous pouvez piocher directement dans les dépôts depuis l’USC, Synaptic, ou la ligne de commande, mais également passer par un .deb, un PPA ou en dernier recours via des sources à compiler. Si certaines de ces méthodes vous paraissent barbares ou difficiles à appréhender, vous pouvez également miser sur UbuTricks, un script bash très bien pensé et conçu dans le but de vous faciliter la tâche dans ce domaine. Basé sur Zenity pour la partie graphique, celui-ci va vous permettre d’installer (et de garder à jour) un certain nombre d’applications (environ 50) et ce quelque soit leur format.

S’il s’agit d’un PPA l’application sera téléchargée et installée depuis ce dernier, s’il s’agit d’un .deb elle sera installée à partir des binaires et s’il s’agit de sources la compilation sera automatique. Dans ce cas le processus sera cependant un peu plus long que pour le reste. UbuTricks gère également l’installation d’applications depuis d’autres scripts et depuis tous les types de référentiels (tiers ou non).

Parmi les applications d’ores et déjà prises en charge, on notera la présence de jeux tels que 0 A.D ou Battle for Wesnoth (Dev). On pourra également relever la présence de PCManFM, Double Commander, Brackets, Geary, HexChat, QupZilla, Midori, Audio Recorder, Fotoxx, GIMP, Shutter, Calibre, LibreOffice, CherryTree, Qmmp, XBMC, PeaZip, Cinnamon, Wine, etc…

Comme vous pouvez le voir toutes les catégories (ou presque) sont représentées et bien que le choix des applications soit encore limité, d’autres devraient arriver très vite. C’est un des objectifs du projet.

En toute franchise je ne sais pas trop ce que ça vaut, mais sur le papier ça a l’air plutôt pas mal. Si ça vous tente et que vous tournez sur Ubuntu (14.10 /14.04), vous pouvez vous rendre sur la page suivante pour en savoir un peu plus.

Si vous voulez passer direct à la phase test ce n’est pas bien compliqué. Il suffit de télécharger le script à l’aide de la commande suivante :

wget http://www.tuxarena.com/intro/files/ubutricks.sh
de lui attribuer les droits qui vont bien :

chmod +x ubutricks.sh
et de le lancer ainsi :

./ubutricks.sh
C’est tout!

Source : La-vache-libre.org

[PyGObject] Calculatrice PyGtk


Calculatrice PyGtk3+ est une calculatrice basique développée sous Python3 et en utilisant le module PyGObject (nommé aussi PyGI). 

Le principe de cette calculatrice est simple : 
 - L'utilisateur écrit les nombres de son équation
 - L'affichage est immédiat des nombres
 - Le point "." est remplacé lors de l'affichage par une virgule "," , mais il est utilisé comme un point lors des calculs internes de l'application
 - L'idée du calcule repose sur la fonction eval ,qui est une fonction propre à Python 3.xx, qui prend le texte affiché dans la Gtk.Entry (nommée : "entree" dans notre application) et le calcule. 
- En cas d'erreur lors de la saisie, rien ne se passe jusqu'à la correction de la syntaxe entrée.

**Fix & update** 27/10/2014 : 
  • Ajout des icônes sur les boutons : "Fermer", "Effacer tout" et "effacer le dernier chiffre"
  • Ajout des parenthèses "(" et ")"
  • Ajout du racine carré et de la méthode "calcul_racine"
  • Le bouton "=" occupe maintenant deux colonnes
**Fix ** 28/10/2014 :
  • Correction de la méthode "calcul_racine" et optimisation du code grâce à arshajii du forum stackoverflow.com
**Fix & Update** 29/10/2014  :
  • Ajout des fonctions trigonométriques
  • Optimisation du code
  • Création d'un dossier pour le logo et l'icône
**Update** 30/10/2014  :
  • Ajouter un sub-menu pour choisir le font et la taille de la Gtk.Entry

Vous pouvez télécharger le code source de Calculatrice PyGtk sur Github ou bien sur Google Drive

[Tutoriel] : Affichage d'une série de wagons, des personnages dans les fenêtres et changer la couleur des wagons.


Dans ce billet on va explorer un autre exemple d'un programme crée avec Python en utilisant le module "Tkinter" (nommé aussi : Tk). 
Ce billet utilisera des techniques vues dans ce billet, qui nous permettra d'afficher une fenêtre contenant trois wagons et plusieurs fenêtres. L'appui sur le bouton "Train" affichera les wagons, l'appui sur le bouton "Salut" affichera des petits visages dans les fenêtres et la saisie d'une couleur en appuyant sur le bouton "Éclaire" changera la couleur du premier et du troisième wagons. 
Voilà une image "gif" qui illustre le fonctionnement de notre programme. 


À noter : Le code source en Python est fonctionnel avec "Python 3" et plus. 
Avec les versions antérieures vous rencontrez des erreurs. Et aussi, il faut respecter l'indentation lors de la saisie du code sur vos IDE préférés.

Vous pouvez télécharger le code source (Mis en format .zip)  sur Google Drive.


ShellShock nouvelle vulnérabilité du Bash


ShellShock ? C'est quoi ? Et comment savoir si mes systèmes sont affectés ? 

Récemment, une nouvelle vulnérabilité a été trouvé qui a le potentiel d'affecter les distributions Gnu/Linux, Mac OS X et UNIX OS. La première découverte date du 24 Septembre 2014 et elle a été nommé "Bash Bug" ou "ShellShock", Le "Gnu Bash Remote Code Execution Vulnerability" (CVE-2014-6271 et CVE-2014-7169) peuvent donner aux Hackers le contrôle des données et du réseau du système infecté par ce bug.
La vulnérabilité affecte seulement le "Bash Shell" qui est un interpréteur de langage de commande. Elle permet au Hacker d'attacher des codes malicieux aux variables environnementaux qui affectent à leur tour les processus tournant sur un ordinateur.

Un test et des patchs ont été crée par la communauté Gnu/Linux pour éliminer ce bug de leur distributions.

Le test consiste à exécuter ces codes sur votre Bash terminale :

  Exploit 1 : CVE-2014-6271 :
     
~$ env x='() { :;}; echo Vulnérable' bash -c "echo c\'est un test"

    Si vous voyez Vulnérable alors vous devez appliquer le patch à votre Bash. Sinon vous n'êtes pas affecté par ShellShock.

  Exploit 2 : CVE-2014-7169 :
  
~$ env X='() { (shellshocker.net)=>\' bash -c "echo date"; 
cat echo; rm ./echo

 Si vous aurez des erreurs et non pas la date, votre système est infecté et vous devez appliquer le patch.

 Exploit 3 : 

~$  env X=' () { }; echo Vulnérable' bash -c 'date'

 Si le résultat est Vulnérable, votre système est infecté et vous devez appliquer le patch à votre système.

 Exploit 4 : CVE-2014-7186 :

~$  bash -c 'true <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF 
<<EOF <<EOF <<EOF <<EOF <<EOF <<EOF' || echo "CVE-2014-7186 vulnérable,
 redir_stack"
Si votre système est vulnérable vous aurez comme résultat : CVE-2014-7186 vulnérable, redir_stack.

 Exploit 5 : CVE-2014-7187 :

~$  (for x in {1..200} ; do echo "for x$x in ; do :"; done; 
for x in {1..200} ; do echo done ; done) | bash ||
 echo "CVE-2014-7187 vulnérable, word_lineno"

Si votre système est vulnérable vous aurez comme résultat : CVE-2014-7187 vulnérable, word_lineno.

Exploit 6 : CVE-2014-6278
 
~$ shellshocker='() { echo Vous êtes vulnérable; }' 
bash -c shellshocker

Si votre système est vulnérable vous aurez comme résultat : Vous êtes vulnérable. Sinon une erreur.


Pour détourner ce Bug et sécuriser votre Bash, veuillez appliquer la mise à jour de votre Bash comme suit : 

 Pour Suse, OpenSuse et leur dérivées : 
 
~$ yum update bash -y

 Pour Ubuntu et ses dérivées : 


~$  apt-get update; apt-get install --only-upgrade bash



Pour Arch Linux et ses dérivées : 

 
~$ pacman -Syu



Pour plus de détails, veuillez visiter le site officiel de ShellShock.