- Desde
- 23 Jul 2003
- Mensajes
- 113
Guia de aprendizaje-introduccion al hacking para newbies
Escribo este pequeño artículo con la idea de que ayude a comprender las bases para la creación de hacks en el sistema de foros de vbulletin, si alguien desea colaborar puede contactar con migo para ver como creamos un artículo más completo
Última actualización: 12/08/2008
Quiero hacer notar el hecho de que yo soy un aficionado y me he apoyado de algunos artículos en vbulletin.org y/o cosas que he visto por mi cuenta
Debug Mode:
Esto es algo que los interesados en el tema agradecerán mucho, ¿pero qué es o que utilidad obtendré con esto?
Gracias a esta modalidad tendrás acceso a opciones ocultas en el ACP e información valiosa que te será de utilidad para la construcción de tu hack, a parte de que si tomas nota de cuantas querys hay sin tu modificación y cuantas hay activas con tu hack instalado podrás saber cuantas consultas añade tu modificación, así que no lo olvides: es obligatorio tener activo el debug mode para la creación de nuestros hacks (asuntos que vbulletin ha establecido como normas) ya que como mencione al inicio, unicamente de esta manera tendras acceso a opciones que son exclusivas a desarrolladores (las veremos en cada paso de la creación de nuestro hack de ejemplo)
Ahora, como activar el debug mode:
http://www.vbulletin.org/forum/showthread.php?t=82835&highlight=debug+mode
Advertencia: es altamente recomendado que solo actives el debug mode en un foro de prueba, jamás en un foro público y menos a todos los usuarios
#######################################
¿Hooks?
Simple: debes entender por hook a porciones o bloques de código que se ejecutan en los archivos .php, así que tu puedes crear un plugin que se ejecutara en determinada porción de un archivo php según tu necesidad, ¿entiendes el potencial de este método? Dependiendo de la complejidad de tu hack, ¡no necesitaras modificar el archivo .php en cuestión! Ahora los archivos .php se quedan intactos, algo que será muy útil en un upgrade y las personas con las que compartas tus hacks estarán muy agradecidas de la comodidad de solo dar click para instalar o desinstalar tus hacks. Ahora, no siempre habrá un hook justo a donde necesitas hacer una acción, en este caso, estarás obligado a editar el archivo .php o si te sientes con más confianza puedes añadir hooks personalizados a los archivos .php:
http://www.vbulletin.org/forum/showpost.php?p=663701&postcount=1
Well, let’s get crackin’!
La siguiente modificación es algo que se me ocurrió para ejemplo en este artículo, quiero decir que cada persona tiene su método o lógica de hacer las cosas, por ahora para ser mi primer hack desde la ver. 2.x lo hice así, con la practica cada uno refina sus métodos:
definiendo el objetivo: vamos a suponer que por alguna razón necesitamos que cuando nuestros usuarios se registren sean agregados a un grupo especifico dependiendo de la opción a una pregunta que les hagamos, para ser más especificos, vamos a plantearlo asi:
-> cuando estén llenando los campos de registro, tendrán a su elección un campo en donde definan si son miembros de una banda
-> nuestro hack debe, dependiendo de la elección de nuestros usuarios al momento de registrarse, añadir nuestros usuarios en un grupo que crearemos en donde estarán los miembros de bandas, y si no pertenece a una banda quedará registrado en el grupo por defecto
-> deberá permitir que seleccionemos nuestro grupo de usuario desde la comodidad del panel de control
-> deberá de permitirnos si deseamos que el hack este activo
Paso 1:
Nos dirigimos a donde nuestro hack debe trabajar (en este caso es la pagina de registro, ojo: es una pagina diferente cuando hemos enviado los datos de registro y por lo mismo los hooks son diferentes) justo ahí buscamos al pie de nuestra pagina de registro la sección ‘Debug Information’ y ahí vemos el apartado ‘Hooks Called:’
(figura 1.1)
Ok, primero este es un mini tutorial/guia de hacks, no de Photoshop, asi que no me salgan con comentarios acerca de las imágenes, que no sé usar el photoshop ya de por si es doble sacrificio el que hago por ustedes . Usando nuestra intuición nos centramos a primera vista por el nombre de los hooks en 2 posibles localizaciones en donde nuestro hack podría funcionar, pero si hay dudas lo ideal es consultar la información del apartado ‘una valiosa herramienta’ en mi caso ya tenia idea de a donde dirigirme, (de estos 2 hooks señalados, el hook que utilicé y en donde me funciono es el que marque con amarillo)
Paso 2:
me dirijo al ACP y busco la sección ‘Plugin & Products System’ doy clic en ‘administrar productos’ y luego en ‘add/import product’ y los lleno según los datos de mi nuevo producto:
(figura 2.1)
Hay algunas reglas que se deben considerar en esta sección, para dudas pueden consultarlas en la ayuda y dependiendo de las futuras actualizaciones las detallare en su momento (de lo contrario jamás avanzaré en la creación de este documento).
Le damos guardar y listo! Ya hemos empezado con lo necesario para nuestro flamante hack. Si han notado este paso es sencillamente la base que será la estructura de nuestro hack, ya que aquí no podremos más que hacer estas definiciones sencillas
Paso 3:
Nos dirigimos a Opciones del foro y damos clic en ‘Add New Setting Group’:
(figura 3.1)
Ahora vamos a crear el menú que nuestro hack ocupará como base de sus configuraciones:
(figura 3.2)
Al guardar nos aparece la siguiente pantalla:
(figura 3.3)
Ahora seleccionamos ‘Add Setting’ y crearemos nuestras opciones:
(figura 3.4)
Seguramente ya han notado que las frases se están creando en conjunto con nuestra opción, ahora el resultado:
(figura 3.5)
En este caso he elegido que por defecto sea el grupo 9, obvio, esto es un ejemplo
Ahora creamos un campo que el usuario usará para darnos a conocer si es miembro de una banda o no cuando se este registrando:
(figura 3.6)
Esta demás mencionar que es importante anotar el numero de este campo, el cual es el numero 6
Paso 4:
Damos clic en ‘agregar plugin’ y vamos a llenar los datos según el siguiente orden:
En ‘Product’ elegimos el producto que acabamos de crear y en ‘Hook Location’ elegimos en que parte del código del archivo de registro deseamos que se ejecute nuestro código, ‘Título’ no necesita explicación, ‘Execution Order’ dejamos por defecto la opcion y ahora vamos a la parte vital de nuestro hack: ‘Plugin PHP Code’
Escribo este pequeño artículo con la idea de que ayude a comprender las bases para la creación de hacks en el sistema de foros de vbulletin, si alguien desea colaborar puede contactar con migo para ver como creamos un artículo más completo
Última actualización: 12/08/2008
Quiero hacer notar el hecho de que yo soy un aficionado y me he apoyado de algunos artículos en vbulletin.org y/o cosas que he visto por mi cuenta
Debug Mode:
Esto es algo que los interesados en el tema agradecerán mucho, ¿pero qué es o que utilidad obtendré con esto?
Gracias a esta modalidad tendrás acceso a opciones ocultas en el ACP e información valiosa que te será de utilidad para la construcción de tu hack, a parte de que si tomas nota de cuantas querys hay sin tu modificación y cuantas hay activas con tu hack instalado podrás saber cuantas consultas añade tu modificación, así que no lo olvides: es obligatorio tener activo el debug mode para la creación de nuestros hacks (asuntos que vbulletin ha establecido como normas) ya que como mencione al inicio, unicamente de esta manera tendras acceso a opciones que son exclusivas a desarrolladores (las veremos en cada paso de la creación de nuestro hack de ejemplo)
Ahora, como activar el debug mode:
http://www.vbulletin.org/forum/showthread.php?t=82835&highlight=debug+mode
Advertencia: es altamente recomendado que solo actives el debug mode en un foro de prueba, jamás en un foro público y menos a todos los usuarios
#######################################
¿Hooks?
Simple: debes entender por hook a porciones o bloques de código que se ejecutan en los archivos .php, así que tu puedes crear un plugin que se ejecutara en determinada porción de un archivo php según tu necesidad, ¿entiendes el potencial de este método? Dependiendo de la complejidad de tu hack, ¡no necesitaras modificar el archivo .php en cuestión! Ahora los archivos .php se quedan intactos, algo que será muy útil en un upgrade y las personas con las que compartas tus hacks estarán muy agradecidas de la comodidad de solo dar click para instalar o desinstalar tus hacks. Ahora, no siempre habrá un hook justo a donde necesitas hacer una acción, en este caso, estarás obligado a editar el archivo .php o si te sientes con más confianza puedes añadir hooks personalizados a los archivos .php:
http://www.vbulletin.org/forum/showpost.php?p=663701&postcount=1
Well, let’s get crackin’!
La siguiente modificación es algo que se me ocurrió para ejemplo en este artículo, quiero decir que cada persona tiene su método o lógica de hacer las cosas, por ahora para ser mi primer hack desde la ver. 2.x lo hice así, con la practica cada uno refina sus métodos:
definiendo el objetivo: vamos a suponer que por alguna razón necesitamos que cuando nuestros usuarios se registren sean agregados a un grupo especifico dependiendo de la opción a una pregunta que les hagamos, para ser más especificos, vamos a plantearlo asi:
-> cuando estén llenando los campos de registro, tendrán a su elección un campo en donde definan si son miembros de una banda
-> nuestro hack debe, dependiendo de la elección de nuestros usuarios al momento de registrarse, añadir nuestros usuarios en un grupo que crearemos en donde estarán los miembros de bandas, y si no pertenece a una banda quedará registrado en el grupo por defecto
-> deberá permitir que seleccionemos nuestro grupo de usuario desde la comodidad del panel de control
-> deberá de permitirnos si deseamos que el hack este activo
Paso 1:
Nos dirigimos a donde nuestro hack debe trabajar (en este caso es la pagina de registro, ojo: es una pagina diferente cuando hemos enviado los datos de registro y por lo mismo los hooks son diferentes) justo ahí buscamos al pie de nuestra pagina de registro la sección ‘Debug Information’ y ahí vemos el apartado ‘Hooks Called:’
(figura 1.1)
Ok, primero este es un mini tutorial/guia de hacks, no de Photoshop, asi que no me salgan con comentarios acerca de las imágenes, que no sé usar el photoshop ya de por si es doble sacrificio el que hago por ustedes . Usando nuestra intuición nos centramos a primera vista por el nombre de los hooks en 2 posibles localizaciones en donde nuestro hack podría funcionar, pero si hay dudas lo ideal es consultar la información del apartado ‘una valiosa herramienta’ en mi caso ya tenia idea de a donde dirigirme, (de estos 2 hooks señalados, el hook que utilicé y en donde me funciono es el que marque con amarillo)
Paso 2:
me dirijo al ACP y busco la sección ‘Plugin & Products System’ doy clic en ‘administrar productos’ y luego en ‘add/import product’ y los lleno según los datos de mi nuevo producto:
(figura 2.1)
Hay algunas reglas que se deben considerar en esta sección, para dudas pueden consultarlas en la ayuda y dependiendo de las futuras actualizaciones las detallare en su momento (de lo contrario jamás avanzaré en la creación de este documento).
Le damos guardar y listo! Ya hemos empezado con lo necesario para nuestro flamante hack. Si han notado este paso es sencillamente la base que será la estructura de nuestro hack, ya que aquí no podremos más que hacer estas definiciones sencillas
Paso 3:
Nos dirigimos a Opciones del foro y damos clic en ‘Add New Setting Group’:
(figura 3.1)
Ahora vamos a crear el menú que nuestro hack ocupará como base de sus configuraciones:
(figura 3.2)
Al guardar nos aparece la siguiente pantalla:
(figura 3.3)
Ahora seleccionamos ‘Add Setting’ y crearemos nuestras opciones:
(figura 3.4)
Seguramente ya han notado que las frases se están creando en conjunto con nuestra opción, ahora el resultado:
(figura 3.5)
En este caso he elegido que por defecto sea el grupo 9, obvio, esto es un ejemplo
Ahora creamos un campo que el usuario usará para darnos a conocer si es miembro de una banda o no cuando se este registrando:
(figura 3.6)
Esta demás mencionar que es importante anotar el numero de este campo, el cual es el numero 6
Paso 4:
Damos clic en ‘agregar plugin’ y vamos a llenar los datos según el siguiente orden:
En ‘Product’ elegimos el producto que acabamos de crear y en ‘Hook Location’ elegimos en que parte del código del archivo de registro deseamos que se ejecute nuestro código, ‘Título’ no necesita explicación, ‘Execution Order’ dejamos por defecto la opcion y ahora vamos a la parte vital de nuestro hack: ‘Plugin PHP Code’