Penetration › Module 4 › Lesson 2
Versioning
Version probes identify software builds — fingerprint $LAB_HOST services, then read advisories; no stranger targeting.
Visual · pentest_versioning
Versioning literacy. $LAB_HOST only. Original Cyberlium.
Opening
Version strings feed advisory lookup — not exploit spray on neighbors.
Version detection (-sV, banner grabs, manual headers) maps services to specific software builds. Pentesters use versions to search CVE databases and vendor advisories — on scoped findings only. Weaponizing every match against strangers is misuse; reading NVD entries to plan lab validation is literacy. Cyberlium teaches versioning on $LAB_HOST services you discover under RoE. You will NOT run public exploit scripts against café routers because a banner appeared. Next: Notes Discipline.
1. Banners and probes
nmap -sV, curl -I, openssl s_client, and app-specific probes reveal Apache 2.4.x, OpenSSH 8.x, etc. Record exact strings in notes — they drive advisory searches later.
Version probes are active recon on $LAB_HOST only. Fingerprinting stranger infrastructure from Shodan is not lab work.
Command guide
Try these commands — Banners and probes
═══ TOOLS & WEBSITES ═══ Browse / read these (authorized learning only — stay in YOUR lab / program scope)
Banner matching — searchsploit after -sV on YOUR lab Exploit-DB — https://www.exploit-db.com/
═══ INSTALL ═══
Linux (Debian/Ubuntu):
Command — copy this
sudo apt install nmap sudo apt install exploitdb
macOS:
Command — copy this
brew install nmap
Prefer Kali: searchsploit
Windows:
Command — copy this
choco install nmap # or download https://nmap.org/download.html
Use Kali VM — searchsploit from exploitdb
═══ LINUX / macOS ═══
Command — copy this
source "$HOME/cyberlium-lab/t19-lab.env" nmap -sV --top-ports 30 "$LAB_HOST" | tee "$HOME/cyberlium-lab/t19-svc.txt" | head -25 searchsploit apache 2.4 | head -10
Primary tools to practice this lesson: nmap, searchsploit. Reference sites: Banner matching; Exploit-DB (https://www.exploit-db.com/). Run every command in the box — install first, then the usage lines — only on YOUR lab / program scope.
2. Versions link to advisories — not instant exploit
Analyst workflow: version → CVE/advisory search → applicability check → planned validation on lab. Skipping applicability (wrong OS patch level, backported fixes) creates false positives and reckless exploit attempts.
searchsploit and NVD are reading tools here — not licenses to hit classmates.
3. False precision and manual verification
Automated version detection guesses wrong sometimes. Cross-check with package lists on $LAB_HOST if you have lab shell access, or manual page review.
Ship: version column added to service table for $LAB_HOST. Next: Notes Discipline.
4. What you ship: version column in service table
Add version/banner column. $LAB_HOST only. Link to advisory read — not stranger exploit. chmod 600.
5. What you record before the next lesson
Date. Version column defined. $LAB_HOST services. File t19-m04-l02-versioning.txt chmod 600.
6. Wrong vs right: stranger nets vs YOUR lab VMs
Worked failure — same MSF word, opposite target. Right never needs a café Wi-Fi or classmate laptop.
Wrong
Exploit every CVE match on dorm hosts. Trust -sV blindly without applicability check.
Right
Add versioning column for $LAB_HOST table. Next: Notes Discipline.
Mission: extend service table with versions
1) Add version/banner column to service table. 2) Note advisory lookup as next step — not instant exploit. 3) chmod 600. Never version-probe strangers.
Stuck? Ask Cyberlium AI Mentor
Version without applicability check is how students break lab VMs and stranger trust.
Knowledge Check
APPLY: Version detection on Cyberlium applies to:
Multiple choice
Knowledge Check
APPLY: True or False: CVE match automatically means safe to exploit any host.
True or False
Knowledge Check
APPLY: After finding a version on $LAB_HOST, next literacy step is:
Multiple choice