Issue 01Wisnu Rafi // Systems Engineer & Offensive Security Engineer
01

Cold open

I break iton purposethen explain why

Systems software by day, offensive security on contract. I live in crash dumps, disassembly, and traffic that does not add up. If your system does something it swears it cannot, that is my favorite kind of ticket.

02
The one they call when source code lies.
03SEGFAULT.

Most people see a crash. I see a map.

04

Got something that should not be possible?

CH.01

Origin story

I build the thing, then I hunt for how it breaks.

01

Narration

I do not chase the happy path. I want the crash dump, the malformed packet, the branch nobody tested, the one box where everything falls over. That is where the truth lives.

02

The loop

  1. 1 / Catch the failure
  2. 2 / Shrink the repro
  3. 3 / Trace the boundary
  4. 4 / Write the fix path
Origin: curiosity that wouldn't quit.
03

How I actually work

My day moves between systems code, desktop engineering, reverse engineering, and offensive work. No mysticism. I look at what is really happening, cut it down to a case that fires every time, then write the fix notes I would want handed to me.

04

House rules

A bug is not real until I reproduce it twice.
A finding is not done until the fix is obvious.
No source code? The behavior still leaves prints.
CH.02

Recurring panels

The situations I keep getting pulled into.

01
WHY?

Crash reading

Walk backward from the symptom — state, inputs, memory, timing, the branch that turned ugly. Out: a path that fires every time.

Source says it cannot. The crash says it did.

02

Exploit proof

Scary wording, or does it actually move under pressure? Out: real impact, hard limits, fix priority.

03

Binary reading

Disassembly, traces, debugger state — for when source is missing, stale, or lying. Out: control-flow notes.

04

Desktop weirdness

UI state, native calls, latency, and user flow all blaming each other. Out: behavior that holds still.

05

Traffic smell

Read the wire and the protocol assumptions when the bug only shows up between two systems. Out: trust-boundary notes.

06

Fix notes

Turn messy evidence into the smallest useful next step — patch, repro, ticket. Out: work someone can pick up cold.

CH.03

Case files

Not a tidy timeline. Recurring case files.

CASE-01

The crash that only happened on one machine

CRASH.
01

Desktop app died for exactly one user. Clean on every test box.

02

Pulled the dump: access violation past a user-mode boundary, only under a specific locale + timing window.

03

Reduced it to a race in init order. Wrote the repro + the one-line fix path.

One user. One box. Clean everywhere else.

CASE-02

The auth check that was technically there

BYPASS.
01

Endpoint had an auth check. On paper, locked.

02

Replayed a packet, flipped one branch after the check — server happily answered.

03

Proved impact end to end before it became a ticket. Fix priority: now.

The check ran. It just didn't matter.

Field log

Now

Systems Software Engineer

Beyondsoft Singapore

Now

Offensive Security Engineer

Confidential

Past

Independent Penetration Tester

Web + network

Past

Game Security Research

Client integrity / RE

CH.04

Loadout

What I reach for when the easy answer runs out.

01TOOLS UP.

Reverse engineering

Where I live when source is missing.

IDA ProGhidrax64dbgOllyDbg
The kit doesn't lie. People do.
02

Build

C / C++RustPythonC#
03

Editors

IntelliJ IDEAVisual Studio 2022VS Code
04

Operating systems

Kali LinuxRHELWindows
CH.05

Last panel

Send me the ugly version.

01Incoming brief

Broken builds. Behavior that makes no sense. A finding that needs a second pair of eyes. A binary that refuses to explain itself.

Do not polish it. Tell me what happened, what you expected, where it runs, and what you already tried.
Send it broken. I prefer it that way.
03

Drop the message here