Zero Trust Security
Assumptions are the mother of all mistakes. I design systems that verify everything, trust nothing, and minimize attack surfaces.
Offensive Security Researcher & Senior Software Engineer
Everything you need to know about me.
I'm a Senior Software Engineer and Offensive Security Researcher from Baku, Azerbaijan.
I hold Bachelor's degree in Information Technologies (IT) and Master's degree in Management Information Systems (MIS).
I currently have an active IELTS CEFR-C1 with a score of 7.5 (2025-2027), and previously had a score of 7.0 (2023-2025).
With over 6+ years of hands-on experience, I acquired an extremely diverse skill set that spans Full-Stack Development, Reverse engineering, Vulnerability Research, Cloud Infrastructure, Offensive Tooling Development, DevSecOps, and my main expertise - Secure Software Development.
My first job in the tech industry was as a graphic designer, where I designed logos, banners, and various marketing materials for local businesses. I realized I could learn stuff rather quickly on my own, so I tried web development next. After hitting the complexity ceiling of standard web development, I decided to focus on professions that are more challenging and impactful, switching to Software Engineering and Security Research.
Over the years, while doing my Software Engineering job, I voluntarily secured millions of people's PII (Personally Identifiable Information) and corporate assets by finding and responsibly disclosing critical security vulnerabilities in popular software products used by millions worldwide. Most of my research findings are sensitive and I'm not allowed to disclose them publicly. Some of my public research can be found in the Write-ups page.
I'm a natural multipotentialite. I love doing research and learning new things. I find complex problems exciting to solve, especially those deemed impossible by conventional standards or that require a deep understanding of multiple domains.
I publish detailed write-ups on my latest security research findings after full remediation & responsible disclosure.
Principles that guide my approach to security research and software engineering.
Assumptions are the mother of all mistakes. I design systems that verify everything, trust nothing, and minimize attack surfaces.
Complexity is where vulnerabilities hide. I fight bloat to keep systems auditable, maintainable, and inherently secure.
Human labor is error-prone. I automate repetitive tasks to ensure consistency, reduce mistakes, and free up time for creative problem-solving.
Heuristics is exploitable. I trust logs, metrics, and Proof-of-Concepts (PoCs) over gut feelings to guide my architectural and security choices.
Whether I design for millions of users or a niche audience, I prioritize speed and efficiency to deliver seamless experiences.
Monoliths get messy. I build systems with interchangeable components to enhance flexibility, scalability, and ease of maintenance.
Security research, infrastructure engineering, and the occasional rabbit hole.
Reverse engineering Cloudflare Turnstile, Google reCaptcha (v2/v3/invisible), and DDoS-Guard to automate data collection in hostile environments.
The Why: Targeted threat communities actively weaponize anti-bot technology (CAPTCHAs, Proof-of-Work) to hide their data. Standard scrapers fail here; if you can't bypass the gate, you gain no intelligence.
The How: I moved beyond WebDriver to direct CDP (Chrome DevTools Protocol) injection for stealth automation. For reCAPTCHA, I built a standalone solver endpoint achieving 0.9+ confidence through behavioral pattern replication. The harder problem was proprietary obfuscated PoW challenges. I reverse engineered multiple cryptographic proof-of-work implementations to extract the validation logic and replicate it server-side.
The Challenge: Bypassing the check is only step one. The real hurdle is preventing chain-bans in a distributed system. I engineered a custom Session Rotator with distributed locking (Redis/ZooKeeper) that ensures accounts are only 'checked out' by one worker at a time, preventing concurrent usage flags.
A high-concurrency watchdog for monitoring unauthorized application distribution across unregulated third-party stores.
The Why: When modified banking or telco apps circulate on grey markets, they bypass business logic and compromise users. We needed to detect these 'mods' the moment they were uploaded.
The How: I built a pipeline that scrapes 30+ shadow app stores for both APK/IPA binaries and structured metadata (version history, permissions, developer info). For official Play Store data, I ported EEF's rs-google-play (a Rust-based reverse-engineered Google Play API) to Python using PyO3 and Maturin. The collected files feed into an automated SAST engine (MobSF) for binary decompilation and diff analysis against official releases.
The Challenge: Ironically, poorly developed websites are harder to scrape than secure ones. Shadow stores often have broken HTML, non-standard DOMs, and anti-hotlinking measures. The difficulty wasn't just the scale; it was writing parsers robust enough to handle the chaos of the grey web.
Processing terabytes of unstructured data from leak sites and dark web forums into structured, queryable intelligence.
The Why: Raw data from the dark web is useless if it isn't searchable. We needed a way to correlate a handle on a Russian forum with a database leak on a file-sharing site instantly.
The How: I architected a modular ingestion engine using RabbitMQ and ZooKeeper to handle the throughput. Crucially, I enforced strict schema validation using Protocol Buffers (Protobuf). This forces unstructured forum HTML into a strict binary format, making the data immutable and typed before it hits our Data Lake.
The Challenge: Forums built on the same underlying frameworks (XenForo, phpBB, vBulletin) share DOM structures but implement custom anti-scraping logic. I wrote modular parsers that inherit base extraction logic per platform type, reducing code duplication significantly. The real challenge is handling unreliable data: missing fields, inconsistent encodings, malformed timestamps. The system validates and normalizes on ingestion, logging failures for manual review rather than silently corrupting the dataset.
Developing secure, self-hosted alternatives for sensitive internal operations using Go.
The Why: Using public tools (like Pastebin) for internal security operations is an OPSEC failure. We needed a fast, internal, air-gapped solution for sharing sensitive payloads and configs.
The How: I wrote 'Pasty', a high-performance storage engine in Go. To minimize maintenance, I architected it to be database-less; it uses S3 object metadata for state management. This allows us to spin up instances instantly via Docker without managing complex SQL migrations.
The Challenge: Simplicity shouldn't compromise functionality. I implemented a full GUI and API interface that supports advanced security features like 'Burn-After-Read', password protection, and auto-expiration purely via metadata logic.
A quick overview of the tools, technologies, and methodologies I employ regularly.
ENGINEERING
SECURITY
TOOLS
I'm a polyglot developer. Here's a breakdown of the top programming languages I've used this year.
| Language | Time spent | Percentage |
|---|---|---|
| | 909 hrs 52 mins | 55.5% |
| | 192 hrs 51 mins | 11.8% |
| | 106 hrs 46 mins | 6.5% |
| | 104 hrs 35 mins | 6.4% |
| | 61 hrs 12 mins | 3.7% |
| | 56 hrs 31 mins | 3.4% |
| | 45 hrs 10 mins | 2.8% |
| | 31 hrs 22 mins | 1.9% |
| | 20 hrs 15 mins | 1.2% |
| | 18 hrs 28 mins | 1.1% |
| 64 languages in total | ||