IIC 2332 -- Sistemas Operativos
Apuntes 26
1er Semestre 1996
- Virus. Los virus han sido típicamente un problema de los
PCs. Son normalmente pedazos pequeños de código que se ponen en otros
programas en secreto. Un método:
- Encontrar la primera instrucción del programa y reemplazarla con
un salto a un punto después el fin de código.
- Insertar el código de virus en este lugar.
- Hacer que el virus simule la primera instrucción y salte de
vuelto a la segunda instrucción del programa.
- A menudo los virus propagan tranquilamente antes de que se inician
por algún evento (tal como una fecha particular).
- En general hay tres clases de virus:
- Los que infectan las aplicaciones
- Los que infectan los archivos de S.O. (aún necesitan
aplicaciones para propagarse)
- Los que atacan el sector de boot
Los de la segunda categoría son los más difícil de detectar.
- Medidas de protección:
- Checksum criptográfico: Se calcula un checksum de los datos y se
guarda con los datos. Para evitar que el virus pueda modificar el
checksum, se codifica con una clave no guardada en el disco.
- Eliminación de virus: Se chequea para los signos característicos
de virus particulares, o se compara con imágenes del sistemas
limpios.
- Respaldos
- Gusano (worm). Los gusanos son similares a los virus,
pero usan las facilidades de la red para propagarse automáticamente.
- El gusano más famoso era el "gusano de Internet" del 2 de
noviembre de 1988 escrito por Robert Morris, Jr. Inundó miles de
computadores usando un ataque basado en rsh y errores en
finger y sendmail. Pudo usar estos programas para
instalar nuevas copias de si mismo en otras máquinas, y también trató
de romper los passwords de las cuentas en cada sistema.
- Se sentenció Morris a 3 años de la vigilancia, 400 horas de
servicio a la comunidad, y una multa de US$10.000. ¿Era justa?
- La codificación simétrica usa la misma clave para los
algoritmos de codificación y de decodificación. El problema es
mantener el secreto de la clave.
- Si el algoritmo de codificación no es secreto, implantaciones
baratas de chip pueden ser desarrolladas por fabricantes.
- Un ejemplo: DES (Data Encryption Standard), un algoritmo derivado
de Lucifer (de IBM). Desde 1977 ha sido el estándar nacional de
Estado Unidos. Aunque se considera el algoritmo inmune de ataques
criptoanalíticos, usa una clave de solamente 56 bits, y ahora podría
ser atacado por pruebas repetidas.
- En la codificación de claves públicas, no es necesario
distribuir claves secretas, pero los algoritmos son más caros.
- Se usa un par de claves, la privada y la pública. Se puede usar
cualquiera para codificar un mensaje, pero solamente el otro lo puede
decodificar.
- Un ejemplo es RSA (implementado en PGP), que depende de la
dificultad de descomponer en factores los números grandes.
- ¿Cuáles son las ventajas y desventajas de codificar los datos que
están en un sistema de computador?
Last edited June 19, 1996, by knabe@ing.puc.cl