Lessons Learned
Executive Summary
This page documents the main lessons I learned while building and using my home lab.
The biggest takeaway is that a useful cybersecurity lab does not need to be large or overly complex. A small, segmented environment with pfSense, VMware Workstation, and a few focused virtual machines is enough to practice realistic offensive, defensive, and investigative workflows.
What I Built
I built a small virtual lab with:
| Component | Purpose |
|---|---|
| VMware Workstation | Hosted the lab systems |
| pfSense VM | Routed and filtered traffic between lab networks |
| Kali VM | Generated controlled test activity |
| Windows Client VM | Practiced endpoint triage and persistence investigation |
| Linux Server VM | Practiced service and network testing |
| Web App VM | Practiced web attack simulation |
| Analysis / Logging VM | Reviewed logs, captures, and evidence |
Architecture Lessons
I originally considered a more complex design, but I simplified it to three internal networks:
| Network | Purpose |
|---|---|
| Attack Network | Testing system and offensive tooling |
| Lab LAN | Windows, Linux, and web targets |
| Logging Network | Analysis, packet capture, and evidence review |
This was a better design because it was easier to build, easier to troubleshoot, and still realistic enough to demonstrate segmentation.
pfSense Lessons
Using pfSense as a VM gave me practical experience with:
- Interface assignment.
- DHCP and DNS configuration.
- Firewall rules.
- Network segmentation.
- Allowed and blocked traffic review.
- Log validation.
- Packet capture from a network boundary.
The most useful part was forcing traffic between lab networks to pass through pfSense. This gave me a clear place to control and observe traffic.
VMware Lessons
VMware networking was one of the most important parts of the lab.
I learned that clear VMnet mapping prevents confusion:
| VMware Network | Purpose |
|---|---|
| VMnet20 | Attack Network |
| VMnet30 | Lab LAN |
| VMnet50 | Logging Network |
Keeping the network layout simple made troubleshooting much easier.
Windows Triage Lessons
The Windows live triage lab reinforced that process names alone are not enough.
The most useful evidence came from:
- Process command lines.
- Parent-child process relationships.
- Executable paths.
- Active network connections.
- DNS cache entries.
- File hashes.
- pfSense validation.
The biggest lesson was that endpoint evidence becomes much stronger when it is correlated with network evidence.
Persistence Investigation Lessons
The persistence investigation lab helped me understand how many persistence mechanisms are visible through built-in Windows tools.
The most useful areas to review were:
| Area | Why It Was Useful |
|---|---|
| Services | Showed auto-starting executables and service paths |
| Registry Run keys | Showed logon/startup autoruns |
| Local users | Helped identify unauthorized accounts |
| Administrators group | Helped identify privilege persistence |
| Scheduled tasks | Revealed timed or event-based execution |
| Event logs | Helped support the timeline |
| Baseline comparison | Made suspicious changes easier to find |
I learned that persistence investigation should focus on both the mechanism and the payload.
Network Investigation Lessons
The network traffic lab reinforced the importance of correlation.
The most effective workflow was:
| Step | Action |
|---|---|
| 1 | Identify endpoint connection |
| 2 | Map connection to process |
| 3 | Check DNS cache or DNS logs |
| 4 | Validate traffic in pfSense |
| 5 | Review packet capture if needed |
| 6 | Check server-side logs |
| 7 | Document timeline and findings |
pfSense logs were useful, but they were much more valuable when combined with endpoint and application logs.
Password Security Lessons
The password security lab reinforced that password length and predictability matter more than simple complexity.
The key lessons were:
- Short passwords are weak even with symbols.
- Predictable patterns are easy to test.
- Unsalted hashes are weaker against large-scale cracking.
- Long passphrases are stronger than short complex passwords.
- MFA reduces the impact of password compromise.
- Defenders should focus on preventing credential theft, not only improving password rules.
Web Testing Lessons
The web attack simulation lab helped me connect application testing with defensive evidence.
The strongest documentation came from correlating:
| Evidence Source | Value |
|---|---|
| Burp request | Showed exact input sent |
| Burp response | Showed application behavior |
| Web access log | Confirmed server-side request |
| Web error log | Captured application errors |
| pfSense log | Confirmed network path |
| Packet capture | Preserved traffic details when needed |
The main lesson was that a finding is stronger when I can show the request, response, server-side evidence, and network evidence together.
Documentation Lessons
Writing the lab as a first-person portfolio project made it more useful.
The structure that worked best was:
| Section | Purpose |
|---|---|
| Objective | What I wanted to practice |
| Environment | What systems I used |
| Scenario | What I simulated |
| Actions Taken | What I did |
| Evidence Collected | What artifacts I gathered |
| Findings | What I observed |
| Detection Opportunities | What could be monitored |
| Lessons Learned | What I improved |
| Skills Demonstrated | What practical ability the lab shows |
This format keeps the write-ups practical and evidence-driven.
What Worked Well
The strongest parts of the lab were:
- Simple network segmentation.
- pfSense as the central control point.
- VMware snapshots.
- Windows triage with PowerShell.
- Correlating endpoint and network logs.
- Using local web targets for safe testing.
- Keeping test data separate from personal data.
- Writing each lab as a practical investigation.
What I Would Improve Next
Future improvements:
- Add centralized Windows log forwarding.
- Add Sysmon to the Windows Client VM.
- Add a lightweight SIEM or log platform.
- Create repeatable attack simulation scripts.
- Add a vulnerable Active Directory environment.
- Build a dedicated malware-analysis-only network if needed.
- Create detection rules from observed behavior.
- Add screenshots and packet captures to each write-up.
Skills Demonstrated
This home lab demonstrates practical skills in:
- Lab architecture design.
- VMware networking.
- pfSense firewall administration.
- Network segmentation.
- Windows endpoint triage.
- Persistence investigation.
- Network traffic analysis.
- Password security testing.
- Web application testing.
- Log correlation.
- Evidence collection.
- Detection thinking.
- Technical documentation.
Final Reflection
The most important lesson from this lab is that practical cybersecurity skills come from repetition.
By building a small environment, simulating activity, collecting evidence, and writing down what I observed, I created a workflow that I can reuse and improve over time.
This lab gives me a safe place to practice both sides of security: how suspicious activity appears, and how to investigate and detect it.