Please read this description in its entirety before starting the lab!
Transport Layer Security (TLS) is the most important security protocol on the Internet today, protecting the communications of billions of people every day. In this lab, we will dive into the world of TLS through Wireshark, a powerful network sniffer. With Wireshark, we will dissect network traffic, analyze TLS traffic, and expose potential vulnerabilities along the way.
In this lab, you will:
We will be using Wireshark for this lab. Wireshark allows us to visualize the flow of packets over your computer’s (or, in this case, virtual machine’s) network link. To run a Wireshark capture, perform the following steps:
The code and Wireshark traces can be found in the lab’s GitHub repository.
Our first task will be investigating how standard HTTP traffic (i.e., without TLS) behaves. Because the vast majority of traffic on the Internet now uses TLS, we’ll have to take a look at a host specifically using HTTP only.
Open the Wireshark capture http.pcap
.
Take a look through the Wireshark capture. What do you see? Try
to use Wireshark’s filtering capabilities to search for the web
traffic we just generated (hint: try http
). Try to
dissect the packets — looking through its different layers
— until you can find the data you requested. Think about what this
cleartext communication means for communications security
and privacy.
As you go through this part, answer the following questions:
The GitHub repository contains a file, handshake.py
.
It makes TLS connections and prints out the certificate of the
server. It is invoked as follows:
$ python3 handshake.py example.com
where you replace example.com
with your host.
Open https.pcapng
. This file was generated using
handshake.py
.
As you go through this part, answer the following questions:
handshake.py
, what is the
purpose of /etc/ssl/certs
?ClientHello
and ServerHello
messages in
Part 2. What cipher suite is agreed upon between the client and
server?Now, open the Wireshark capture fail.pcapng
, and
take a look through the trace.
As you go through this part, answer the following question:
Open the Wireshark capture future.pcapng
, and take a
look through the trace.
As you go through this part, answer the following question:
After you complete the lab, answer the following questions:
Your repository for this lab should contain the following by the due date:
Only one submission per group is necessary. Blackboard is set up with randomly selected groups for this lab.