diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..5b4675b --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "AbdalFakeWebServer" +version = "0.1.0" +edition = "2021" + +[dependencies] +tokio = { version = "1", features = ["full"] } +hyper = { version = "0.14", features = ["full"] } +futures-util = "0.3.30" diff --git a/README.fa.md b/README.fa.md new file mode 100644 index 0000000..5ba57c7 --- /dev/null +++ b/README.fa.md @@ -0,0 +1,60 @@ +# Abdal Fake Web Server + +## 🎤 ترجمه اطلاعات نرم افزار +- [English](README.md) +- [فارسی](README.fa.md) + +## 👀 پیش نمایس + +
+ + + + ## 💎 هدف اصلی +یک نرم افزار قوی و پر سرعت برای مهندسی معکوس درخواست های وب و تحلیل محتوای آن + + ## 🛠️ پیش نیاز برای برنامه نویسان +> Rust and Cargo + +> necessary libraries + +## ✨ قابلیت ها + +* ایجاد سرور وب +* پشتیبانی از درخواستهای HTTP و HTTPS +* استفاده از کتابخانههای پیشرفته +* پشتیبانی از توابع ناهمگام (Asynchronous) +* تولید پاسخهای ساده +* مدیریت خطاها +* قابلیت توسعه و سفارشیسازی +* نمایش اطلاعات سرور در زمان شروع به کار +* چاپ درخواستهای دریافتی +* پشتیبانی از ترافیگ های بسیار سنگین +* بدون هیچ کد مخربی + + + +## 📝️ چگونه کار می کند ؟ +این نرم افزار برای اجرا نیاز به پورت 80 و 443 دارد پس باید روی سیستم شما این پورت ها رزرو نباشد ، در ویندوز با دوبار کلیک بر روی فایل اجرایی ، نرم افزار شروع به کار می کند اما در لینوکس ابتدا دسترسی اجرای به فایل دهید سپس آن را اجرا کنید به صورت زیر +```bash +chmod +x AbdalFakeWebServer +./AbdalFakeWebServer +``` + +## ❤️ کمک به پروژه + +از لینک های داخل نرم افزار استفاده کنید + +## 🤵 برنامه نویس +دست ساز با عشق توسط ابراهیم شفیعی (ابراشا) + +E-Mail = Prof.Shafiei@Gmail.com + +Telegram: https://t.me/ProfShafiei + +## ☠️ گزارش خطا + +اگر با مشکلی در پیکربندی مواجه هستید یا چیزی آنطور که انتظار دارید کار نمیکند، لطفا از Prof.Shafiei@Gmail.com استفاده کنید.طرح مشکلات بر روی GitLab یا Github نیز پذیرفته میشوند. + + + diff --git a/README.md b/README.md index e7f1f6b..85953e0 100644 --- a/README.md +++ b/README.md @@ -1 +1,57 @@ -# abdal-fake-web-server \ No newline at end of file +# Abdal Fake Web Server + +## 🎤 README Translation +- [English](README.md) +- [فارسی](README.fa.md) + +## 👀 Screenshot + + + + + ## 💎 General purpose +A powerful and fast software for reverse engineering web requests and analyzing their content + ## 🛠️ Development Environment Setup +>Rust and Cargo + +> necessary libraries + +## ✨ Features + +* Web server creation +* Support for HTTP and HTTPS requests +* Usage of advanced libraries +* Support for asynchronous functions +* Generation of simple responses +* Error handling +* Expandability and customization +* Display server info at startup +* Print received requests +* Support for very high traffic +* Without any malicious code + + +## 📝️ How it Works? +This software requires ports 80 and 443 to run, so these ports must not be reserved on your system. On Windows, the software starts by double-clicking the executable file. However, on Linux, first grant execution permission to the file and then run it as follows: + +```bash +chmod +x AbdalFakeWebServer +./AbdalFakeWebServer +``` + +## ❤️ Donation + +Use the links within the software. + +## 🤵 Programmer +Handcrafted with Passion by Ebrahim Shafiei (EbraSha) + +E-Mail = Prof.Shafiei@Gmail.com + +Telegram: https://t.me/ProfShafiei + +## ☠️ Reporting Issues + +If you are facing a configuration issue or something is not working as you expected to be, please use the **Prof.Shafiei@Gmail.com** . Issues on GitLab or Github are also welcomed. + + diff --git a/resources/img/en.png b/resources/img/en.png new file mode 100644 index 0000000..a508100 Binary files /dev/null and b/resources/img/en.png differ diff --git a/resources/img/fa.png b/resources/img/fa.png new file mode 100644 index 0000000..3f5cc5f Binary files /dev/null and b/resources/img/fa.png differ diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..1303ff9 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,62 @@ +/* + ********************************************************************** + * ------------------------------------------------------------------- + * Project Name : Abdal Fake Web Server + * File Name : sds.rs + * Author : Ebrahim Shafiei (EbraSha) + * Email : Prof.Shafiei@Gmail.com + * Created On : 2024-07-06 + * Description : [A brief description of what this file does] + * ------------------------------------------------------------------- + * + * "Coding is an engaging and beloved hobby for me. I passionately and insatiably pursue knowledge in cybersecurity and programming." + * – Ebrahim Shafiei + * + ********************************************************************** + */ + +use futures_util::TryFutureExt; +use hyper::service::{make_service_fn, service_fn}; +use hyper::{Body, Request, Response, Server}; +use std::convert::Infallible; + +async fn handle_request(req: Request) -> Result