Skip to main content

Command Palette

Search for a command to run...

๐Ÿ›ก๏ธ MAFIA โ€“ Middleware AI Firewall Application: Perlindungan Aplikasi di Level Middleware [Indonesian]

Updated
โ€ข2 min read

MAFIA adalah proyek open source yang saya kembangkan untuk menghadirkan lapisan keamanan tambahan langsung di dalam aplikasi web modern. Middleware ini ditulis dengan Python dan dirancang agar kompatibel dengan framework seperti FastAPI, dengan tujuan memberikan deteksi dan perlindungan berbasis AI terhadap berbagai serangan umum.

โš ๏ธ Catatan: MAFIA bukanlah pengganti Web Application Firewall (WAF) tingkat enterprise. MAFIA dirancang untuk melengkapi WAF dengan proteksi langsung di lapisan aplikasi (application layer), terutama untuk endpoint sensitif.


๐Ÿ” Apa yang MAFIA Tawarkan?

Beberapa fitur utama dari MAFIA:

  • โœ… Deteksi Brute Force berbasis AI dengan Isolation Forest

  • โœ… Rate Limiting menggunakan Redis

  • โœ… Filter Payload Berbahaya untuk XSS dan SQL Injection

  • โœ… Risk Scoring berbasis kombinasi fitur (jumlah percobaan & interval waktu)

  • โœ… Tracking Metadata & Versioning Model

  • โœ… Middleware siap pakai untuk FastAPI


โš™๏ธ Cara Instalasi dan Integrasi

1. Instal langsung dari GitHub:

pip install git+https://github.com/akarkode/mafia.git

2. Integrasi di proyek FastAPI:

from fastapi import FastAPI
from mafia.middleware import BruteForceMiddleware

app = FastAPI()
app.add_middleware(BruteForceMiddleware, redis_url="redis://localhost:6379")

@app.get("/")
def home():
    return {"message": "Hello from MAFIA-protected API!"}

๐Ÿš€ Bagaimana Cara Kerjanya?

  1. Permintaan Masuk (Request) dicatat metadata-nya (IP, Path).

  2. Rate Limiting akan memblokir jika batas request terlampaui.

  3. Payload Inspection mengecek pola berbahaya (XSS, SQLi).

  4. Deteksi Brute Force menggunakan Isolation Forest:

    • Menilai berdasarkan jumlah percobaan dan jeda antar request.

    • Menghasilkan nilai risiko antara 0 dan 1.

  5. Keputusan Risiko:

    • Jika risk_score > 0.8, request diblokir.

    • Jika tidak, diteruskan ke aplikasi.


โœ… Kapan Sebaiknya Digunakan?

Gunakan MAFIA di endpoint yang sensitif seperti:

  • Endpoint login

  • OTP API

  • Reset password

  • Konfirmasi transaksi penting

โš ๏ธ Tidak direkomendasikan untuk public API dengan trafik tinggi (misalnya listing produk atau endpoint publik lainnya).


๐Ÿง  Referensi Ilmiah

  • Isolation Forest (Liu et al, 2008)

  • OWASP Authentication Cheat Sheet

  • User Behavior Modeling (IEEE)

  • Journal of Network and Computer Applications โ€“ Elsevier


๐Ÿšง Batasan yang Diketahui

  • Tidak cocok untuk endpoint publik dengan trafik tinggi

  • Membutuhkan Redis sebagai penyimpan status

  • Akurasi model bergantung pada data pelatihan

  • Tidak menggantikan sistem autentikasi yang kuat

  • Bukan pengganti WAF, tapi pelengkap di level aplikasi

  • Masih dalam tahap riset awal dan pengembangan aktif


๐Ÿ”ฎ Roadmap & Rencana Ke Depan

  • Menambahkan fitur geolokasi & fingerprint perangkat

  • Pipeline retraining model otomatis

  • Integrasi dengan API Gateway eksternal seperti Kong atau AWS

  • Visualisasi real-time untuk analisis risiko


๐Ÿ“ซ Ingin Kolaborasi?

Jika kamu tertarik untuk mengadopsi, mengembangkan, atau memberi masukan terhadap MAFIA, silakan hubungi saya di:
๐Ÿ“ง akarkode@gmail.com


๐Ÿ”— Live Demo / Dokumentasi:
๐Ÿ’ป https://mafia.akarkode.com