elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Seguridad
| | |-+  Desafíos - Wargames (Moderador: Kasswed)
| | | |-+  Cliente TLS (HTTPS)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Cliente TLS (HTTPS)  (Leído 4,485 veces)
keniaboy

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Cliente TLS (HTTPS)
« en: 11 Enero 2016, 23:58 pm »

Buenas.

Estoy intentando hacer un pequeño "cliente" para conectarse a un servidor SSL determinado.

Con algunos criterios especificos:

a) No debe depender de librarias ni frameworks.
b) Todo tiene que poder correr con muy bajos recursos.

Para esto la idea principal es implementar solo un "cipherSuit" así implementar la menor cantidad de ciphers, hash, etc.

Basados en la documentacion del rfc2246 me inclino por implementar TLS_DHE_RSA_WITH_AES_256_CBC_SHA

A fuerza de la especificacion y wireshark ya esta la parte "facil"

1) Send Hello Client Check
2) Receive Server Hello
3) Receive Server Certificate
4) Receive Server KeyExchange
5) Receive Server Done
6) Send ClientKeyExchange
7) Send ChangeCipherSpec

Ahora quedan los ultimos pasos donde la informacion ya va cifrada.

En este punto ya tenemos
Client Secret Exponent (PrivateKey)
Client Public Key (PublicKey)
Server Public Generator G
Server Public Prime Modulus M
Server Public Key PublicKey

// Encript (Encrypted Handshake Message)
8) Send PreMasterKey -- RSA encrypted premaster secret message --

Meaning of this message:
If RSA is being used for key agreement and authentication, the
client generates a 48-byte premaster secret, encrypts it using
the public key from the server’s certificate or the temporary RSA
key provided in a server key exchange message, and sends the
result in an encrypted premaster secret message. This structure
is a variant of the client key exchange message, not a message in
itself.

Lo cifro con la ServerPublicKey ... pero ¿con que algoritmo?

Y despues quedan otros pasos...
// Claro
9) Receive NewSessionTicket
10) Receive ChangeCipherSpec
// Encript (Encrypted Handshake Message)
11) ??
12) Application data (ahí esta el HTTP)






En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
HTTPS
Noticias
wolfbcn 0 2,255 Último mensaje 29 Abril 2011, 02:53 am
por wolfbcn
sockets C cliente&server error en cliente.... :huh:
Programación C/C++
kotora 1 3,048 Último mensaje 2 Noviembre 2013, 20:14 pm
por kotora
Ayuda ¿como hacer un cliente https?
PHP
joz_z 2 2,727 Último mensaje 3 Marzo 2014, 18:32 pm
por joz_z
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines