ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β β β βββββββ βββββββββββ ββββββββββ ββββββ βββββββ βββββββ β β βββββββββββββββββββ βββββββββββββββββββββββββββββββββββ β β βββ βββββββββ βββ ββββββ ββββββββββββββββββββββ ββββ β β βββ βββββββββ ββββ βββββββ ββββββββββββββββββββββ βββ β β ββββββββββββββββ βββββββ βββββββββββ ββββββ ββββββββββββ β β βββββββ ββββββββ βββββ βββββββ βββ ββββββ βββ βββββββ β β β β SECURITY RESEARCHER Β· ZERO-TRUST ARCHITECT Β· AI ENGINEER β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
"Hack ethically. Build defensively. Share everything."
I'm Jainam H. Maru β a security researcher, OS developer, and full-stack engineer who builds AI-powered defensive tooling and studies attacker behavior for a living (and a hobby). My sweet spot is where threat intelligence meets machine learning:
- π΅οΈ Threat intelligence collection β honeypots, dark-web OSINT, MITRE ATT&CK mapping
- π° Zero-Trust architecture β CISA ZTMM-aligned labs with OPA, oauth2-proxy, mTLS
- π‘οΈ SIEM engineering β building CyberRakshak (Smart India Hackathon): Windows Event Log ingestion, correlation rules, MITRE-mapped detection, live SOC dashboard
- π€ AI engineering β LLM-assisted analysis (Ollama, Groq), ML malware detection with SHAP explainability
- π Education systems β building EduOS, an open-source operating system for education, secure exams & cyber training
I don't just write code β I document everything, CI-test everything, and open-source everything that can be.
| Project | What it does | Stack |
|---|---|---|
| π‘οΈ CyberRakshak | SIEM platform for CRPF units (SIH 2026) β agent-based Windows Event Log collection, correlation + MITRE ATT&CK detection, role-based live SOC dashboard | Python Β· FastAPI Β· Next.js 15 Β· SQLAlchemy Β· SSE |
| π eduos | Unified OS for learning, secure examinations, cybersecurity training & campus admin | Python Β· PyQt6 Β· FastAPI Β· FreeBSD |
| π ssh-honeypot | AI-driven SSH deception β captures attacker commands, geolocates, scores threat, maps to MITRE ATT&CK | Python Β· Paramiko Β· Ollama Β· Docker |
| π° zero-trust-lab | CISA ZTMM 2.0 lab β nginx + oauth2-proxy + OPA + authz-bridge across 4 VMs | Docker Β· OPA Β· Authentik Β· WireGuard |
| π¬ malware-detector | PE malware detector β YARA + Random Forest + EMBER 2381 features + SHAP | Python Β· FastAPI Β· scikit-learn |
| π‘ crpf-soc-dashboard | SOC command-centre prototype β centralized security monitoring for CRPF (SIH) | React Β· FastAPI Β· Recharts |
| π¬ bitchat-messenger | Real-time chat messenger | JS Β· WebSockets |
| π password-cracker-toolkit | Industrial-grade cracking suite β masks, rules, combinator, sessions | Python Β· CUDA |
| Project | Contribution | Status |
|---|---|---|
| beeware/toga | Fix AsyncResult.__bool__ so truthiness raises the helpful exception message |
β #4632 merged |
| pschanely/CrossHair | Fix keyword-only arg crash, max_iterations=0 NameError, and format_boundargs TypeError |
β #501 merged |
| Nayjest/GITO | Fix None crashes in answer(), cmd_answer, and deploy --commit |
β #318 merged |
| lissy93/web-check | Typos/grammar/broken-links fixes | β #314 merged |
| OWASP/CheatSheetSeries | Grammar fixes on SQL Injection Prevention Cheat Sheet | β #1549 merged |
| spore-host/spawn | Skip unassociated EIPs annotated aws:* in reconciler |
β #554 merged |
| jupyterhub/kubespawner | Fix implicit string concatenation breaking singleuser_lifecycle_hooks deprecation |
β³ Open #933 |
| beeware/toga | Don't orphan SplitContainer content on invalid assignment | β³ PR #4633 |
| lissy93/web-check | Skip public API calls for non-routable IPs; add SECURITY.md | β³ PRs #320, #322 |
| scanapi/scanapi | Migrated pytest-freezegun β time-machine | β³ PR #1011 |
| sherlock-project/sherlock | DNS/Discord.bio/interpals false positives; --output no-rewrite; per-username counter reset; location-parse crash |
β³ PRs #3080, #3083, #3084, #3085, #3094 |
| ossf/cve-bin-tool | Performance optimizations β trimmed test lockfiles, lazy DB init | β³ PR #5857 |
| xynehq/xyne | Skip empty Docling image chunk descriptions | β³ PR #1365 |
| orkestra-cc/orkestra | rustfs backup/restore check-sync fix | β³ PR #304 |
| common-workflow-language/cwltool | Fix resolve_local returning CWD-anchored URIs |
β³ PR #2325 |
| aquasecurity/trivy-checks | Use glob patterns for TLS policies (AWS-0112 + AWS-0126) | β³ PRs #606, #607 |
| chubin/wttr.in | Serve localized 404 page for unknown locations | β³ PR #1292 |
| beefproject/beef | Fix URL-encoded command passed to shell execution modules | β³ PR #3637 |
| andyjmorgan/slipspace-gateway | Clarify Last4 contract for short secrets in redact() |
β³ PR #562 |
| getaxonflow/axonflow | Complete the examples index in examples/README.md |
β³ PR #462 |
| qeeqbox/social-analyzer | Fix typos in CLI options and install instructions | βΈ Closed |
| donnemartin/system-design-primer | Fix typo: "Graphs databases" β "Graph databases" | βΈ Closed |
| OWASP/Nest | Fix /repositories sitemap lastmod to use latest repository update |
βΈ Closed |
| OWASP/CheatSheetSeries | Add password cracking techniques to Password Storage Cheat Sheet | βΈ Closed |
| pypsa-meets-earth/pypsa-earth | Exit after writing empty hydro profile to avoid NameError on inflow | βΈ Closed unmerged |
| garagehq/nightcrawler | Catch loud nmap under sudo prefix during training-data cleanup | βΈ Closed unmerged |
| fastapi/fastapi | Security best practices documentation | βΈ Closed |
"Code with intention. Secure with ethics." β Jainam H. Maru
π Monthly Profile Views (Total: 962)
| Month | Start | Peak | End | Growth |
|---|---|---|---|---|
| 2026-09 | 889 | 962 | 962 | 73 |
| 2026-08 | 521 | 866 | 866 | 345 |
| 2026-07 | 196 | 503 | 503 | 307 |