TAREAS DE SEGURID@D

jueves, 24 de abril de 2008

Scrip de Cifrado y Decifrado de archivos Resumido


Este es el un script que iso el profesor que funcion aigual al que nosotros hicimos


Scrip de Cifrado y Decifrado de archivos

Este script fue creado para el cifrado y decifrado de archivos en una consola linux y creado sobre el lenguage bash.

#/bin/bash

#script usado para cifrar o decifrar

cifrar=-c
decifrar=-d

read -p "ingrese la ruta del archivo: " ruta
read -p "ingrese una clave: " clave
read -p "ingrese la opcion de cifrado o decifradio: " opcion

if [ "$cifrar" = "$opcion" ]
then
echo "el archivo se va a cifrar"

cat $ruta > output.txt

sed -i s/"a"/"D"/g output.txt
sed -i s/"b"/"E"/g output.txt
sed -i s/"c"/"F"/g output.txt
sed -i s/"d"/"G"/g output.txt
sed -i s/"e"/"H"/g output.txt
sed -i s/"f"/"I"/g output.txt
sed -i s/"g"/"J"/g output.txt
sed -i s/"h"/"K"/g output.txt
sed -i s/"i"/"L"/g output.txt
sed -i s/"j"/"M"/g output.txt
sed -i s/"k"/"N"/g output.txt
sed -i s/"l"/"Ñ"/g output.txt
sed -i s/"m"/"O"/g output.txt
sed -i s/"n"/"P"/g output.txt
sed -i s/"ñ"/"Q"/g output.txt
sed -i s/"o"/"R"/g output.txt
sed -i s/"p"/"S"/g output.txt
sed -i s/"q"/"T"/g output.txt
sed -i s/"r"/"U"/g output.txt
sed -i s/"s"/"V"/g output.txt
sed -i s/"t"/"W"/g output.txt
sed -i s/"u"/"X"/g output.txt
sed -i s/"v"/"Y"/g output.txt
sed -i s/"w"/"Z"/g output.txt

sed -i s/"x"/"A"/g output.txt
sed -i s/"y"/"B"/g output.txt
sed -i s/"z"/"C"/g output.txt
else
echo ""
fi

if [ "$decifrar" = "$opcion" ]
then
echo "el archivo se va a decifrar"

sed -i s/"D"/"a"/g output.txt
sed -i s/"E"/"b"/g output.txt
sed -i s/"F"/"c"/g output.txt
sed -i s/"G"/"d"/g output.txt
sed -i s/"H"/"e"/g output.txt
sed -i s/"I"/"f"/g output.txt
sed -i s/"J"/"g"/g output.txt
sed -i s/"K"/"h"/g output.txt
sed -i s/"L"/"i"/g output.txt
sed -i s/"M"/"j"/g output.txt
sed -i s/"N"/"k"/g output.txt
sed -i s/"Ñ"/"l"/g output.txt
sed -i s/"O"/"m"/g output.txt
sed -i s/"P"/"n"/g output.txt
sed -i s/"Q"/"ñ"/g output.txt
sed -i s/"R"/"o"/g output.txt
sed -i s/"S"/"p"/g output.txt
sed -i s/"T"/"q"/g output.txt
sed -i s/"U"/"r"/g output.txt
sed -i s/"V"/"s"/g output.txt
sed -i s/"W"/"t"/g output.txt
sed -i s/"X"/"u"/g output.txt
sed -i s/"Y"/"v"/g output.txt
sed -i s/"Z"/"w"/g output.txt
sed -i s/"A"/"x"/g output.txt
sed -i s/"B"/"y"/g output.txt
sed -i s/"C"/"z"/g output.txt

else
echo ""
fi

Scrip de Cifrado y Decifrado de textox

lunes, 21 de abril de 2008

SSL Secure Socket Layer

El protocolo SSL es un sistema diseñado y propuesto por Netscape Communications Corporation. Se encuentra en la pila OSI entre los niveles de TCP/IP y de los protocolos HTTP, FTP, SMTP, etc. Proporciona sus servicios de seguridad cifrando los datos intercambiados entre el servidor y el cliente con un algoritmo de cifrado simétrico, típicamente el RC4 o IDEA, y cifrando la clave de sesión de RC4 o IDEA mediante un algoritmo de cifrado de clave pública, típicamente el RSA. La clave de sesión es la que se utiliza para cifrar los datos que vienen del y van al servidor seguro. Se genera una clave de sesión distinta para cada transacción, lo cual permite que aunque sea reventada por un atacante en una transacción dada, no sirva para descifrar futuras transacciones. MD5 se usa como algoritmo de hash.

Proporciona cifrado de datos, autenticación de servidores, integridad de mensajes y, opcionalmente, autenticación de cliente para conexiones TCP/IP.

Cuando el cliente pide al servidor seguro una comunicación segura, el servidor abre un puerto cifrado, gestionado por un software llamado Protocolo SSL Record, situado encima de TCP. Será el software de alto nivel, Protocolo SSL Handshake, quien utilice el Protocolo SSL Record y el puerto abierto para comunicarse de forma segura con el cliente.



El Protocolo SSL Handshake

Durante el protocolo SSL Handshake, el cliente y el servidor intercambian una serie de mensajes para negociar las mejoras de seguridad. Este protocolo sigue las siguientes seis fases (de manera muy resumida):

  • La fase Hola, usada para ponerse de acuerdo sobre el conjunto de algoritmos para mantener la intimidad y para la autenticación.
  • La fase de intercambio de claves, en la que intercambia información sobre las claves, de modo que al final ambas partes comparten una clave maestra.
  • La fase de producción de clave de sesión, que será la usada para cifrar los datos intercambiados.
  • La fase de verificación del servidor, presente sólo cuando se usa RSA como algoritmo de intercambio de claves, y sirve para que el cliente autentique al servidor.
  • La fase de autenticación del cliente, en la que el servidor solicita al cliente un certificado X.509 (si es necesaria la autenticación de cliente).
  • Por último, la fase de fin, que indica que ya se puede comenzar la sesión segura.

El Protocolo SSL Record

El Protocolo SSL Record especifica la forma de encapsular los datos transmitidos y recibidos. La porción de datos del protocolo tiene tres componentes:

  • MAC-DATA, el código de autenticación del mensaje.
  • ACTUAL-DATA, los datos de aplicación a transmitir.
  • PADDING-DATA, los datos requeridos para rellenar el mensaje cuando se usa cifrado en bloque.

Firma y Certificado Digital

La firma digital de un documento es el resultado de aplicar cierto algoritmo matemático, denominado funcion hash, a su contenido, y seguidamente aplicar el algoritmo de firma (en el que se emplea una clave privada) al resultado de la operación anterior, generando la firma electrónica o digital.un método criptografico que asocia la identidad de una persona o de un equipo informático al mensaje o documento


Certificado Digital

Un certificado igital es un documento digital mediante el cual un tercero confiable (una autoridad de certificacion ) garantiza la vinculación entre la identidad de un sujeto o entidad y sullave publica.

GPG en Windows-Server

Antes de comensar mostraremos unas opciones de comando basicas gpg -e (ruta) cifra datos
gpg -c (ruta) hace un cifrado simetrico ; gpg -d (ruta) decifraa archivos

Lo primero es descargar el softwarewue en mi caso es el gnupg-w32cli-1.4.2.exe desde aqui
luego de descargarlo pasamos a la instalacion ;despues vamos al aconsola y nos paramos en la carpeta donde se instalo el programa

Luego pasamos a generar nuestro primer par de llaves cone l comando gpg --gen-key nos mostrara unas opciones que debemos aceptar y listo se nos crean las llaves,ahora vamos a ver unas opciones relacionadas con el funcionamiento del gpg


el anterior fue el cmando gpg --list-key que sirve para listar las llaves publicas que tenemos nosotros; y para listar las llaves publica se usa el comando gpg -K.

otros comandos son el gpg --export -o pub.****.gpg -a que hace que exporte el archivo pub.***.gpg y la opcion -o lo usa como fichero de salida y la opcion -a es para que lo saque en codigo ascii .

Tambien esta el comando gpg--import (ruta del archivo) que sirve para importar archivos ya sea para decifrarlos o para almacenar la llave publica del emisor.

Haora veremos las opciones de firma digital con el comando gpg -s se crea una firma digital ;
cone l comando gpg --clearsign (ruta documento) se firman documentos eset es un ejemplo de un documento fiemado que por defecto lo crea en codigo ascii


Para verificar que un archvo si fue enviado por quien dice ser le damos con el comando gpg --verify (ruta) , para hacer esto debemos tener registrados la llave publica de quien envio el mensage para poder verificar que si es de el.

el comando gpg --sign-key (ID de la llave) sirve para firmar las llaves de la gente para generar confianza .

esos son los pasos basicos para la configuracion de gpg y nuestras llaves luego debes subir tu llave publica a un servidor para que todos tengan acceso a ella y asi puedan tener una comunicacion segura contigo nosotros lo subimos a este http://wwwkeys.pgp.net/
desde ese mis mo servidor puedes bajar las llaves publicas de tus compañeros y firmarlas
luego de descargar el codigo de al clave damos el comando gpg -a -o ***.txt --export 5jhc8ke4 el archivo .txt que se crea se sube al servidor y se publica.

haora veremos como enciptar con la llave publicadel receptor gpg -r 976gt49l -c ***.txt la opcion -r significa recptor y luego el id de su llave publica y -c es cifrar

martes, 8 de abril de 2008

VPN


Virtual Private Network (VPN), es una tecnología dered que permite una extensión de la red local sobre una red pública o no controlada, como por ejemplo internet

Ejemplos comunes son, la posibilidad de conectar dos o más sucursales de una empresa utilizando como vínculo Internet, permitir a los miembros del equipo de soporte técnico la conexión desde su casa al centro de cómputo, o que un usuario pueda acceder a su equipo doméstico desde un sitio remoto, como por ejemplo un hotel. Todo ello utilizando la infraestructura de Internet.

para que la informacion viage por la internet y se asegure que la informacion va a llegar igual como se mando se debe implementar la encriptacion de esta

Existen dos tipos de técnicas de encriptación que se usan en las VPN: Encriptación de clave secreta, o privada, y Encriptación de clave pública.

En la encriptación con clave secreta se utiliza una contraseña secreta conocida por todos los participantes que van a hacer uso de la información encriptada. La contraseña se utiliza tanto para encriptar como para desencriptar la información. Este tipo de sistema tiene el problema que, al ser compartida por todos los participantes y debe mantenerse secreta, al ser revelada, tiene que ser cambiada y distribuida a los participantes, lo que puede crear problemas de seguridad.

La encriptación de clave pública implica la utilización de dos claves, una pública y una secreta. La primera es enviada a los demás participantes. Al encriptar, se usa la clave privada propia y la clave pública del otro participante de la conversación. Al recibir la información, ésta es desencriptada usando su propia clave privada y la pública del generador de la información. La gran desventaja de este tipo de encriptación es que resulta ser más lenta que la de clave secreta.

En las redes virtuales, la encriptación debe ser realizada en tiempo real, de esta manera, los flujos de información encriptada a través de una red lo son utilizando encriptación de clave secreta con claves que son válidas únicamente para la sesión usada en ese momento.

Tambien para garantizar la seguridad de la informacion se implementan la autenticaciónpara asegurar que no cualquiera puede tener acceso a la informacion



Scripts

Un conjunto de comandos escritos en un lenguaje interpretado para automatizar ciertas tareas de aplicación que pueden ser de mucha ayuda para el administrador por que puede automatizar tareas y ahorrarle trabajo

algunos ejemplos de scripts

#!bin/bash

#programa para sumar,restar,multiplicar,dividir

if [ $# -eq 3 ] #esto significa que el numero de variables debe ser igual a tres
then
echo "la operacion se esta realizando"#si estas los tres parametros sale este mensage
else
echo " necesita dos parametros"#si no se cumple sale este mensage
exit -1
fi

if [ 0 - eq $1 ]#la varible 1 no debe ser igual a cero
then
echo "no se puede hacer la operacion por cero"#si es haci sale este mensage
exit -1
fi


if [ 0 -eq $3 ]#la variable 3 no debe ser igual a cero
then
echo "no se puede hacer la operacion por cero"#si es haci sale este mensage
exit -1
fi


if [ #2 = "+" ]#si la varible 2 es igual a + se hace la operacion
then
let suma=$1+$2#se suma la variable 1 y 2
echo "el resultado de la suma es : $suma"#el resultado es la variable suma
fi

if [ $2 = "-" ]#si la varible 2 es igual a - se hace la operacion
then
let resta=$1-$3
echo "el resultado de la resta es $resta"#el resultado es la variable resta
fi

f [ $2 = "x" ]#si la varible 2 es igual a x se hace la operacion
then
let multi=$1*$3
echo "el resultado de la resta es $multi"#el resultado es la variable multi
fi

f [ $2 = "/" ]#si la varible 2 es igual a / se hace la operacion
then
let divi=$1/$3
echo "el resultado de la resta es $divi"#el resultado es la variable divi
fi

fwbuilder

Firewall builder es un GUI de configuracion y mantenimiento de herramientas que soporta iptables (netfilter),ipfilter,pf,ipfw,Cisco PIX (FWSM ASA) y Cisco router extendido listas de acceso.
Firewall Builder usa objetos arientados , esta ayuda administra y mantiene una base de datos de objetos de redes y permite editar politicas usando operaciones simples drap-y-drop

http://www.fwbuilder.org/

mozilla vs iceweasel












IceWeasel

IceWeasel Es el nombre de dos proyectos independientes derivados de Mozilla firefox. Uno es parte de gnuzilla, un proyecto GNU para suministrar versiones de programas de Mozilla constituidos, en su totalidad, de software libre. El otro es una compilación renombrada, preparada por Debian, para resolver la demanda hecha por Mozilla que les obligaba a dejar de utilizar el nombre o acogerse a sus términos, los cuales son inaceptables dentro de las políticas de Debian

Concretamente, IceWeasel es el nombre elegido para sustituir a Firefox, una clara mofa hacia el nombre original (porque Hielo no es Fuego y Comadreja no es Zorro).


Mozilla firefox


es un navegador de internet, con interfaz grafica de usuario desarrollado por la corporacion mozilla y un gran número de voluntarios externos.Firefox, oficialmente abreviado como Fx o fx, y comúnmente como FF, comenzó como un derivado del Mozilla Aplication Suite que terminó por reemplazarlo como el producto bandera del proyecto Mozilla, bajo la dirección de la Fundacion de mozilla

El programa es multiplataforma y está disponible en versiones para Microsoft Windws, Mac os y X GNU/LINUX. El código ha sido portado por terceros a como microsoft y open bsd

El codigo fuente de Firefox está disponible libremente bajo la triple licencia de Mozilla como un programa libre y de código abierto.

miércoles, 2 de abril de 2008

ISA SERVER

Continuando con el tema de proxy y f¡rewall ahora abordamos isa server que es el un completo programa que contiene las funcionalidades de proxy , firewall y iptables esto lo hace una suit de microsoft muy segura y efectiva que sirve para filtrar paquetes y contenidos desde la red que es muy efectiva y confiable.

ISA SERVER (Internet Security and Acceleration Server) es el gateway integrado de seguridad perimetral que permite proteger su entorno frente a las amenazas de Internet, además de proporcionar a los usuarios un acceso remoto seguro a las aplicaciones y datos corporativos.

esa es una de las definiciones que le dan en la web aqui

SQUID

Ejercicio

Poli­ticas de seguridad

Restringir el uso de Internet

1. craer listas negras (archivos) para bloquear los siguientes contenidos
porno - chat - correos - deportes - descargas - juegos .
para cad actegoria se debe crear una lista negra, cada rachivo tendar al menos dos registros

2. bloquear a todos los usuarios en la red la navegacion a los istios de las listas negras listas negras

3. bloquera a todos los usuarios las descargas y eporduccion de los siguientes archivos .exe .mp3 .mpg .wav .iso .zip .rar

4. la navegacion debe restringirse a horarios locales de lunes a viernes de 8:00am a 12:00 m y de 1:00 pm 4:30pm

5. existe un usuario sin ninguna restrincion 10.3.6.208

6. los usuarios de la red pueden acceder a paginas de correo gratuito y chat solamente en las horas del almuerzo 12:00 1:00

7. configurar su proxy para que trabaje como transparente

Solucion

Este es el archivo de configuracion final de este ejercicio:

http_port 10.3.6.216:3128 transparent
icp_port 0
cache_mem 32 MB
cache_dir ufs /var/spool/squid 800 16 256
cache_peer proxylan.sena.edu.co parent 8080 0 default
acl usuario src 10.3.6.248
acl manana time MTWHF 8:00-12:00
acl almuerzo time MTWHF 12:00-13:00
acl tarde time MTWHF 13:00-16:30
acl chat dstdomain "/etc/squid/acl/chat_correo.acl"
acl paginasporno dstdomain "/etc/squid/acl/paginasporno.acl"
acl porno url_regex "/etc/squid/acl/porno.acl"
acl formatos urlpath_regex "/etc/squid/acl/formatos.acl"
acl deportes url_regex "/etc/squid/acl/deportes.acl"
acl descargas url_regex "/etc/squid/acl/descargas.acl"
acl juegos url_regex "/etc/squid/acl/juegos.acl"
acl all src 0.0.0.0/0.0.0.0
acl mired src 10.3.6.128/255.255.255.128

visible_hostname localhost
http_access deny paginasporno
http_access deny porno
http_access deny descargas
http_access deny formatos
http_access deny juegos
http_access deny deportes
http_access allow mired almuerzo chat
http_access deny chat
http_access allow usuario
http_access allow manana
http_access allow tarde
http_access allow mired
http_access deny all

y se hace la siguiente cadena en iptables para que redireccione lo que va al puerto 80 y lo redireccione al puerto 3128, para el proxy transparente

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j
REDIRECT --to-port 3128


icp_port, en este parametro debemos especificar el puerto que va a utilizar el protocolo ICP (Internet Cache Protocol) que es el protocolo por el cual se comunican los proxies hermanos poara intercambiar sus caches.

cache_dir es el parametro que especifica el tama;o de la cache en el disco duro.

cache_peer se utiliza para decirle al proxy que hay otro servidor proxy en la misma red.

Las acl's especifican las redes, maquinas en particular, acciones o caracteristicas.

http_access, estas son las reglas de control de acceso que permiten o deniegan el acceso a Squid de el trafico especificado en las listas de control de acceso. (A cada acl se le debe asignar una regla de control de acceso).