{"id":29467601,"url":"https://github.com/sadiyabhokare/malicious_input_classifier","last_synced_at":"2026-04-14T04:31:48.685Z","repository":{"id":302764296,"uuid":"1012170883","full_name":"sadiyabhokare/Malicious_Input_Classifier","owner":"sadiyabhokare","description":"Malicious Input Classifier for Web Forms","archived":false,"fork":false,"pushed_at":"2025-07-04T05:36:16.000Z","size":212,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-14T10:38:16.315Z","etag":null,"topics":["joblib","pandas","python","sklearn","streamlit"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sadiyabhokare.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-01T23:46:12.000Z","updated_at":"2025-07-04T05:36:20.000Z","dependencies_parsed_at":"2025-07-04T05:45:24.403Z","dependency_job_id":null,"html_url":"https://github.com/sadiyabhokare/Malicious_Input_Classifier","commit_stats":null,"previous_names":["sadiyabhokare/malicious_input_classifier"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/sadiyabhokare/Malicious_Input_Classifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sadiyabhokare%2FMalicious_Input_Classifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sadiyabhokare%2FMalicious_Input_Classifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sadiyabhokare%2FMalicious_Input_Classifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sadiyabhokare%2FMalicious_Input_Classifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sadiyabhokare","download_url":"https://codeload.github.com/sadiyabhokare/Malicious_Input_Classifier/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sadiyabhokare%2FMalicious_Input_Classifier/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31782736,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["joblib","pandas","python","sklearn","streamlit"],"created_at":"2025-07-14T09:43:13.016Z","updated_at":"2026-04-14T04:31:48.680Z","avatar_url":"https://github.com/sadiyabhokare.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🛡️ Malicious Input Classifier for Web Forms\n\nA machine learning-powered application that classifies user-submitted form inputs as:\n- 🟢 Benign\n- 🔴 SQL Injection (SQLi)\n- 🟠 Cross-Site Scripting (XSS)\n\nBuilt with **scikit-learn** and deployed via **Streamlit**, this project demonstrates a lightweight, real-time defense layer against common web input attacks.\n\n---\n\n## 📌 Problem Statement\n\nWeb applications often receive malicious inputs through form fields such as:\n- Login forms\n- Comment boxes\n- Search fields\n\nThese inputs can result in:\n- 🛑 Data breaches\n- 🔐 Account takeovers\n- 🖼️ Website defacement\n\nThis project aims to mitigate such threats by building a machine learning classifier that detects **SQLi**, **XSS**, or **Benign** inputs in real-time.\n\n---\n\n## 🎯 Objectives\n\n- 🔎 Analyze and extract key features from form inputs.\n- 🧠 Train a machine learning model to detect attack types.\n- 🖥️ Deploy a web-based dashboard for real-time and bulk prediction.\n- 🚫 Prevent potential malicious inputs before backend processing.\n\n---\n## 📂 Folder Structure\n\n```\nMaliciousInputClassifier/\n├── app.py\n├── train.py\n├── sample_inputs.csv\n├── requirements.txt\n├── architecture.png\n├── model/\n│   ├── rf_model.pkl\n│   └── label_encoder.pkl\n└── utils/\n    └── feature_extraction.py\n```\n\n---\n\n\n## 🧪 Sample Predictions\n\n| Input                           | Prediction |\n| ------------------------------- | ---------- |\n| `' OR '1'='1`                   | 🔴 SQLI    |\n| `\u003cscript\u003ealert('xss')\u003c/script\u003e` | 🟠 XSS     |\n| `Hello! Great work!`            | 🟢 Benign  |\n\n---\n\n## 🛠️ Tech Stack\n\n| Layer       | Technology                    |\n| ----------- | ----------------------------- |\n| 🧠 ML Model | `scikit-learn` (RandomForest) |\n| 📊 Data     | `pandas`, `.csv` files        |\n| 💾 Storage  | `joblib` model dumping        |\n| 🎯 UI       | `Streamlit`                   |\n\n---\n\n## 🚀 How to Run Locally\n\n📦 [Download the latest release here](https://github.com/sadiyabhokare/Malicious_Input_Classifier/releases) \n\n### 1. Clone the repository\n\n```bash\ngit clone https://github.com/your-repo/MaliciousInputClassifier.git\ncd MaliciousInputClassifier\n```\n\n### 2. Install dependencies\n\n```bash\npip install -r requirements.txt\n```\n\n### 3. Train the model\n\n```bash\npython train.py\n```\n\n### 4. Run the app\n\n```bash\nstreamlit run app.py\n```\n---\n## 🧱 System Architecture\nThis project follows a clean and modular architecture that separates UI, feature extraction, model inference, and output presentation.\n\n![System Architecture](architecture.png)\n---\n\n## 📽️ Demo Video\n\n👉 [Click here to watch the demo video](https://drive.google.com/file/d/1tz-SLwx7bo42ai8T1YXPviKZwky7RfuX/view?usp=sharing)\n\n---\n\n## 👥 Team Members \u0026 Contributions\n\n| Name                                                      | Role and Contributions                                           |\n|-----------------------------------------------------------|------------------------------------------------------------------|\n| [Rabiya Gavandi](https://github.com/Rabiya786-hash)       | 🧠 ML Model Design, Feature Engineering, Model Training          |\n| [Saniya Kalawant](https://github.com/SaniyaKalawant)      | 💻 Frontend Development using Streamlit, UI Design, Input Modes  |\n| [Sadiya Bhokare](https://github.com/sadiyabhokare)        | 📦 Integration, Testing, Deployment Setup, Documentation, Report |     \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsadiyabhokare%2Fmalicious_input_classifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsadiyabhokare%2Fmalicious_input_classifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsadiyabhokare%2Fmalicious_input_classifier/lists"}