Pour faire court, c'est pour le taff, et j'aurais besoin d'un script php qui va me prendre des jours à coder, alors qu'il serait fait en 10mn max par une personne qui touche un peu en php :p
J'utilise une appli php qui me permet de créer des utilisateurs (et l'exploite), mais cette conne me permet que de les créer un par un manuellement, et j'ai besoin d'en faire 1500+ par an...
J'aimerais donc pouvoir filer un fichier avec mes comptes en clair, et en ressortir le fichier crypté.
Il existe des outils en ligne pour faire ce genre de choses, sauf que je n'ai pas réussi à déterminer quel cryptage était utilisé par l'appli... donc je ne peux pas sélectionner le cryptage correspondant sur les outils en ligne.
Ceci n'est qu'un demi problème, puisque si on réexploite la même partie de code pour crypter que ce que l'appli utilise, sur le même serveur, on obtient le même cryptage.
J'aimerais donc une page php qui permette de filer un fichier présenté ainsi :
user1;pass1
user2;pass2
user3;pass3
pour obtenir un fichier sous la forme :
user1:crypt1
user2:crypt2
user3:crypt3
dans la source de l'appli, voilà la partie de code qui crypte le pass de mes utilisateurs créés à la main :
crypt($user['password'], base64_encode($user['password']))
J'ai pas besoin d'un truc hyper sécurisé, je suis le seul à avoir accès à l'appli. Les noms et chemins de fichiers peuvent être écrits en dur dans le code ça ne me gène pas je m'adapterai.
Merci !
code : Tout sélectionner
foreach($array_user as $user){
$user['password'] = $strreplace(";pass", ":crypt",$user['password'] );
}
Ha non mais c'est le code complet qu'il me fallait, mais c'est bon vous avez été précédés , j'ai maintenant ce qu'il me faut ^^
Kebab & Sodo, that's the way
Dans la veine du sympathique message de Kane ^^
si jamais ça peut aider d'autres...
grossepute.html =>
<form enctype="multipart/form-data" action="./action_add.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
Fichier: <input name="csvfile" type="file" />
<input type="submit" value="Send File" />
</form>
action_add.php =>
<?php if(isset($_FILES['csvfile'])){
if (!isset($_FILES['csvfile']['error']) || is_array($_FILES['csvfile']['error'])) {
throw new RuntimeException('Invalid parameters.');
}
if(is_uploaded_file($_FILES['csvfile']['tmp_name'])){
if (($handle = fopen($_FILES['csvfile']['tmp_name'], "r")) !== FALSE) {
$output = fopen("outputfile.txt", "w") or die("Unable to open file!");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$crypt_pw = crypt($data[1], base64_encode($data[1]));
$line = $data[0].":".$crypt_pw."\n";
fwrite($output, $line);
}
fclose($output);
fclose($handle);
}
}
}
echo "Grosse pute";
?>
si jamais ça peut aider d'autres...
grossepute.html =>
<form enctype="multipart/form-data" action="./action_add.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
Fichier: <input name="csvfile" type="file" />
<input type="submit" value="Send File" />
</form>
action_add.php =>
<?php if(isset($_FILES['csvfile'])){
if (!isset($_FILES['csvfile']['error']) || is_array($_FILES['csvfile']['error'])) {
throw new RuntimeException('Invalid parameters.');
}
if(is_uploaded_file($_FILES['csvfile']['tmp_name'])){
if (($handle = fopen($_FILES['csvfile']['tmp_name'], "r")) !== FALSE) {
$output = fopen("outputfile.txt", "w") or die("Unable to open file!");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$crypt_pw = crypt($data[1], base64_encode($data[1]));
$line = $data[0].":".$crypt_pw."\n";
fwrite($output, $line);
}
fclose($output);
fclose($handle);
}
}
}
echo "Grosse pute";
?>
Kebab & Sodo, that's the way
Y'avait pas besoin de faire deux pages pour ça mais c'est pas comme s'il fallait aider une boite qui utilise comme salt le mot de passe en base 64.
Dernière modification par Conrad le ven. juin 20, 2014 5:55 pm, modifié 1 fois.
Le véritable asile, un site de pères de familles qui votent moins à droite qu'hohun.
T'en parleras à l'équipe de dev de pfsense 
Moi je code rien, je ne fais qu'exploiter leur distrib, sauf que la création de users à la main non merci, et changer de distrib et tout remettre à plat ça me faisait un peu chier...
Moi je code rien, je ne fais qu'exploiter leur distrib, sauf que la création de users à la main non merci, et changer de distrib et tout remettre à plat ça me faisait un peu chier...
Dernière modification par Grinder le ven. juin 20, 2014 6:00 pm, modifié 1 fois.
Kebab & Sodo, that's the way