Projects

Systems I built, then tested as a target

Each project was designed, deployed, and then assessed end to end. The write ups cover the problem, the work, the measured result, and the controls that came out of it.

Application and cloud security

Secure AWS E-Commerce Platform

Built a production style AWS environment, then assessed it as a target across identity, network, host, and data controls.

Problem

Cloud environments are usually reviewed against a diagram rather than tested as a live target. I built the full stack first so I could assess real running infrastructure instead of intended architecture.

What I did

  • Deployed a scalable environment on EC2, ALB, Auto Scaling, RDS, S3, CloudFront, Route 53, and VPC networking, with WAF, ACM, KMS, security groups, and NACLs providing layered protection.
  • Reviewed IAM permissions, EC2 hardening, authentication boundaries, network controls, encryption, logging, and patching, and found exposed secrets, insecure file permissions, and firewall gaps.
  • Remediated with least privilege IAM, HTTPS and TLS, encryption at rest, CloudWatch, CloudTrail, and VPC Flow Logs, prioritizing fixes by exploitability, severity, and blast radius.
  • Documented full attack paths from exposed credentials and cloud misconfiguration through to privilege escalation and data exposure, each mapped to a remediation and a detection control.

Results

AWS services integrated
14AWS services integrated
IAM model enforced
Least privilegeIAM model enforced
Audit trail with CloudTrail and Flow Logs
FullAudit trail with CloudTrail and Flow Logs
  • AWS EC2
  • ALB
  • Auto Scaling
  • RDS
  • S3
  • CloudFront
  • Route 53
  • VPC
  • WAF
  • ACM
  • KMS
  • IAM
  • CloudWatch
  • CloudTrail

Threat modeling and detection

Secure Application Infrastructure and Security Monitoring

Segmented a two tier LAMP environment, threat modeled it with STRIDE and DREAD, and instrumented it with centralized log monitoring.

Problem

A working LAMP stack says nothing about whether an intrusion would be contained or even noticed. I set out to segment the tiers, model the threats formally, and prove the environment was observable at scale.

What I did

  • Architected a two tier LAMP environment across Ubuntu servers, separating web and database tiers running Apache, PHP, and MySQL.
  • Hardened access with least privilege RBAC and ACLs, restricted SSH, service specific UFW rules, and network segmentation that limits lateral movement between tiers.
  • Applied STRIDE threat modeling to classify 16 vulnerabilities across trust boundaries, then scored 12 threat scenarios with DREAD to prioritize remediation by risk.
  • Deployed centralized monitoring with Filebeat, Elasticsearch, and Kibana, ingesting over 17.4 million SSH and web events for real time investigation.

Results

Vulnerabilities classified with STRIDE
16Vulnerabilities classified with STRIDE
Threat scenarios scored with DREAD
12Threat scenarios scored with DREAD
Events indexed and searchable
17.4M+Events indexed and searchable
  • Ubuntu
  • Apache
  • PHP
  • MySQL
  • UFW
  • RBAC and ACLs
  • STRIDE
  • DREAD
  • Elasticsearch
  • Kibana
  • Filebeat