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).
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. 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 le 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:
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 más, 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.
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 encripció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 encripció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. 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.
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
computo 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.
Existen dos tipos de interfaces a las bases de datos: a través de los programas
o aplicaciones de bases de datos y a través de las interfaces web. El uso de
los programas de bases de datos debe estar restringido a los usuarios internos
autorizados para operar las bases de datos, esto para evitar el abuso interno
de la información contenida en las bases de datos y se deben emplear mecanismos
de identificación de usuarios a nivel de las bases de datos. Para los
interfaces web se puede restringir el acceso a la base de datos con los mismos
mecanismos utilizados por el servidor web para controlar el acceso a las
páginas web combinado con los mecanismos de identificación de usuario a nivel
de la base de datos. También es posible encriptar la información cuando se
transfiere entre la base de datos y el servidor web y entre el servidor web y
el cliente o se puede mantener la información encriptada dentro de la base de
datos para evitar que los datos sean recuperados aun si la base de datos cae en
manos de algún atacante.
La falta de recursos dedicados al desarrollo de mecanismos de seguridad para el
server-side se debe en parte a la sobre valuación de los mecanismos de
seguridad como la encripción de datos y los firewalls. La encriptación de datos
es buena para proteger los datos en transito, pero cuando los datos se
almacenan, generalmente se hace en “texto plano” y es allí donde los atacantes
pueden obtenerlos. Por otra parte, los firewalls brindan protección solo contra
atacantes “aficionados”, un atacante determinado puede violar la protección que
brindan los firewalls aunque estén bien configurados. Las estadísticas muestran
que el 75% de los firewalls pueden ser violados.
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.
Para cumplir con estos requerimientos se han desarrollado mecanismos o
combinaciones de mecanismos que permiten asegurar las transacciones. Estos
mecanismos se describen a continuación:
Encripción
Garantiza que la información no es inteligible para individuos, entidades o
procesos no autorizados (privacidad). La encripción es la mutación de la
información a una forma solo entendible con una clave de decripción. Una clave
o llave es un número muy grande, en forma de una cadena de unos y ceros.
Existen dos tipos de encripción, la encripción de “llave privada” o “llave
simétrica” y la encripción de “llave pública” o “llaves asimétricas”.
Conclusión
Tenemos grandes ventajas al iniciar un comercio haciendo uso del Internet, sin embargo también existen grandes riesgos que pueden afectarnos y a nuestros clientes puesto que mucas veces guardamos información importante de los mismos, pero también existen métodos para evitar este tipo de peligros que permiten mantener nuestra información y la de nuestros clientes a salvo.