OPEN LIVE ↗
ICT student at Mahidol University (Network Security) building real, running security systems — network intrusion monitoring, AWS threat detection with automated response, and packet-level analysis. Everything below is deployed, measured, and honest.
OPEN LIVE ↗
WATCH DEMO ↗
ESP32-C6 Wi-Fi RSSI as a physical-presence sensor over MQTT/TLS — WPA3-SAE, ACLs, OSPF failover validated in Wireshark.
OPEN LIVE ↗
Redundant server-room core in Cisco Packet Tracer — two /30 links running OSPF area 0, an extended ACL filtering ICMP while HTTP stays reachable, then the primary link cut mid-traffic to prove reconvergence.
VIEW CODE ↗
Infrastructure-as-Code provisioning a hardened AWS network foundation — VPC, public subnet, internet gateway and route table, with SSH ingress locked to a single /32 instead of the world. Split into network, security-group and compute modules.
VIEW CODE ↗
Bash tooling that audits a Linux server against CIS Benchmark controls and reports pass/fail per check — disabling direct root login, enforcing key-based SSH, and bringing the host firewall under an explicit zone.
VIEW CODE ↗
Static security analysis of the PRJ-004 Terraform code — enforced IMDSv2, encrypted the EBS root volume, scoped egress to 80/443, locked the default security group, and disabled public-IP auto-assign. The four remaining findings are documented with the reasoning for accepting each.
VIEW CODE ↗
GitHub Actions workflow that runs terraform fmt -check and validate on every push and pull request, then gates a Checkov scan behind validation passing. A broken config fails fast instead of burning a full security scan — closing the loop from PRJ-004 and PRJ-006 into enforcement.
VIEW CODE ↗
Full-stack inventory system built by a five-person university team on Node/Express/MySQL. I owned the front end and UX — designing the layouts in Figma, building the storefront and admin pages, and wiring reCAPTCHA v2 into the login flow including token reset on validation errors.
READ REVIEW ↗
A security review of the front-end code from PRJ-008, done after submission on code I wrote myself. Found stored XSS across three product-rendering files by manual OWASP review — neither npm audit nor eslint-plugin-security caught it — and fixed it with output escaping. Cleared 9 dependency vulnerabilities, triaged 4 scanner warnings as false positives, and reported an out-of-scope back-end issue to the team.