elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ... 55
81  Programación / Programación General / [Delphi] DH Virus Maker 0.3 en: 30 Enero 2015, 16:03 pm
Hola , esta vez les traigo un generador de virus que hice en Delphi con las siguientes opciones :

  • Desactivar Firewall
  • Apagar
  • Reiniciar
  • Cerrar sesion
  • Cambiar el texto de la taskbar
  • Ejecutar comandos
  • Desactivar regedit
  • Ocultar taskbar
  • Ocultar iconos
  • Volver loca la hora
  • Cargar cada vez que inicia Windows
  • Abrir lectora
  • Enviar pulsaciones de teclado con SendKeys
  • Matar proceso por PID
  • Cargar Word y hacer que escriba solo
  • Volver loco al mouse
  • Enviar mensajes con msgbox
  • Desactivar Taskmgr
  • Apagar el monitor
  • Realizar ruidos con Beep
  • USB Spread

Incluye antidoto para las siguientes opciones :

  • Activar Firewall
  • Mostrar taskbar
  • Activar taskmgr
  • Borrar los rastros de USB Spread
  • Activar regedit
  • Borrar el startup creado
  • Restaurar el texto del taskbar

Una imagen :



Un video con ejemplos de uso :



Si quieren bajar el programa lo pueden hacer de aca :

SourceForge.
Github.

Eso seria todo.
82  Programación / PHP / [Guia] Creacion de una pagina con BD en: 23 Enero 2015, 16:47 pm
[Titulo] : Creacion de una pagina con BD
[Autor] : Doddy Hackman

[Temario]

--========================================================--

0x00 : Introduccion
0x01 : Creacion del diseño de la pagina
0x02 : Creacion un un logo estilo GTA
0x03 : Creacion de un footer animado
0x04 : Creacion de botones en Fireworks
0x05 : Creacion de un menu desplegable
0x06 : Creacion un panel de administracion

--========================================================--

0x00 : Introduccion

En este manual vamos a ver como hacer una pagina web en PHP que tengo un sistema de noticias y un panel de administracion y para poder entender este manual necesitan conocer HTML,CSS y PHP por lo menos de forma basica para entender su contenido y tambien necesitan los siguientes programas :

* Adobe Dreamweaver
* Adobe Photoshop
* Adobe Fireworks
* XAMPP O Easy PHP
* Anim-FX
* GifCam
* Un pack de imagenes que pueden descargar aca que contiene los fondos que necesitan en el manual y los ultimos dos programas

Cuando descarguen el pack copian los datos a una carpeta llamada "images" para usar durante el manual.

0x01 : Creacion del diseño de la pagina

Ahora vamos a hacer un diseño como este :



Para eso vamos a tener que seguir los siguientes pasos :

Descargamos el pack que esta en la sección de "Requisitos" que contiene las imagenes necesarias para hacer la pagina de ejemplo.
 
Iniciamos el Dreamweaver y creamos una nueva pagina como PHP , una vez creado guardamos el proyecto con formato PHP , el directorio puede ser cualquiera.

Despues copiamos en el directorio de la pagina la carpeta "images" del pack en el directorio que eligieron para guardar la pagina.

Ahora cambiamos volvemos a Dreamweaver y cambiamos el titulo de la pagina "Documento sin título" por "Plantilla".

Despues agregamos <center> entre el inicio y final del <body> para centrar la pagina.

Ahora nos vamos a "Insertar -> Objectos de diseño -> Etiqueta DIV" y despues ponemos como nombre de clase "container" y le damos a "Nueva regla" , le damos al boton "aceptar" a la ventana que se nos aparece , como es la primera vez que usamos un div nos va a preguntar con que nombre guardamos el css , entonces ponganle "style.css" y guarden , despues de eso nos va a aparecer una ventana nueva , en esa ventana nos vamos a la categoria "Cuadro" y ponemos las dimensiones 1050x768 , 1050 de ancho y 768 de largo , le damos al boton "aceptar" y de nuevo aceptar a la ventana que se nos aparece , despues borren el texto por defecto del container.

Todo como en las imagenes :











Para crear el banner hagan los mismos pasos pero ponganle de nombre "banner" y las dimensiones "1024x100" , ponganle 3 px de margen a todos y de relleno pongan los valores "5,10,5,10" seguidos , tambien pongan la opcion "flotar" en alineacion izquierda.

Como en la imagen :



* Cambien el texto por defecto por "Banner"

Ahora para crear el contenido vamos a crear otro div con el nombre de "box" con las dimensiones 1024x500 , ponganle 3 px de margen a todos y de relleno tambien 5,10,5,10 , tambien pongan alineacion izquierda.

Como en la imagen :



* Borren el texto por defecto

Despues de insertar el box vamos a agregar otro div que sera el primer menu de categorias o lo que sea , de nombre pongan "menu" y tendra las dimensiones 200x500 , alineacion izquierda , margen 3 a todo y de relleno pongan 5,10,5,10

Como en la imagen :



* Cambien el texto por defecto por "Menu"

Ahora para crear lo mas importante que es el body vamos a tener que crear otro div nuevo con el nombre de "body" con las dimensiones 566x500 , alineacion izquierda , margen 3 a todo , y de relleno solo pongan el primero que seria 5 los demas lo dejan en blanco.

Como en la imagen :



* Cambien el texto por defecto por "Body"

Ahora para crear la parte de afiliados vamos a crear otro div con el nombre de "otromenu" , las dimensiones serian de 200x500 , alineacion izquierda , margen 3 para todo y de relleno 5,10,5,10

Como en la imagen :



* Cambien el texto por defecto por "OtroMenu"

Despues de eso ahora vamos al div final que es el footer , entonces creamos otro div con el nombre de "footer" con las dimensiones 1024x100 , margen 3 a todos menos al inferior que sera 10 , como relleno ponemos 5,10,5,10 y tambien le ponemos alineacion izquierda.

Como en la imagen :



* Cambien el texto por defecto por "Footer"

Ahora comenzamos con el codigo CSS , primero vamos a la pestaña de style.css y en la parte del codigo cambien en las etiquetas banner,box,menu,body,otromenu y footer el "height" por "min-height" esto nos va a ayudar que cuando el texto sobrepase el div , el div se alargara.

Despues agregamos el siguiente codigo al archivo CSS para poner una imagen de fondo :

Código
  1. body {
  2.    background:transparent url("images/fondo1.jpg") repeat scroll 0 0;
  3.    color:white;
  4.    font-family:helvetica,arial,sans-serif;
  5.    font-size:14px;
  6.    text-align:center;
  7. }
  8.  

En las etiquetas banner,box,footer agreguen el siguiente codigo para darle bordes a los div y una imagen de fondo :

Código
  1.    background-image:url("images/fondo2.jpg");
  2.    background-color:#000;
  3.    border: 3px dashed #00FFFF;
  4.  

Si hacemos F12 para ver como nos queda la pagina se nos deberia ver algo asi en el navegador :



Ahora agregamos el siguiente codigo al archivo CSS , para poder agregar el cuadro en el que estaran las categorias,posts y los afiliados :

Código
  1. .categorias {
  2.    color:white;
  3.    border: 3px dashed #00FFFF;
  4.    width:200px;
  5.    word-wrap: break-word;
  6. }
  7.  
  8. .post {
  9.    background-image:url("images/fondo2.jpg");
  10.    background-color:#000;
  11.    color:white;
  12.    border: 3px dashed #00FFFF;
  13.    margin-bottom:10px;
  14.    width:560px;
  15.    word-wrap: break-word;
  16. }
  17.  


Despues de eso agregamos el siguiente codigo entre las etiquetas "menu" del archivo PHP que vendria a ser las "Categorias" :

Código
  1. <div class="categorias">
  2. <h3>Categorias</h3>
  3.  Link1<br />
  4.  Link2<br />
  5.  Link3<br />
  6.  Link4<br />
  7.  Link5<br />
  8.  Link6<br />
  9.  Link7<br />
  10.  Link8<br />
  11.  Link9<br />
  12.  Link10<br />
  13.  <br />
  14. </div>
  15.  

Ahora vamos a por los afiliados , vamos a agregar el siguiente codigo entre las etiquetas "otromenu" en el codigo del archivo PHP :

Código
  1. <div class="categorias">
  2. <h3>Afiliados</h3>
  3.  Link1<br />
  4.  Link2<br />
  5.  Link3<br />
  6.  Link4<br />
  7.  Link5<br />
  8.  Link6<br />
  9.  Link7<br />
  10.  Link8<br />
  11.  Link9<br />
  12.  Link10<br />
  13.  <br />
  14. </div>
  15.  

Despues vamos a agregar el siguiente codigo entre las etiquetas "body" para colocar noticias de ejemplo en el archivo PHP :

Código
  1. <div class="post">
  2. <h3>Noticia1</h3>
  3. <p>Contenido de Noticia1</p>
  4. </div>
  5.  
  6. <div class="post">
  7. <h3>Noticia2</h3>
  8. <p>Contenido de Noticia2</p>
  9. </div>
  10.  
  11.  
  12. <div class="post">
  13. <h3>Noticia3</h3>
  14. <p>Contenido de Noticia3</p>
  15. </div>
  16.  
  17.  
  18. <div class="post">
  19. <h3>Noticia4</h3>
  20. <p>Contenido de Noticia4</p>
  21. </div>
  22.  
  23.  
  24. <div class="post">
  25. <h3>Noticia5</h3>
  26. <p>Contenido de Noticia5</p>
  27. </div>
  28.  
  29.  
  30. <div class="post">
  31. <h3>Noticia6</h3>
  32. <p>Contenido de Noticia6</p>
  33. </div>
  34.  

Todo el codigo HTML del archivo PHP nos deberia haber quedado algo asi :

Código
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Plantilla</title>
  5. <link href="style.css" rel="stylesheet" type="text/css" />
  6. </head>
  7.  
  8. <div class="container">
  9.  <div class="banner">Banner</div>
  10.  <div class="box">
  11.    <div class="menu">
  12.    <div class="categorias">
  13. <h3>Categorias</h3>
  14.  Link1<br />
  15.  Link2<br />
  16.  Link3<br />
  17.  Link4<br />
  18.  Link5<br />
  19.  Link6<br />
  20.  Link7<br />
  21.  Link8<br />
  22.  Link9<br />
  23.  Link10<br />
  24.  <br />
  25. </div>
  26.    </div>
  27.    <div class="body">
  28. <div class="post">
  29. <h3>Noticia1</h3>
  30. <p>Contenido de Noticia1</p>
  31. </div>
  32.  
  33. <div class="post">
  34. <h3>Noticia2</h3>
  35. <p>Contenido de Noticia2</p>
  36. </div>
  37.  
  38.  
  39. <div class="post">
  40. <h3>Noticia3</h3>
  41. <p>Contenido de Noticia3</p>
  42. </div>
  43.  
  44.  
  45. <div class="post">
  46. <h3>Noticia4</h3>
  47. <p>Contenido de Noticia4</p>
  48. </div>
  49.  
  50.  
  51. <div class="post">
  52. <h3>Noticia5</h3>
  53. <p>Contenido de Noticia5</p>
  54. </div>
  55.  
  56.  
  57. <div class="post">
  58. <h3>Noticia6</h3>
  59. <p>Contenido de Noticia6</p>
  60. </div>
  61.    </div>
  62.    <div class="otromenu">
  63. <div class="categorias">
  64. <h3>Afiliados</h3>
  65.  Link1<br />
  66.  Link2<br />
  67.  Link3<br />
  68.  Link4<br />
  69.  Link5<br />
  70.  Link6<br />
  71.  Link7<br />
  72.  Link8<br />
  73.  Link9<br />
  74.  Link10<br />
  75.  <br />
  76. </div>
  77.    </div>
  78.  </div>
  79.  <div class="footer">Footer</div>
  80. </div>
  81. </body>
  82. </html>
  83.  

Si hicieron todo bien la pagina les deberia haber quedado algo como esto :



Eso seria todo por ahora en el diseño.

0x02 : Creacion un logo estilo GTA

Para crear un logo estilo GTA en Photoshop deben instalar primero la fuente necesaria del siguiente link , para instalar la fuente descargado solo arrastran y copian los archivos del comprimido en el directorio "c:/windows/fonts de Windows" , despues de eso cargamos Photoshop y seguimos los siguiente pasos :

Creamos un proyecto con las dimensiones 995x108 y fondo transparente como en la siguiente imagen :



Una vez creado ponganle de fondo una imagen cualquiera en mi caso recorto una imagen con paint y lo copio en el proyecto quedando algo asi :



Despues hacemos click en la opcion "Texto horizontal" y seleccionamos el tipo de fuente "Pricedown" , tamaño de letra 80 pt y tipo de color #ffffcc , entonces una vez hecho esto agregamos el texto "Probando" con la herramienta "Texto horizontal" seleccionada , todo deberia verse algo asi :



Ahora hacemos click derecho en la capa llamada "PROBANDO" que es el texto creado y hacemos click en "Opciones de Fusion" , entonces activamos el estilo "Trazo" , de tamaño pongan 3 y pongan de color #000000 , entonces hagan click en "OK" y les deberia quedar algo asi :





Ahora tenemos que seleccionar la "Capa 1" para ir despues a "Edicion->Contornear" , ponemos de anchura 8px  y de color #ffffcc , le damos a "OK" y se deberia ver algo asi :





Como detalle final sino les gusta la posicion del texto pueden mover el texto al centro o como mas les guste , en mi caso queda asi :



Para terminar guardamos el proyecto como "png" y volvemos a la plantilla creada con Dream y nos vamos al div "banner" , borramos el texto "Banner" y insertamos el logo creado con Photoshop , para eso nos vamos a "Insertar->Imagen" y ponemos en la ventana que nos abre la ruta de la imagen.

Nos deberia quedar algo asi :



0x03 : Creacion de un footer animado

Cargamos el programa "Anim-FX" y llenamos los campos de la siguiente forma :

Text 1 : TEST 1
2 : TEST 2
3 : TEST 3
4 : TEST 4
5 : TEST 5

Tipo de efecto : flash

Tamaño de letra : 145
Color de letra : El color es celeste claro que vendria a ser 52FEFD

Se les deberia ver algo asi :



Ahora cargamos el GifCam y hacemos click en "Rec" sobre la zona de la animacion que quieren grabar.
Despues de terminar de grabar hacemos click en "Stop" y despues en "Save" para despues grabar el gif donde quieran

Una vez terminado todo nos vamos al proyecto de dream y en el div footer borramos el texto "Footer" y insertamos el gif animado , para eso nos vamos a "Insertar->Imagen" y ponemos en la ventana que nos abre la ruta del gif.

Se les deberia ver algo asi :



Eso seria todo el footer animado.

0x04 : Creacion de botones en Fireworks

Para crear un boton en Fireworks primer cargamos el programa y hacemos click en crear un nuevo "Documento de Fireworks (PNG)" con las dimensiones de 100x50 y de colo de lienzo "transparente".

Les deberia quedar asi :



Una vez hecho esto vamos al cuadro de herramientas y seleccionamos "Rectangulo redondeado" de la herramienta "Rectangulo" que se encuentra en la sección "Vector".
Ya seleccionado creamos un rectangulo redondeado en la zona de trabajo del color que quieran , para ponerle un estilo primero seleccionen el rectangulo creado y despues seleccionen el estilo que quieran en el cuadro de herramientas derecho llamado "Activos->Estilos" quedando todo asi : 







En mi caso elegi el estilo mas parecido a Tron y desactivo el filtro "Sombra" porque no me gustaba como quedaba , los filtros estan en la parte de abajo del programa y se puede ver cuando estan aplicando el estilo.

Como ven ya tenemos la forma del boton , ahora vamos a ponerle texto , entonces seleccionamos la herramienta "herramienta de texto" para escribir "click" sobre el boton redondeado con el color que quieran , pueden mover el texto de posicion con la "herramienta puntero" si no les gusta como quedo.

Les deberia quedar algo asi , yo en mi caso elegi letra blanca :



Para terminar vamos a "Archivo->Guardar como" y guardamos el boton con el nombre que quieran , el formato que tendra sera de PNG.

Para usarlo en la plantilla que creamos con Dream vamos al div "otromenu" , borramos los links de ejemplo y pongan el siguiente codigo entre los div :

Código
  1. <a href="http://www.petardas.com"><img src="images/click.png"></a><br />
  2.  

Recuerden que el boton creado tiene que estar en una carpeta llamada images sino nunca se va a encontrar el boton.

Cambien petardas por el link que quieran y cambien click.png por el verdadero nombre y ruta del boton.

En mi caso use tres veces esa linea de codigo como ejemplo.

Les deberia quedar algo asi :





Y en el navegador se deberia ver asi :



Eso seria todo con los botones.

0x05 : Creacion de un menu desplegable

Bueno para hacer esto volvemos a la plantilla inicial con Dream y  borramos los links de ejemplo que estan la sección de categorias justamente en el div "menu" y agregamos un <br/> antes del </div> y otro despues del <h3> de categorias ,  y para terminar insertamos un menu vertical de la siguiente forma :

Insertar->Spry->Barra de menus de Spry y en la ventana que aparece seleccionamos "Vertical".

Deberiamos ver algo asi :



Primero vamos hacer click en el menu creado y desde ahi cambiar los textos de todos los "elementos" por "test" , cambien tanto en la columna 1 o en la columna 2 si es que se desplega otro menu a partir de ese.

Despues para poner un vinculo solo lo hacen desde la casilla correspondiente que esta abajo de la de "texto" , en mi caso solo voy a poner un link y va a ser en el "test2"

Deberian ver algo asi :



Ahora vamos a tunear el menu con colores raros con las siguientes pasos :

Para empezar seleccionamos el menu vertical y desde la sección de "Estilos CSS" hacemos click en "Actual" para despues seleccionar y hacer doble click en "border" 



Ahora vamos a la categoria "Borde" , en Estilo seleccionamos "doble" para todos , ancho 3 para todos y de color #2EFEF7 para todos.

Deberia quedar asi :



Despues vamos a "Estilos CSS" y despues a "Todo" para despues desplegar SpryMenuBarVertical.css.

Seleccionamos y hacemos doble click en "ul.MenuBarVertical a" para ir a la categoria "Tipo" y cambiar el color de la letra por celeste claro , ahora nos vamos a la categoria "Fondo" ponemos el color de fondo negro y para terminar ponemos la imagen de fondo "normal.jpg" con la opcion de "no repetir"

Quedando asi :







Ahora hacemos lo mismo con el "ul" que esta abajo del anterior solo que la fuente la dejan como esta y  la imagen de fondo va ser el fondo "hover.jpg" con la opcion de "no repetir".







Como menu final se les deberia ver algo asi :



Eso seria todo en el menu.

0x06 : Creacion un panel de administracion

Para empezar activemos el XAMPP o Easy PHP , despues creen las siguientes clases PHP en el directorio donde esta la pagina :

login_now.php

Código
  1. <?php
  2.  
  3. /*
  4.  
  5. Class : LoginNow
  6.  
  7. (c) Doddy Hackman 2015
  8.  
  9. */
  10.  
  11. class LoginNow
  12. {
  13.  
  14.    private $host;
  15.    private $db;
  16.    private $user;
  17.    private $pass;
  18.    private $tabla;
  19.    private $columna1;
  20.    private $columna2;
  21.    private $usereal;
  22.    private $passreal;
  23.    private $campouser;
  24.    private $campopass;
  25.    private $cookiename;
  26.  
  27.    public function campos($campouser, $campopass)
  28.    {
  29.        if (isset($_POST[$campouser])) {
  30.            $this->campouser = $_POST[$campouser];
  31.            $this->campopass = md5($_POST[$campopass]);
  32.        } else {
  33.            $this->campouser = $campouser;
  34.            $this->campopass = $campopass;
  35.        }
  36.    }
  37.  
  38.    public function database($host, $dbuser, $dbpass, $db, $tabla, $columna1, $columna2)
  39.    {
  40.        mysql_connect($host, $dbuser, $dbpass);
  41.        mysql_select_db($db);
  42.        $que = mysql_query("SELECT * FROM " . $tabla);
  43.        while ($test = mysql_fetch_array($que)) {
  44.            if ($this->campouser == $test[$columna1] and $this->campopass == $test[password]) {
  45.                $this->usereal  = $test[$columna1];
  46.                $this->passreal = $test[$columna2];
  47.                return true;
  48.            }
  49.        }
  50.    }
  51.  
  52.    public function secure($user, $pass)
  53.    {
  54.        if ($this->campouser == $user and $this->campopass == $pass) {
  55.            $this->usereal  = $user;
  56.            $this->passreal = $pass;
  57.            return true;
  58.        } else {
  59.            return false;
  60.        }
  61.    }
  62.  
  63.    public function cookienow($cookiename)
  64.    {
  65.        setcookie($cookiename, base64_encode($this->usereal . "@" . $this->passreal));
  66.    }
  67.  
  68. }
  69.  
  70. ?>
  71.  

noticion.php

Código
  1. <?php
  2.  
  3. /*
  4.  
  5. PHP Class : Noticion 1.0
  6.  
  7. (C) Doddy Hackman 2015
  8.  
  9. */
  10.  
  11.  
  12. class noticion
  13. {
  14.  
  15.    private $db;
  16.  
  17.    public function datos($host, $user, $pass, $db)
  18.    {
  19.  
  20.        $this->db = $db;
  21.  
  22.        if (@mysql_connect($host, $user, $pass)) {
  23.            if (@mysql_select_db($db)) {
  24.                return true;
  25.            }
  26.        }
  27.    }
  28.  
  29.    public function crear_categoria($nuevacategoria)
  30.    {
  31.  
  32.        $todo1 = "create table categoria_$nuevacategoria (
  33. id int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  34. titulo VARCHAR(255) NOT NULL,
  35. contenido TEXT NOT NULL,
  36. fecha VARCHAR(255) NOT NULL,
  37. PRIMARY KEY (id));
  38. ";
  39.  
  40.        $todo2 = "create table comentarios_$nuevacategoria (
  41. id_noticia int(10),
  42. id_comentario int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  43. mensaje TEXT NOT NULL,
  44. apodo VARCHAR(255) NOT NULL,
  45. fecha VARCHAR(255) NOT NULL,
  46. PRIMARY KEY (id_comentario));
  47. ";
  48.  
  49.        if (@mysql_query($todo1)) {
  50.            if (@mysql_query($todo2)) {
  51.                return true;
  52.            }
  53.        }
  54.  
  55.    }
  56.  
  57.    public function eliminar_categoria($eliminarcategoria)
  58.    {
  59.  
  60.        if (@mysql_query("DROP TABLE categoria_$eliminarcategoria")) {
  61.            if (@mysql_query("DROP TABLE comentarios_$eliminarcategoria")) {
  62.                return true;
  63.            }
  64.  
  65.        }
  66.    }
  67.  
  68.  
  69.    public function eliminar($id, $categoria)
  70.    {
  71.        if (is_numeric($id)) {
  72.            if (@mysql_query("DELETE FROM categoria_$categoria where id='$id'")) {
  73.                return true;
  74.            }
  75.        }
  76.    }
  77.  
  78.    public function nueva_noticia($x_titulo, $x_contenido, $x_fecha, $categoria)
  79.    {
  80.        $sumo = mysql_query("SELECT MAX(id) FROM categoria_$categoria");
  81.  
  82.        $s = mysql_fetch_row($sumo);
  83.  
  84.        foreach ($s as $d) {
  85.            $x_id = $d + 1;
  86.        }
  87.        if (@mysql_query("INSERT INTO categoria_$categoria(id,titulo,contenido,fecha)values('$x_id','$x_titulo','$x_contenido','$x_fecha')")) {
  88.            return true;
  89.        }
  90.    }
  91.  
  92.    public function ver_este($id, $categoria)
  93.    {
  94.        if (is_numeric($id)) {
  95.            $total = array();
  96.            if ($que = @mysql_query("SELECT id,titulo,contenido,fecha FROM categoria_$categoria WHERE id='$id'")) {
  97.                while ($ver = @mysql_fetch_array($que)) {
  98.                    return array(
  99.                        $ver[0],
  100.                        $ver[1],
  101.                        $ver[2],
  102.                        $ver[3]
  103.                    );
  104.                }
  105.            }
  106.        }
  107.    }
  108.  
  109.    public function listar_categorias()
  110.    {
  111.  
  112.        $found = array();
  113.  
  114.        if ($re = @mysql_query("show tables from " . $this->db)) {
  115.  
  116.            while ($dat = mysql_fetch_row($re)) {
  117.                $separo = split("_", $dat[0]);
  118.                array_push($found, $separo[1]);
  119.            }
  120.            return array(
  121.                $found
  122.            );
  123.        }
  124.  
  125.    }
  126.  
  127.    public function ver_todo($categoria)
  128.    {
  129.        $total = array();
  130.        if ($que = @mysql_query("SELECT id,titulo,contenido,fecha FROM categoria_$categoria")) {
  131.            while ($ver = @mysql_fetch_array($que)) {
  132.                array_push($total, $ver);
  133.            }
  134.            return array(
  135.                $total
  136.            );
  137.        }
  138.    }
  139.  
  140.    public function mod($categoria, $id, $tit, $con, $fech)
  141.    {
  142.        if (@mysql_query("UPDATE categoria_$categoria SET id='$id',titulo='$tit',contenido='$con',fecha='$fech' where id='$id'")) {
  143.            return true;
  144.        }
  145.    }
  146.  
  147.    public function crear_comentario($categoria, $id_noticia, $fecha, $apodo, $mensaje)
  148.    {
  149.  
  150.        $sumo = mysql_query("SELECT MAX(id_comentario) FROM comentarios_$categoria");
  151.  
  152.        $s = mysql_fetch_row($sumo);
  153.  
  154.        foreach ($s as $d) {
  155.            $x_id = $d + 1;
  156.        }
  157.  
  158.        if (mysql_query("INSERT INTO comentarios_$categoria(fecha,apodo,mensaje,id_noticia,id_comentario)values('$fecha','$apodo','$mensaje','$id_noticia','$x_id')")) {
  159.            return true;
  160.        }
  161.  
  162.    }
  163.  
  164.    public function mod_comentario($categoria, $id, $fecha, $apodo, $contenido)
  165.    {
  166.        if (@mysql_query("UPDATE comentarios_$categoria SET id_comentario='$id',fecha='$fecha',apodo='$apodo',mensaje='$contenido' where id_comentario='$id'")) {
  167.            return true;
  168.        }
  169.    }
  170.  
  171.    public function ver_comentarios($categoria, $id)
  172.    {
  173.        $todo = array();
  174.        if ($ver = @mysql_query("SELECT id_noticia,id_comentario,apodo,mensaje,fecha FROM comentarios_$categoria")) {
  175.            while ($que = @mysql_fetch_array($ver)) {
  176.                if ($que[0] == 1) {
  177.                    array_push($todo, $que);
  178.                }
  179.            }
  180.            return array(
  181.                $todo
  182.            );
  183.        }
  184.  
  185.    }
  186.  
  187.  
  188.    public function borrar_comentario($categoria, $id)
  189.    {
  190.        if (is_numeric($id)) {
  191.            if (@mysql_query("DELETE FROM comentarios_$categoria where id_comentario='$id'")) {
  192.                return true;
  193.            }
  194.        }
  195.    }
  196.  
  197.  
  198.    public function cantidad_posts($categoria)
  199.    {
  200.        $valor    = mysql_query("SELECT MAX(id) FROM categoria_$categoria");
  201.        $cantidad = mysql_fetch_row($valor);
  202.        return $cantidad[0];
  203.    }
  204.  
  205.  
  206.    public function cerrar()
  207.    {
  208.        if (mysql_close()) {
  209.            return true;
  210.        }
  211.    }
  212.  
  213. }
  214.  
  215. // The End ?
  216.  
  217. ?>
  218.  

Ahora creen el siguiente codigo llamado admin.php :

Código
  1. <?php
  2.  
  3. include("login_now.php"); // LLamamos al archivo LoginNow.php
  4. include("noticion.php"); // Llamamos al archivo noticion.php
  5.  
  6. $username = "admin"; // Declaramos el usuario
  7. $password = "21232f297a57a5a743894a0e4a801fc3"; // Declaramos el password "admin" en md5
  8.  
  9. $host_mysql  = "localhost"; // Establecemos el host mysql
  10. $user_mysql  = "root"; //Establecemos el usuario mysql
  11. $pass_mysql  = ""; // Establecemos el password mysql
  12. $db_mysql    = "noticias"; // Establecemos la BD Mysql
  13. $tabla_mysql = "test"; // Declaramos el nombre de la tabla que contendra las noticias
  14.  
  15. $categoria = "test"; // Declaramos la categoria de las noticias
  16.  
  17. if (isset($_COOKIE['test'])) { // Si existe el cookie test ...
  18.    $comprobar = base64_decode($_COOKIE['test']); // Decodificamos sub contenido que esta en base64 y guardamos su contenido en la variable $comprobar
  19.    $parte     = preg_split("/@/", $comprobar); // Dividimos el usuario y el password que estan en entre @
  20.    $cookie    = new LoginNow; // Creamos el objeto de la clase LoginNow
  21.    $cookie->campos($parte[0], $parte[1]); // Establecemos los valores del usuario y el password que estan en la variable $parte
  22.    if ($cookie->secure($username, $password)) { // Verificamos con los valores globales que sean realmente los mismos passwords
  23.  
  24.        $noticia = New noticion; // Creamos el objeto noticion
  25.        $noticia->datos($host_mysql, $user_mysql, $pass_mysql, $db_mysql); // Establecemos los datos Mysql
  26.  
  27.        if (mysql_num_rows(mysql_query("show tables like 'categoria_$tabla_mysql'"))) { // Verificamos si existe la categoria
  28.  
  29.            echo "
  30. <title>Administrador</title>
  31. <br><h1><center>Administrador</center></h1><br>
  32. ";
  33.  
  34.            list($noticias) = $noticia->ver_todo($categoria); // Cargamos la lista de noticias
  35.  
  36.            echo "<center><table border=1>";
  37.  
  38.            foreach ($noticias as $ver) { // Listamos la lista de noticias
  39.                echo "<td>" . htmlentities($ver[0]) . "</td><td>" . htmlentities($ver[1]) . "</td><td>" . htmlentities($ver[3]) . "</td><tr>"; // Mostramos el ID,Titulo y Fecha
  40.            }
  41.            echo "</table></center><br>";
  42.  
  43.            echo "
  44. <center>
  45. <form action='' method=POST>
  46. Titulo : <input type=text name=titulo value=titulo><br><br>
  47. Contenido : <input type=text name=contenido value=test><br><br>
  48. <input type=submit name=publicar value=Publicar>
  49. </form>
  50. </center>
  51. ";
  52.  
  53.            if (isset($_POST['publicar'])) {
  54.  
  55.                if ($noticia->nueva_noticia(addslashes($_POST['titulo']), addslashes($_POST['contenido']), addslashes(date('Y-m-d')), $categoria)) { // Creamos la noticia ...
  56.                    echo "<center>Noticia Subida</center>";
  57.                } else {
  58.                    echo "<center>Error</center>";
  59.                }
  60.            }
  61.  
  62.        } else {
  63.            $noticia->crear_categoria($categoria); // Creamos la categoria sino existe
  64.            echo "Tabla creada , reinicie la pagina";
  65.        }
  66.  
  67.        $noticia->cerrar();
  68.  
  69.    }
  70. } else {
  71.  
  72.    echo "
  73. <title>Login</title>
  74. <br><h1><center>Login</center></h1><br>
  75. <center>
  76. <form action='' method=POST>
  77. Usuario : <input type=text name=usuario><br>
  78. Password : <input type=password name=password><br><br>
  79. <input type=submit name=login value=Entrar><br>
  80. </form>
  81. </center>
  82. ";
  83.  
  84.    if (isset($_POST['login'])) {
  85.  
  86.        $login1 = new LoginNow; // Creamos el objeto de la calse LoginNow
  87.        $login1->campos("usuario", "password"); // Establecemos los campos html del formulario donde estan el usuario y el password
  88.        if ($login1->secure($username, $password)) { // Verificamos que sean los mismos que los globales
  89.            $login1->cookienow("test"); // Creamos una cookie llamada "test"
  90.            echo "<center>Bienvenido administrador</center>";
  91.        } else {
  92.            echo "<center>Error en el inicio de sesion</center>";
  93.        }
  94.    }
  95.  
  96. }
  97.  
  98. ?>
  99.  

Primero modifiquen los datos mysql por los suyos en el admin.php despues entren con el user y pass : "admin" , deberian ver esto :



Una vez logeados :



Ahora creen las noticias que quieran , yo en mi caso voy a publicar 5 sucesivamente con "titulo" y "test".

Despues de eso mi panel se vera asi :



Ahora cargamos la plantilla creada y usada anteriormente con Dream para ir al div "body" y borrar todo lo que contiene para copiar el siguiente codigo en PHP :

Código
  1. <?php
  2.  
  3. include("noticion.php"); // Llamamos al archivo noticion.php
  4.  
  5. $host_mysql  = "localhost"; // Establecemos el host mysql
  6. $user_mysql  = "root"; //Establecemos el usuario mysql
  7. $pass_mysql  = ""; // Establecemos el password mysql
  8. $db_mysql    = "noticias"; // Establecemos la BD Mysql
  9. $tabla_mysql = "test"; // Declaramos el nombre de la tabla que contendra las noticias
  10.  
  11. $categoria = "test"; // Declaramos la categoria de las noticias
  12.  
  13. $noticia = New noticion; // Creamos el objeto noticion
  14. $noticia->datos($host_mysql, $user_mysql, $pass_mysql, $db_mysql); // Establecemos los datos Mysql
  15.  
  16. list($noticias) = $noticia->ver_todo($categoria); // Cargamos la lista de noticias
  17.  
  18. foreach ($noticias as $ver) { // Listamos la lista de noticias
  19.    echo "<div class='post'>
  20. <h3>" . htmlentities($ver[1]) . "</h3>
  21. <p>" . htmlentities($ver[2]) . "</p>
  22. </div>";
  23. }
  24.  
  25. ?>
  26.  

Los dos codigos estan identados y comentados para que puedan entender.

Deberian ver algo como esto :



Y el resultado de la pagina con el sistema de noticias seria :
 


Eso seria todo.

--========--
 The End ?
--========--

Version PDF.

Version en VideoTutoriales :

https://www.youtube.com/watch?v=trrZJeyYJUQ
https://www.youtube.com/watch?v=GW-r3hOHz0Y
https://www.youtube.com/watch?v=sca5L7Lh_68
https://www.youtube.com/watch?v=y1CxJq_4ewY
https://www.youtube.com/watch?v=H-RWdyrdYwg
https://www.youtube.com/watch?v=QHE7OChFkjs

Cualquier error o sugerencia diganla para mejorar.
83  Programación / Scripting / [Perl] DH ViewBot 0.2 en: 16 Enero 2015, 16:59 pm
Un simple script que sirve como bot para hacer visitas con las siguientes opciones :

  • Visitar una sola pagina
  • Visitar paginas en un archivo marcado de forma ordenada
  • Visitar paginas en un archivo marcado de forma aleatoria
  • Opciones para timeout y cantidad de visitas

El codigo :

Código
  1. #!usr/bin/perl
  2. #DH ViewBot 0.2
  3. #(C) Doddy Hackman 2015
  4.  
  5. use Getopt::Long;
  6. use LWP::UserAgent;
  7. use URI::Split qw(uri_split);
  8. use IO::Socket;
  9.  
  10. my @agents = (
  11. 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0',
  12.    'Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14',
  13. 'Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1667.0 Safari/537.36',
  14. 'Mozilla/5.0 (compatible; MSIE 10.6; Windows NT 6.1; Trident/5.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727) 3gpp-gba UNTRUSTED/1.0',
  15. 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.8pre) Gecko/20070928 Firefox/2.0.0.7 Navigator/9.0RC1',
  16.    'Mozilla/5.0 (Windows; U; MSIE 9.0; WIndows NT 9.0; en-US))',
  17. 'Mozilla/5.0 (Windows NT 6.0; rv:2.0) Gecko/20100101 Firefox/4.0 Opera 12.14',
  18. 'Mozilla/5.0 (Windows; U; Windows NT 6.1; tr-TR) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27'
  19. );
  20.  
  21. GetOptions(
  22.    "single=s"     => \$single_opt,
  23.    "file=s"       => \$file_opt,
  24.    "randomfile=s" => \$randomfile_opt,
  25.    "timeout=i"    => \$timeout_opt,
  26.    "count=i"      => \$count_opt
  27. );
  28.  
  29. head();
  30.  
  31. if ( $single_opt or $file_opt or $randomfile_opt ) {
  32.  
  33.    my $page = $single_opt;
  34.  
  35.    my $timeout = "";
  36.  
  37.    if ( $timeout_opt eq "" ) {
  38.        $timeout = "5";
  39.    }
  40.    else {
  41.        $timeout = $timeout_opt;
  42.    }
  43.  
  44.    my $count = "";
  45.  
  46.    if ( $count_opt eq "" ) {
  47.        $count = "10";
  48.    }
  49.    else {
  50.        $count = $count_opt;
  51.    }
  52.  
  53.    if ( $single_opt ne "" ) {
  54.  
  55.        my $page = $single_opt;
  56.  
  57.        print "\n[+] Configuration\n";
  58.  
  59.        print "\n--------------------------------------------------";
  60.        print "\n[+] Page : " . $page . "\n";
  61.        print "[+] Timeout : " . $timeout . "\n";
  62.        print "[+] Visit Count  : " . $count . "\n";
  63.        print "--------------------------------------------------";
  64.  
  65.        visitar( $page, $timeout, $count, "single" );
  66.  
  67.    }
  68.  
  69.    elsif ( $randomfile_opt ne "" ) {
  70.  
  71.        visitar_random( $randomfile_opt, $timeout, $count );
  72.  
  73.    }
  74.    elsif ( $file_opt ne "" ) {
  75.  
  76.        if ( $file_opt ne "" ) {
  77.  
  78.            unless ( -f $file_opt ) {
  79.                print "\n[-] File not exist\n";
  80.                copyright();
  81.                exit(1);
  82.            }
  83.  
  84.            print "\n" . toma_fecha_y_hora("Started");
  85.  
  86.            my @paginas = repes( leer_archivo($file_opt) );
  87.  
  88.            for my $page (@paginas) {
  89.  
  90.                chomp $page;
  91.  
  92.                print "\n--------------------------------------------------";
  93.                print "\n[+] Page : " . $page . "\n";
  94.                print "[+] Timeout : " . $timeout . "\n";
  95.                print "[+] Visit Count : " . $count . "\n";
  96.                print "--------------------------------------------------";
  97.  
  98.                visitar( $page, $timeout, $count, "file" );
  99.  
  100.            }
  101.  
  102.            print "\n" . toma_fecha_y_hora("Finished");
  103.  
  104.        }
  105.        else {
  106.            print "\n[-] Option not selected\n";
  107.            exit(1);
  108.        }
  109.  
  110.    }
  111.  
  112. }
  113. else {
  114.    print qq(
  115. [+] Options :
  116.  
  117. -single : Page to visit
  118. -file : File with pages to visit
  119. -randomfile : File with pages to visit as random
  120. -timeout : Time for visit
  121. -count : Count to visist
  122.  
  123. );
  124.    print
  125. "[+] Example : perl $0 -single http://www.supertangas.com/index.php -timeout 5 -count 50\n";
  126. }
  127. copyright();
  128.  
  129. # Functions
  130.  
  131. sub head {
  132.    print "\n-- == DH ViewBot 0.2 == --\n";
  133. }
  134.  
  135. sub copyright {
  136.    print "\n-- == (C) Doddy Hackman 2015 == --\n";
  137. }
  138.  
  139. sub visitar_random {
  140.  
  141.    my ( $file, $timeout, $count ) = @_;
  142.  
  143.    my @paginas     = repes( leer_archivo($file) );
  144.    my $total_bueno = "";
  145.    my $total_malo  = "";
  146.  
  147.    print "\n" . toma_fecha_y_hora("Started");
  148.  
  149.    for ( 1 .. $count ) {
  150.        my $target = $paginas[ rand(@paginas) ];
  151.        chomp $target;
  152.        print "\n--------------------------------------------------";
  153.        print "\n[+] Page : " . $target . "\n";
  154.        print "[+] Timeout : " . $timeout . "\n";
  155.        print "--------------------------------------------------";
  156.  
  157.        print "\n\n[+] Getting information ...\n\n";
  158.  
  159.        print toma_banner($target) . "\n";
  160.  
  161.        my ( $status, $control ) = toma_response($target);
  162.  
  163.        if ( $control eq "1" ) {
  164.            $total_bueno++;
  165.        }
  166.        else {
  167.            $total_malo++;
  168.        }
  169.  
  170.        print "\n[+] Visit $_ : $target : " . $status . "\n";
  171.  
  172.        sleep($timeout);
  173.  
  174.    }
  175.  
  176.    print "\n[+] Successful Visits : " . $total_bueno . "\n";
  177.  
  178.    print "\n" . toma_fecha_y_hora("Finished");
  179.  
  180. }
  181.  
  182. sub visitar {
  183.  
  184.    my ( $page, $timeout, $count, $type ) = @_;
  185.  
  186.    print "\n\n[+] Getting information ...\n\n";
  187.  
  188.    print toma_banner($page);
  189.  
  190.    if ( $type eq "single" ) {
  191.        print "\n\n" . toma_fecha_y_hora("Started") . "\n";
  192.    }
  193.    else {
  194.        print "\n\n" . "[+] Working ..." . "\n\n";
  195.    }
  196.  
  197.    my $total_bueno = "";
  198.    my $total_malo  = "";
  199.  
  200.    for ( 1 .. $count ) {
  201.  
  202.        sleep($timeout);
  203.  
  204.        my ( $status, $control ) = toma_response($page);
  205.  
  206.        if ( $control eq "1" ) {
  207.            $total_bueno++;
  208.        }
  209.        else {
  210.            $total_malo++;
  211.        }
  212.  
  213.        syswrite STDOUT, "[+] Visit $_ : $page : " . $status . "\r";
  214.  
  215.    }
  216.  
  217.    syswrite STDOUT,
  218.      "[+] Successful Visits : " . $total_bueno . "\t\t\t\t\t\t\t\t\t\t\r";
  219.  
  220.    if ( $type eq "single" ) {
  221.        print "\n" . toma_fecha_y_hora("Finished");
  222.    }
  223.    else {
  224.        print "\n" . "[+] Finished\n";
  225.    }
  226.  
  227. }
  228.  
  229. sub toma_response {
  230.    my $control = "";
  231.    my $nave    = LWP::UserAgent->new();
  232.    $nave->agent( $agents[ rand @agents ] );
  233.    $nave->timeout(5);
  234.    my $code = $nave->get( $_[0] );
  235.    if ( $code->is_success ) {
  236.        $control = "1";
  237.    }
  238.    else {
  239.        $control = "0";
  240.    }
  241.    my $status = $code->status_line();
  242.    return ( $status, $control );
  243. }
  244.  
  245. sub toma_banner {
  246.    my $resultado = "";
  247.    my $nave      = LWP::UserAgent->new();
  248.    $nave->agent( $agents[ rand @agents ] );
  249.    $nave->timeout(5);
  250.    my $code = $nave->get( $_[0] );
  251.    $resultado = $resultado
  252.      . "--------------------------------------------------------------------------";
  253.    $resultado = $resultado . "\n[+] IP : " . get_ip( $_[0] );
  254.    $resultado = $resultado . "\n[+] Date : " . $code->header('date');
  255.    $resultado = $resultado . "\n[+] Server : " . $code->header('server');
  256.    $resultado =
  257.      $resultado . "\n[+] Connection : " . $code->header('connection');
  258.    $resultado =
  259.      $resultado . "\n[+] Content-Type : " . $code->header('content-type');
  260.  
  261.    if ( $code->header("Set-Cookie") ne "" ) {
  262.        $resultado =
  263.          $resultado . "\n[+] Cookie : " . $code->header("Set-Cookie");
  264.    }
  265.    $resultado = $resultado
  266.      . "\n--------------------------------------------------------------------------";
  267.    return $resultado;
  268. }
  269.  
  270. sub get_ip {
  271.    my ( $nomesirve1, $host, $nomesirve2, $nomesirve3, $nomesirve4 ) =
  272.      uri_split( $_[0] );
  273.    my $get = gethostbyname($host);
  274.    return inet_ntoa($get);
  275. }
  276.  
  277. sub toma_fecha_y_hora {
  278.  
  279.    my (
  280.        $segundos, $minutos,    $hora,       $dia, $mes,
  281.        $año,     $nomesirve1, $nomesirve2, $nomesirve3
  282.    ) = localtime(time);
  283.  
  284.    $año += 1900;
  285.    $mes++;
  286.  
  287.    return "[+] $_[0] Time : " . "$dia/$mes/$año $hora:$minutos:$segundos\n";
  288.  
  289. }
  290.  
  291. sub repes {
  292.    my @limpio;
  293.    foreach $test (@_) {
  294.        push @limpio, $test unless $repe{$test}++;
  295.    }
  296.    return @limpio;
  297. }
  298.  
  299. sub leer_archivo {
  300.    my @r;
  301.    my @words;
  302.    open( FILE, $_[0] );
  303.    @words = <FILE>;
  304.    close FILE;
  305.    for (@words) {
  306.        push( @r, $_ );
  307.    }
  308.    return (@r);
  309. }
  310.  
  311. #The End ?
  312.  

Un ejemplo de uso :

Código:

C:\Users\Doddy\Desktop\WarFactory\Warfactory X\perl\DH ViewBot>view.pl

-- == DH ViewBot 0.2 == --

[+] Options :

-single : Page to visit
-file : File with pages to visit
-randomfile : File with pages to visit as random
-timeout : Time for visit
-count : Count to visist

[+] Example : perl C:\Users\Doddy\Desktop\WarFactory\Warfactory X\perl\DH ViewBo
t\view.pl -single http://www.supertangas.com/index.php -timeout 5 -count 50

-- == (C) Doddy Hackman 2015 == --

C:\Users\Doddy\Desktop\WarFactory\Warfactory X\perl\DH ViewBot>view.pl -single h
ttp://www.petardas.com/index.php -timeout 5 -count 5

-- == DH ViewBot 0.2 == --

[+] Configuration

--------------------------------------------------
[+] Page : http://www.petardas.com/index.php
[+] Timeout : 5
[+] Visit Count  : 5
--------------------------------------------------

[+] Getting information ...

--------------------------------------------------------------------------
[+] IP : 5.135.178.142
[+] Date : Fri, 2 Jan 2015 16:44:10 GMT
[+] Server : Apache/2.2.3 (CentOS)
[+] Connection : close
[+] Content-Type : text/html; charset=latin1
[+] Cookie : pais=AR; expires=Sat, 07-Feb-2015 16:44:10 GMT; path=/; domain=www.
petardas.com, cookieconsent=1; expires=Sat, 07-Feb-2015 16:44:10 GMT; path=/; do
main=www.petardas.com, esmovil=0; expires=Mon, 2-Jan-2015 00:17:30 GMT; path=/;
 domain=www.petardas.com
--------------------------------------------------------------------------

[+] Started Time : 2/1/2015 13:44:31

[+] Successful Visits : 5

[+] Finished Time : 2/1/2015 13:45:2

-- == (C) Doddy Hackman 2015 == --

84  Programación / PHP / [PHP] DH Labs 0.1 en: 9 Enero 2015, 17:14 pm
Les dejo esta recopilacion de codigos php que uso para hacer exploits y programas orientados a la seguridad web.

Las funciones que tiene son :

  • Blind SQL Injection
  • ByPass Login
  • ByPass Uploader
  • Cross Site Request Forgery
  • Eval injection
  • Full Source Discloure
  • Headers Injection
  • HTML Injection
  • Insecure Cookie Handling
  • Local File Inclusion
  • Listado de directorios
  • Remote Command Execution
  • Remote File Inclusion
  • SQL Injection
  • XSS

Una imagen :



Si lo quieren bajar lo pueden hacer de aca.
85  Programación / Scripting / [Python-Pygame] E.T Must Die 0.3 en: 1 Enero 2015, 15:46 pm
Un simple shooter que hice en Python usando Pygame , el juego consiste en eliminar la amenaza de E.T antes de que escape de nuestro planeta.
Es un juego raro pero me sirvio para estudiar el tema de programacion de juegos en Python xD.

Una imagen :



Un video de como se juega :



El codigo :

Código
  1. #!usr/bin/python
  2. #E.T Must Die 0.3
  3. #(C) Doddy Hackman 2015
  4. #Credits : Based on Bush Shootout.py Coded by Nathaniel
  5. #Thanks to Nathaniel
  6.  
  7. import pygame
  8. from pygame.locals import *
  9. import sys,random,time
  10.  
  11. pygame.init()
  12.  
  13. juego = pygame.display.set_mode((860,640))
  14. pygame.display.set_caption("E.T Must Die 0.3")
  15. icono = pygame.image.load("Data/Images/icono.png").convert_alpha()      
  16. pygame.display.set_icon(icono)
  17. pygame.mouse.set_visible(False)
  18.  
  19. letra = pygame.font.Font(None,35)
  20.  
  21. vida = 200
  22. control = False
  23.  
  24. class mira(pygame.sprite.Sprite):
  25. def __init__(self):
  26. pygame.sprite.Sprite.__init__(self)
  27. self.mira = pygame.image.load("Data/Images/mira.png")
  28. self.rect = self.mira.get_rect()
  29. self.rect.x = 860/2
  30. self.rect.y = 640/2
  31. def mover(self):
  32. posicion = pygame.mouse.get_pos()
  33. self.rect.x = posicion[0]
  34. self.rect.y = posicion[1]
  35. juego.blit(self.mira,self.rect)
  36. def lanzar(self):
  37. yeah = pygame.sprite.spritecollide(self,lista,dokill=False)
  38. if yeah:
  39.  
  40. global vida
  41. vida = vida - 10
  42. pygame.mixer.Sound("Data/Sounds/risa2.wav").play()
  43.  
  44. class threat(pygame.sprite.Sprite):
  45. def __init__(self):
  46. pygame.sprite.Sprite.__init__(self)
  47. self.imagen = pygame.image.load("Data/Images/avatar.png")
  48. self.rect = self.imagen.get_rect()
  49. self.tiempo = 15
  50. self.contador = int(self.tiempo)
  51. def mover(self):
  52. self.contador += 1
  53. if self.contador >= self.tiempo:
  54. self.rect.x = random.randrange(20,850)
  55. self.rect.y = random.randrange(30,540)
  56. self.contador = 0
  57. juego.blit(self.imagen,self.rect)
  58.  
  59.  
  60. pygame.mixer.Sound("Data/Sounds/menu.wav").play()
  61. men = pygame.image.load("Data/Images/portada.png")
  62. juego.blit(men,(0,0))
  63. pygame.display.update()
  64. time.sleep(9)
  65.  
  66. pygame.mixer.init()
  67. pygame.mixer.music.load("Data/Sounds/theme.mp3")
  68. pygame.mixer.music.play()
  69.  
  70. mira = mira()
  71. threat = threat()
  72.  
  73. lista = pygame.sprite.Group()
  74. lista.add(threat)
  75.  
  76. cro = pygame.time.Clock()
  77. mil = 0
  78.  
  79. while True:
  80.  
  81.        mil += cro.tick()
  82.        casi = mil/1000
  83.        casi = 30 - casi
  84.  
  85. if casi < 1:
  86. control = True
  87.  
  88. for acatoy in pygame.event.get():
  89.  
  90. if acatoy.type == QUIT:
  91. sys.exit(1)
  92.  
  93. if acatoy.type == MOUSEBUTTONDOWN and acatoy.button == 1:
  94. pygame.mixer.Sound("Data/Sounds/disparo.wav").play()
  95. mira.lanzar()
  96.  
  97. if not control:
  98.  
  99. fondo = pygame.image.load("Data/Images/fondo.jpg")
  100. juego.blit(fondo,(0,0))
  101. juego.blit(letra.render("Remaining Time : "+str(casi),True,(255,0,0)),(20,10))
  102. juego.blit(letra.render("Threat "+str(vida),True,(255,0,0)),(700,10))
  103. mira.mover()
  104. threat.mover()
  105.  
  106. if vida == 0:
  107. over = pygame.image.load("Data/Images/ganaste.png")
  108. juego.blit(over,(0,0))
  109. pygame.display.update()
  110. time.sleep(10)
  111. sys.exit(1)
  112.  
  113. else:
  114. over = pygame.image.load("Data/Images/perdiste.png")
  115. juego.blit(over,(0,0))
  116. pygame.display.update()
  117. pygame.mixer.Sound("Data/Sounds/risa.wav").play()
  118. time.sleep(10)
  119. sys.exit(1)
  120.  
  121. pygame.time.delay(15)
  122. pygame.display.flip()
  123.  
  124. #The End ?
  125.  


Si quieren bajar el juego lo pueden hacer de aca.
86  Programación / Programación General / [Delphi] Project Spartacus 1.0 (Regalo de Navidad) en: 25 Diciembre 2014, 16:19 pm
Como regalo de navidad les traigo una IRC Botnet que hice en Delphi con la siguientes opciones :

  • Ejecutar comandos
  • Listar procesos activos
  • Cerrar procesos
  • Listar archivo de un directorio
  • Borrar archivos y directorios
  • Leer archivos
  • Abrir y cerrar la lectora
  • Mostrar y ocultar iconos
  • Mostrar y ocultar taskbar
  • Enviar pulsaciones de teclado con SendKeys
  • Abrir Word y hacer que escriba solo
  • Volver loco al mouse haciendo que se mueva por la pantalla
  • Listar Drives
  • Listar servicios
  • Listar ventanas de windows abiertas
  • Activar o desactivar el firewall
  • Apagar,cerrar sesion y reiniciar computadora
  • Mostrar mensajitos en la pantalla
  • Abrir paginas en el navegador
  • Cargar paint
  • Activar y desactivar Regedit
  • Cambiar el texto de la barra de tareas por la palabra que quieran
  • Descargar y ejecutar archivos
  • Ver la IP del infectado
  • Keylogger incorporado

El Builder incorpora las siguientes opciones :

  • Se puede escoger la configuracion del servidor IRC a usar , configurar el keylogger y la carpeta en la que se esconde el server
  • Se puede cambiar la extension y el icono del server
  • Podes detectar los nuevos infectados que ingresan al canal con mensajes de alerta por parte del programa cuando se este minimizado
  • El stub y el bot de control hablan cada cierto tiempo para evitar ser vistos como bot

Una imagen :



Un video con ejemplos de uso :



Si quieren bajar el programa lo pueden hacer de aca :

SourceForge.
Github.

Eso seria todo.
87  Programación / Scripting / Re: [Python] Mi consola no muestra nada... en: 21 Diciembre 2014, 00:57 am
nunca estas llamando a la funcion information_extract() , te deberia quedar asi :

Código
  1. def information_extract():
  2. comando = "systeminfo"
  3. abrir = os.popen(comando)
  4. datos = "tubo.readlines()"
  5. nombre_pc = datos [1].split(" ")[-1].split("\n")[0]
  6. nombre_fichero = "informacion: "+nombre_pc+".txt"
  7. fichero = open(nombre_fichero, "W")
  8. fichero.writelines(datos)
  9. fichero.close()
  10. return nombre_fichero
  11.  
  12. information_extract()


88  Programación / Scripting / [Python-Pygame] Cruel Hangman 0.2 en: 19 Diciembre 2014, 15:02 pm
Un simple ahorcado que hice en python usando Pygame , el juego es una  parodia del capitulo llamado "Chef se volvio loco" de South Park , es solo una parodia de ese capitulo no se lo vayan a tomar en serio.

Una imagen :



El codigo :

Código
  1. #!usr/bin/python
  2. #Cruel Hangman 0.2
  3. #(C) Doddy Hackman 2014
  4.  
  5. import pygame,sys,time,random
  6. from pygame.locals import *
  7.  
  8. test1 = ""
  9. test2 = ""
  10. test3 = ""
  11. test4 = ""
  12. test5 = ""
  13.  
  14. des1 = "0"
  15. des2 = "0"
  16. des3 = "0"
  17. des4 = "0"
  18. des5 = "0"
  19.  
  20. gane = "0"
  21. perdi = "0"
  22.  
  23. repetido = []
  24.  
  25. oportunidades = 7
  26.  
  27. def escribir_fuente(texto,x,y):
  28. cargando_fuente = pygame.font.SysFont(None, 40)
  29. tipo_fuente = cargando_fuente.render(texto, True, (255, 0, 0))
  30. posicion = tipo_fuente.get_rect()
  31. posicion.centerx = x
  32. posicion.centery = y
  33. screen.blit(tipo_fuente,posicion)
  34.  
  35. def actualizar(letra,letra1,letra2,letra3,letra4,letra5):
  36.  
  37.  global oportunidades
  38.  
  39.  if letra=="inicio":
  40.  
  41.   test1 = ""
  42.   test2 = ""
  43.   test3 = ""
  44.   test4 = ""
  45.   test5 = ""
  46.  
  47.   des1 = "0"
  48.   des2 = "0"
  49.   des3 = "0"
  50.   des4 = "0"
  51.   des5 = "0"
  52.  
  53.   gane = "0"
  54.   perdi = "0"
  55.  
  56.   oportunidades = 7
  57.  
  58.   global repetido
  59.  
  60.   repetido = []
  61.  
  62.   over = pygame.image.load("Data/Images/logoinicio.png")
  63.   screen.blit(over,(0,0))
  64.  
  65.   escribir_fuente("_",300,570)
  66.   escribir_fuente("_",350,570)
  67.   escribir_fuente("_",400,570)
  68.   escribir_fuente("_",450,570)
  69.   escribir_fuente("_",500,570)
  70.  
  71.   escribir_fuente("",300,560)
  72.   escribir_fuente("",350,560)
  73.   escribir_fuente("",400,560)
  74.   escribir_fuente("",450,560)
  75.   escribir_fuente("",500,560)
  76.  
  77.   pygame.display.update()
  78.  
  79.  else:
  80.  
  81.  
  82.   if oportunidades==7:
  83.    over = pygame.image.load("Data/Images/logoinicio.png")
  84.    screen.blit(over,(0,0))
  85.  
  86.   global test1
  87.   global test2
  88.   global test3
  89.   global test4
  90.   global test5
  91.  
  92.   global des1
  93.   global des2
  94.   global des3
  95.   global des4
  96.   global des5
  97.  
  98.   global gane
  99.   global perdi
  100.  
  101.   control = 0
  102.  
  103.   if letra==letra1:
  104.    test1 = letra
  105.    if des1 == "0":
  106.     des1 = "1"
  107.     control = 1
  108.  
  109.   if letra==letra2:
  110.    test2 = letra
  111.    if des2 == "0":
  112. des2 = "1"
  113. control = 1
  114.  
  115.   if letra==letra3:
  116.    test3 = letra
  117.    if des3 == "0":
  118. des3 = "1"
  119. control = 1
  120.  
  121.   if letra==letra4:
  122.    test4 = letra
  123.    if des4 == "0":
  124. des4 = "1"
  125. control = 1
  126.  
  127.   if letra==letra5:
  128.    test5 = letra
  129.    if des5 == "0":
  130. des5 = "1"
  131. control = 1
  132.  
  133.   if des1=="1" and des2=="1" and des3=="1" and des4=="1" and des5=="1":
  134. oportunidades = 7
  135. pygame.mixer.Sound("Data/Sounds/ohh.ogg").play()
  136. escribir_fuente("You Win",680,50)
  137. escribir_fuente("Press Enter to continue",680,90)
  138. gane = "1"
  139. pygame.display.update()
  140.  
  141.   if control==1:
  142.    repetido.append(letra)
  143.    pygame.mixer.Sound("Data/Sounds/bien.ogg").play()
  144.   else:
  145. if not letra in repetido:
  146. oportunidades = oportunidades - 1  
  147. pygame.mixer.Sound("Data/Sounds/mal.ogg").play()
  148.  
  149.   if oportunidades==6:
  150.    over = pygame.image.load("Data/Images/logocabeza.png")
  151.    screen.blit(over,(0,0))
  152.  
  153.   if oportunidades==5:
  154.    over = pygame.image.load("Data/Images/logopalo.png")
  155.    screen.blit(over,(0,0))
  156.  
  157.   if oportunidades==4:
  158.    over = pygame.image.load("Data/Images/logobrazo1.png")
  159.    screen.blit(over,(0,0))    
  160.  
  161.   if oportunidades==3:
  162.    over = pygame.image.load("Data/Images/logobrazo2.png")
  163.    screen.blit(over,(0,0))
  164.  
  165.   if oportunidades==2:
  166.    over = pygame.image.load("Data/Images/logopierna1.png")
  167.    screen.blit(over,(0,0))
  168.  
  169.   if oportunidades==1:
  170.    over = pygame.image.load("Data/Images/final.png")
  171.    screen.blit(over,(0,0))
  172.    pygame.mixer.Sound("Data/Sounds/festejo.ogg").play()
  173.    escribir_fuente("You Lost",680,50)
  174.    escribir_fuente("Press Enter to continue",680,90)
  175.    perdi = "1"
  176.    test1 = letra1
  177.    test2 = letra2
  178.    test3 = letra3
  179.    test4 = letra4
  180.    test5 = letra5
  181.  
  182.   escribir_fuente("_",300,570)
  183.   escribir_fuente("_",350,570)
  184.   escribir_fuente("_",400,570)
  185.   escribir_fuente("_",450,570)
  186.   escribir_fuente("_",500,570)
  187.  
  188.   escribir_fuente(test1,300,560)
  189.   escribir_fuente(test2,350,560)
  190.   escribir_fuente(test3,400,560)
  191.   escribir_fuente(test4,450,560)
  192.   escribir_fuente(test5,500,560)
  193.  
  194.   pygame.display.update()
  195.  
  196.  
  197. screen = pygame.display.set_mode((860,640),0,32)
  198.  
  199. icono = pygame.image.load("Data/Images/icono.png").convert_alpha()      
  200. pygame.display.set_icon(icono)
  201. pygame.display.set_caption("Cruel Hangman 0.2 (C) Doddy Hackman 2014")
  202.  
  203. pygame.init()
  204.  
  205. pygame.mixer.Sound("Data/Sounds/menu.wav").play()
  206. men = pygame.image.load("Data/Images/logohangman.png")
  207. screen.blit(men,(0,0))
  208. pygame.display.update()
  209. time.sleep(9)
  210.  
  211. def game():
  212.  
  213. #palabras = ["pizza","agrio"]
  214. palabras =
  215.  
  216. ["andar","banco","cazar","clave","etapa","oasis","parte","saber","socio","u
  217.  
  218. sado","ronca","boxeo","pizza","groso","fallo","acera","acoso","agrio","ansi
  219.  
  220. a","gnomo","gordo","pieza"]
  221.  
  222. palabra = random.choice(palabras)
  223.  
  224. letra1 = palabra[0]
  225. letra2 = palabra[1]
  226. letra3 = palabra[2]
  227. letra4 = palabra[3]
  228. letra5 = palabra[4]
  229.  
  230. actualizar("inicio",letra1,letra2,letra3,letra4,letra5)
  231.  
  232. pygame.mixer.init()
  233. pygame.mixer.music.load("Data/Sounds/theme.mp3")
  234. pygame.mixer.music.play()
  235.  
  236.  
  237. while True:
  238.  for eventos in pygame.event.get():
  239.   if eventos.type == QUIT:
  240.    sys.exit(0)
  241.  
  242.  
  243.   if (eventos.type == pygame.KEYDOWN) and (eventos.key ==
  244.  
  245. pygame.K_RETURN):
  246.   if gane=="1" or perdi=="1":
  247.   game()
  248.  
  249.   if eventos.type==KEYDOWN :
  250.    if eventos.unicode.lower() in ("abcdefghijklmnopqrstuvwxyz"):
  251.     actualizar(eventos.unicode,letra1,letra2,letra3,letra4,letra5)
  252.  
  253. game()
  254.  
  255. # The End ?
  256.  
  257.  

Si quieren bajar el juego lo pueden hacer de

aca.
89  Programación / Scripting / [Perl] Ejemplo de Cifrado Vigenere en: 13 Diciembre 2014, 15:23 pm
Un simple ejemplo del cifrado Vigenere que hice usando un modulo que encontre en cpan.

El codigo :

Código
  1. # !usr/bin/perl
  2. # Vigenere Cipher
  3. # Coded By Doddy Hackman in the year 2014
  4.  
  5. use Crypt::Vigenere;
  6.  
  7. head();
  8. menu();
  9. copyright();
  10.  
  11. # Functions
  12.  
  13. sub head {
  14.    print "\n-- == Vigenere Cipher == --\n";
  15. }
  16.  
  17. sub copyright {
  18.    print "\n\n-- == (C) Doddy Hackman 2014 == --\n";
  19. }
  20.  
  21. sub menu {
  22.    print qq(
  23. ===============
  24. = Menu        =
  25. ===============
  26. 1 - Encode    =
  27. 2 - Decode    =
  28. 3 - Exit      =
  29. ===============
  30. );
  31.  
  32.    print "\n[+] Option : ";
  33.    chomp( my $op = <stdin> );
  34.  
  35.    if ( $op eq "3" ) {
  36.        copyright();
  37.        <stdin>;
  38.        exit(1);
  39.    }
  40.  
  41.    print "\n[+] Enter text : ";
  42.    chomp( my $text = <stdin> );
  43.  
  44.    print "\n[+] Enter Key : ";
  45.    chomp( my $key = <stdin> );
  46.  
  47.    print "\n[+] Result ...\n\n";
  48.  
  49.    $tool = Crypt::Vigenere->new($key);
  50.  
  51.    if ( $op eq "1" ) {
  52.        print $tool->encodeMessage($text);
  53.        <stdin>;
  54.        menu();
  55.    }
  56.    elsif ( $op eq "2" ) {
  57.        print $tool->decodeMessage($text);
  58.        <stdin>;
  59.        menu();
  60.    }
  61.    else {
  62.        menu();
  63.    }
  64.  
  65. }
  66.  
  67. # The End ?
  68.  

Eso es todo.
90  Programación / Scripting / [Perl] Ejemplo de Sucesion Fibonacci en: 5 Diciembre 2014, 15:04 pm
Un simple ejemplo de la Sucesion Fibonacci en Perl.

El codigo :

Código
  1. # !usr/bin/perl
  2. # Sucesion Fibonacci
  3. # Coded By Doddy Hackman in the year 2014
  4.  
  5. head();
  6.  
  7. print "\n\n[+] Enter count : ";
  8. chomp( my $cantidad = <stdin> );
  9.  
  10. print "\n";
  11.  
  12. my ( $uno, $dos ) = ( "0", "1" );
  13.  
  14. for my $num ( 0 .. $cantidad ) {
  15.    print "[+] : " . $uno . "\n";
  16.    my $final = $uno + $dos;
  17.    $uno = $dos;
  18.    $dos = $final;
  19. }
  20.  
  21. copyright();
  22. <stdin>;
  23. exit(1);
  24.  
  25. # Functions
  26.  
  27. sub head {
  28.    print "\n-- == Fibonacci Sequence == --\n";
  29. }
  30.  
  31. sub copyright {
  32.    print "\n\n-- == (C) Doddy Hackman 2014 == --\n";
  33. }
  34.  
  35. # The End ?
  36.  
  37.  
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ... 55
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines