Category Archives: Programmation

PhpMyAdmin BruteForce

phpmyadmin

Aujourd’hui je vous propose un petit software que j’ai développé en 15 minutes et qui permet de bruteforcer un PhpMyAdmin.

L’objectif est donc de trouver le mot de passe d’un compte PhpMyAdmin est essayant de s’identifier avec plusieurs milliers de passwords.

IMPORTANT, sachez que je ne pourrais être tenu pour responsable de l’utilisation que vous ferez du logiciel PhpMyAdmin BruteForcer et que je l’ai développé dans un but pédagogique uniquement.

[ANDROID] Créer le raccourci de votre application Android sur le bureau

Android

Aujourd’hui je vous propose un petit snippet pour créer un raccourci de votre application Android sur le bureau de votre tablette ou votre smartphone.

Le code n’est pas très compliqué mais il est pratique.

Il n’est possible de créer qu’un seul shortcut Android par application.

//Fontion qui crée un shortcut sur la home
    private final void createShortcut(){
        // Get preference value to know that is it first time application is
        // being called.
        appPref = getSharedPreferences("isFirstTime", 0);
        isFirstTime = appPref.getBoolean("isFirstTime", true);
 
        if (isFirstTime) {
            // Create explicit intent which will be used to call Our application
            // when some one clicked on short cut
            Intent shortcutIntent = new Intent(getApplicationContext(), MainActivity.class);
            shortcutIntent.setAction(Intent.ACTION_MAIN);
            Intent intent = new Intent();
 
            // Create Implicit intent and assign Shortcut Application Name, Icon
            intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, AppConsts.SHORTCUT_TITLE);
            intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher));
            intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
            getApplicationContext().sendBroadcast(intent);
 
            // Set preference to inform that we have created shortcut on Homescreen
            SharedPreferences.Editor editor = appPref.edit();
            editor.putBoolean("isFirstTime", false);
            editor.commit();
 
        }
    }

Générer un certificat SSL autosigné avec OpenSSL

openssl

Aujourd’hui j’ai été amené à générer plusieurs certificats SSL autosignés.

Un certificat SSL permet d’utiliser un serveur HTTPS ou bien FTPS en mode sécurisé, ce qui assure le cryptage des données qui transite, limitant ainsi le risque de piratage ou de leak de data.

Il existe un certain nombre de sociétés qui vendent des certificats SSL vérifiés par des organismes de sécurité, mais ces certificats ne sont pas forcément bon marché.

Ils sont indispensables en production afin d’assurer la sécurité d’un serveur, mais en développement on peut se permettre de générer nous même des certificats SSL.

Ces certificats sont appelés “Certificat SSL autosigné” et il ne doivent servir qu’en développement et en test MAIS JAMAIS EN PRODUCTION.

Nous allons voir qu’il est facile de générer un certificat SSL autosigné avec OpenSSL.

[DotNet] Vérifier la disponibilité d’un port en écoute

dotnet microsoft

Nous vivons dans un monde surconnecté, c’est pourquoi la plupart des applications utilisent une architecture Client / Serveur afin de communiquer et transmettre des données.

Lorsqu’on développe une application Serveur qui va se mettre en écoute sur un ou plusieurs ports il est primordial de vérifier leur disponibilité.

En effet, sur une même machine il est impossible de mettre 2 applications en écoute sur le même port.

Voici la solution que j’utilise pour effectuer cette vérification de port listener.

[DotNet] Remplacer les caractères accentués et les caractères non imprimables

dotnet special character

La langue française est merveilleuse mais les caractères accentués peuvent vite devenir pénalisant dans le développement d’une application.

En effet, certains logiciels ne supportent pas ou mal l’encodage UTF8, et par conséquent les caractères spéciaux peuvent être mal interprétés.

Je vous propose donc une fonction DotNet qui remplacera les caractères accentués par le caractère équivalent non accentué.

[DotNet] Détecter la fermeture d’une application Console

dotnet microsoft

Aujourd’hui un collègue m’a posé une colle: comment détecter et catcher la fermeture d’une application DotNet de type Console Application.

Pour une application WinForm ou WPF, pas de souci on a les application events mais malheureusement cela n’existe pas pour une application Console.

Mais heureusement il est possible de détecter la fermeture d’une application Console, qu’elle intervienne après un CTRL-C ou après un clic sur la croix de fermeture Windows.

Après quelques recherches sur Google, on a réussi à trouver une solution simple: utiliser les InteropServices et la dll système Kernel32.

Utiliser les REST API JSON avec cURL

cURL with REST JSON

De plus en plus de sites vous permettent d’utiliser des API pour mettre à jour des valeurs ou bien pour ajouter de nouvelles fonctionnalités.

L’utilisation de ces API est intéressante car elle permet de développer toutes sortes d’applications (mobile, tablette, desktop) pour interagir avec un site qui ne vous appartient pas et sur lequel vous n’avez pas full Control.

Le protocole le plus fréquemment utilisé est REST, qui est basé sur un échange de données et de requêtage au format JSON.

Le REST est simple à comprendre car il ne dispose que de 4 commandes: GET, POST, PUT et DELETE.

Utiliser les fonctions Mouse et Keyboard AZERTY d’un Arduino Pro Micro

arduino leonardo

Comme nous l’avons vu dans un précédent article, l’Arduino Pro Micro est équipé d’un ATMega32U4 qui lui permet ainsi d’être reconnu comme un périphérique USB.

Cela signifie donc que vous pouvez utiliser un Arduino Pro Micro pour simuler des touches clavier ou un déplacement de souris.

Dans cet article nous allons voir comment utiliser la fonction Keyboard d’un microcontrôleur Arduino Pro Micro.

Enfin nous verrons une carte microcontrôleur prometteuse qui permet d’utiliser les fonctionnalités liées au clavier et à la souris: la Teensy.

[.Net] Ajouter un Serveur Web dans une application DotNet

dotnet web server

De nombreuses applications intègrent directement un serveur Web afin de fournir à leur utilisateur une interface accessible sur pc, sur mobile et sur tablette.

Du coup, à force de voir mes clients me demander des applications accessibles sur Internet sans avoir à installer un apache, IIS, ou autre lamp, je me suis décidé à intégrer un serveur Web directement dans mes logiciels DotNet.

Par chance, il existe de nombreux exemples sur le Net permettant d’embarquer rapidement un web serveur dans une application.

Après consultation de la MSDN, il s’avère que la création d’un serveur web est un jeu d’enfant en utilisant le composant HTTPListener.

Voici donc une petite classe toute simple qui vous permettra d’insérer un serveur web dans vos applications C# ou VB.net.

[.Net] Créer et utiliser des plugins dans une application DotNet

dotnet plugins

Aujourd’hui j’ai développé un système de gestion de plugins en DotNet.

En effet, plus je développe et plus je m’aperçois que j’ai souvent le même besoin: pouvoir importer des assembly à un moment précis et permettre à mes collaborateurs de développer leur propres extensions et de les utiliser quand ils le souhaitent.

J’ai donc effectué pas mal de recherche sur le chargement dynamique des assembly et des bibliothèques de fonctionnalités et très vite je suis tombé sur des demandes de tierses personnes qui souhaitaient mettre en place un système de plugins en C# ou VB.Net.

Imaginez une application dans laquelle vous offrez la possibilité à ses utilisateurs d’étendre facilement les fonctionnalités. Que du bonheur!

Nous allons voir comment mettre en place la création et le chargement des plugins au sein de votre application DotNet.