Menu

english flag

Spray passwords, avoid lockouts

Spray passwords, avoid lockouts

Le password spraying, c’est une technique connue qui consiste à tester un même mot de passe sur plusieurs comptes, en espérant que ce mot de passe fonctionne pour l’un d’entre eux. Cette technique est utilisée dans beaucoup de cadres différents : Sur des applications web, du cloud, des services comme SSH, FTP, et bien d’autres. On l’utilise également beaucoup dans des tests d’intrusion au sein d’entreprises utilisant Active Directory. C’est à ce dernier cas que nous allons nous intéresser, parce que bien que la technique paraisse simple, ce n’est pas évident de la mettre en pratique sans effets de bord.


Lire la suite →

Tokens ERC20 et ERC721

Tokens ERC20 et ERC721

Une grande partie des applications décentralisées utilisent des tokens pour fonctionner correctement. Alors que les coins sont intrinsèques à chaque blockchain (Ether pour Ethereum, par exemple, Sol pour Solana, etc.), les tokens sont des jetons qui sont créés sur une blockchain déjà existante par l’intermédiaire de smart contracts. Ainsi, à l’aide d’un smart contract, il est possible de créer un token appelé “HackndoToken” dont le symbole serait “HND”, par exemple. Ce token pourrait exister en nombre limité, et nous pourrions même faire en sorte que chaque jeton HND soit unique.


Lire la suite →

Données sensibles d'un smart contract

Données sensibles d'un smart contract

Vous vous souvenez des différents espaces de stockages auxquels a accès l’EVM ? Celui comparable au disque dur d’un ordinateur est le account storage. C’est cette zone mémoire dans laquelle l’état du contrat est enregistré. Mais vous vous souvenez aussi que la blockchain Ethereum est une machine a états décentralisée, accessible en lecture à tout le monde ? Vous voyez où je veux en venir ? Toutes les données enregistrées par un smart contract peuvent être lues par tout le monde. Si jamais des données sensibles sont enregistrées par un smart contract, nous serons en capacité de les lire.


Lire la suite →

Ethereum Virtual Machine

Ethereum Virtual Machine

Ethereum Virtual Machine (EVM) est une machine virtuelle qui permet de gérer des transactions dans la blockchain Ethereum par le biais de smarts contracts. C’est un composant essentiel au fonctionnement de Ethereum que nous allons tenter de comprendre ensemble.


Lire la suite →

Ethereum

Ethereum

Contrairement à des blockchains comme Bitcoin, qui permet essentiellement d’effectuer des transactions de cryptomonnaie Bitcoin, Ethereum possède en plus un truc assez extraordinaire, c’est l’exécution de code décentralisée.

Oui, décentralisée. Ça veut dire qu’il est possible d’écrire un programme, du code quoi, et de le faire exécuter non pas sur un serveur, mais sur des milliers de serveurs ou nœuds. Et les résultats de notre programme sont également enregistrés de manière décentralisée. Je ne sais pas vous, mais moi je trouve ça incroyable, et ça m’a vraiment donné envie de creuser un peu le sujet.


Lire la suite →

Blockchain 101

Blockchain 101

Depuis plusieurs années, je m’intéresse à un sujet dont vous avez probablement entendu parler, les blockchains. Je trouve ça fascinant qu’une technologie permette à des milliers de personnes de s’accorder sur énormément de sujets sans besoin d’intermédiaire. La décentralisation est un sujet qui à mon sens a beaucoup de potentiel, et nous verrons sur le long terme si cette technologie perdurera ou non. Quoiqu’il en soit, en l’état, ça bouillonne, ça bouillonne fort ! Plus récemment, j’ai commencé à m’intéresser à la blockchain Ethereum, aux smart contracts, et à la sécurité des smart contracts. On va parler de tout ça ici, c’est parti.


Lire la suite →

Ecrire et contourner un EDR côté noyau - Partie 1 : Kernel & Drivers

Ecrire et contourner un EDR côté noyau - Partie 1 : Kernel & Drivers

Dans cette série d’articles nous allons un peu changer de sujet (Active Directory) pour nous intéresser aux EDR. Plus particulièrement, nous allons nous intéresser au fonctionnement des EDR côté noyau. Avant de rentrer dans le vif du sujet, quelques notions sur l’architecture Windows vont être rappelées avant d’évoquer le fonctionnement d’un EDR côté utilisateur (User-Land), puis de descendre dans le noyau (Kernel-Land). Nous expliquerons alors comment ces deux mondes communiquent, puis nous détaillerons les structures manipulées du côté noyau dans le but d’expliquer le fonctionnement d’un pilote, ou driver. Tous ces éléments nous permettront alors d’écrire notre premier driver, pour ensuite l’enrichir et le transformer en EDR avec lequel on peut communiquer depuis le User-Land. Nous finirons en écrivant un autre driver qui aura pour but de contourner les protections que nous avons mises en places.

Sacré programme, n’est-ce pas ? Buckle up, et c’est parti.


Lire la suite →

Relais NTLM

Relais NTLM

Le relais NTLM est une technique consistant à se mettre entre un client et un serveur pour effectuer des actions sur le serveur en se faisant passer pour le client. Correctement utilisée, elle peut être très puissante et peut permettre de prendre le contrôle d’un domaine Active Directory sans avoir d’identifiants au préalable. L’objet de cet article est d’expliquer le relais NTLM, et de présenter ses limites.


Lire la suite →