sábado, 25 de abril de 2020

Decisión de tareas a partir del análisis.

El siguiente paso consiste en decidir las estructuras básicas que van a emplearse para llevarlo a cabo.
La estructura de datos del programa podría ser la siguiente:

  • Cada dato individual se almacena en un struct. Para que se pueda guardar tantos datos como se desee, los struct individuales se almacenarán en un vector.
Y las funciones en las que se descompondrían podrían ser estas:
  • mostrarMenu: muestra la lista de opciones disponibles conforme al prototipo visual.
  • nuevaFicha: pide los datos de una nueva persona y los añade a la lista de contactos existentes.
  • verFichas: muestra en pantalla la primera ficha. Al pulsar sobre ciertas teclas el usuario podrá elegir consultar la ficha anterior (si existen), la posterior, modificar la actual (función adicional)  o borrar la actual  (otra función).
  • modificar(n): pide los campos de la ficha que se indique como parámetro. Si se desea cambiar un dato, se tiene que volver a introducir el texto de los campos que se quieran modificar. En cambio, si no se desea, bastará con pulsar Intro para conservarlo como estaba.
  • intentarBorrar(n): solicita confirmación para borrar datos.
  • buscarTexto: pide al usuario el texto que desea buscar, cuenta cuántas fichas lo contienen y, finalmente, las muestra de una en una. 
  • buscarCumpleMes: muestra las fechas de nacimiento y los nombres y apellidos de las personas que cumplen años en un cierto mes. Si hay más de veinte datos, el programa hace una pausa y espera a que el usuario pulse Intro. 
  • guardar: vuelca todos los datos a fichero, reemplazando el contenido anterior de dicho fichero.
  • cargar: lee todos los datos desde fichero. Se debe llamar automáticamente al principio del programa.

viernes, 24 de abril de 2020

Creación de clases a partir de análisis.

Se puede optar por separar la parte visual (aplicación principal) de la parte lógica (la lista de personas), de modo que se pudiera reutilizar la mayor cantidad posible de código en caso de que se creara otra versión del programa en un entorno gráfico (por ejemplo, Windows Forms). Para ello podemos crear una clase ListaPersonas que se encargue de cargar y guardar datos de cada persona que pasarían de ser un struct a ser una clase con los mismos campos, pero añadiendo métodos que permitieran obtener y fijar los valores y simplificar las búsquedas de esos campos.


jueves, 23 de abril de 2020

Diagramas de casos de uso.

Un documento de especificación puede resultarle incomprensible a un cliente que no tenga conocimientos de programación informática, por lo tanto, es preferible elaborar diagramas que muestren los principales requisitos de manera más visual. Un Ejemplo es el diagrama de casos de uso.
En ellos el sistema se representa como un rectángulo, las acciones que se pueden realizar dentro de elipses y se dibujan figuras para simbolizar a cada tipo de persona. Ellas pueden interactuar con el sistema.
Por ejemplo, una versión mejorada del programa de la agenda de contactos podría incluir al usuario normal, que podría ver y manipular datos, pero también a un administrador, que consulta y añade datos.
Así quedaría:


viernes, 17 de abril de 2020

Análisis

1.3 REFINAMIENTO.

En las empresas de desarrollo de software suele existir la figura del analista, encargado de hablar con el cliente, observar la forma en que este trabaja y formular las preguntas para que el proceso sea correcto.
No obstante, es posible que en las empresas pequeñas no exista la figura de analista y no tengan experiencia para identificar las necesidades del cliente. En estos casos, una segunda lectura pormenorizada de la especificación puede afinar los detalles.
Y para el programa anterior se podrían detectar las siguientes carencias:


  • ¿No se podrán consultar los datos si no se hace una búsqueda?
  • ¿Qué datos de cada persona que se encuentre a través de las búsquedas de texto deben mostrarse? ¿Se debe hacer una pauta tras la inserción de n datos o de cada dato? ¿Las búsquedas deben distinguir entre mayúsculas y minúsculas?
  • ¿Qué datos de cada persona que cumpla años deben mostrarse?
  • ¿Los datos se guardarán automáticamente o deberá seleccionarse para ello, una opción determinada del menú?
  • ¿Es necesario guardar los datos en fichero usando algún formato específico o no van a compartirse con ninguna otra aplicación?
  • ¿No será necesario modificar ni borrar datos?
Así, en la realización de un proyecto real, es habitual repetir varias veces la secuencia análisis-diseño-implementación-verificación. Un proceso que incluye reuniones con el cliente para que se detecten los errores y carencias del programa cuanto antes. En proyectos duraderos se conciertan reuniones cada dos semanas para evitar retroceder y arreglar esos pasos equivocados.



1.4 PROTOTIPOS VISUALES.

Una herramienta que puede ser útil para ayudar a la detección de errores en la especificación de requisitos son los prototipos visuales. Estos consisten en la creación de "maquetas" de pantalla con las que se muestra al cliente una idea aproximada de cómo va a ser el resultado a nivel visual.

Así, los prototipos visuales permiten al usuario detectar si falta algún detalle o si el vocabulario es incorrecto.


jueves, 16 de abril de 2020

Análisis

1. CARACTERÍSTICAS DEL ANÁLISIS DE REQUISITOS.

Si se desea crear un programa en un tiempo limitado y con unos costes limitados, el primer paso es pensar qué tareas debe realizar. Para un programa por encargo este es un paso de mucha relevancia.
Crear una lista con los requisitos que debe cumplir el programa favorece la determinación de qué tareas son más importantes y de cuáles no deben hacerse.
Este último aspecto es muy importante, pues permite evitar que el programa crezca indefinidamente por el hecho de que el cliente o usuario desee añadir nuevas características cada cierto tiempo.
Cuando ya se ha estimado el tiempo y el presupuesto del proyecto, las características que cliente desee deben ser de una versión posterior, lo que hace volver a calcular el tiempo y los recursos necesarios.



1.2  ESPECIFICACIÓN.

Normalmente para elaborar un un programa se anotan los requisitos que debe cumplir. Pero para una aplicación real, se distingue entre los requisitos funcionales (lo que el programa hará) y los requisitos técnicos (las limitaciones físicas como el sistema operativo de destino, el espacio que ocupará el programa, etc). 

Para un programa que no sea muy complejo se podría basar a partir de la siguiente lista:

  • El programa será una agenda de contactos que permitirá guardar datos de personas para poder consultarlos más adelante.
  • Deberá almacenar, para cada persona, el nombre, los apellidos, la fecha de nacimiento, el domicilio y el correo electrónico. El dato obligatorio es el nombre, el resto son opcionales.
  • Permitirá guardar una cantidad elevada de datos.
  • Los datos deberán guardarse en fichero para que se pueda disponer de ellos cada vez que se acceda al programa.
  • Permitirá buscar datos a partir de cualquier palabra introducida en la búsqueda. Por ejemplo, si se introduce la palabra "Vicente", aparecerán todas aquellas personas que incluyan esa palabra en su nombre, sus apellidos, su domicilio o su correo electrónico.
  • Buscará las personas que cumplan años en los próximos treinta días.
  • El programa deberá haberse creado en C++ y permitirá trabajar en modo texto, de forma que se pueda compilar tanto para Windows como para LliureZ o para cualquier otra versión de Linux.


lunes, 10 de febrero de 2020

Programación estructurada.

1. LENGUAJES, COMPILADORES E INTÉRPRETES.
1.1 LENGUAJES DE BAJO NIVEL Y DE ALTO NIVEL.

Un programa --> secuencia de instrucciones.
Un lenguaje de programación --> se conoce como algoritmo o secuencia de pasos para resolver un problema.
Dos tipos de lenguaje de programación:

    • Bajo nivel: lenguaje parecido al código máquina (ceros y unos).
    • Alto nivel: lenguaje parecido al de los humanos, fácil de entender.
1.2 COMPILADORES E INTÉRPRETES.

Compiladores --> son las herramientas encargadas de convertir nuestro programa escrito en lenguaje de alto nivel (=programa fuerte) a código máquina, a través de lo cual se obtiene un programa ejecutable.
Intérprete --> es otro tipo de traductor, pero estos no crean ningún programa ejecutable capaz de funcionar por sí mismo.

Por lo tanto, un programa intérprete comenzará a funcionar antes que un programa compilado (pues no es necesario traducir todo el programa para empezar), pero será más lento en los programas de cálculo intensivo (porque cada orden se tiene que traducir tantas veces como se ejecute).

1.3 PSEUDOCÓDIGO.

A pesar de que los lenguajes de alto nivel se asemejan al lenguaje natural que los seres humanos empleamos para hablar, es habitual no usar ningún lenguaje de programación concreto cuando queremos plantear inicialmente los pasos necesarios para resolver un problema, sino emplear un lenguaje de programación ficticio, no es tan estricto, en muchos casos escrito incluso en lengua castellana. Este lenguaje recibe el nombre de pseudocódigo.

Por ejemplo: PEDIR número1
                      PEDIR número2
                      SI número2 distinto de 0
                           ESCRIBIR "Su división es ", número1/número2
                       SI NO
                            ESCRIBIR "No se puede dividir entre cero"

domingo, 9 de febrero de 2020

Cifrado de la información.

ORÍGENES.


El uso de la criptogrfía se remonta al origen del lenguaje, cuando los primeros hombres tuvieron que desarrollar herramientas para asegurar la confidencialidad en determinadas comunicaciones.

Hacia el siglo V a.C., los griegos utilizaban un cilindro o bastón, alrededor del cual se enrollaba una tira de cuero. al escribir un mensaje sobre el cuero y desenrollarlo, se observaba una ristra de caracteres sin sentido. Así, para leer el mensaje, era necesario enrollar el cuero de nuevo en un cilindro del mismo diámetro..
Durante el Imperio romano, los ejércitos utilizaron el cifrado César, consistente en desplazar cada letra del alfabeto un número determinado de posiciones.

CRIPTOGRAFÍA.

La criptología es la disciplina científica dedicada al estudio de la escritura secreta. Está compuesta por dos técnicas antagonistas: la criptografía y ña criptoanálisis.
Según la Real Academia Española. la criptografía es el arte de escribir con clave secreta o de un modo enigmático. Para ello, se utilizan claves y procedimientos matemáticos para cifrar el texto, esto es, para transformarlo con el fin de que solo pueda ser leído por las personas que coozcan el algoritmo utilizado y la clave empleada.
El criptoanálisis estudia los sistemas criptográficos para encontrar sus debilidades y quebrantar la seguridad con el fin de descifrar textos sin conocer las claves.

  • Criptofrafía de clave simétrica. Emplea la misma clave para cifrar y descifrar los mensajes. Es una técnica muy rápida pero insegura, ya que el remitente tiene que enviar tanto el mensaje cifrado como la clave. 
El emisor escribe un mensaje al receptor cifrándolo con una clave. El receptor lee el mensaje utilizando la clave que le ha comunicado el emisor en otro envío.



  • Criptografía de clave asimétrica. Utiliza dos claves, una pública y otra privada. Cada usuario posee una clave pública que es conocida por todos los usuarios y otra privada que únicamente puede conocer su propietario. Cuando se cifra un mensaje con la clave pública de una persona, solo puede descifrarse utilizando la clave privada de dicha persona.

  • Criptografía de clave pública. La criptografía simétrica no es completamente segura y la asimétrica, por su parte, ralentiza el proceso de cifrado. Para solventar estos inconvenientes, el proceso habitual pasa por utilizar un cifrado de clave pública que combine ambas ciptografías con el objetivo de obtener una garantía plena de confidencialidad. 

martes, 4 de febrero de 2020

ESQUEMA RESUMEN UD4.


  1. LA SEGURIDAD DE LA INFORMACIÓN.
  • Confidencialidad.
  • Integridad.
  • Disponibilidad.
  • Autentificación.
  • Autorización.
  • Cifrado.
  • No repudio.
  • Vulnerabilidad.
  • Seguridad de la información.
2. AMENAZAS A LA SEGURIDAD.

  • Amenazas humanas.
    • Ataques pasivos. Usuarios con conocimientos básicos y hackers.
    • Ataques activos. Antiguos empleados de una organización, crackers y otros atacantes.
  • Amenazas lógicas.
    • Software malicioso.
    • Vulnerabilidades del software.
  • Amenazas físicas. 
    • Fallos en los dispositivos.
    • Accidentes.
    • Catástrofes naturales.
  • Conductas de seguridad.
    • Activa.
    • Pasiva.
3. MALWARE.

  • Tipos de malware.
    • Virus.
    • Gusano.
    • Troyano.
    • Spyware.
    • Adware.
    • Ransomware.
    • Rogue.
    • Rootkit.
  • Otros tipos.
    • Phishing.
    • Pharming.
    • Spam.
    • Hoax.
4. ATAQUES A LOS SISTEMAS INFORMÁTICOS.

  • Tipos de ataques.
    • Interrupción.
    • Intercepción.
    • Modificación.
    • Suplantación o fabricación.

  • Ingeniería social.
  • Ataques remotos.
    • Inyección de código.
    • Escaneo de puertos.
    • Denegación de servicio.
    • Escuchas de red.
    • Spoofing.
    • Fuerza bruta.
    • Elevación de privilegios.
5. PROTECCIÓN CONTRA EL MALWARE.

  • Políticas de seguridad.
  • Antivirus.

6. CIFRADO DE LA INFORMACIÓN.

  • Criptografía, criptología, criptoanálisis.
  • Tipos de criptografía.
    • Simétrica.
    • Asimétrica.
    • Pública.
7. FIRMA ELECTRÓNICA Y CERTIFICADO DIGITAL.

  • Firma electrónica.
  • Certificado digital.
  • Autoridades de certificación.
8. NAVEGACIÓN SEGURA.

  • Buenas prácticas de navegación.
  • Navegación privada.
  • Navegación anónima.
  • Navegación proxy.
9. PRIVACIDAD DE LA INFORMACIÓN.

  • Amenazas a la privacidad.
  • Antiespías.
10. PROTECCIÓN DE LAS CONEXIONES EN RED.

  • Cortafuegos.
  • Red privada virtual.
  • Certificados SSL/TLS de servidor web y https.

lunes, 3 de febrero de 2020

Protección de las conexiones en red.

Para asegurar una red informática hay que establecer políticas de seguridad que se ajusten al diseño de la red, asignar firewalls, limitar el acceso a routers, inmunizar los equipos con soluciones antivirus adecuadas y mantener el software actualizado.

CORTAFUEGOS.

El cortafuegos es un dispositivo hardware o software cuya finalidad es controlar la comunicación entre un equipo y la red, por lo que se ha convertido en una de las principales defensas contra ataques informáticos y en una pieza clave para bloquear la salida de información del ordenador a Internet.

Todos los mensajes que entran o salen por el cortafuegos son examinados, de modo que aquellos que no cumplen los criterios de seguridad especificados son bloqueados, con el propósito de evitar los atacantes de intrusos, los accesos de empleados a sitios no autorizados, la dscarga de software dañino o que los equipos infectados de malware envíen datos sin autorización fuera de la red.

El cortafuegos se instala en el dispositivo que da acceso a Internet, que suele ser un servidor o un router.

REDES PRIVADAS VIRTUALES.

Son coneciones punto a punto a través de una red privada o pública insegura, como Internet. Los clientes usan protocolos basados en TCP/IP, para realizar conexiones con una red privada.
Existen dos tipos de conexiones a este tipo de redes:

  • VPN  de acceso remoto. Se utilizan para que los usuarios tengan acceso a un servidor de una red privada con la infraestructura proporcionada por una red pública.
  • VPN de sitio a sitio. Permiten a las organizaciones conectar redes a través de Internet utilizando comunicaciones entre ellas.

CERTIFICADOS SSL/TLS DE SERVIDOR WEB Y HTTPS.


El SSL es un protocolo criptográfico desarrollado por Ntscape hasta la versión 3.0, cuando fue estandarizado y pasó a denominarse TLS.

Dichos estándares se utilizan para emitir certificados de sitios web, por lo que son una pieza fudamental en la seguridad, ya que garantizan la integridad y la confidencialidad de las comunicaciones.

Cuando se utiliza el cifrado basado en SSL/TLS junto al protocolo de navegación web HTTP, se crea un canal cifrado seguro denominado "HTTPS". Este canal utiliza una clave de 128 bits de longitud, conocida únicamente por el dispositivo conectado y por el servidor que facilita la conexión, de modo que encripta los datos convirtiéndolo en un medio seguro para el comercio electrónico. 

domingo, 2 de febrero de 2020

Seguridad en las comunicaciones inalámbricas.

Las redes inalámbricas ofrecen soluciones para compartir información sin hacer uso de cables, posibilitando las transferencias de datos.
La seguridad en la comunicación inalámbrica de tecnologías de largo alcance, como móviles suele estar gestionada por las operadoras.Pero en el caso de las redes sociales y de las redes de área personal, donde los estándares de comunicación más utilizados son Bluetooth y wifi, la seguridad depende en gran medida de los usuarios.

SEGURIDAD EN BLUETOOTH.

Bluetooth es la especificación que define un estándar global de comunicaciones inalámbricas para redes de área personal y que permite la transmisión de voz y de datos entre diferentes equipos por medio de un enlace por radiofrecuencia en entornos de comunicación móviles.
La tecnología Bluetooth tiene un alcance de unos diez metros, por lo que se ha integrado en dispositivos de la vida cotidiana que forman parte de las redes personales (PAN), como teléfonos, relojes inteligentes...

Los ciberatacantes que emplean estas comunicaciones suelen utilizar antenas que emplían considerablemente el campo de acción de la señal Bluetooth. Algunos de los ataques son los siguientes:

  • Bluejacking. Consiste en el envío de spam al usuario por medio del intercambio con este de una vCard, de una nota o de un contacto en cuyo nombre aparezca el mensaje de spam. En algunos casos, se utiliza el propio nombre del dispositivo como spam, por lo que la víctima recibe mensaje de aviso que determinado usuario está tratando de conectarse con su dispositivo.
  • Vluesnarfing. Aprovecha las vulnerabilidades del protocolo para sustraer información del dispositivo atacado.
  • Bluebugging. Utiliza técnicas de ingeniería social para que la víctima acepte una conexión inicial para infectar el dispositivo con malware de control remoto. A partir de entonces, el usuario dispondrá de acceso remoto al teléfono del usuario y podrá utilizar sus funciones: escuchar llamadas, enviar mensajes, acceder a los contenidos o incluso utilizar el dispositivo para lanzar otros ciberataques.
SEGURIDAD EN REDES WIFI.

Las redes wifi utilizan una tecnología inalámbrica que realiza la conexión entre dispositivos situados en un área pequeá, como una habitación, una oficina, etc a través de ondas electromagnéticas. La senal en abierto suele tener un alcance de unos 100 metros, aunque cualquier atacante podría captar la señal a varios kilómetros de distancia utilizando una antena alineada.

Algunas de las medidas de seguridad básicas que s epueden configurar en el router para mantener una red wifi segura son las siguientes:
  • Personalizar la contraseña. Las contraseñas por defecto de algunos routers suelen ser muy vulnerables o se pueden averiguar rápidamente.
  • Cambiar el SSID. Es el identificador con el que se etiqueta la red inalámbrica para que cada usuario pueda localizarla.
  • Revisar el cifrado. La señal inalámbrica puede ser interceptada más facilmente que una red cableada.
  • Desactivar el acceso por WPS.
  • Filtrar las MAC. Las direcciones MAC son establecidas por el fabricante y únicas para cada dispositivo de red.
  • Actualizar el firmware. El firmware es el software que controla los circuitos de los dispositivos electrónicos.
  • Comprobar el historial de actividad.
  • Utilizar software de auditoría.

miércoles, 29 de enero de 2020

Privacidad de la información.

Se considera información privada toda aquella información protegida por la LOPD (Ley Orgánica de Protección de Datos) o aquella que otros usuarios o entidades no desean que sea conocida.

AMENAZA A LA PRIVACIDAD.

Algunas de ellas son las siguientes:


  • Sistemas operativos. La mayoría de dispositivos que se conectan a Internet utilizan un sistema operativo que, para funcionar, reúne la información confidencial del usuario, como sus datos de identificación biométrica, su idioma...
  • Contraseñas. El método más extendido para la identificación de los usuarios es el uso de contraseñas. Para evitar que otros usuarios consigan apoderarse de esta información secreta, es importante utilizar autentificaciones biométricaso generar contraseñas fuertes, con distintos tipos de caracteres y con una longitud mínima de ocho caracteres.
  • Registro de visitas web. Cada vez que se accede a una página web, el navegador proporciona datos sobre el navegador, el sistema operativo, los dispositivos, la dirección IP, etc. 
  • Sesiones del navegador. Algunos navegadores permiten gestionar el historial o los marcadores desde cualquier lugar. En algunos casos, como en Google Chrome, la sesión permanece abierta aunque el usuario cierre la aplicación.
  • Cookies. Algunos sitios web utilizan cookies para obtener informacion acerca de los hábitos de navegación del usuario o sus datos personales, para realizar seguimientos de comaps en línea, etc.
  • Formularios. La web 2.0 ofrece multitud de servicios online, que, en la mayoría de casos, requieren que el usuario se registre a través de un formulario. En caso de contener campos con información confidencial, es necesario verificar la legitimidad del sitio. Una buena estrategia es corroborar el dominio y el uso del protocolo HTTPS.
  • Redes sociales. Las publicaciones en redes sociales, como Instagram, Twitter o Facebook, esconden más peligros de lo que la mayoría de usuarios sospechan. Para los ciberatacantes, las redes sociales constituyen un método sencillo y rápido con el que acceder a todo tipo de información personal.
  • Google. La principal fuente de ingresos de Google está relacionada con la publicidad adaptada a los gustos y necesidades del usuario. Esta compañía ofrece gran parte de los servicios que se utilizan habitualmente en Internet en sus diferentes aplicaciones, por lo que es capaz de reunir una gran catidad de informaicón sobre cada uno de los usuarios.
ANTIESPÍAS.

El espionaje se define como la obtención encubierta de datos o de información confidencial. Para llevarlo a cabo, se utilizan diversas técnicas con el fin de obtener información confidencial o privada, práctica que se considera un delito y que está penada por la ley.
Los programas espías o spyware se introducen en los dispositivos en forma de pequeñas aplicaciones que recopilan información del sistema y de los usuarios para enviarla a los ciberatacantes.
Los programas antiespía funcionan de manera similar a los antivirus, a saber: comparan los archivos analizados con una base de datos de software espía. algunas de las aplicaciones más populares son CCleaner, Ad-Aware, Windows Defender...

BORRAR ARCHIVOS DE FORMA SEGURA.

Cuando se elimina un archivo de la papelera, es posible recuperarlo si se meplea el software adecuado. Esto garantiza que los documentos importantes no se pierdan en caso de que se borren accidentalmente o incluso al formatear un disco. Sin embargo, esto compromete la privacidad cuando el usuario quiere eliminar archivos sin que nadie pueda tener acceso a ellos.
De la misma manera que existen programas para recuperar archivos, otros garantizan la eliminación segura de archivos para que sean irrecuperables.

lunes, 27 de enero de 2020

Navegación segura.

BUENAS PRÁCTICAS DE NAVEGACIÓN.

Algunas de las pausas que se deben seguir para realizar una navegación segura son las siguientes:

  • Configurar el navegador adecuadamente. El navegador permite configurar a niveles de seguridad usar diferrentes filtros contra la suplantación de la identidad, bloquear elementos emergentes y activar el control parental para la protección de menores.
  • No acceder a sitios web de dudosa reputación y evitar enlaces sospechosos. Numerosos sitios web graudulentos suelen promocionarse con descuentos, regalos, programas gratuitos, material multimedia, etc., con el propósito  de captar usuarios.
  • Aceptar únicamente las cookies deseadas. Las cookies son pequeños archivos de texto con metadatos de una visita: identificadores de sesión, procedencia de la visita, duración de la misma, etc. 
  • Proteger los datos personales. No se deben facilitar datos personales, como el nombre y los apellidos, la dirección o el número de tarjeta de crédito, en aquellas páginas que no sean de absoluta confianza y que no estén bajo protocolo seguro (HTTPS).
  • Descargar aplicaciones de sitios web oficiales. Es preciso desconfiar de los sitios desconocidos que  ofrecen descargas, ya que constituyen una de las principales vías de propagación de virus. Aunque se utilicen sitios web fiables, cualquier archivo descargado de la red debe ser analizado con un antivirus antes de abrirse.
  • Revisar el correo electrónico. Además de analizar el correo, hay que utilizarlo con cautela, sospechando de los mensajes no esperados. Por otro lado, es recomendable activar la carpeta de detección de spam y revisarla periódicamente para comprobar que no se ha introducido un mensaje válido en ella.
  • Actualizar el sistema operativo y sus aplicaciones. Los ciberatacantes utilizan las vulnerabilidades detectadas en los programas informáticos para lanzar sus ataques. Por este motivo, es recomendable configurar las actualizaciones automáticas del equipo.
NAVEGACIÓN PRIVADA.

La navegación privada es una medida de privacidad para que el navegador no almacene la información que se genera en relación con la navegación (cookies, usuarios y contraseñas, historial, memoria caché...), por lo que es recomendable su uso al compartir el equipo con otras personas o al utilizarlo en un lugar público. Esta medida de seguridad solo afecta al equipo, ya que no permite ocultar la actividad de navegación ni al servidor, ni al proveedor de servicios de Internet ni a los sitios web que se visitan, por lo que su uso permite alejar a curiosos, pero no a atacantes expertos. Para activarla, hay que utilizar la opción Nueva ventana de incógnito, Navegación privada o Navegación inPrivate, en función del navegador.

PROTEGER LA PRIVACIDAD EN LA RED CON UN PROXY.

Los servidores proxy  actúan como intermediarios entre los equipos de los usuarios y los sitios web que se visitan. El usuario accede al proxy y utiliza su buscador para navegar por Internet. De este modo, las páginas visitadas solo pueden captar datos del proxy, pero no del usuario.

Existen multitud de servidores proxy disponibles de forma gratuita, si bien suelen contar con algunas restricciones. Funcionan correctamente para consultar páginas web, pero para acceder a contenidos multimedia o para descargar ficheros son demasiado lentos. Algunos ejemplos de servidores proxy son Anonymouse o hide.me.

NAVEGACIÓN ANÓNIMA.

La navegación anónima evita el seguimiento de sitios web que intentan obtener información de los usuarios y mantener el anonimato en comunicaciones que requieren la máxima privacidad.
Uno de los navegadores anónimos más utilizados es Tor, un software libre que, junto con una red de ordenadores voluntarios, oculta la dirección de IP y asigna otra de cualquier parte del mundo, manteniendo la integridad y la confidencialidad de la información que viaja por la red.

Estas redes anónimas están diseñadas para proteger la privacidad de los internautas frente a las amenazas de la red. sin embargo, no hay que olvidar que, aunque la web visitada no tenga acceso a los datos del usuario, estos quedan registrados en los servidores anónimos, del mismo modo que los operadores pueden identificar cualquier llamada oculta.

jueves, 23 de enero de 2020

Firma electrónica y certificado digital.

LA FIRMA ELECTRÓNICA.

Se define como el conjunto de datos asociados a un documento electrónico que permite realizar las siguientes acciones:

  • Identificar al firmante de forma inequívoca. Requiere el uso de una clave privada que únicamente conoce el firmante.
  • Asegurar la integridad del documento firmado. Proporciona mecanismos para comprobar que el documento firmado es exactamente el mismo que el original y que no ha sufrido alteración ni manipulación algunas.
  • No repudio. Certifica que los datos utilizados por el firmante para realizar la firma son únicos y exclusivos y, por tanto, no puede arguir que no ha firmado el documento en cuestión.
Al firmar digitalmente un documento electrónico, se le confiere una validez jurídica equivalente a la que proporciona la firma manuscrita, con la ventaja de que este procedimiento no requiere la presencia física del firmante y, además, no se puede falsificar. Este documento debe conservarse, y cualquier impresión debe contener un código seguro de verificación (CSV).

Firma de documentos electrónicos.

El firmante genera, mediante una función hash, un resumen que es utilizado como huella digital del mensaje. El resultado que se obtiene de este resumen, que se cifra con su clave privada, se denomina "firma digital" y se enviará adjunta al mensaje original.
Cualquier receptor del mensaje puede comrpobar su autoría descifrando la firma digital con la clave pública del firmante, lo que dará como resultado el resumen del mensaje.
Para comprobar que el contenido no ha sido modificado desde su creación, se aplica la funión hash al documento original por medio de la comprobación del resultado obtenido con el resumen cifrado que se ha recibido.

¿Cómo se firma un documento?

Se pueden seguir dos métodos:
  • Utilizar una aplicación en e dispositivo. Son aplicaciones de firma que se descargan en el equipo. Existen programas cotidianos, como Adobe Acrobat, que permiten firmar documentos aunque es conveniente recurrir a aplicaciones ofrecidas por las Administraciones públicas, como AutoFirma.
  • Firmar directamente en Internet. Esta opción se utiliza habitualmente al firmar formularios o solicitudes. El usuario también puede firmar sus propios documentos en Internet a través del servicio ofrecido en el sitio oficial de VALIDe.
El certificado digital.

Un certificado digital es un documento electrónico, expedido por una autoridad de certificación, cuya misión es validar y certificar que una firma electrónica se corresponde con una persona, con una emresa o con un organismo público. Contiene la información necesaria para firmar electrónicamente e identificar a su propietario con sus datos.
El certificado digital identifica a una persona o entidad con dos claves complementarias, una pública y otra privada, de modo que los datos cifrados con una solo se pueden descifrar con la otra.

  • Autoridades de certificación.
Son aquellas instituciones de confianza responsables de emitir y revocar los certificados digitales utilizados en la firma electrónica, ya que, de otro modo, no contarían con las garantías de seguridad para los que han sido diseñadas. La autoridad de certificación da fe de que la firma electrónica se corresponde con un usuario concreto, razón por la que los certificados están firmados, a su vez, por la autoridad de certificación.

lunes, 20 de enero de 2020

Protección contra el malware.

POLÍTICAS DE SEGURIDAD.

La política de seguridad de un sistema informático es el conjunto de normas y procedimientos que definen las diferentes formas de actuación recomendadas, con el fin de garantiazar un cierto grado de seguridad.
Además de las políticas de seguridad propias, la legislación establece medias de carácter legal de obligado cumplimiento, como la LSSICE, Ley Servicio de la Sociedad de la Información y del comercio Electrónico y LOPD, Ley Orgánica de Protección de Datos.

SOLUCIONES ANTIVIRUS.

Un antivirus es un software que tiene como finalidad prevenir, detectar y eliminar virus, software malicioso y otros ataques en el sistema. Reside en la memoria, analizando constantemente los archivos ejecutados, los correos entrantes, las páginas visitadas, las memorias USB, etc.
En caso de amenaza, los antivirus envían un mensaje al usuario con las posbles acciones que puede llevar a cabo: omitir el aviso, desinfectar el archivo, moverlo a la cuarentena o eliminarlo. Para detectar un software malicioso estos programas utilizan una base de datos de firmas con las que comparan el código de los archivos.
Los antivirus actualizan constantemente sus definiciones de virus incluyendo nuevas amenazas que van apareciendo; por esta razón, es imprecindible que estén instalados en equipos con conexión a Internet.
Algunos de los antivirus más populares son Avast, Avira, Bitdefender, Gdata, McAfee, Norton, Panda, etc.
Otra opción interesante es utilizar antivirus en línea gratuitos, que permiten analizar el ordenador con la garantía de no estar infectados y, por tanto, que ofrecen gran fiabilidad en sus resultados.

SÍNTOMAS DE UNA INFECCIÓN.

Algunos de los principales síntomas de una infección son los siguientes:
  • Ralentización del equipo durante el arranque, el funcionamiento o la conexión a Internet.
  • Desaparición de carpetas o archivos, o distorsión de sus contenidos.
  • Aparición de publicidad, mensajes de error o sonidos no habituales.
  • Movimiento automático del ratón, de los menús o de las ventanas.
  • Fallos o comportamientos extraños en las aplicaciones y los dispositivos.
  • Intentos de conexión a Internet inesperados o redireccionamientos no deseados.
  • Secuestro de la página de inicio del navegador y cambio del buscador predeterminado.
  • Aparición de barras de herramientas extrañas en el navegador web.
  • Envío de correos electrónicos o de mensajes a los contactos d euna lista.
  • Aumento de la actividad en el equipo y del tráfico en la red.
PASOS QUE SE DEBEN SEGUIR EN CASO DE INFECCIÓN.

Cuando se ha detectado una infección o hay una sospecha razonable de que pueda haberla, es posible adoptar las siguientes medidas:
  • Restaurar el sistema a un estado anterior. Algunos sistemas operativos, como Windows, crean puntos de restauración periódicamente permitiendo devolver al equipo a un estado seguro anterior sin que se pierda información.
  • Actualizar la base de datos del antivirus y realizar un análisis completo del equipo. En caso de que no se detecte o elimine el malware, se puede optar por utilizar aplicaciones de otros fabricantes o por realizar un análisis en línea.
  • Arrancar el equipo con un Live CD o Live USB. Esta opción permite:
           Analizar el equipo con un antivirus sin contaminar, ya que el instalado podría estar infectado.
          
           Extraer los archivos para recuperar la información en caso de que el sistema operativo del                     equipo haya sido dañado y no permita iniciar el sistema.
  • Ejecutar utilidades de desinfección específicas, que actúan como antídotos de virus o eliminan amenazas concretas. Una vez conocida la amenaza, dichas utilidades se pueden descargar desde sitios web seguros, desarrolladores de antivirus, foros de seguridad,etc.


viernes, 17 de enero de 2020

Ataques a los sistemas informáticos.

TIPOS DE ATAQUES.

Los principales ataques a los que están expuestos los sistemas informáticos se dividen en los siguientes grupos:


  • Interrupción. Ataque contra la disponibilidad de un sistema. El resultado de estos ataques es que un recurso sea destruido, quede inutilizable o no disponible. Se llevan a cabo por ejemplo al destruir un disco duro.
  • Interceptación. Ataque contra la confidencialidad de un sistema a través de un programa, proceso o usuario consigue acceder a recursos para los que no tienen autorización. Es el incidente mas difícil de detectar y no produce una alteración en el sistema. Por ejemplo el acceso a una base de datos.
  • Modificación. Ataque contra la integridad de un sistema a través de cual se manipula. Estos ataques suelen ser los más dañinos ya que pueden eliminar parte de la información, dejas algunos dispositivos inutilizables, introducir errores, etc.
  • Suplantación o fabricación. Ataque contra la autenticidad mediante el cual un atacante inserta objetos falsificados en el sistema. Con esto, se puede realizar una suplantación de identidad, de una dirección IP, una dirección wec, etc.


INGENIERÍA SOCIAL.

La ingeniería social es una técnica ampliamente utilizada que no explota las vulnerabilidades a nivel tecnológico de un sistema, sino ciertos comportamientos y conductas de los seres humanos. Por lo general, estas técnicas de ataque buscan canalizar la atención de los usuarios aprovechando aspectos de su personalidad para que realicen actos involuntarios sin sospechar que están colaborando con el atacante para que logre sus objetivos.
En la práctica se utilizan, principalmente, el teléfono e Internet para engañar a los usuarios por medio de simulación.


 ATAQUES REMOTOS.

Un ataque remoto es aquel que utiliza un conjunto de técnicas para acceder a un sistema informático a distancia.
Algunos de los ataques que comprometen la seguridad de un sistema remoto son:

  • Inyección de código. Añade o borra información en sitios remotos que no están bien protegidos.
  • Escaneo de puertos. Averigua qué puertos de un equipo en la red se encuentran abiertos para determinar los servicios que utiliza y, posteriormente, lanzar el ataque.
  • Denegación de servicio (DoS). Satura los recursos de un equipo o de una red para que deje de responder o lo haga con tal lentitud que se considere no disponible.
  • Escuchas de red. Captura e interpreta el tráfico de una red, aplicando distintos tipos de filtros.
  • Spoofing. Suplanta la identidad de un usuario, red, equipo o aplicación, falsificando su dirección de IP, DNS, URL, e-mail, GPS, etc. Por medio de esta técnica, el atacante adquiere privilegios para acceder a redes autentificadas por MAC, para hacerse pasar por otras personas, etc.
  • Fuerza bruta. Vulnera mecanismos de autentificación basaos en credenciales del tipo usuario y contraseña. Se basa en probar todas las combinaciones posibles del espacio de cables de un sistema.
  • Elevación de privilegios. Aumenta los permisos del atacante a administrador o root para obtener un acceso total al sistema.

martes, 14 de enero de 2020

Tipos de malware.

Malware es el acrónimo de "malicious" y "software", por lo que, se traduce como "programa malicioso". Su peligrosidad se establece sobre la base de dos criterios principales: su capacidad de hacer daño a un equipo y su posibilidad de propagación.

TIPOS DE MALWARE:

  • Virus. Un virus es un programa informático creado para producir daños en un equipo. Posee dos características particulares: actúa de forma transparente para el usuario y tiene la capacidad de reproducirse a sí mismo.
  • Gusano. Programa independiente que tiene por objetivo multiplicarse y propagarse de forma autónoma, infectando, valiéndose de las vulnerabilidades de los sistemas, los equipos. Los medios de infección habitual suelen ser la mensajería instantánea, el correo electrónico y la copia de memorias USB. Se pueden expandir por todo el mundo en cuestión de minutos.
  • Troyano. Código malicioso que se oculta dentro de un archivo inofensivo y útil para el usuario. Al igual que los gusanos, no infectan archivos, aunque requieren la intervención de sus víctimas para propagarse. Por ejemplo: Downloader, Clicker, Keylogger,Bot, etc.
  • Spyware. Programa espía que almacena información personal (como los datos personales, historial de búsqueda,etc) del usuario sin su consentimiento. En la mayoría de casos, la información obtenida es facilitada a empresas de publicidad para el envío de spam o correo basura.
  • Adware. Programa malicioso que se instala en el sistema, aprovechando que el usuario acepta sus términos de uso, al instalar otras aplicaciones. Suele  utilizar información recopilada por algún spyware para mostrar publicidad personalizada para el usuario.
  • Ransomware. Aplicación que secuestra un dispositivo, por medio de la codificación o del bloqueo al acceso a la informacióm, mostrando un mensaje a la víctima en el que se solicita el pago para liberarlo.
  • Rogue. Programa malicioso que simula ser antimalware pero que ocasiona los efectos contrarios. Muestra en la pantalla advertencias de falsas infecciones, tratando de engañar al usuario para que pague por la supuesta desinfección.
  • Rootkit. Software con permiso de administrador (root) que se oculta entre las herramientas (kit) del sistema operativo para proporcionar acceso remoto al atacante. Suspende su actividad al detectar escaneo, por lo que puede pasar desapercibido durante mucho tiempo.
  • Phishing. Técnica para obtener información de un usuario de forma fraudulenta. El atacante se hace pasar por una persona o por una empresa de confianza, a través de un correo electrónico, de un mensaje instántaneo o de una red social, para enviar un enlace a una página web maliciosa con el fin de obtener sus credenciales, cuentas bancarias, etc.
  • Pharming. Técnica que aprovecha la vulnerabilidad de los servidores DNS para redireccionar la dirección web de un sitio de confianza a otro fradulento con la intención de robar datos personales y claves para cometer fraudes económicos.
  • Spam. Mensajes de correo electrónico "no deseado" o "basura" enviados masivamente, ya sea con fines publicitarios o para la propagación de códigos maliciosos.
  • Hoax. Mensajes de correo, distribuidos en formato de cadena, cuyo objetivo es realizar engaños masivos. Algunos ejemplos característicos de hoax son las alertas falsas sobre virus, las historias solidarias inventadas y los mensajes que afirman traer mala suerte si no se reenvían.

Conductas de seguridad.

Se emplean en el uso de sistemas informáticos pueden ser de dos tipos:

  • Seguridad activa. Conjunto de medidas que previenen e intentan evitar los daños en los sitemas informáticos. Algunas  de las principales medidas de seguridad son:
-Control de acceso. Limita el acceso únicamente al personal autorizado. Para ello, se utilizan contraseñas seguras, listas de control, certificados digitales, etc.
-Encriptación. Codifica la información importante para que no pueda descifrarse.
-Software de seguridad informática. Previene del software malicioso y de ataques de intrusos al sistema informático. Para ello, se suelen utilizar antivirus, antiespías, cortafuegos, etc.
-Firmas y certificados digitales. Permiten comprobar la procedencia, autenticidad e integridad de los mensajes.
-Protocolos seguros. Protegen las comunicaciones, por medio del cifrado de la información, para garantizar su seguridad y confidencialidad.


  • Seguridad pasiva. Conjunto de medidas que reparan o minimizan los daños causados en sistemas informáticos. Las más recomendadas son estas:

-Herramientas de limpieza. En caso de infección, hay que realizar un escaneado completo del equipo y utilizar herramientas específicas para eliminar el malware. Una de las causas de infección puede tener que ver con el hecho de que el software de seguridad no funcione correctamente.

-Copias de seguridad. Restauran los datos utilizando copias de los datos originales que se realizan periódicamente. 
-Sistemas de alimentación ininterrumpida (SAI). Dispositivos que incorporan una batería para proporcionar corriente al equipo con el fin de que siga funcionando en caso de fallo eléctrico.
-Dispositivos NAS. Permiten, como sistemas de almacenamiento a los que se tiene acceso a través de la red, que cualquier equipo autorizado pueda almacenar y recuperar la información.
-Sistemas redundantes. Duplican componentes críticos, como los procesadores, los discos duros (RAID) o las fuentes de alimentación, para seguir funcionando aunque se produzca el fallo de un componente.

viernes, 10 de enero de 2020

Tipos de amenazas.

Las amenazas a la seguridad se pueden clasificar en humanas, lógicas y físicas.
  1. Amenazas humanas.

Ataques pasivos. Su finalidad es obtener información sin alterarla. Son muy difícules de detectar ya que al no modificar muchos datos no dejan rastro.
Algunos de los más habituales son: 
  • Usuarios con conocimientos básicos. Acceden a los sistemas de información accidentalmente o utilizando técnicas muy sencillas.
  • Hackers. Informáticos expertos que emplean sus conocimientos para comprobar las vulnerabilidades de un sistema y corregirlas. Las razones pueden ser laborales o desafíos personales.

Ataques activos. Persiguen dañar el objetivo o manipular información para obtener beneficios.
  • Antiguos empleados de una organización. Aprovechan las debilidades que conocen del sistema para atacarlo, ya sea por venganza o por otras razones.
  • Crackers y otros atacantes. Expertos informáticos que burlan los sistemas de seguridad, accediendo a ellos para obtener información, perjudicar un sistema informático o realizar cualquier otra actividad ilícita.
2. Amenazas lógicas.
El software que puede dañar un sistema informático es de dos tipos:
  • Software malicioso. Programas, diseñados con fines no éticos, entre los que se encuentran virus, los gusanos, los troyanos y los espías, los cuales atacan los equipos comprometidos su confidencialidad, su integridad y su disponibilidad.
  • Vulnerabilidades del software. Cualquier error de programación en el diseño, la configuración o el funcionamiento del sistema operativo o de las aplicaciones puede poner en peligro la seguridad del sistema si es descubierto por un atacante.

3. Amenazas físicas.
Están originadas habitualmente por tres motivos:
  • Fallos en los dispositivos. Las averías de discos, roturas en el cableado, sobrecargas eléctricas,etc., pueden provocar la caída de un sistema informático.
  • Accidentes. Sucesos provocados de forma involuntaria por descuidos, malas prácticas o desconocimiento.
  • Catástrofes naturales. Desastres como incendios, inundaciones o terremotos.

jueves, 9 de enero de 2020

ACTIVIDAD 1 Y 2 PÁG 85

Define los siguientes conceptos:

  • Autentificación: permite identificar al generador de la información (usuario y contraseñas).
  • Autorización: parte del sistema operativo que protege recursos permitiendo que sólo se usen por personal autorizado.
  • Cifrado: ocultar el mensaje enviado por emisor hasta que llega a su destino y es descifrado por el receptor.
  • No repudio: proporciona pruebas de integridad y origen de datos (por ejemplo: certificado digital).
  • Vulnerabilidad: debilidad del sistema informático que puede ser usado para causar un daño. Puede afectar a Hardware, Software, datos o usuario.

Decisión de tareas a partir del análisis.

El siguiente paso consiste en decidir las estructuras básicas que van a emplearse para llevarlo a cabo. La estructura de datos del progra...