AMENAZAS
AL COMERCIO ELECTRÓNICO
Se entiende por amenaza a una acción o condición del entorno de redes (persona,
máquina, suceso o idea) que, dada una oportunidad, podría dar lugar a que se
produjese una violación en la seguridad (confidencialidad, integridad,
disponibilidad o uso legitimo) [STAL95].
Las amenazas a la seguridad de los sistemas de comercio electrónico pueden ser
clasificadas como internas y externas. La amenaza interna es la que tiene más
probabilidad de ocurrir, es la más difícil de combatir o controlar y sin
embargo es la que más se pasa por alto [GHOS98]. Este tipo de amenazas es
difícil de combatir ya que muy pocos sistemas brindan protección contra
acciones maliciosas ejecutadas por usuarios que estén autorizados en el
sistema. Es por esto que la mejor manera de combatir esta amenaza es con una
combinación de políticas de seguridad estrictas y un esquema de acceso a
información privilegiada que solo les permita el acceso a aquellas personas que
deban tenerlo.
Sin embargo, las amenazas a la seguridad a las que más se les da importancia es
a las externas. Tanto los ejecutivos de las compañías como los administradores
de los sistemas sienten un temor especial a los intrusos desconocidos que
estando fuera de las barreras de la organización puedan tener acceso a
información privilegiada. Parte de esta preocupación está bien fundada, ya que
la Internet le da a los comerciantes la posibilidad de llegar a los
consumidores potenciales en cualquier parte del mundo, pero al mismo tiempo
permite que todos los usuarios mal intencionados, hackers y espías corporativos
en todo el mundo puedan tener acceso a la información de la compañía.
Las categorías generales de amenazas o ataques al comercio electrónico son las
siguientes [GHOS98]: Vandalismo y
sabotaje en Internet
El vandalismo o sabotaje en el web es tal vez el ataque que ha recibido más
atención de los medios de comunicación. Este ataque consiste en rescribir la
página web de alguien mas, generalmente de forma ilegal, para cambiar el contenido
de esa página dejando un mensaje propio del saboteador. Este ataque
generalmente está motivado por razones políticas o por el ego del saboteador
que muestra que pudo romper las medidas de seguridad de un sitio web [GHOS98].
Aunque este ataque está dirigido al servidor web, el resto de los programas o
información contenidas en la máquina que fue blanco del ataque también pueden
estar comprometidas, como también otros recursos de red que estuvieran
conectados a esa máquina, ya que el atacante pudo tener acceso a ellas tan
fácilmente como lo hizo con los archivos de las páginas web.
Este tipo de ataques es muy perjudicial para la imagen de la compañía que sufre
el ataque. La página web es la imagen de la compañía ante el mundo, y si esta
es saboteada, la organización completa se verá vulnerable.
VIOLACIÓN A LA SEGURIDAD O PRIVACIDAD
En la Internet, los mensajes son transmitidos a través de un número de
intermediarios antes de llegar a su destino, los intermediarios son
generalmente Routers, cualquiera de los cuales puede copiar, modificar o borrar
los mensajes. Es por esta razón que no se debe asumir que las comunicaciones de
datos son privadas a menos que se utilice un mecanismo de inscripción para
protegerlas. El mayor temor de los consumidores en la Internet es el de revelar
sus números de tarjetas de crédito, actualmente se han desarrollado un número
de sistemas de transacciones de pago seguras para proteger la privacidad de las
transacciones.
El “romper” las claves de los sistemas de encripción actuales es muy difícil,
por lo que es poco probable que se pueda comprometer la seguridad de las
transacciones que utilizan estos sistemas. Sin embargo, los componentes web
activos pueden presentar riesgos a la seguridad en el client-side. Los componentes
activos son programas que se descargan y ejecutan automáticamente desde el
navegador web cuando un usuario entra en un sitio web que los tiene como parte
de su código. Ejemplo de estos componentes son los controles ActiveX, Applets
de Java, JavaScripts, VBScripts y ciertos archivos multimedia que se ejecutan
vía plug-ins. Los plug-ins son aplicaciones que se ejecutan automáticamente
cuando el navegador descarga archivos de un determinado formato.
ROBO Y FRAUDE EN INTERNET
El robo y fraude en la Internet tienen lugar cuando las personas son engañadas
para que confíen en sitios web (y sus operadores), con los que no han tenido
relaciones previas. La mayoría de los fraudes son resultado de realizar
transacciones comerciales con sitios web establecidos por criminales que se
hacen pasar por sitios que llevan a cabo negocios legítimos, cuando en realidad
son una fachada para actividades criminales. Los consumidores son engañados
para entregar sus números de tarjetas de crédito para pagar por productos o
servicios que nunca son entregados.
VIOLACIÓN A LA INTEGRIDAD DE LOS DATOS
Los ataques a la integridad de los datos casi no se discuten en el contexto de
sesiones de Internet, sin embargo, son un problema en las transacciones de
comercio electrónico. Las fallas en la integridad de los datos que se envían a
través de las redes son casi siempre accidentales, pero existe la posibilidad
de que los datos sean alterados intencionalmente para hacer algún daño. Un
ataque que modifique datos, como por ejemplo precio de las acciones de la bolsa
de valores puede tener gran impacto. Existen
mecanismos para detectar si los datos han sido modificados, pero al igual que
con los métodos de inscripción, no se han implantado tan ampliamente como
deberían.
NEGACIÓN DE SERVICIO
Los ataques de negación de servicio han sido denominados como las peores
amenazas a la seguridad en Internet. Un ataque de negación de servicio tiene
como objetivo hacer que cierto servicio no esté disponible para el publico
[GHOS98]. El potencial que tiene este tipo de ataques para causar daños o
perdidas aumenta cada día, mientras se automatizan más servicios y se conducen
cada vez más negocios de manera electrónica.
El defenderse de este tipo de ataques es particularmente difícil, porque para
realizar este tipo de ataques los atacantes se apoyan en debilidades
estructurales de los protocolos de comunicación más utilizados, como el
Internet Protocol (IP).
COMPONENTES DE LA SEGURIDAD DEL COMERCIO ELECTRÓNICO
El
modelo de seguridad en el comercio electrónico se puede dividir en cuatro
componentes principales que hay que proteger; el software del client-side, el
transporte de los datos, el software del servidor Web y el sistema operativo
del servidor. Es importante hacer un esfuerzo para que la seguridad de estos
componentes sea consistente, ya que si uno de ellos presentara una debilidad
obvia, sería blanco de la mayoría de los ataques, y debido a su debilidad
muchos de esos ataques serían exitosos.
SEGURIDAD DEL SOFTWARE CLIENTE

La seguridad del software cliente se refiere a la seguridad que presenta el
software cliente de web, es decir, el software que se utiliza para navegar en
Internet. Los dos grandes riesgos de este componente son las vulnerabilidades
de los navegadores y los componentes Web activos. Los navegadores presentan riesgos debido a
que su código fuente no está disponible para revisión y los usuarios deben
confiar en que el navegador no sea vulnerable a ataques, no habrá hoyos en la
seguridad ni ejecute código malicioso en segundo plano. El contenido web activo presenta el riesgo de
que ejecute código malicioso en segundo plano sin que el usuario se entere. El
contenido web activo es cada vez más común y puede presentarse en forma de
Applets de Java, controles ActiveX, macros de Word, JavaScript, VBScript, y al
descargar o ver archivos de formato Postscript, GIF o JPEG [GHOS98].
Seguridad en el transporte de los datos
El transporte de los datos a través de las redes es el aspecto del comercio
electrónico que ha recibido la mayor concentración de recursos para asegurar su
seguridad. El brindar seguridad a los datos en transito implica garantizar la
integridad y confidencialidad de los datos, y la autenticidad tanto del emisor
como del receptor. La integridad de los datos se refiere a asegurar que los
datos no son modificados mientras son transportados a través de la Internet, La
confidencialidad se refiere a que los datos no puedan ser leídos por una
entidad diferente al receptor y la autenticidad de el emisor y receptor se
refiere a garantizar que las partes involucradas en la transmisión sean quienes
dicen ser, es decir, que no sean suplantados por terceros.
La necesidad de desarrollar mecanismos de seguridad para el transporte de los
datos surge de la naturaleza insegura de la Internet ya que la información en
transito se puede leer, copiar, modificar o eliminar mientras se transmite por
las diferentes redes. Para brindar la seguridad necesaria en el transporte de
los datos se han desarrollado diferentes mecanismos como la encripción de
datos, las firmas digitales y los certificados de autenticidad, también se han
desarrollado protocolos de comunicación seguros como el SSL (Secure Socket
Layer, que es el estándar de facto para la transmisión segura de datos a través
de la Internet) o el S-HTTP y protocolos para garantizar la seguridad de las
transacciones de pago electrónico como el SET (Secure Electronic Transaction).
SEGURIDAD DEL SERVIDOR WEB
Los servidores web se componen de tres elementos básicos: el software servidor
que se encarga de responder a todas las peticiones de información provenientes
de los navegadores, bases de datos donde están almacenados los datos acerca de
los productos, servicios o información acerca de los usuarios, y los programas
de interfaz entre el software servidor web y las bases de datos, esta interfaz
puede hacerse a través de CGI (Common Gateway Interface) que son programas
invocados por el servidor web para extraer la información de las bases de datos
o a través de ASP o JSP que son programas incluidos en el código HTML y que son
ejecutados por módulos del mismo servidor web. Las fallas de seguridad en el
server-side se presentan generalmente en el software servidor y en los
programas de interfaz con las bases de datos.
Es importante hacer notar que mientras más servicios preste el servidor mayor
será la probabilidad de que brinde oportunidades que los atacantes puedan
aprovechar. Por eso es necesario escoger entre un servidor con una amplia gama
de servicios y que sea inseguro, o un servidor extremadamente seguro pero que
no preste muchos servicios. Además de las brechas de seguridad que presentan
algunos de los servicios , los programas también tienen fallas en la seguridad
que son producto de errores de programación. Este tipo de errores hace que los
programas se comporten de manera anormal y son bien conocidos y aprovechados
por los atacantes. La única manera de corregir este tipo de problemas es
conseguir las actualizaciones de software que corrigen esos errores o conseguir
versiones actualizadas del software que no presenten el error.
El software del servidor generalmente lo instala el “súper usuario” o “root”,
que tiene todos los derechos y puede acceder a cualquier archivo del sistema.
Como los programas del servidor son propiedad del “super usuario” estos se
ejecutan con sus privilegios. Esto es necesario debido a que solo los programas
con este nivel de privilegio pueden abrir el puerto 80 (http) o el puerto 443
(SSL) y escribir en los archivos de log. Sin embargo, es recomendable
configurar el software servidor para reducir sus privilegios de ejecución.
Cuando hay una conexión entrante al puerto 80, se crea un proceso hijo para
manejar la solicitud y el proceso servidor (proceso padre) regresa al modo de
escucha de peticiones [PALA00]. Se puede configurar el servidor de manera que
los procesos hijos se ejecuten sin privilegios especiales al procesar las
peticiones remotas. Si no se configura el software servidor de esta manera se
puede presentar el problema de “escalamiento de privilegios”. El escalamiento
de privilegios ocurre cuando un usuario o entidad no autorizados o no confiable
obtiene privilegios de acceso, creación, modificación o eliminación de archivos
más elevados de los que tendría normalmente. El peligro de este problema está
en que si un atacante logra explotar una vulnerabilidad del servidor o algún
script CGI, podría ejecutar comandos en el servidor con privilegios de super
usuario. Esto significa que el atacante podría tener acceso privilegiado a
cualquier archivo en esa máquina y en las máquinas del mismo dominio de
confianza, incluyendo las bases de datos de la compañía, o ejecutar programas
maliciosos en esas maquinas.
Además de las opciones de privilegios de ejecución existen otras opciones que
tienen impacto en la seguridad de los servidores. Algunas de ellas son:
- Listado automático de directorios
Esta opción hace que si un navegador apunta a un directorio en el servidor
donde no existe un archivo Index.htm, entonces la respuesta por defecto del
servidor será un listado de los archivos de dicho directorio. El peligro está
en que un atacante puede tener acceso a un directorio donde están los log o
existan enlaces simbólicos o peor aun, los códigos fuente de los CGI o los
archivos de configuración del servidor, los cuales pueden ser descargados y
examinados minuciosamente para encontrar fallas que puedan ser explotadas. Para
evitar este problema se debe deshabilitar esta característica del software, y
de no ser posible, crear archivos Index.htm en todos los directorios del
servidor web.
- Server Side Include (SSIs)
Esta
característica permite incluir comandos en el código HTML de una página web.
Cuando se recibe una petición para mostrar la página que tiene los comandos
incluidos, estos son ejecutados por el servidor web con su privilegio de
ejecución. El comando más peligroso es el “EXEC”, el cual permite ejecutar
cualquier programa en el sistema. Esta opción debe ser deshabilitada para
prevenir problemas de ejecución de programas maliciosos o escalamiento de
privilegios.
- Seguimiento de enlaces simbólicos
Esta
característica permite extender el árbol de directorios. Un enlace simbólico es
una referencia a un archivo que se encuentra en otro directorio, cuando se
accede al enlace simbólico es como si se accediera al archivo al cual hace
referencia. Los enlaces simbólicos pueden apuntar a archivos fuera del árbol de
directorios especificado para el servidor web. El peligro es que los enlaces
simbólicos pueden apuntar a directorios sobre los cuales el administrador web
no tenga control y que contengan archivos como scripts CGI maliciosos que
puedan ser ejecutados vía web. Esta opción también debe ser deshabilitada.
Los archivos que son parte del website solo deben ser accesibles a los
administradores del sitio web o a usuarios autorizados para publicar
información en el web y no deben poder ser accedidos vía web por usuarios
internos o externos, esto para evitar que los atacantes tengan acceso a los
archivos de configuración o log que pueden revelar información que los
atacantes pueden utilizar contra el servidor.
Si se presta el servicio de FTP, los directorios donde residen los archivos del
sitio web y el directorio ftp deben estar separados para evitar que usuarios no
autorizados o atacantes coloquen archivos en el servidor (páginas web o CGI)
vía ftp y luego estos archivos sean mostrados o ejecutados por el servidor web.
En las aplicaciones de venta de contenido es necesario poder controlar el
acceso a los documentos que están a la venta. Esto permite dar acceso a los
documentos a ciertos clientes y restringir el acceso a otros. Los tres tipos de
mecanismos de control de acceso que están presentes en la mayoría de los
servidores web son:
- Restricciones por direcciones IP o
nombre de host
Es uno de los mecanismos de control de acceso más básicos. Consiste en
restringir el acceso a las páginas web basándose en la dirección IP o nombre
del host que hace la solicitud de información. Una solicitud web incluye el
nombre del host y la dirección IP del cliente, el servidor web puede utilizar
esta información para determinar si la solicitud proviene de un equipo
autorizado a ver el contenido del documento.
Para determinar si la solicitud proviene de una dirección autorizada el servidor
web utiliza las Listas de Control de Acceso (ACLs). Las ACLs son una serie de
reglas de acceso que se evalúan en secuencia para determinar si una solicitud
proviene de una dirección autorizada. Se aconseja que los ACLs primero
restrinjan el acceso a todos y luego se autorice a determinadas direcciones a
acceder a la información. Esto es debido a que si existe algún error en el ACL
esto resultará en inconveniencia para algunos usuarios y no en fallas a la
seguridad.
Este método de control de acceso no se considera especialmente seguro, puede
mantener alejados a los usuarios curiosos pero no a los atacantes determinados.
El problema de este método de control de acceso es que es vulnerable al
“spoofing”. El spoofing se presenta cuando un atacante enmascara la dirección
IP o nombre de host de su máquina para que aparezca como la de otra máquina en
la cual se confía. Además, aunque la solicitud provenga realmente de una
máquina autorizada, no se tiene la seguridad de que el usuario de esa máquina
sea el usuario autorizado a ver la información que solicita.
- Autenticación basada en contraseñas
En este mecanismo el servidor web verifica la identidad del usuario basándose
en un identificador de usuario y una contraseña. Para establecer el control de
acceso utilizando este mecanismo el administrador del sistema debe crear una
base de datos de usuarios autorizados, que contenga los identificadores de los
usuarios y sus respectivas contraseñas (encriptadas). Luego el administrador
debe declarar explícitamente que partes del sistema de archivos serán
protegidos por este mecanismo.
Cuando un usuario quiera acceder a un documento protegido el servidor le
mostrará un cuadro de dialogo donde el usuario debe ingresar su identificador y
contraseña. El identificador de usuario se compara con los que están
almacenados en la base de datos y la contraseña se encripta y compara con la
contraseña que acompaña al identificador en la base de datos, si existe una
correspondencia se da acceso al documento.
Este mecanismo presenta varios problemas de seguridad. Primero, como el
identificador de usuario y la contraseña viajan a través de la red en “texto
plano” cuando son enviados al servidor cualquier atacante con las herramientas
adecuadas puede obtenerlos a través de la red.
Otro problema es la escogencia de contraseñas por parte de los usuarios
representa un problema. Los usuarios tienden a escoger como contraseñas su
mismo identificador de usuario, su nombre o apellido, fecha de nacimiento u
otro dato que es fácil de averiguar por parte de los atacantes. Además muchos
sistemas no encriptan las contraseñas en la base de datos sino que las
codifican, por esta razón si un atacante logra obtener el archivo de la base de
datos podría recuperar todos los identificadores de usuario y sus respectivas
contraseñas con una herramienta de fuerza bruta. Esto se conoce como
autenticación débil.
Para evitar molestias a los usuarios muchos servidores web no solicitan una
re-autenticación del usuario durante la misma sesión web si este solicita
documentos que estén en la misma “región de autenticación”. Una región de
autenticación es un área del sistema de archivos protegida por el mismo ACL.
Para evitar la re-autenticación el servidor envía al cliente un cookie y el
cliente presenta este cookie cada vez que solicita información de la misma
región de autenticación. El problema es que cada vez que el cliente envía el
cookie al servidor este puede ser interceptado por un atacante y luego tener
acceso a los archivos de esa región de autenticación. Para minimizar este
problema se puede encriptar el cookie y vincularlo a la dirección IP del
cliente al cual se le envió, así solo es valido si proviene de la dirección IP
a la cual fue enviado. Sin embargo esto no evita el spoofing.
- Autenticación basada en Certificados
Digitales
El control de acceso mediante certificados digitales se hace utilizando el
protocolo SSL, el cual en su versión 3.0 soporta la autenticación tanto del
servidor como del cliente de una sesión web. Para poder implantar este
mecanismo es necesario que los clientes posean certificados digitales emitidos
por alguna Autoridad Certificadora. Los cerificados digitales contienen los
datos del cliente así como su clave pública para poder realizar la encripción
asimétrica.
Este mecanismo presenta un nivel de seguridad más alto que el que presentan los
mecanismos explicados anteriormente. Además, este mecanismo se implementa de
forma transparente al usuario porque el intercambio de la información de
identificación lo realiza el software cliente al momento de establecer la
comunicación con el servidor.
Este mecanismo no sufre de los problemas de spoofing, de contraseñas débiles o
de la captura de contraseñas cuando son transmitidas. El único problema es que
se le impone al usuario la responsabilidad de conseguir un certificado personal
emitido por una Autoridad Certificadora. Lo difícil es convencer al usuario a
que se someta al proceso de obtención del certificado.
Los scripts CGI también son de interés para la seguridad de los servidores web.
Una de las preocupaciones con los scripts CGI es que estos pueden actuar
maliciosamente en respuesta a peticiones web de posibles atacantes. Esto se
debe a que los CGI se ejecutan en el servidor respondiendo a las entradas de
usuarios en los cuales no se tiene confianza. Los riesgos que presentan los CGI
incluyen la habilidad de que clientes web ejecuten comandos del sistema que
realicen alguna de estas tareas:
·
Leer, remplazar, modificar o remover
archivos.
·
Enviar archivos al atacante vía mail a través
de Internet.
·
Ejecutar programas previamente cargados en el
servidor, como colectores de contraseñas o un servidor para brindar acceso no
autorizado vía telnet.
·
Lanzar un ataque de negación de servicio
sobrecargando el CPU con trabajos de cómputo intensivo.
Debido a que los CGI realizan muchas de las funciones de negocios de los sitios
web dedicados al comercio electrónico es imposible eliminarlos para resolver
los problemas de seguridad, pero se pueden seguir las siguientes
recomendaciones para minimizar la posibilidad de que sean aprovechados por
atacantes:
·
Analizar cuidadosamente los scripts antes de
ponerlos en producción para asegurarse de que no contengan vulnerabilidades que
sean aprovechadas por los atacantes.
·
Configurar el servidor web para reducir sus
privilegios de ejecución. Debido a que los CGI son ejecutados por el servidor
con su nivel de privilegios, el reducir los privilegios de ejecución del
servidor minimiza el daño que pueda causar un CGI defectuoso.
·
Configurar el servidor para que solamente
ejecute los CGI que se encuentren en un directorio especifico. Todos los CGI
que sean aprobados para estar en el ambiente de producción deben estar en ese
directorio, este directorio generalmente se llama CGI-bin.
·
Se deben establecer restricciones de acceso
al directorio donde residen los códigos fuente de los scripts CGI, generalmente
es el directorio CGI-src. Si un atacante tiene acceso a los códigos fuente de
los CGI los puede examinar para determinar las fallas que puedan tener.
·
Se deben realizar revisiones periódicas para
determinar el origen, propósito y modificaciones hechas a cada CGI en el
sistema. Los CGI que no tengan ninguna función en el sistema o cuyo origen no
sea confiable deben removidos del sistema, así como su código fuente y
versiones de respaldo.
·
Se puede generar periódicamente un hash del
contenido del directorio CGI-bin para comprobar que los scripts que están en
ese directorio no sean modificados sin autorización.
·
No incluir interpretadores de comandos (shell
interpreters) en el directorio CGI-bin debido a que si un atacante logra
descubrir que los interpretadores están disponibles, puede utilizarlos para
ejecutar comandos arbitrarios en el servidor vía peticiones web que contengan
los comandos.
El último componente de los servidores de comercio electrónico son las bases de
datos. Las bases de datos son esénciales para todas las aplicaciones de
comercio electrónico y autenticación de usuarios. En las bases de datos está la
información de mayor importancia para la organización. Por esta razón el acceso
a las bases de datos debe estar controlado cuidadosamente. Debido a la
importancia de las bases de datos para las aplicaciones de comercio
electrónico, la mayoría de los fabricantes de paquetes de bases de datos han
desarrollado interfaces entre estas y los servidores web. Estos interfaces han
sido probados para asegurar que no contengan vulnerabilidades que puedan ser
aprovechadas. Lo que se debe controlar es el acceso que tengan los usuarios a
las interfaces de las bases de datos.
SEGURIDAD EN EL SISTEMA OPERATIVO
El sistema operativo constituye la base sobre la cual se construyen las
aplicaciones de comercio electrónico. Si existen vulnerabilidades en el sistema
operativo, entonces los datos almacenados en el servidor están expuestos a un
ataque, sin importar los mecanismos de seguridad que presenten las aplicaciones
o los protocolos de transporte de datos utilizados en las transacciones de
comercio electrónico.
Las fallas en la seguridad de los sistemas operativos generalmente son bien
conocidas y se pueden solucionar cambiando parámetros de configuración de los
mismos para evitar las opciones por defectos de las que se aprovechan la
mayoría de los ataques a los sistemas operativos.
La mayoría de las vulnerabilidades de los sistemas operativos se pueden agrupar
en cinco categorías, la idea de agruparlos es tener un marco de referencia para
comparar la severidad de las vulnerabilidades. Las categorías son:
·
Opciones
por defecto:
·
Vulnerabilidades en el software de
red.
·
Ataques de negación de servicio.
·
Autenticación débil.
·
Hoyos en el sistema operativo.
Opciones
por defecto
Las opciones por defecto se refieren a las opciones de configuración del
software que ha sido recién instalado. La mayoría del software viene
configurado para maximizar la facilidad de uso, a veces a costa de la
seguridad.
En esta categoría están incluidas las cuentas de usuario que son creadas
automáticamente cuando se instala el sistema operativo. El problema con esas
cuentas es que muchas veces tienen un identificador bien conocido como “guest”
y no requieren contraseña, haciendo fácil la tarea de entrar en el sistema sin
autorización. Además pueden dar acceso a partes vitales del sistema operativo
si no se tienen configuradas las restricciones de acceso necesarias.
Vulnerabilidades en el software de red
El software de red da soporte a los sistemas de archivos
compartidos, login remoto, comunicación entre procesos y toda clase de
servicios de Internet. Algunos de estos programas están tan integrados con el sistema
operativo que se les conoce como sistema operativo de red (NOS por sus siglas
en ingles).
La mayoría de los problemas de seguridad en esta categoría provienen de los
mecanismos de autenticación utilizados para iniciar las sesiones de red y
compartir recursos entre diferentes equipos conectados a través de la red. Los
ataques explotan las vulnerabilidades de los mecanismos de autenticación para
obtener acceso no autorizado a los recursos de un equipo o grupo de equipos.
Ataques de negación de servicio
Los ataques de negación de servicio intentan hacer que un servidor web deje de
funcionar o pierda acceso a la Internet. Los ataques de negación de servicio
pueden variar en su extensión, desde hacer que deje de funcionar una sola
computadora hasta un sitio completo. Este tipo de ataque se presenta en dos
formas diferentes. La primera evita que los usuarios tengan acceso a los
servicios ofrecidos por un servidor. La segunda consume los recursos de un
equipo o hace que su sistema colapse.
Las debilidades que este tipo de ataque explota son fallas en las aplicaciones,
fallas en el software de red y hasta fallas en los protocolos de red utilizados
en la Internet. Las fallas en las aplicaciones y software de red pueden
resolverse con facilidad instalando correcciones, pero los ataques que se
aprovechan de los protocolos de red son muy difíciles de evitar ya que explotan
características propias de esos protocolos que no pueden ser cambiadas o
eliminadas. Otra característica que hace a estos ataques peligrosos es que son
relativamente fáciles de realizar y las herramientas para llevarlos a cabo
están disponibles en Internet.
Autenticación débil
La autenticación es utilizada para verificar si un usuario tiene permitido el
acceso a los recursos de un sistema. Los sistemas de autenticación no son una
medida de seguridad especialmente fuerte debido a que pueden ser engañados con
facilidad. El principal problema es la escogencia de las contraseñas por los
usuarios, que llevan al problema de autenticación débil.
Hoyos en el sistema operativo
Hay un gran número de programas conocidos como software del sistema, que brinda
servicios al sistema operativo. Debido a que el software del sistema realiza
una serie de funciones para brindar servicios al sistema operativo, este
software generalmente necesita privilegios especiales como acceso de súper
usuario. Las vulnerabilidades del software de sistema pueden ser aprovechadas
por los usuarios no autorizados para escalar privilegios. A diferencia de las
otras categorías de vulnerabilidades del sistema operativo, este tipo de
software puede protegerse de los usuarios externos mediante el uso de
firewalls.
Mecanismos de seguridad
Para asegurar las transacciones de comercio electrónico es necesario que se cumplan
los siguientes requerimientos básicos:
- Privacidad. Es la habilidad de
controlar quien puede (o no puede) ver la información. Las transacciones deben
permanecer privadas e inviolables en el sentido de que entidades no autorizadas
no puedan descifrar el contenido de los mensajes.
- Integridad. Es la seguridad de que
los datos almacenados o transmitidos no son alterados. Se debe asegurar que las
transmisiones no son alteradas o interferidas.
- Autenticidad. Es la habilidad de
determinar la identidad de las partes que se comunican.
- No repudiación. No debe ser
posible que un emisor de un mensaje pueda alegar que no envió una comunicación
segura o que no realizo una compra.