Enigma – Cryptographie, Fonctionnement et implémentation

Enigma, Quèsaco ?

Comment la machine est-elle apparue ?

Un peu d’histoire…

Durant la première guerre mondiale, les allemands utilisaient le code ADFGVX pour chiffrer leurs messages. Il faut savoir que ce chiffrement était fait à la main par un soldat, il n’était donc pas possible de l’utiliser à grande échelle. Durant cette guerre, les anglais avaient réussi à décrypter ce code, et connaissaient alors les prochains mouvements de l’ennemi. Ils en ont donc tiré parti pour vaincre l’Allemagne.

Lors de la Seconde Guerre Mondiale, les Allemands ont voulu à tout prix éviter la guerre de position, très meurtrière et peu efficace. Ils ont décidé d’adopter la « guerre de mouvement » ou les avions attaquent l’arrière des lignes, pendant que l’infanterie et les chars attaquent le front sur une vaste étendue. Mais pour pouvoir coordonner cela, il leur a fallu trouver un moyen de communication, rapide et chiffré afin de pouvoir déployer leur force rapidement, sans que leurs ennemis en aient connaissance.

L’homme à l’origine de la machine allemande est Arthur Scherbius, qui déposa le brevet en 1918. Elle ne fut pas utilisée par les militaires tout de suite à cause de l’armistice. Elle fut donc d’abord commercialisée publiquement. … Lire la suite

TP PowerShell – AdminSDHolder, AdminCount, et reset

Salut les gens,

Aujourd’hui on va s’attarder (un bon moment) sur un mécanisme de sécurité dans le service d’annuaire Active Directory de Microsoft : AdminSDholder.

AdminSDHolder

Le mécanisme dit couramment « AdminSDHolder » est un processus qui s’exécute toutes les heures sur le PDC d’un domaine Active Directory, et qui modifie les ACLs (pour Access Control Lists) des objets de l’AD ayant l’attribut « admincount » à 1. L’ACL est modifiée pour casser l’héritage et appliquer les mêmes droits que ceux en place sur l’objet AdminSDHolder dans le schéma, ici :

CN=AdminSDHolder, CN=System, DC=equestria, DC=com

Comment se retrouve-t-on avec admincount à 1 sur son compte AD ?

Par une contamination de zombie par morsure évidemment, hein ! Plus exactement, au départ dans un Active Directory, certains groupes et utilisateurs « sensibles » (dit, Protected Groups et au nombre de 13 en 2008R2) ont déjà cet attribut à 1 par défaut, (voir KB318180). Par exemple le groupe « Admins du Domaine » ou le compte « krbtgt ». Ensuite tout objet qui devient membre d’un de ces groupes (y compris par héritage) est alors « contaminé » et son attribut admincount passe également à 1.

Pourquoi ce mécanisme ?

Cette … Lire la suite

Convertir un fichier d’imprimante .PRN en PDF

Salut les gens,

Je vous propose un article rapide sur le format PRN et sur un problème rencontré aujourd’hui :

Quand vous imprimez un fichier deux langages peuvent être utilisés pour communiquer avec l’imprimante (dans 99% des cas) :

Les deux technos principales :

Selon l’environnement ou vous ou trouvez (Linux/Windows) et la taille de la barbe de votre Admin Système, vous pouvez : avoir l’un, ou l’autre, ou les deux disponibles.

Qu’est ce qui se passe quand j’imprime ?

Au moment où vous imprimer, un fichier « .PRN » est généré et envoyé à l’imprimante. Le problème c’est que, si vous avez des systèmes de sniffeur réseaux, ou de copie au niveau des couches pilotes (pour la traçabilité des impressions), par exemple.

Ce sera fichier PRN décrivant l’impression qui sera tracé et pas votre le PDF/doc/odt comme vous aimeriez.

GhostScript et GhostPCL en pratique avec PRN

Si le mal est fait et que vous avez déjà un fichier .PRN à récupérer, et plus la source il est facile de le convertir en PDF grâce aux utilitaires GhostScript ou GhostPCL.

Je vous donne la commande pour cotre fichier PRN en PDF … Lire la suite

TP Cryptographie – Attaque d’un chiffre de Vigenère

Salut à tous,

Dans la série des TPs en cryptographie, je vais continuer à remonter le temps et les principaux algorithmes de cryptographies historiques.
Dans ce premier TP sur la cryptographie on avait vu comment mener une attaque statistique sur un chiffre de césar. Je n’avais pas souhaité vous montrer le brute-force pour la simple et bonne raison que qu’il me semble vraiment inintéressant à implémenter sur une clé de taille 26 au maximum…

Du coup, aujourd’hui on va passer au chiffre de Vigenère, avec un vrai texte de plusieurs lignes et une clé un peu plus complexe.

Prérequis

Pour que tout fonctionne bien j’ai dû faire quelques modifications sur les fonctions du TPs précédent. Notamment pour la gestion des caractères spéciaux, espaces, et autres ponctuation. Ça s’est traduit par une fonction Remove-AllButAlphabet que je vous donne ci-dessous (et que j’ai lâchement pompé ici).

<#
.SYNOPSIS
Retire tous les caractères autres que a-z dans un texte
.DESCRIPTION
Retire tous les caractères autres que a-z dans un texte, remplace les spéciaux par leur forme "classique" (ç->c ; é->e)
.INPUTS src
Le message à nettoyer
.OUTPUTS
La chaîne sans les spéciaux
.EXAMPLE
PS C:\Mon\Pc> Remove-AllButAlphabet -src 'Chiffre par Vigenère une chaîne 
Lire la suite