I build security tools — and the interfaces that make their findings readable.

Most recently on Massar (APHE), an exposure-based attack-path engine.

attack path · metasploitable 2
60.2 rank 1 · 3 CVEs
5Dashboard pages shipped
89Attack chains ranked
734Tests green in the suite
AR / ENBilingual interface, full RTL

Figures come from Massar (APHE), the project below — not from this page.

01

About

A scanner hands you 431 findings. That’s data, not an answer.

Finding the exposure is half the job.

On Massar (APHE) I own the dashboard.

I care about interfaces that tell the truth.

Focus

Security engineering · interface & front-end

Project

Massar (APHE) — KAUST cybersecurity capstone

Stack

Python · Streamlit · HTML/CSS/JS · pytest

Languages

Arabic (native) · English (professional)

Based in

Saudi Arabia

Open to

Roles, collaborations, open source

02

Skills

Four areas, each backed by work that shipped.

Security engineering

Attack-path analysis, exposure assessment, and vulnerability data end to end.

  • nmap
  • NVD
  • CVE / CPE
  • KEV
  • attack graphs
Product engineering

Python that keeps decision logic pure and testable.

  • Python 3.11
  • Streamlit
  • pytest
  • ruff
  • GitHub Actions
Interface & design systems

Design tokens, two themes across an entire application.

  • HTML
  • CSS
  • JavaScript
  • design tokens
  • theming
Accessibility & Arabic

Contrast and focus that survive both themes, plus a full Arabic RTL interface.

  • WCAG
  • RTL
  • i18n
  • ARIA
  • keyboard nav
03

Work

One project in depth beats five in a list.

~/massar/dashboard Flagship

Massar — Attack Path Hypothesis Engine

An exposure-based engine that ranks attacker chains deterministically.

My part

  • The light theme, carried across every surface.
  • The front door: a real first screen for the app.
  • The accessibility mark, rendered correctly in both themes.
  • Brand and navigation row, and settings that apply without reloading.
  • Test work in the vulnerability layer.
89attack chains
431findings
5,745graph edges
0.7soffline run

Figures are the Metasploitable 2 offline replay reported in the project README.

View on GitHub
  • Python
  • Streamlit
  • CSS
  • pytest
  • nmap
  • NVD
Also

This site

One self-contained HTML file — no build step, no framework.

  • HTML
  • CSS
  • vanilla JS
  • i18n
  • RTL
Next

Your next project goes here

A slot ready for the next thing — a CTF writeup, a tool, a lab.

04

How I work

Three rules I don’t bend.

Learned the expensive way.

01

Show the arithmetic

A number on screen with no visible breakdown is just an assertion.

02

The door and the room share a name

If the tab reads Host map, the page it opens reads Host map.

03

Look for the computable answer first

Before a language model gets to write anything, ask the data.

05

Journey

Where I’ve been, and where I’m going.

2026 — present

Massar (APHE) — KAUST cybersecurity capstone

Dashboard and interface owner on a five-person team.

add a year

Your degree or programme goes here

Open index.html and replace this text.

next

A certification, an internship, a CTF placing

Anything that proves motion.

06

Contact

Let’s build something, or just talk shop.

Every message reaches me directly.