Posteado por Mnosh el 28 de Agosto de 2010 a las 15:38hs.

Pack 25 Brushes (pinceles) para Adobe Photoshop

adobe photoshop brushes

Set de 25 brushes para adobe photoshop (serie CSx).

Para instalarlos simplemente los cargan desde el inspector de brushes (al seleccionar la pluma), o con doble click sobre los mismos.

 

Posteado por Mnosh el 22 de Agosto de 2010 a las 14:54hs.

Manual PHP5 Orientado a Objetos [PDF]

This book teaches OO PHP by doing it. If you are a PHP programmer who wants to make the switch to an OO approach, Object-Oriented PHP can ease the transition from procedural to object-oriented programming (OOP). Basic concepts are introduced using simple but useful classes. In short, this book: Brings together information from a variety of sources for a comprehensive overview of OO PHP Explains OO concepts through concrete examples, not in the abstract. Takes a practical and easy-to-understand approach Demonstrates the advantages of OOP rather than just asserting them The classes developed in this book are fully functional and are all available for download at the companion website. This code can be put to work immediately in a variety of situations. The code takes full advantage of the capabilities of PHP 5 but, where possible, a PHP 4 version of the code is also provided, because you don’t always have a choice about where your code is deployed. Additionally, this will ease the transition for anyone ready familiar with OOP under PHP 4.

Posteado por Mnosh el 20 de Agosto de 2010 a las 21:06hs.

Cross Site Scripting Exploits and Defense [PDF]

XSS, del inglés Cross-site scripting es un tipo de inseguridad informática o agujero de seguridad basado en la explotación de vulnerabilidades del sistema de validación de HTML incrustado.
Su nombre original es "Cross Site Scripting", y es abreviado como XSS para no ser confundido con las siglas CSS, (hojas de estilo en cascada). Las vulnerabilidades de XSS originalmente abarcaban cualquier ataque que permitiera ejecutar código de "scripting", como VBScript o JavaScript, en el contexto de otro sitio web (y recientemente esto se podría clasificar más correctamente como "distintos orígenes").

Estos errores se pueden encontrar en cualquier aplicación que tenga como objetivo final, el presentar la información en un navegador web. No se limita a sitios web, ya que puede haber aplicaciones locales vulnerables a XSS, o incluso el navegador en sí. El problema está en que usualmente no se validan correctamente los datos de entrada que son usados en cierta aplicación. Esta vulnerabilidad puede estar presente de forma directa (también llamada persistente) o indirecta (también llamada reflejada).

    * Directa (Persistente): este tipo de XSS comúnmente filtrado, y consiste en invadir código HTML peligroso en sitios que así lo permiten; incluyendo así etiquetas como lo son <script> o <iframe>.

    * Indirecta (Reflejada): este tipo de XSS consiste en modificar valores que la aplicación web utiliza para pasar variables entre dos páginas, sin usar sesiones y sucede cuando hay un mensaje o una ruta en la URL del navegador, en una cookie, o cualquier otra cabecera HTTP (en algunos navegadores y aplicaciones web, esto podría extenderse al DOM del navegador).

Posteado por Mnosh el 20 de Agosto de 2010 a las 01:06hs.

SQL Injection Attacks and Defense [PDF]

SQL injection attacks and defense

SQL Injection Attacks and Defense
474 pages | Syngress (May 15, 2009) | ISBN: 1597494240 | PDF | 6.5 MB

SQL injection represents one of the most dangerous and well-known, yet misunderstood, security vulnerabilities on the Internet, largely because there is no central repository of information to turn to for help. This is the only book devoted exclusively to this long-established but recently growing threat.

It includes all the currently known information about these attacks and significant insight from its contributing team of SQL injection experts.
- What is SQL injection?-Understand what it is and how it works
- Find, confirm, and automate SQL injection discovery
- Discover tips and tricks for finding SQL injection within the code
- Create exploits using SQL injection
- Design to avoid the dangers of these attacks

Posteado por Mnosh el 17 de Agosto de 2010 a las 15:48hs.

Manual de librería php jGraph [PDF]

logo jgraph

JpGraph es una librería PHP que nos permitirá la creación de gráficos de forma sencilla. Soporta una gran cantidad de tipos de gráficos, lineales, de barras, sectores,... y los gráficos que genera rara vez superan los 5 KB de tamaño.

Entre las características de esta librería podemos destacar:

  • Detecta de forma automática la versión de librería GD que tiene instalado.
  • Se puede asignar texto a las imágenes y seleccionar el tipo de letra que queremos ponerle.
  • Manejo de las escalas para los  ejes de las gráficas.
  • Soporta formatos de imágenes PNG, GIF y JPG.
  • Tiene una gran documentación con referencias a todas las funciones disponibles.
  • Se pueden mezclar tipo distintos de gráficas en una misma imagen.


Posteado por Mnosh el 11 de Agosto de 2010 a las 02:37hs.

Curso de Desarrollo de Aplicaciones Web [PHP ESP PDF]

curso desarrollo de aplicaciones web con php

El funcionamiento de un Web-Site es un ejemplo típico de la arquitectura cliente-servidor, en donde múltiples clientes se conectan a un servidor en forma simultanea. En general tipo servidor depende de la instalación del sitio web, mientras que el cliente suele ser un browser(navegador), en general Netscape Navigator, Mozilla o Microsoft Explorer. Como en todo esquema cliente-servidor debe existir un protocolo que especifique de que forma se comunican e intercambian datos el cliente y el servidor, el protocolo utilizado en un web site es el HTTP (HiperText Transfer Protocol)

Posteado por Mnosh el 10 de Agosto de 2010 a las 17:20hs.

Vulnerabilidad en varios clientes FTP

Se ha descubierto una vulnerabilidad que afecta a múltiples clientes FTP y que podría permitir potencialmente a un atacante remoto ejecutar código arbitrario a través de un servidor FTP malicioso.
La vulnerabilidad reside en una falta de validación del nombre de los archivos que el cliente FTP obtiene del servidor cuando descarga un directorio completo.

Si el nombre de los archivos procedentes del servidor contiene una ruta especialmente manipulada, el cliente usará ese nombre cuando el archivo se escriba localmente y lo situará en la ruta contenida en el nombre. Por ejemplo "..\..\..\..\archivo.exe".

Uno de los posibles vectores permitiría a un atacante situar un archivo con contenido arbitrario en el directorio de inicio de una víctima. Lo que provocaría la ejecución automática al inicio de sesión.

Posteado por Mnosh el 09 de Agosto de 2010 a las 23:44hs.

Videotutorial XSLT [ENG]

xslt videotutorial

Este curso le enseñara como utilizar XSLT para procesar datos XML en otro formato, o lenguaje de marcas como XHTML o WAP.
Usted aprenderá los orígenes y estado actual de XSLT, como utilizar XPath para navegar por los nodos del árbol XML, como utilizar hojas de estilo, etc.

Posteado por Mnosh el 09 de Enero de 2010 a las 08:00hs.

Sistema de login con PHP y MySQL

Vamos a mostrar cómo crear un sistema de login utilizando PHP con el driver de PDO (para php5.x) y una base de datos MySQL.
La idea principal es registrar usuarios, loguearlos en el sitio y desloguearlos del mismo de la forma más simple para luego poder proteger áreas con unas simples líneas de código.
Partimos de una base de datos, no muy complicada, desde la consola podemos crearla con la siguientes consultas:

consulta.sql
1
2
3
4
5
6
7
8
 
CREATE TABLE `users`.`acccounts` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`nick` VARCHAR( 20 ) NOT NULL ,
`email` VARCHAR( 50 ) NOT NULL ,
`password` VARCHAR( 32 ) NOT NULL ,
`salt` CHAR( 6 ) NOT NULL
) ENGINE = MYISAM ;



Bien, nuestra base de datos se llama “users” y dentro tenemos nuestra tabla “accounts” la cual cuenta con una columna id, nick, email, password y salt.
La columna password almacenara la contraseña del usuario concatenada con el salto, todo esto encriptado en MD5, con lo cual conseguimos distintos hashes para mismos passwords (esto evita comparar hashes entre sí o contra alguna lista en internet).
Ok, para intentar hacerlo lo más simple posible, voy a utilizar un archivo con todas las funciones, clases, instancias, etc. y lo incluiré al principio de cada archivo.. evidentemente en un proyecto ordenaríamos el asunto, a modo de funcionar en MVC o como sea.

Bien, iniciamos la sesión y definimos las constantes para la conexión a la base de datos.



1
2
3
4
5
session_start();
defined('DB_HOST')? null : define("DB_HOST", "localhost"); //servidor mysql
defined('DB_USER')? null : define("DB_USER", "root"); // usuario mysql
defined('DB_PASS')? null : define("DB_PASS", ""); // password del usuario mysql
defined('DB_NAME')? null : define("DB_NAME", "users"); // nombre de la base de datos



creamos un objeto $db ,instancia de PDO con los atributos para manejar errores:

Posteado por Mnosh el 12 de Diciembre de 2009 a las 08:00hs.

Creando un sistema simple para manejo de captcha en php

Un sistema de captcha (Completely Automated Public Turing test to tell Computers and Humans Apart) es la solución frecuente para evitar que robots spamers que visiten nuestro sitio puedan registrarse, enviar comentarios, participar en encuestas o cualquier yuyo en cuestión. Si bien esto no nos garantiza un 100% de efectividad , de seguro nos vale.

Supongamos un sitio web desarrollado en php al cual queremos implementarle una solución para frenar bots spamers, bien entonces instalamos re-captcha y listo, gracias por participar…

Ok, si bien nos sirve, quizás queramos saber cómo funciona y por ahí crear el nuestro propio, así que de eso va este post… comencemos.

Para generar imágenes en php nos valemos de la librería GD el cual está presente en la mayoría de los web hosting. En caso de utilizar localhost, instalando wamp para Windows ya nos viene incluido, y desde Linux bastaría con compilar php con la opción de gd, así como las librerías de libpng y libjpeg ( ./configure –with-gd=/… –with-png-dir=/… –with-jpeg-dir=… ).


Básicamente lo que necesitamos es generar una cadena de texto con letras y números al azar, almacenarlo en la sesión y luego comprobar con lo que el usuario inserto en la caja del formulario, en caso de coincidir se salto el captcha, caso contrario regresamos con un mensaje de error y con una nueva imagen para intentar.