vlat273 cybersecurity

Võ Lê Anh Tuấn

Cybersecurity Ho Chi Minh City

I trace the attack path.

Cybersecurity student at Swinburne, and system administration and security at Got It. I moved through system administration and security into networks and SIEM, and now train toward offensive security — which means I read an attack path from both sides. Method first, evidence always, no inflated claims.

LinkedIn
Status
Open to internship
Focus
Offensive security
Foundation
Network · SIEM
Study
Swinburne · 2023–2027
guest@vlat273: ~

Tab completes · ↑ history · Ctrl+K fullscreen

01

Experience

Three internships and the degree running underneath them — each one a layer: the physical network, then the logs that describe it, then the operator who breaks it.

guest@vlat273:~$ cat experience.log

  1. current

    Got It

    System Administration & Security

    When my mentor moved on, I took over their remit: system administration, security and access control, and the users on top of them, in a live Microsoft 365 environment.

    Environment
    Microsoft 365 tenant · live users, no sandbox
    Owned
    System administration, security and access control, user accounts and ticket triage
    Output
    Working accounts and devices, hardened endpoints, resolved tickets
    • Microsoft 365
    • System administration
    • Security & access control
    • User support
  2. VNCS

    Security Consultant Intern

    Built and ran a distributed Splunk Enterprise lab — five log families onboarded and validated, then dashboards and alerts. Breakdown in case 001.

    Environment
    Distributed Splunk Enterprise — Deployment Server pushing config to universal forwarders across mixed hosts
    Owned
    Log onboarding, field extraction, time normalisation, dashboards, alerting
    Output
    Five log families in one searchable surface, plus POC documentation

    Takeaway Ingestion is the easy half. A log nobody validated is a log that will lie to you in the middle of an incident.

    • Splunk Enterprise
    • SPL
    • Log onboarding
    • Field extraction
    • Alerting
    • POC docs
  3. VNPRO

    Network Administrator Intern

    Ran multi-VLAN production segments and the training lab behind them — routing, firewalls, VPN, ESXi, EVE-NG — with the runbooks and backups that keep it recoverable. Alongside that, asked for and received written approval to assess an internal web application: case 003.

    Environment
    Multi-VLAN production segments and the training lab behind them
    Owned
    Routing and switching, firewall and VPN configuration, ESXi hosts, EVE-NG topologies
    Also
    Authorised web application security assessment and code remediation — see case 003
    Output
    Runbooks, backups, restores, lab availability, remediation report

    Takeaway Availability is a habit, not an event — a backup you have never restored from is just optimism with a timestamp.

    • VLAN
    • Cisco IOS
    • Firewall
    • VPN
    • VMware ESXi
    • EVE-NG
    • Web app security
  4. expected

    Swinburne University of Technology

    Bachelor of Computer Science — Cyber Security

    The degree runs underneath all three internships. Networking and routing first, then systems and security fundamentals, with the offensive side as the specialisation I am steering toward.

    Recognition
    Best in Performance Award — TNE20002 Network Routing Principles
    Studying
    Network routing, systems administration, security fundamentals
    • Swinburne
    • BCS Cyber Security
    • 2023–2027

02

Work

Five case files. Three expand on an internship above; two are new. Open one to see the evidence, not just the headline.

04case files
02verified professional record
01built and shipped
01still being built
001 Distributed Splunk & multi-source log onboarding One deployment, five log families, validated end to end — then dashboards and alerts someone would actually act on. SIEMSplunkCIMVerified record

From my VNCS internship — full role summary in Experience.

Stood up Splunk Enterprise as a distributed deployment — a Deployment Server pushing config to universal forwarders across mixed hosts — then brought several log families into one searchable surface: Windows Event Log, Sysmon, Linux syslog, web application logs and firewall/syslog feeds.

Onboarding the data was the bulk of it: field extraction written by hand in transforms.conf with regex where the shipped add-ons mis-parsed, custom sourcetypes for the feeds no add-on covered, and everything normalised against the Splunk Common Information Model so a field means the same thing no matter which host it came from.

Then the work that made it useful: confirming events actually arrived, correcting extraction where sourcetypes mis-parsed, normalising time before anything was trusted, and building the reports, dashboards and alerts — routed to email and chat — that somebody would actually act on.

Five log sources feed universal forwarders across mixed hosts. The forwarders send events to a distributed Splunk Enterprise deployment — indexer and search head — which produces dashboards, alerts, reports and POC documentation. A deployment server pushes app and configuration to the forwarders. SOURCES FORWARDING SPLUNK ENTERPRISE OUTPUT Deployment Server app + config push Windows Event Log Sysmon Linux syslog Web application Firewall / syslog Universal Forwarders mixed OS hosts Splunk Enterprise Indexer · Search Head parse · index · normalise time CIM · correlate across sources Dashboards Reports Alerts Email · chat

Scroll the diagram sideways to see all of it.

Five log families, one searchable surface. The Deployment Server is the control plane: pushing app and config from one place is what keeps parsing consistent across hosts nobody configured by hand. Everything lands normalised to the Common Information Model, so a field means the same thing on every host.
  1. Collect
  2. Parse
  3. Normalise
  4. Validate
Stack
Splunk Enterprise, Deployment Server, Forwarder Management, Universal Forwarders
Parsing
Hand-written transforms.conf extraction, regex, custom sourcetypes, Splunk CIM
Sources
Windows Event, Sysmon, Linux, Oracle, firewall
Output
Dashboards, reports, alerts routed to email and chat

What it demonstrates Detection is downstream of data quality. The onboarding work — sourcetypes, extraction, time — is what decides whether the alert fires on the right thing. Normalising to CIM is what makes a search written once keep working when the next log source lands.

003 Authorised web application assessment — and the fixes Reproduced, root-caused and remediated three vulnerabilities in a production PHP CMS — including one the original report missed. AppSecWebVerified record

From my VNPRO internship — full role summary in Experience.

I was interning on the network side, not in security. When an external bug hunter reported two serious flaws in an internal admin panel, I asked the company for permission to work on it, got approval, and only then started testing.

The first two were a SQL injection that bypassed admin login outright, and an HTTP verb tampering flaw that escalated privileges — the authorisation check was written against GET while the application read its parameters from $_REQUEST, so changing the request method walked straight past it. The third I found myself: the dashboard echoed the raw username back into the page instead of reading it from the database, which turned a logic mistake into a reflected XSS vector.

I also worked out that a far smaller payload than the original report used was enough to get in, and documented why — the login logic depended entirely on what the user typed, with nothing behind it.

  1. Reproduce
  2. Root cause
  3. Fix
  4. Re-test
Found
SQL injection (auth bypass) · HTTP verb tampering (privilege escalation) · reflected XSS
Fixed
Input sanitisation, removal of legacy default-password logic, explicit role checks, output encoding, method-pinned parameters, .htaccess hardening
Verified
Re-tested after deploying to production — 3 of 4 items closed, the remainder documented rather than dropped
Rule
Written authorisation before testing, sanitised before publishing

What it demonstrates That I can read the code that caused the flaw, not just run the tool that found it — and that I know to ask permission first.

004 This site — a terminal you can actually use No framework, no build step. A working virtual filesystem, tab completion, and a portrait drawn from 2,473 live glyph particles. Front endCanvasShipped

The page you are reading is itself the case study. There is no framework and no build step — it is plain HTML, one stylesheet, and hand-written JavaScript, which means it loads fast and there is nothing between you and the source.

The shell in the hero is real: a virtual filesystem with ls, cd, cat and tree, fish-style ghost completion on Tab, command history, and a fullscreen mode on Ctrl+K. The portrait above the fold is 2,473 individual glyphs on a canvas — hover it and they are pushed aside and spring back to their exact home position.

The portrait is a halftone: the artwork is decomposed into cells, one glyph per cell, tone carried by density rather than colour.

  1. Decompose
  2. Map
  3. Render
  4. Animate
Stack
Vanilla HTML, CSS and JavaScript — no framework, no bundler
Engine
Canvas 2D glyph field, positional particle model, fixed backing store
Detail
JSON-LD, OG/Twitter cards, manifest, self-hosted subset fonts, full no-JS fallback
Verify
View source — every line of it is right there

What it demonstrates Craft under constraint. Accessibility, no-JS resilience and performance were treated as requirements, not clean-up work.

005 Offensive security case files Where the CPTS work will live — enumeration, foothold, escalation, pivoting, and the report that ties it together. CPTSOffSecIn progress

Nothing goes up here that I cannot reproduce from an authorised lab. Every write-up is sanitised first — no flags, no credentials, no client data.

  1. Enumerate
  2. Foothold
  3. Escalate
  4. Report
Track
CPTS — Certified Penetration Testing Specialist
Rule
Authorised labs only, sanitised before publishing
Status
Building — first case files land as labs complete

What it demonstrates Discipline about what I put my name on. A case file with a flag in it is worth less than no case file at all.

03

Toolkit

Tools are secondary — thinking is the skill. But a capability without the tool that implements it is just a category, so every entry below names the tools and where I actually used them.

professional — used in a paid role lab — used in practice, not yet in production studying — actively learning

Offensive lab use

  • Enumeration Service discovery, banner analysis, content discovery — finding the surface before touching it
    • Nmap
    • ffuf
    • NetExec
  • Web testing Request and response inspection, logic flaws, authorisation boundaries
    • Burp Suite
    • ffuf
  • Active Directory Trust relationships, credential exposure, delegation, attack-path mapping
    • BloodHound
    • NetExec
    • Impacket
    • Kerbrute
  • Post-exploitation Privilege escalation, pivoting and tunnelling, maintaining a clean trail of evidence
    • Impacket
    • NetExec
    • BloodHound
  • Reporting Reproducible steps, honest impact, severity that survives a second opinion
    • Markdown
    • Evidence discipline
  • Remediation Ordering fixes by what actually reduces risk, not by what is easiest to fix
    • Prioritisation
    • Defensive mapping

Foundations professional

  • Networking VLAN design, routing and switching, firewall policy, VPN, wireless
    • Cisco IOS
    • VLAN
    • Firewall
    • VPN
  • SIEM & detection Splunk Enterprise, SPL, Deployment Server, universal forwarders, dashboards, alerting
    • Splunk Enterprise
    • SPL
    • Sysmon
  • Systems Linux and Windows administration, virtualisation, lab topology building
    • Linux
    • Windows Server
    • VMware ESXi
    • EVE-NG
  • Identity & cloud Microsoft 365 administration — accounts, access control and the security around them
    • Microsoft 365
    • Access control
  • Scripting Enough automation to stop repeating myself, and to read someone else's script before running it
    • Bash
    • PowerShell
    • Python
  • Practice Documentation, backups and restores, troubleshooting when the clock is running
    • Runbooks
    • Change notes

Certification track

  • CPTSCertified Penetration Testing Specialist · OffSecin progress
  • No certification claimedIf it is not held, it is not on this page. That is the rule.by policy

Currently studying

  • Active Directory attack pathsDelegation, trust abuse, credential exposuredeepest focus
  • Web application securityAuthorisation logic, server-side flaws, request smugglingongoing
  • Detection engineeringTurning log sources into alerts worth waking up forongoing

Working set

  • Nmap
  • ffuf
  • Burp Suite
  • NetExec
  • BloodHound
  • Impacket
  • Kerbrute
  • Wireshark
  • SPL
  • Bash
  • PowerShell
  • Python
  • Linux
  • Windows Server
  • Cisco IOS
  • VMware ESXi
  • EVE-NG
  • Microsoft 365

04

Let’s exchange signals.

Open to internship and junior roles in security operations, SOC or offensive security — and to lab collaboration with people who take notes.

Authorised labs only Responsible disclosure No unverified claims