Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - PiroskY

#1
Análisis y Diseño de Malware / Creacion Botnet
10 Agosto 2011, 08:17 AM
Va a sonar medio de forro que ni busco en google, pero créanme que no es el caso.

Estoy interesado en hacer algo parecido a una botnet, honestamente no se ni por donde arrancar. Estuve leyendo bastante de google, y vi varios tutoriales de "hace tu propia botnet" o similares, a mi me interesaría crearla yo mismo de 0.

Buscando encontré:
http://foro.elhacker.net/analisis_y_diseno_de_malware/prodigy_bot_v10_sin_acabar_vb6-t316630.0.html
Pero no funciona mas el link de descarga.

Alguien tiene/sabe donde hay algún código de botnet, o similar?
o sino, mas haya de eso, simplemente guiarme hacia conceptos que como mínimo debería de tener.

Perdón que no me explayo completamente en este primer post, pero es muy tarde por acá.
Si veo respuestas que realmente me ayuden/orienten, termino de explayarme por completo, si veo que esto se encamina a un "google it" supongo que dejare morir el thread.

De antemano les agradezco por leer, eso ya es algo.
Saludos
#2
Programación C/C++ / [C++] Especie de Fuerza Bruta
6 Noviembre 2010, 02:59 AM
Basicamente el programa funciona(deberia hacerlo) asi:
Se ingresa la cantidad de digitos
segun eso, se calcula el factorial para saber cuantas distintas combinaciones hay, y se crea una matriz de esas dimensiones
la matriz se inicia en 0
Se carga la primer convinacion en la matriz
mientras el primer elemento de la fila sea distinto a 0, va a ir comparando numero a numero, para ver si la combinacion es la misma
si es la misma la descarta y crea una nueva, si no es la misma acumula
si la cantidad de acumulaciones -1 es igual al indice de fila, significa que eran todas distintas, y guarda esa convinacion es esa fila
y asi hasta terminar
pero bueno, eso es lo que deberia hacer, no lo que hace :P


aca les tiro mi codigo:

Código (cpp) [Seleccionar]
#include <iostream>
#include <Time.h>
#include <cstdlib>
using namespace std;


void CargaVector(int vec[],int digitos)
{
    int z=0,error,N;
    while (vec[digitos-1] == 0)
    {
        error=1;
        while (error == 1)
        {
            error=0;
            N = (rand() % digitos) + 1;
            for (int a=0;a<z;a++)
                if (N == vec[a])
                    error=1;
            if (error == 0)
            vec[z]=N;
        }
        z++;
    }
}


int main()
{
    int N,x,y,digitos,aux,fact,error,bien=1,ban;

    cout << "Digitos: ";
    cin >> digitos;
    aux = digitos;
    fact = digitos;

    while (aux-1 > 1)
    {
        fact = fact*(aux-1);
        aux--;
    }

    int mat[fact][digitos],vec[digitos];

    for (x=0;x<fact;x++)
        for (y=0;y<digitos;y++)
            mat[x][y] = 0;

    for (x=0;x<digitos;x++)
        vec[x]=0;

    CargaVector(vec,digitos);
//
    x=0;
    for (y=0;y<digitos;y++)
        mat[x][y] = vec[y];

    CargaVector(vec,digitos);

    while (mat[fact-1][digitos-1] == 0) //mientras el ultimo elemento de la matriz siga siendo 0
    {
        x=0;
--->    while (mat[x][0] != 0) //mientras el primer elemento de la fila sea distinto de 0 (aca va a estar comparando, para no repetir combinaciones)
        {
            bien=0;
            ban=0;
            for (y=0;y<digitos;y++)
                if (mat[x][y] != vec[y] && ban == 0)
                {
                    bien++;
                    ban++;
                }
            if (bien == 0) //si bien sigue siendo 0 es porque hubo una combinacion coincidente, vuelvo a generar una combinacion en mi vector auxiliar y mando al final del ciclo
            {
                CargaVector(vec,digitos);
                continue;
            }
            x++;
--->    }
       
        if (bien-1 == x)
            for (y=0;y<digitos;y++)
                mat[x][y] = vec[y];
    }

return 0;
}



Al parecer nunca llega a salir del ciclo que marque con flechitas
Una ayudilla, dato, consejo?
#3
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;

int main()
{
   int mat[4][4],x,i,aux;

   //cargo matriz
   for (x=0;x<4;x++)
       cout << "Fila numero " << x+1 << endl;
       for (i=0;i<4;i++)
           cin >> mat[x][i];

   //invierto verticalmente
   for (x=0;x<2;x++)
       for (i=0;i<4;i++)
       {
           aux = mat[x][i];
           mat[x][i] = mat[3-x][i];
           mat[3-x][i] = aux;
       }

   //muestro matriz
   for (x=0;x<4;x++)
       cout << endl;
       for (i=0;i<4;i++)
           cout << mat[x][i] << " ";
return 0;
}


si la matriz es:

1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7

me la deja como

7 6 5 4
6 5 4 3
5 4 3 2
4 3 2 1

Cuando deberia ser:

4 5 6 7
3 4 5 6
2 3 4 5
1 2 3 4

O sea, que me la invirte vertical y horizontalmente, pero no entiendo por que
Ademas de que no hace caso al endl, donde muestro la matriz
Alguien me dice en que me equivoco?


EDITO:

Reinicie pc y funciona perfectamente
No se que pasaba
#4
Ejercicio:
Cargar dos vectores con caracteres alfabéticos y generar otro donde aparezcan los elementos de los dos vectores fuentes ordenados alfabéticamente y sin elementos repetidos

Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;

int main()
{
   int i=0,x=5,maxi;
   char vec[5],vec2[5],vecf[10],max;
   cout << "Primer vector" << endl;
   cout << "Ingrese las letras una por una" << endl;
   for (i=0;i<5;i++) //se carga el primer vector
   {
       cin >> vec[i];
   }
   cout << "Segundo vector" << endl;
   cout << "Ingrese las letras una por una" << endl;
   for (i=0;i<5;i++) //se carga el segundo
   {
       cin >> vec2[i];
   }
   for (i=0;i<5;i++) //meto el primer vector en uno auxiliar
   {
       vecf[i] = vec[i];
   }
   for (i=0;i<5;i++) //meto el segundo vector en el auxiliar
   {
       vecf[x] = vec2[i];
       x++;
   }
   for (i=0;i<10;i++)
   {
       max = vecf[i];
       maxi = i;
       for (x=0;x<10-i;x++)
       {
           if ((int)vecf[x] > (int)max)
           {
               max = vecf[x];
               maxi = x;
           }
       }
       for (x=maxi;x>=i;x--)
       {
           vecf[x] = vecf[x-1];
       }
       vecf[i] = max;
   }
   for (i=0;i<10;i++)
   {
       cout << vecf[i] << " ";
   }
return 0;
}


alguien me dice en que me estoy equivocando?

Como lo tengo ahora devuelve 10 veces la letra mas alta
o sea que supongo que la parte donde piso esa letra mas alta que encontro moviendo todo lo que esta adelante para atras una posicion esta andando mal

Código (cpp) [Seleccionar]

       for (x=maxi;x>=i;x--)
       {
           vecf[x] = vecf[x-1];
       }
       vecf[i] = max;



Edito:
Ya lo solucione, tenia dos errores tontos :P
lo dejo como estaba ahi, por si alguno quiere pensarlo un ratito :P
#5
GNU/Linux / Problema Wifi
25 Agosto 2010, 08:22 AM
Me paso que instale ubuntu 10.4

Arrancó y se conectó solito a mi red (me pidio la pass)

Actualice algunas cosillas, reinicio, y al iniciar ya no se conecta mas
ni siquiera cuando yo hago que intente conectarse

Alguna idea? :(