Become a Digital Detective: Using Wireshark to Find Hidden Data

Published on

Using Wireshark to Find Hidden Data

Using Wireshark to Find Hidden Data


Last Updated: August 2025 | Reading Time: 15 minutes


Table of Contents

Introduction

Every time you visit a website, send an email, or play an online game, your computer is having a constant, complex conversation. It sends and receives thousands of tiny digital “packets” of information across the internet. Most of us never see this conversation; we only see the final result—the rendered webpage or the delivered message.

But what if you could eavesdrop on that conversation? What if you could inspect every single packet to see exactly what’s being said?

This is the job of a network analyst, and their most essential tool is Wireshark. For players of Venatus, mastering this tool is the key to conquering advanced challenges like Level 9: The Eavesdropper. It might seem intimidating, but Wireshark is a free, powerful, and surprisingly accessible piece of software that can turn you into a true digital detective.

This comprehensive guide will walk you through everything from basic packet capture analysis to advanced network forensics techniques, making you proficient in one of cybersecurity’s most valuable tools.

What is Wireshark?

Wireshark is the world’s foremost network protocol analyzer and packet capture tool. Originally known as Ethereal, it was renamed to Wireshark in 2006 and has since become the gold standard for network analysis across industries.

Key Features

FeatureDescriptionUse Case
Protocol AnalysisUnderstands 3000+ network protocolsAnalyzing any network communication
Live CaptureReal-time packet monitoringNetwork troubleshooting
Deep InspectionExamines packet contents at byte levelSecurity analysis, forensics
Filtering SystemPowerful display and capture filtersFinding specific traffic patterns
Cross-PlatformWindows, macOS, Linux supportUniversal deployment
Open SourceFree and community-drivenCost-effective solution

Who Uses Wireshark?

You can download it for free for Windows, macOS, and Linux from wireshark.org.

Installing Wireshark: Step-by-Step Guide

Windows Installation

  1. Download the Windows installer from wireshark.org/download.html
  2. Run the installer as administrator
  3. Accept the license agreement
  4. Important: Select “Install Npcap” when prompted (required for packet capture)
  5. Complete the installation wizard
  6. Restart your computer if prompted

macOS Installation

  1. Download the macOS disk image (.dmg) file
  2. Mount the disk image and drag Wireshark to Applications
  3. Install ChmodBPF (included) for packet capture permissions
  4. Grant necessary permissions in System Preferences > Security & Privacy

Linux Installation

# Ubuntu/Debian
sudo apt update
sudo apt install wireshark

# Add user to wireshark group (recommended)
sudo usermod -aG wireshark $USER

# CentOS/RHEL/Fedora
sudo yum install wireshark
# or
sudo dnf install wireshark

Understanding the Wireshark Interface

Before diving into analysis, let’s understand Wireshark’s main interface components:

Main Window Components

ComponentLocationPurpose
Menu BarTopAccess to all Wireshark functions
Main ToolbarBelow menuQuick access to common actions
Filter ToolbarBelow main toolbarApply display filters
Packet List PaneUpper thirdShows captured packets in chronological order
Packet Details PaneMiddle thirdHierarchical breakdown of selected packet
Packet Bytes PaneLower thirdRaw hexadecimal and ASCII data
Status BarBottomShows capture statistics and filter status

Color Coding System

Wireshark uses colors to quickly identify packet types:

Your First Case: Opening the Capture File

Using Wireshark

In challenges like Level 9, you are given a pre-recorded network capture file, usually with a .pcap or .pcapng extension. This is a log of all the packets that were captured during a specific period.

Your first step is simple:

  1. Launch Wireshark.
  2. Go to File > Open.
  3. Select the .pcapng file from the level.

You will be immediately presented with the main Wireshark interface, and it can be overwhelming. You’ll see a list of potentially thousands of packets, a rainbow of colors, and a mess of technical details.

This is the haystack. Now, we need to find the needle.

Initial Analysis Steps

Once your file is loaded, follow this systematic approach:

  1. Check the capture duration: Look at the status bar for total packets and time span
  2. Scan for obvious anomalies: Unusual protocols, excessive traffic, or error messages
  3. Review the protocol hierarchy: Go to Statistics > Protocol Hierarchy for an overview
  4. Identify key endpoints: Use Statistics > Endpoints to see active IP addresses

The Analyst’s Best Friend: Display Filters

Scrolling through thousands of packets is impossible. The key to using Wireshark effectively is to tell it what you don’t want to see. This is done using the Display Filter bar, which is the long entry box at the top of the main window.

By typing a filter, you can instantly hide all the “noise” and focus only on the packets that are relevant to your investigation. Here are some of the most useful filters for steganographic analysis:

Basic Filter Syntax

Wireshark filters follow a logical syntax pattern:

[protocol].[field] [operator] [value]

Common Operators:

Filtering by Protocol

Using Wireshark

This is the most common first step. If you suspect a secret is being hidden in a specific type of traffic, you can filter for it directly.

http: Shows only unencrypted web traffic. Useful for seeing which files (like images or scripts) a user has requested.

dns: Shows only Domain Name System traffic. This is extremely useful for spotting “DNS tunneling,” where data is hidden in the subdomains of the websites being looked up. If you see hundreds of strange requests like 48656c6c6f.attacker.com, that’s a huge red flag.

icmp: This is the key to solving Level 9. It shows only ICMP traffic, which is primarily used by the ping command. A normal network might have a few pings, but a long, steady stream of them is highly suspicious and suggests a covert channel might be in use.

How to use it: Simply type icmp into the filter bar and press Enter. The packet list will instantly update to show only the ping-related packets.

Filtering by IP Address

If you know the sender or receiver you’re interested in, you can filter for their IP address.

ip.addr == 8.8.8.8: Shows all packets going to OR from the IP address 8.8.8.8.

ip.src == 192.168.1.100: Shows only packets sent from your local machine.

ip.dst == 1.1.1.1: Shows only packets sent to the Cloudflare DNS server.

You can also combine filters using logical operators like && (and), || (or), and ! (not).

icmp && ip.dst == 8.8.8.8: Shows only the ping packets that were sent to 8.8.8.8.

Advanced Filter Combinations

Master these powerful filter combinations for complex analysis:

# Find large packets (potential data exfiltration)
frame.len > 1000

# HTTP POST requests (potential data uploads)
http.request.method == "POST"

# Failed connections
tcp.flags.reset == 1

# Encrypted traffic to specific port
tcp.port == 443 && ssl

# Suspicious DNS queries (potential tunneling)
dns.qry.name contains "."

Essential Wireshark Filters Cheat Sheet

Protocol Filters

FilterPurposeExample Use Case
tcpTCP traffic onlyWeb browsing, file transfers
udpUDP traffic onlyDNS, DHCP, streaming
httpHTTP trafficWeb requests and responses
https or tlsEncrypted web trafficSecure communications
dnsDNS queries and responsesDomain name resolution
dhcpDHCP trafficIP address assignment
arpAddress Resolution ProtocolLocal network mapping
icmpPing and error messagesNetwork diagnostics

Address and Port Filters

FilterPurposeExample
ip.addr == x.x.x.xTraffic to/from IPip.addr == 192.168.1.1
ip.src == x.x.x.xTraffic from IPip.src == 10.0.0.1
ip.dst == x.x.x.xTraffic to IPip.dst == 8.8.8.8
tcp.port == xTCP traffic on porttcp.port == 80
udp.port == xUDP traffic on portudp.port == 53
net x.x.x.x/yTraffic from subnetnet 192.168.0.0/24

Content Filters

FilterPurposeExample
frame contains "string"Packets containing textframe contains "password"
http.request.uri contains "string"URLs containing texthttp.request.uri contains "admin"
dns.qry.name contains "string"DNS queries containing textdns.qry.name contains "malware"

Logical Operators

OperatorPurposeExample
&& or andBoth conditions truetcp && ip.addr == 1.1.1.1
|| or orEither condition truetcp.port == 80 or tcp.port == 443
! or notCondition false!dns
()Group conditions(tcp.port == 80) && (ip.addr == 1.1.1.1)

Inspecting the Payloads

Using Wireshark

Once you have filtered the traffic down to a manageable number of suspicious packets, the final step is to look inside them.

  1. Select a Packet: Click on a packet in the top pane.
  2. View the Details: The middle pane will now show you a detailed breakdown of that packet’s structure, from the Ethernet frame all the way up to the application data.
  3. Find the Data: For a protocol like ICMP, you’ll want to expand the “Internet Control Message Protocol” section. Inside, you will find the data payload.

In a normal ping, this data is just gibberish—a repeating sequence of letters. But in a steganographic message, this is where the secret is hidden. By clicking through the filtered packets one by one and examining the data payload of each, you can extract the hidden message, character by character.

Payload Analysis Techniques

1. Hexadecimal Analysis

Raw bytes: 48 65 6c 6c 6f 20 57 6f 72 6c 64
ASCII:     H  e  l  l  o     W  o  r  l  d

2. ASCII String Extraction

3. Binary Pattern Recognition

Network Protocol Deep Dive

HTTP/HTTPS Analysis

HTTP traffic analysis is crucial for web application security and forensics.

Key HTTP Headers to Monitor

HeaderSecurity RelevanceFilter
User-AgentClient identification, potential malware signatureshttp.user_agent contains "bot"
AuthorizationAuthentication credentialshttp.authorization
CookieSession managementhttp.cookie
RefererTraffic source trackinghttp.referer

Common HTTP Analysis Patterns

# Find all HTTP POST requests
http.request.method == "POST"

# Locate file uploads
http.content_type contains "multipart/form-data"

# Identify potential data exfiltration
http.request.method == "POST" && frame.len > 2000

# Find authentication attempts
http.request.uri contains "login"

DNS Traffic Investigation

DNS analysis is essential for detecting malicious domains and data exfiltration.

DNS Query Types

TypeRecordPurposeFilter
AIPv4 addressDomain to IP mappingdns.qry.type == 1
AAAAIPv6 addressIPv6 domain mappingdns.qry.type == 28
MXMail exchangeEmail routingdns.qry.type == 15
TXTText recordsVarious purposes, often misuseddns.qry.type == 16

Detecting DNS Tunneling

# Unusually long DNS queries (potential data exfiltration)
dns.qry.name and frame.len > 100

# Multiple subdomains (suspicious pattern)
dns.qry.name contains "." and dns.qry.name contains "."

# TXT record abuse
dns.resp.type == 16 && frame.len > 200

TCP Stream Analysis

TCP streams allow you to reconstruct entire conversations between endpoints.

Following TCP Streams

  1. Right-click any TCP packet
  2. Select “Follow” → “TCP Stream”
  3. View the complete conversation in a new window
  4. Use different view modes:
    • ASCII: Human-readable text
    • EBCDIC: IBM mainframe encoding
    • Hex Dump: Raw hexadecimal
    • C Arrays: Programming format
    • Raw: Binary data

ICMP Covert Channels

ICMP protocols are frequently abused for covert communication and data exfiltration.

Normal vs. Suspicious ICMP Traffic

Normal ICMP Characteristics:

Suspicious ICMP Patterns:

# High frequency ICMP traffic
icmp && frame.time_delta < 0.1

# Unusual payload sizes
icmp && frame.len > 100

# Non-standard ICMP types
icmp.type != 0 && icmp.type != 8

# ICMP with custom data
icmp.data && icmp.data != "abcdefghijklmnopqrstuvwxyz"

Advanced Wireshark Techniques

Statistics and Reports

Wireshark provides powerful statistical analysis tools accessible via the Statistics menu:

Protocol Hierarchy

Conversations

Endpoints

I/O Graphs

# Create custom graphs for:
# - Bandwidth utilization over time
# - Packet rates per protocol
# - Error rates and retransmissions

Packet Reconstruction

Reconstructing Files from HTTP Traffic

  1. Filter for HTTP traffic: http
  2. Find file download/upload requests
  3. Use “Export Objects” → “HTTP” to save files
  4. Analyze extracted files for malicious content

Email Reconstruction

# Find email protocols
smtp || pop || imap

# Extract email content
# Use "Follow TCP Stream" on SMTP traffic

Time-based Analysis

Analyzing Traffic Patterns

# Traffic during specific time window
frame.time >= "2025-08-29 10:00:00" && frame.time <= "2025-08-29 11:00:00"

# Find rapid-fire requests (potential attack)
tcp.time_delta < 0.01 && tcp.len > 0

# Identify time-based covert channels
icmp && frame.time_delta > 60

Real-World Use Cases

1. Malware Analysis

Scenario: Suspected malware infection on corporate network

Approach:

# Find DNS requests to suspicious domains
dns && !dns.response_in

# Identify command and control traffic
tcp.flags.syn == 1 && tcp.flags.ack == 0

# Look for data exfiltration
frame.len > 1500 && tcp.port != 80 && tcp.port != 443

2. Data Breach Investigation

Scenario: Investigating potential data theft

Key Filters:

3. Network Performance Issues

Scenario: Users reporting slow internet

Diagnostic Filters:

# Find retransmissions (network issues)
tcp.analysis.retransmission

# Identify duplicate ACKs
tcp.analysis.duplicate_ack

# Look for connection resets
tcp.flags.reset == 1
ConsiderationRequirementBest Practice
AuthorizationWritten permission for network monitoringDocument all approvals
Data PrivacyCompliance with GDPR, CCPA, local lawsMinimize data collection
Employee RightsWorkplace monitoring policiesClear notification policies
Incident ResponseLegal hold requirementsChain of custody procedures

Ethical Guidelines

Troubleshooting Common Issues

Capture Problems

ProblemCauseSolution
No packets capturedInsufficient permissionsRun as administrator/sudo
Missing trafficWrong interface selectedSelect correct network interface
Encrypted traffic unreadableTLS/SSL encryptionObtain private keys or use endpoint monitoring
Large files slow performanceToo many packetsUse capture filters to limit data

Performance Optimization

# Capture filters (applied during capture)
host 192.168.1.100          # Specific host only
port 80 or port 443         # Web traffic only
not broadcast and not multicast  # Reduce noise

# Display filters for large files
tcp.stream eq 1             # Focus on single stream
frame.number > 1000 and frame.number < 2000  # Specific range

Wireshark Alternatives and Complementary Tools

Network Analysis Alternatives

ToolPlatformBest ForCost
tcpdumpLinux/UnixCommand-line captureFree
TsharkCross-platformAutomated analysisFree (part of Wireshark)
NetworkMinerWindowsForensic analysisFree/Professional
SolarWinds NPMWindowsEnterprise monitoringCommercial
PRTGWindowsNetwork monitoringCommercial

Complementary Security Tools

Frequently Asked Questions

What is a .pcap file?

A .pcap (Packet Capture) or .pcapng (Packet Capture Next Generation) file is a network capture file that stores a log of network packets. These files contain the raw network data that can be analyzed using tools like Wireshark to inspect network traffic, troubleshoot issues, or investigate security incidents.

Do I need to be connected to the internet to use Wireshark?

No, you can analyze pre-recorded .pcap or .pcapng files offline. However, capturing live network traffic requires an active network connection. Wireshark can work in two modes:

Why are some packets different colors in Wireshark?

Wireshark uses color coding to highlight different types of packets or issues. The default color scheme includes:

You can customize colors via View → Coloring Rules.

Can I use Wireshark on any operating system?

Yes, Wireshark is available for Windows, macOS, and Linux, and it functions similarly across all platforms. However, packet capture capabilities may require additional permissions or software:

How do I know which protocol to filter for?

Look for clues in the challenge description or game hints. For example, Level 9 of Venatus emphasizes ICMP traffic, so filtering for icmp is a good starting point. If no clues are provided, try this systematic approach:

  1. Start with Statistics → Protocol Hierarchy for overview
  2. Filter common protocols: http, dns, icmp
  3. Look for unusual traffic patterns or high packet counts
  4. Focus on protocols relevant to your investigation goal

Can Wireshark decrypt encrypted traffic?

Wireshark can decrypt certain types of encrypted traffic if you have the necessary keys:

However, modern encryption (TLS 1.3, perfect forward secrecy) is generally not decryptable without endpoint access.

How large can capture files get?

Capture files can become extremely large on busy networks:

Wireshark itself is completely legal. However, its use must comply with:

What’s the difference between capture and display filters?

AspectCapture FiltersDisplay Filters
When AppliedDuring captureAfter capture
SyntaxBerkeley Packet Filter (BPF)Wireshark-specific
PurposeReduce captured dataHide/show captured data
PerformanceAffects capture speedAffects display speed
Examplehost 192.168.1.1ip.addr == 192.168.1.1

Practice Exercises

Beginner Level

  1. Basic Protocol Identification

    • Open any capture file
    • Filter for HTTP traffic
    • Count how many different websites were visited
  2. Simple IP Analysis

    • Identify the top 3 IP addresses by packet count
    • Use Statistics → Endpoints → IPv4

Intermediate Level

  1. DNS Investigation

    • Filter for DNS traffic
    • Look for queries to suspicious domains
    • Identify any failed DNS resolutions
  2. HTTP Stream Analysis

    • Find HTTP POST requests
    • Follow the TCP stream to see full conversation
    • Look for sensitive data in clear text

Advanced Level

  1. Covert Channel Detection

    • Look for ICMP traffic with unusual payloads
    • Create time-based graphs to identify patterns
    • Extract hidden messages from packet data
  2. Malware Communication Analysis

    • Identify command and control traffic patterns
    • Look for Base64 encoded data
    • Analyze DNS tunneling attempts

References and Further Reading

Official Documentation

Essential Books

Training and Certification

Online Resources

Academic and Research Papers

Protocol Standards (RFCs)

Security Research Organizations

Wireshark transforms the invisible, chaotic flow of the internet into a structured, searchable log of evidence. Learning to use its filters is like learning to ask the right questions—it’s the fundamental skill of any digital detective.


Ready to start your journey as a digital detective? Download Wireshark today and begin exploring the hidden conversations happening all around us in cyberspace.