Copy Link
Add to Bookmark
Report

1-7: Secure Shell - SSH

eZine's profile picture
Published in 
0ri0n Team Venezuela
 · 1 year ago

Mr. kl0nk Manson
kl0nk@0ri0n.org

Indice

  • Introduccion
  • Un Poquito de su historia
  • Para que nos sirve esto?
  • Tipos de Ataques que proteje el SSH
  • Protocolos de Secure Shell
  • Caracteristicas de:
    • a.- Protocolo de autenticacion
    • b.- Protocolo de conexion
    • c.- Protocolo de Transporte

  • Algoritmos de encripcion que utiliza el SSH
    • a.- Cifrado para la encripcion
    • b.- Cifrado para la autentificacion

  • Protocolos desarrollados sobre SSH
  • De donde lo puedo bajar?
  • Comandos
  • Conclusion

Introduccion

Secure Shell (SSH) es un programa que permite realizar conexiones con otras maquinas a traves de una red, ejecutar programas en una maquina remota, y copiar archivos de una maquina a otra.

SSH provee fuerte autenticacion y comunicacion segura sobre un canal inseguro.

SSH nace como un remplazo a los comandos rlogin, rsh, y rcp, los cuales proporcionan gran flexibilidad en la administracion de una red, sin embargo, presenta grandes riesgos en la seguridad de un sistema.

Un Poquito de su historia

Secure Shell fue desarrollado por Tatu Ylonen en la Universidad Tecnologica de Helsinki en Finlandia [Como que los genios salen de Alli ... ], buscando desarrollar los mecanismos necesarios para garantizar una comunicacion segura sobre un canal abierto, proporcionando un mecanismo de fuerte autenticacion independientemente del medio.

Sobre una red la comunicacion viaja en claro, es decir, cuando se realiza una conexion a una estacion de trabajo remota usando por ejemplo telnet o ftp, los login y password viajan tal como son tecleados, esto representa un gran riesgo si llega a existir sobre la red un programa que escuche la comunicacion entre maquinas, la comunicacion en claro se muestra en la grafica siguiente.

     __________                                             __________ 
/| _______ | | ________ |\
/ || || || || \
/ || || || || \
/ ||_______|| ||________|| \
|___|_________| Login: kl0nk Password:ytelodije |__________|___|
\_________\ ==================================> /__________/

En el caso de SSH la comunicacion se seguira realizando sobre la misma red, sin embargo la comunicacion se transmite totalmente cifrada. Este tipo de conexion se muentra en la grafica siguiente.

     __________                                             __________ 
/| _______ | | ________ |\
/ || || || || \
/ || || || || \
/ ||_______|| ||________|| \
|___|_________| 803658954744251695821433620101010 |__________|___|
\_________\ ==================================> /__________/

Para que nos sirve esto?

  1. Los servicios r (rlogin, rsh, rcp) son vulnerables a cierto tipo de ataques. Cualquiera que tenga acceso a una maquina en la red puede llegar por ciertos trucos obtener acceso no, o acceso fisico a la red de computo, puede obtener acceso no autorizado por una gran variedad de formas.
  2. Con SSH, se puede crear una sesion X remota segura que permanece transparente al usuario.
  3. Proteccion de ataques sobre protocolo de comunicaciony el medio.

Tipos de Ataques que proteje el SSH

  • a.- IP spoofing: donde un host remoto envia paquetes a otro host aparentando ser un host conocido por este.
  • b.- Ruteo de IP spoofing: donde un host puede pretender que un paquete de IP proviene de otro hosts valido.
  • c.- DNS spoofing: cuando un ataque provoca que los registros de servidor de nombre se pierdan.
  • d.- Interseccion de password en claro: u otra informacion intercambiada entre dos hosts. Manipulacion de datos que se encuentran en intercambio entre hosts.

Protocolos de Secure Shell

SSH trabajo sobre tres protocolos:

a.- Protocolo de autenticacion
b.- Protocolo de conexion
c.- Protocolo de Transporte

Caracteristicas

a.- Caracteristicas del protocolo de autenticacion

  1. Mecanismo de negociacion y autenticacion.
  2. Soporte de multiples mecanismos de autenticacion.
  3. Soporte de banner pre-autenticacion.
  4. Autenticacion basada en llave de cliente.

b.- Caracteristicas del protocolo de conexion

  1. Paso de variables de ambiente.
  2. Agente de autenticacion.
  3. Control de flujo y se~ales.

c.- Caracteristicas del protocolo de Transporte

  1. Corre sobre TCP/IP, pero puede trabajar sobre UDP.
  2. Manejo de regeneracion de llaves.
  3. Verificacion de identidad de cliente mediante el uso de llave publica.
  4. Negociacion a traves de mecanismo de secreto compartido

Algoritmos de encripcion que utiliza el SHH

a.- Cifrado para la encripcion

                ---------------------------------- 
| Cifrado | SSH1 | SSH2 |
----------------------------------
| DES | Si | No |
| 3DES | Si | Si |
| IDEA | Si | No |
| Blowfish | Si | Si |
| Twofish | No | Si |
| Arcfour | No | Si |
| Cast128-cbc | No | Si |
----------------------------------

b.- Cifrado para la autentificacion

                ---------------------------------- 
| Cifrado | SSH1 | SSH2 |
----------------------------------
| RSA | Si | No |
| DSA | No | Si |
----------------------------------

Protocolos desarrollados sobre SSH

SSH1: Este protocolo lo encontramos en la version 1.2.27 para Unix que puede ser utilizada libremente para propositos no comerciales.

SSH2: Provee licencias mas estrictas que SSH1 ya que es de caracter comercial, la version Unix de ssh es la 2.2.13 puede ser utilizada libremente utilizando una licencia expresa.

De donde lo puedo bajar?

Pueden Bajarlo de http://www.ssh.com/download/, alli podras encontar el software cliente y server para todo tipo de Unix y una version cliente (demostracion, 30 dias) para windows, tambien puedes bajar un cliente para windows en mi deposito de software, que es http://kl0nk.hypermart.net/windows/ (Este Cliente no trae la utilidad del scp).

Comandos Basicos

Bueno, para poder hacer conexion a una maquina remota solo debemos hacer:

$ssh -l mi-login maquina.remota

Ejemplo:

$ssh -l kl0nk pleyades.0ri0n.org

NOTA: Donde -l es el login (en mi caso kl0nk)

Tambien podemos correrlo sin la opcion -l , pero el automaticamente tomara el usuario que estamos utilizando en la shell (en el caso de estar en un sistema tipo Unix) o simplemente pedira el login y el passwd.

Ejemplo:

$ssh maquina.remota 
login: kl0nk
password:xxxxxxx

o tambien se puede especificar de esta forma:

$ssh tu-login@maquina.remota

Bueno, hay una utilidad para la transferencia de archivos y es la "scp" (sin comillas), con ella podemos tranferir a una maquina remota archivos y estar seguro que nuestro passwd no va a ser descubierto por alguien.

La forma a utilizar es la siguiente:

$scp tu-login@maquina.remota:/home/kl0nk/xploit.c /xploit/

En este caso entrara a una maquina remota con la cuenta tu-login en el directorio /home/kl0nk/ y obtendra el archivo que colocara en el directorio local /xploit/

$scp /home/kl0nk/xploit.c tu-login@maquina.remota:~/xploit/

En este caso realizara una copia desde un archivo local /copias/archivo a una maquina remota colocando el archivo en el directorio /xploit/ del home de tu-login

Conclusion

Esta es una gran herramienta para hacer conexiones seguras remotamente, si tienes un server que tenga salida a la I-Net, es recomendable instalar esta aplicacion, ya que sera dificil que personas ajenas puedan descubrir tu password. Bueno espero que les halla gustado el articulo y cualquier duda me pueden escribir a mi email, ok.

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT